Ultimate Guide to Agile
Methodology
Welcome to TARA’s Ultimate Guide to Agile Methodology.
About This Ebook
Agile is the new gold-standard for software development and
performance management and it’s crucial for developers and
product managers to understand the principles and practices of
the agile methodology.
By the end of this ebook, you’ll have a solid understanding of the
agile process, Scrum framework, and tools to help you succeed
in managing complex software projects. We hope that everything
you take away from this ebook will be your guiding principle for
any future challenge.
About TARA
As a company specializing in product development and
performance management, we've witnesses the positive impact
agile has on complex software development projects.
We've spent years working alongside industry leaders, helping
develop cutting-edge software. This guide reflects this
experience along with hundreds of thousands of products
analyzed by our core platform.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 2
Ultimate Guide to Agile Methodology:
Table of Contents
In this ebook, we’ll cover not only the fundamentals of agile methodology, but also useful resources that will help you succeed with product management.
Here’s a breakdown of everything included in our guide:
Part I: Intro to Agile 4
⏣ What is Agile Product Management 5
⏣ Why and When To Use Agile Methodology 7
⏣ How To Get Started With Agile Methodology 9
⏣ Summary 13
Part II: How to Run Scrum Sprints 14
⏣ Scrum Methodology 14
⏣ Scrum Sprints Overview 15
⌾ Scrum Team Roles 16
⌾ Scrum Framework for Agile Software Development 16
⏣ Running Sprints in a Scrum Project 17
⏣ Things to Avoid During a Scrum Sprint 21
Part III: Must Have Tools for Agile Software Development 25
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 3
Part I: Intro to Agile Methodology Before exploring the principles of agile methodology, let’s take a look at the emergence of this software development practice. Agile management was born out of the inadequacies of past software management approaches. The waterfall methodology for example used to be the gold standard for software development back in the 1990s. Nowadays, it’s rarely adopted in the startup world. Waterfall and other traditional project management methodologies require:
● A ton of planning ● Committing to all requirements from the starting blocks ● Writing lots of code ● Testing
In agile methodology, three unavoidable truths regarding software development are addressed:
1. You can never gather all the requirements up-front. 2. The requirements you do gather will change. 3. There is always more to do than time or money will allow.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 4
Furthermore, waterfall requires you to take all of the above steps before delivering any type of MVP (minimum viable product). Products need to get to market faster than ever, and traditional methodologies simply don't support that.
Ask yourself the following if you're considering a traditional methodology over agile:
● How do I know anyone is going to want what I'm building? ● Is there any way to know that I'm focusing on the right features and benefits without
testing and receiving feedback?
Unless you're the next Steve Jobs, your answers to those questions aren't likely to be confidence builders. This is why agile methodology has become the method of choice by most software product managers.
What is Agile Product Management?
Since the introduction of the Agile Manifesto in 2001, agile software development has taken on multiple forms. For startup and small business projects, the most popular agile software development methods consist of:
● Scrum ● Kanban ● Lean Software Development
For large and complex projects that require the full lifecycle of of project management such as governance, resourcing, financial, explicit risk management, and other key project management concepts - you're better off looking into an agile methodology like:
● PMI Agile ● PRINCE2 Agile
If you're leaning toward more complex projects and the PMI or PRINCE2 Agile route, the remainder of this guide is not for you (but we welcome you to check it out!).
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 5
Before we go any further, let's define agile methodology as we intend to use it in this guide.
Agile methodology (agile software development): Describes an approach to software development under which requirements and solutions evolve through the collaborative effort of self organizing cross-functional teams and their customers or end users. It advocates adaptive planning, evolutionary development, early delivery, and continuous improvement. It encourages rapid and flexible response to change.
Notice how the definition emphasises two concepts:
1. Collaboration 2. Adaptability
Agile methodology is all about continuous improvement, guided by a data driven feedback loop. You hypothesise, develop, gather feedback, make necessary changes, release or don't release to market, and then repeat the process.
Here's a great visual to help you better understand the agile methodology for software development:
Image Source
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 6
Why and When To Use Agile Methodology
When designing software, it's nearly impossible to know every requirement necessary to create valuable, working software, without need for change.
Change presents both opportunities and risks to a project's success.
Unmanaged opportunities can mean the difference between a good company and a great company. While unmanaged risk is a recipe for disaster.
This is where agile methodology comes into play.
Agile methodology manages change
Agile manages change by enabling you to be responsive to new requirements. It empowers development teams to make decisions supported by an engaged, collaborative organization. Furthermore, agile methodology provides the ability to deliver what customers actually want.
And ultimately:
Agile methodology puts you and your team in control of delivering high quality software, which lives up to end-user expectations, while producing ROI as quickly as possible.
Agile methodology creates value As great as agile may sound thus far, there's a cost to adopting agile software development practices. Like many other methodologies and processes, if you don't have complete buy-in from your organization or team, you're wasting your time. Furthermore, buy-in from the team is especially relevant to agile methodology, as daily communication is an absolute requirement.
When properly implemented and strictly followed by the team, agile can pay huge dividends.
Here's a list of the top benefits you can expect from agile software development:
● Faster ROI ● Speed to market ● Lots of data ● Regular delivery of value
● Manageable expectations ● Manageable risk ● Strong visibility of progress ● Increased customer satisfaction
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 7
Agile methodology requires failing
Failure is inevitable when you’re building something special. Agile software development is closely tied to the notion of "fail fast."
Although "fail fast" may sound like a negative, most entrepreneurs will tell you it's one of the core principles to getting stuff done. Additionally, agile methodology will actually encourage you to fail, but to fail early, learn from it, and move on.
Hence, the reason why many entrepreneurs truly do fail is simply because they're afraid to fail.
While you never want to push out a product that doesn't perform its primary functions, you must have the courage to put it in front of people. And let's face it, if you can't handle criticism, you're going to have a rough go of it as an entrepreneur.
Get an MVP into the hands of early adopters, collect feedback and data, prioritize improvements, and get that next version out.
Agile methodology is adaptable
The important thing to keep in mind here is that you can adapt agile methodology to your company's needs. However, this doesn't mean you can just turn agile into whatever you want it to be.
Whichever way you start out, stay true to the content and character of the method you implement.
If you're:
● Just starting out - LEARN ● Have some experience - UNDERSTAND ● A pro - APPLY ● Leading projects that are complex and interdependent - GOVERN
As time passes, you and your teams will figure out what is, and what's not working for your company.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 8
How To Get Started With Agile Methodology Now, we’re assuming you already have a vision for what you want to build and that you've already determined whether or not the project is feasible.
If not, check out this in-depth WikiHow article: “How To Do A Feasibility Study.” It will walk you through how to determine whether or not a project is a justifiable endeavor to pursue.
Once you’re ready, let's move onto the initiation phase.
Initiation
First of all, taking the time to think about how to best deliver your project is crucial to its success. If nothing else, agile methodology is about providing value early and often, while satisfying your customers along the way.
If you're just starting out with agile software development, don't be afraid to take your time and get it right the first time.
Team Dynamics Scrum is the most popular agile methodology for software development, and it's all about the team.
The term Scrum was coined by Jeff Sutherland, who was inspired by the game of rugby. In rugby, there's a team within a team, made up of the players designated to be a part of "the scrummage." This team interlocks their arms and engages with the opposition to win the ball back. When the scrum takes place, each interlocked team works with no leader, as a single unit. Similar to a rugby scrummage, Scrum software project management involves a cross-functional team, which constantly huddles together to prioritize and execute. Although Scrum is not the only agile software development methodology, it is the one which best represents the concept of working together as a team.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 9
Scrum focuses on:
● Empowering individuals ● Building trust ● Self-organizing, and ● Being transparent.
A few things to know about Scrum when it comes to the team:
● Circumstances will determine how your team is formed. For example, you may or may not have developers available to you, and they may or may not have experience with agile project management. So it's possible that you'll need to hire a team or link up with a third party.
● Additional roles will be required, which we will cover later on.
● No matter the makeup of your team or where it's from, it will come with a variety of skills.
● Especially relevant is how you form your development team. Be sure to conduct a technical evaluation prior to arriving at this point.
● Not surprisingly, teams work best when they work together. So in agile methodology, you're looking for individuals who are self-sufficient, able to "wear many hats" at once, and pitch in wherever needed, regardless of job title.
● Team size should not exceed eight. If there's a need for many developers, you should break the teams down and have each team be responsible for an individual functionality of the product.
● Emphasize and enable the team(s), organization, stakeholders, and even end users have access to one another.
● Structured daily interaction amongst the team is paramount to the success of agile project management.
● Create a culture and environment in which the team can execute without distractions or restraints.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 10
The "Inception Deck"
You might be asking, "So how are we supposed to keep everything organized?"
Without question, your team will not be able to execute if anything about the project is unclear or inconsistent. Unfortunately, one area that the agile methodology is relatively silent on, is what's known as “project chartering.”
Project chartering can also be referred to as:
● A project brief ● Software design documents ● Or an "Inception Deck"
Since all of these terms can be used interchangeably, there is a need for some type of documentation to get everyone on the same page from day one.
A standard Inception Deck should include:
1. Shared and agreed upon expectations amongst all stakeholders. 2. Milestones to reach in order to achieve the project goals and objectives 3. The goal, objectives, vision, scope and context
As previously noted, an Inception Deck is very similar to software design documents, which I hope you're all familiar with! If not, here’s a handy resource we developed.
Team adoption of agile methodology
Don't expect your business or your team to be ecstatic over the adoption of a new methodology. There's almost certain to be pushback and confusion when implementing a new way of doing things. These are challenges you must overcome!
However, in order to get people to buy in, you cannot force agile software development onto stakeholders. In the beginning stages, don’t focus so much on promoting the greatness of agile methodology, as that will not build trust, engagement, or adoption. Instead, focus on respecting the opinions of others, and have empathy toward those who are having a tough time with adoption.
This is especially relevant in larger and more traditional organizations, where processes have been engrained throughout the organization for years. Should that be the case, start small, and slowly gain the respect of others by delivering real results.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 11
Once you've gone through presenting agile to the team, allow them to decide how they wish to operate.
For example:
● Point the team in the right direction towards identifying agile concepts, behaviors, and techniques that they feel fits their needs.
● Try your best to meet the requests of team members; some of which you'll be able to resolve quickly, while others may require additional work and/or budget.
● Whatever you can do for the team that's reasonable, whether that's a dedicated space to work, new software, their own espresso maker...make it happen.
● Once you and your team have agreed upon a framework, organize some time-conscious training in the concepts and techniques you've chosen to adopt.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 12
Summary Agile methodology is as much a mindset as it is a set of guiding principles and concepts.
When implemented properly and fully adopted by the team, agile will aid in the development of new behaviors, thinking, collaboration, and performance.
Most of all, agile software development is dependent upon the strength of the team, and not from a skillset standpoint. The strength of agile software development is derived from the exact same source as a great sports team. By working as a single unit, effectively communicating, and holding yourselves – as well as one another – accountable for executing, a championship level team can accomplish far greater feats than any individual.
You find a common goal to rally around.
Become hell bent over how to complete your mission.
Take it one day at a time.
Adapt quickly to change.
Push one another to achieve it.
As a famous college football coach once said, "The team, the team,
the team."
That's what agile is all about.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 13
Part II: How to Run Scrum Sprints
Scrum Methodology
In part 2 of our Ultimate Guide to Agile Methodology, we’ll walk you through the Scrum framework. At the moment, Scrum is the most widely used among different agile methodologies. In fact, a recent survey performed by VersionOne shows that 68% of more than 20,000 people reported Scrum and Scrum/XP Hybrid to be their methodology of choice.
Image Source
Consequently, we'll be referring to Scrum methodology when discussing the practices of agile software development throughout this guide.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 14
The Scrum process is relatively straightforward
Scrum is very popular because it provides just enough framework to guide teams, while giving you the flexibility on how to execute.
Furthermore, Scrum concepts are simple and easy to learn. Teams can get started quickly and learn as they go. All of this makes Scrum a great choice for teams just starting to implement agile principles.
There's a product owner who is responsible for defining the target audience and their values as well as a vision for how to deliver or improve a product or service. The product owner works with the team to define a Sprint Backlog of user stories that aim to achieve his or her vision. Each user story defines what is being worked on, for whom, why it’s important, and what constraints the solution must consider.
Scrum Sprints Overview A key learning from life experiences is to break-up a problem into small pieces, and then go about solving each problem.
Scrum methodology does the same thing. Breaking up product development into small goals (a.k.a. Sprints) and then running cycles to achieve those goals.
So, what is a Sprint?
A Sprint (also known as an iteration): is a short period in which the agile development team implements and delivers a specific and potentially publishable application increment.
For example, you may perform your first 2 or 3 Sprints in order to reach your first milestone of a working prototype which performs the application's core function. Therefore, you may choose not to publish or release the application to early adopters after your first couple Sprints, but then choose to do so once you have a working prototype.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 15
Scrum Team Roles
Product Owner
The Product Owner is responsible for what the team is building, and why they’re building it. In addition, he or she is responsible for keeping the Sprint Backlog up-to-date and in priority order.
Scrum Master
The Scrum Master is responsible for ensuring the scrum process is followed by the team. They are constantly on the lookout for how the team can improve, while also resolving impediments (blocking issues) that arise during the sprint.
Scrum Masters are part coach, part team member, and part cheerleader.
Scrum Team
The Scrum Team are the individuals that actually build the product. The team owns the engineering of the product and the quality that comes with it.
Scrum Framework for Agile Software Development
Image Source
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 16
Running Sprints in a Scrum Project
Planning Sprints
Scrum is a working cadence, or Sprint.
Each Sprint typically lasts between 2 and 4 weeks and every Sprint starts with a planning meeting.
Sprint Backlog
When planning a sprint, your team will typically commit to deliver a set of stories that are pulled from the top of the Sprint Backlog.
Often, each item on the Sprint Backlog is broken down into tasks. In the beginning of a Sprint, the Product Owner will prioritize the Sprint Backlog items to address. This queue is based on customer feedback, business value, and other relative factors.
The team then reviews the priorities and commits to the ones that they believe they can accomplish within the Sprint's timeframe. Once all members agree the Sprint Backlog is achievable, the Sprint starts.
If you haven't run Sprints before, we recommend using a fixed two-week duration for each sprint. While two-weeks is long enough to get something accomplished, it's not so long that the team isn't receiving regular feedback.
Daily Stand-Up Meetings
Daily stand-up meetings are of extreme importance to keep the ball rolling in the right direction, and to keep the team on the same page.
Scrum itself defines different types of meetings required to make your system truly agile.
Let's touch upon one such very important meeting called the “Daily Scrum.”
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 17
A. Duration: Typically 15 - 20 mins.
Daily stand-ups are named "stand-ups" for a reason.
Unsurprisingly, every team member will stand for the duration of the meeting.
The point of standing throughout the meeting is to emphasize the efficiency and preparation. Each team member should come prepared, and use an equal amount of time as their other team members.
Typically, a daily Scrum meeting should be about 15 minutes. However, if you have a large team (should be no more than 8 to a team), this could take up to 30 minutes maximum.
B. Each team member answers the following questions in our Daily Scrum Meeting:
● What did you do since the last Scrum meeting (yesterday)? ● Are there any roadblocks which you are facing? ● What will you be working on today?
C. What you'll need to run your daily Scrum meeting:
● Meeting room or video conference call software ● Presence of all team members ● White board, markers, post-it notes, etc. ● Project dashboard ● Someone new each day to orchestrate the meeting
D. What you'll achieve with daily Scrum meetings:
● Clear and crisp communication ● Increased team cohesiveness since everyone is aware of each other’s task ● Transparency, no last-minute shocks ● Increased accountability ● Clear sense of your project's progress
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 18
Concluding Scrum Sprints
At the end of the Sprint, the team performs two practices:
1. Scrum Sprint Review
In a Sprint Review, the team demonstrates what they’ve accomplished to stakeholders. The review consists of a software demo, which is meant to showcase the user stories that the team completed.
2. Scrum Sprint Retrospective
In the Sprint Retrospective, the team performs a private retrospective to discuss process improvements. While going through this process, the team takes time to reflect on what went well, and which areas require improvement. The outcome of the retrospective is a list of actions to be taken for the next Sprint.
This process then repeats itself for each subsequent Sprint.
Preparing for Your Next Scrum Sprint Once complete, the entire Scrum cycle is repeated for the next Sprint.
The Product Owner will select the next items on the Product Backlog, and the new cycle begins. While the team is executing the Sprint, the Product Owner should ensure the items at the top of the Sprint Backlog are ready to execute in the following Sprint.
This shorter, iterative cycle provides the team with lots of opportunities to learn and improve. A traditional project often has a long lifecycle, often of 6 - 12 months. While a team can learn from a traditional project, the opportunities are far less than a team who executes in 2-week sprints, for example.
This iterative cycle is, in many ways, the essence of Agile.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 19
Finding a Scrum Process That Works for You
You'll need a more defined practice to go from the basic process we just covered to one that'll result in technology aligned with real needs. Some of this falls under governance… especially if there are multiple teams practicing Scrum.
By governance, we're referring to:
● The length of the Sprint. ● Formal responsibilities of the Product Owner. ● The tools used to manage the Scrum process. ● Other organizational practices.
On the other hand, the team manages the specifics of:
● What to document in a user story. ● How to fully write user stories in time for commitment. ● The handling of roadblocks after the daily standup. ● How to conduct demos and retrospectives. ● This level of self-management exists for a reason...
Keep in mind that the nuances of the project’s requirements, team structure, experience of team members, and maturity around technology often influence how a team elects to run its process.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 20
Things to Avoid During a Scrum Sprint
I. Scope Creep In Scrum - or any methodology for that matter - taking measures to avoid Scope Creep is paramount to success. You'll need to know your team's capacity for work, as well as the amount of work they are committing to when adding to a sprint.
Typically, your team should estimate issues before adding them to the sprint, so that you can see the total estimated work for the sprint. You can match this against your team's capacity for work by looking at past sprints.
Be sure to use software that will measure and monitor the velocity of work being done for each and every Sprint.
One such software platform is TARA, and in the below screenshot you can see a project dashboard which automatically measures and monitors your team's progress.
Don't worry if you have no historical data. After running your first 2 or 3 Sprints, you'll get a good idea of your team's work capacity and velocity.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 21
How TARA is helping to solve the Scope Creep problem
Once TARA understands your project, it automatically assigns your team with tasks and renders timeline predictions. This in itself saves weeks of work.
How does TARA do this?
TARA uses an advanced machine learning algorithm, which analyzes millions of software projects from across the web, instantly creating development tasks and timelines for your project builds.
II. Failure to Address Technical Debt
Agile software development often requires lots of compromises, especially when trying to complete a user story.
Functionality compromises are often debated up-front when writing the user story. Once a user story is committed to, the development team must make sound technical decisions around its implementation. Those decisions require implementation compromises, even when there are strict technology standards in place.
These compromises create what we call technical debt.
The problem with technical debt, is that it may go relatively unnoticed during the agile software development process.
Technical debt can be:
● Usage-driven when user behavior exposes a technical limitation. ● Driven by performance or scalability. ● Induced by the life-cycle of underlying software components which require upgrade.
It's a critical responsibility for developers on an agile software development team to record technical debt.
For small issues, developers can record technical debt in code with "todo" comments. As a result, the next developer who works on that code can address the previous developer's comments. Larger code issues which require refactoring should be itemized on the Sprint Backlog.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 22
Regardless, disciplined agile software development teams will find ways to prioritize technical debt.
You need to address technical debt at several levels:
● For larger application lifecycle issues, it's often better to schedule one or more releases to perform upgrades.
● We advise executing upgrades in a release cycle that doesn’t introduce new or changed functionality. This makes it easier for testing teams to identify issues with upgrades, and avoids complications when finding root causes is challenging.
● In a release, the Product Owner works with the team to identify the technical debt that affects users the most, has the most impact on developer productivity, or exposes other risks. The issues identified are then prioritized and should be itemized as user stories in the Sprint Backlog.
● In one user story, the team can recommend acceptance criteria in order to address underlying technical debt.
Highly disciplined agile software development teams measure technical debt and create indicators when the debt is exceeding acceptable levels.
III. Top-Down Management Will NOT Work
Top-down management is not agile compatible.
Hence, the reason why the Scrum Master is NOT the project manager.
Although Scrum Masters often take on some of the coordination, communication, and responsibilities of project managers, their approach and core responsibilities are distinctively different.
Project managers often facilitate a top-down project where the leadership has defined a business need, budget, and scope. Project managers’ methodologies tend to mimic this top-down approach. They look to manage teams toward the goals they've identified and the schedules they've constructed.
Agile software development and Scrum are bottom-up processes.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 23
When agile teams collaborate on defining and solving problems with end-users in mind, teams can apply capabilities and skills to what's important to users
This is why Scrum Masters look to serve the team first, and then guide them on the goals and priorities of the Product Owner.
The other major difference is that agile software development is an iterative process. Consequently, the process enables Product Owners to re-prioritize their backlog based on customer feedback and new insights. This requires different levels of collaboration, practices, and tools to help Product Owners and their teams align on:
● What problems to solve. ● Appropriate solutions when priorities can change Sprint to Sprint.
For example, if you're used to managing projects with Gantt charts and assigning tasks with beginning and end dates, you’re going to have to retool and think differently when working with agile software development teams and Scrum.
This is a major shift in thinking around managing projects. Gathering and taking action on feedback and prioritizing / pivoting at every sprint yields better results than trying to define everything up front.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 24
Part III: Must Have Agile Development Tools
Choosing Agile Software Development Tools
There are many agile software development tools available to support your processes, from defining your strategy to scheduling Sprints, and managing day-to-day tasks.
It’s important to choose tools that support the way your teams work.
We've rounded up five "must have" agile software development tools for you to consider. Although there are many others, we focused on these five because they cover the absolute necessities of running successful agile campaigns.
Those necessities include:
● Product Management ● Bug and Issue Tracking ● Wireframing ● Prototyping ● Design ● Product Management ● Product Roadmapping ● User Experience Research ● Product Scoping ● Task Management ● Hiring Freelance Talent
Without further ado, here are five tools plus details as to how each one might fit into your agile team's software portfolio.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 25
Must Have Agile Software Development Tools
1. Jira:
We highly recommend Jira for bug and issue tracking.
Scrum is an agile methodology where products are built in a series of fixed-length iterations. There are four pillars that bring structure to that framework: Sprint planning, stand ups (aka daily Scrums), Sprints, and retrospectives.
Out-of-the-box, Jira comes with a comprehensive set of agile tools that’ll help your Scrum team perform these events.
Sprint Planning with Jira
Sprint planning meetings determine what the team should complete in the coming Sprint.
Jira makes your backlog the center of your Sprint planning meeting. You can estimate stories, adjust Sprint scopes, check velocity, and re-prioritize issues in real-time.
There are several tools within Jira Software that can help your sprint planning run smoothly.
Version Management
With Jira, you can track versions, features, and progress in a single view. Additionally, you can click into a version to see the complete status, including the issues, development data, and potential problems.
Backlog Management
You can use Jira to easily re-prioritize your user stories and bugs. Just select one or more issues, then drag and drop to reorder them in your backlog.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 26
Furthermore, use Jira to create quick filters which will surface issues with important attributes.
Story Points
It's important to estimate, track and report on story points to help your team become more accurate in future sprints.
Use Jira's story points, ideal hours, or your own method of estimating.
Scrum Boards
Scrum boards are used to visualize all the work in a given Sprint.
Jira's Scrum boards can be customized to fit your team's unique workflow. You can easily add things like swimlanes to separate epics, assignees, projects, and more.
At the end of the Sprint, get a quick snapshot of all issues which were completed. Any unfinished issues will automatically move into the backlog for your next Sprint planning meeting.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 27
Track and Manage Your Sprints
A Sprint is a fixed-length iteration of work, typically one or two weeks in length. Work should be fully scoped and prioritized during the Sprint planning meeting. This way, the team can get started as soon as the Sprint begins.
The following features keep track of all the work being tackled in each sprint, so your team can stay focused on the tasks at hand.
Workflows
Create and assemble your own custom workflow states and transitions for every issue type (bugs, stories, epics, coffee runs).
Leverage the Jira workflow engine to update issues automatically based on events in other systems. Or, define criteria that must be met before an issue can progress.
Custom Issue Types
Develop custom issue types for bugs, stories, coffee runs, and everything in between.
Configure a custom workflow and custom fields for each issue type.
As a result, your team will be able to manage work according to its requirements.
Release Hub
Jira's Release Hub allows you to quickly see what's shipping in your next release and what's left to do to get it out the door. This makes it easy for developers to reconcile source code and issues.
Additionally, automatic warnings are generated for issues with broken builds, missing code, or open pull requests.
Jira Scrum Reports
Lastly, Jira has a number of agile reports specific for Scrum teams. Burndown and velocity charts give your team critical insight into their agile process. Reports make retrospectives more data-driven, highlighting areas to improve for upcoming Sprints.
Here's an image of all the features that come with Jira's Scrum reports.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 28
Alternative Agile Software Development Tools to Jira: Plutora
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 29
2. InVision:
One of our favorite agile software development tools here at TARA is InVision.
InVision is one of those platforms that plays multiple roles in your stack of agile software development tools. Most notably, InVision is a prototyping, design, and user interface tool.
We also recommend InVision for wireframing.
In addition to InVision being a powerful design and prototyping tool, they also have:
● Overlay animations, gestures and transitions (transform static screens into clickable, interactive prototypes).
● Boards (used as mood boards or presenting designs to stakeholders).
● Workflow (a Kanban board for all your screens).
● Liveshare (live prototype review with built-in VoIP).
Using InVision as a Feedback Loop
InVision Boards are especially useful for agile teams.
Boards are flexible spaces to store, share, and talk about design ideas with your internal and external teams. As a result, this makes it super easy to gather feedback from any stakeholder, as they can comment directly on your designs.
InVision should also become your agile team's feedback loop platform. The feedback discussions are tied to a specific element within a design. Comments made by users are immediately posted to Slack (if you add the integration).
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 30
Dev Notes are also available for designers to leave notes for other team members. If you recall from PART 2, developer notes play a critical role in avoiding technical debt.
The feedback loop process
You can create a design or wireframe using InVision or you can use other tools such as Balsamiq or Sketch if you prefer.
Once the design is ready for review, upload the screen or sync to InVision. This screen update event is then sent to Slack to notify team members of changes made.
Stakeholders, Managers, Developers, and Designers see these same notifications, ensuring everyone is on the same page.
Connecting InVision with Jira
We chose these tools carefully to make sure they complement one another.
Designers don’t like being harassed for links to assets or having to constantly find issues and re-upload each design revision. On the other hand, developers hate having to track down updated designs and all the details they need to code the design properly.
This type back and forth hinders productivity and innovation.
The relatively new InVision for Jira integration helps tackle this problem. It allows teams to integrate directly between a Jira issue and the corresponding InVision prototype.
Integration with Jira promotes not just visibility into the interaction design, but also encourages others to comment and give feedback. This is a cornerstone of the agile process.
The prototype is always updated whenever the designer makes a change, resulting in a single source of truth for the entire team to work from. This allows teams to stay in sync and waste less time searching for files.
Prototyping with InVision
If you want to get started by adding InVision to your agile software development tools, visit this site to learn how to create an interactive prototypes with InVision.
Alternative Agile Software Development Tools to InVision: Balsamiq
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 31
3. Aha!:
Aha is a product roadmap and product management platform.
You can use Aha to define your strategy and create visual roadmaps which show how you will accomplish your goals. Additionally, you can manage your product backlog and prioritize features and user stories for release.
If you're using another one of our nominated agile software development tools (Jira), they have a neat integration between the two platforms.
Aha! Product Roadmaps
Product roadmaps help create alignment around initiatives, objectives, and milestones by visualizing your strategy on a timeline.
For example, here's what an Aha roadmap looks and feels like:
Keep in mind that they have multiple roadmap views.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 32
Let's say you're part of a large organization, and you're the product manager for multiple products. Aha has a Portfolio Roadmap which allows you to select which products and/or product lines you wish to highlight.
You can then show how these products collectively deliver value against the strategic initiatives that you're investing in.
Here's what the Aha Portfolio Roadmap looks like:
Release Tracking and Idea Management
Keep Track of Your Releases
Regardless of what methodology you use, you need to deliver a complete product experience, ship fast, and ship quality.
Use Aha to set dates and dependencies to stay in sync. Things change all the time on agile projects, so Aha can also be used to notify your team whenever they do.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 33
Keep in mind that a Sprint should not be confused with a release. A Sprint is a time-box for completing a defined set of work whereas a release brings a new product experience to market once it's ready to be delivered.
Idea Management
Great ideas come from all over the place, so help your team drive innovation by giving everyone a seat at the table.
Aha allows you to capture actionable feedback in one central place. Use Aha's Idea Management feature to record ideas from both internal and external sources.
For external sources, you can even crowdsource ideas via a branded portal, giving your community a voice.
What's really cool is how Aha then helps to organize and prioritize all the ideas gathered for you:
Get a better idea of what you can do with Aha! by watching this video.
Alternative Agile Software Development Tools to Aha: Roadmunk
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 34
4. UserTesting:
UserTesting is a comprehensive solution for user experience research.
Role UserTesting Plays With Your Agile Development Team
What do you think the #1 reason teams neglect testing their products with real users is?
Unsurprisingly, it's that user testing takes too much time.
And that's fair, because it requires:
● Recruiting users ● Setting up labs ● Moderating sessions ● Getting that user feedback
This can take days or even weeks, and that simply doesn’t make sense for agile teams.
The solution: Remote user testing
Skip in-lab testing and opt for remote user testing instead
With remote user testing, you can get video recordings (with audio) of real people from your target market as they use any website, mobile app, or prototype. Users speak their thoughts out loud while they complete tasks which you specify, such as, "Select an item and add it to your cart."
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 35
This is perfect for agile teams that need to move fast. You can recruit your exact target audience and get feedback within an hour. This means your team can test a new design or user flow within a single Sprint.
As a result, this should validate that your team has made the right decision as the feature is built. The process can start with sketched concepts and extend through wireframes, prototypes, and live code.
Use a tool such as UserTesting in order to validate your product decisions before investing in development… And prevent your team from building products and features that users don’t want!
Run parallel design and development Sprints
Many leading companies find that the most effective way to incorporate user tests into their agile development cycle is to have their design team run a design Sprint parallel to their development team.
The purpose of the design Sprint is to:
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 36
● Identify problems through user research.
● Validate solutions through iterative testing.
● Prepare user stories for the Product Owner to prioritize in time for the Iteration Planning Meeting (Backlog Review).
While your engineers are writing code for their current iteration, your design team is identifying problems and validating solutions for your developers to work on in their next iteration.
To see a detailed breakdown of this process, download UserTesting's free whitepaper: “Implementing Remote User Testing Into Your Agile Process”
Alternative Agile Software Development Tools to UserTesting: Validately
5. TARA:
Last, but certainly not least, we have TARA.
TARA uses artificial intelligence to help you build better products, faster.
With TARA, you can quickly:
● Scope products.
● Assign developers.
● Monitor performance.
Scope your product in just moments
Once TARA understands your product, it automatically assigns your team with tasks and renders timeline predictions, which saves weeks of work.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 37
Here's how easy it is to scope your product using TARA:
1. Choose the type of product you wish to build
2. Select the build that best describes your product
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 38
3. Use artificial intelligence to scope your product in just seconds
4. TARA's machine learning algorithm instantly creates development tasks and timelines
The entire process of scoping your product using TARA takes less than one minute on average.
How does TARA do this?
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 39
TARA uses an advanced machine learning algorithm, which analyzes millions of software projects from across the web. As a result, you save weeks of work by instantly creating development tasks and timelines for your product builds.
With TARA, scoping a product has never been easier.
Scope your product in moments! TARA is taking Agile Software Development to the next level with machine learning.
Contact Us: https://tara.ai/request-a-demo/
Assign top developer talent quickly and securely
TARA operates a secure contractor network of 50,000 pre-screened developers. From experts in JavaScript to Machine Learning, TARA has you covered.
With a deep understanding of your development tasks, TARA’s machine learning can instantaneously assign external contractors or internal developers based on your product's needs.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 40
Here's what one of TARA clients at Cisco Systems had to say about their experience working with TARA developers…
"We were pleasantly surprised at how rapidly TARA was able to deliver on their promise. We required developers familiar with our existing API, and the platform found two devs and assigned them within a few hours! I continuously received updates throughout the process, and the finished product matched our spec."
- Joseph Fu, Spark/Tropo API Head of Business Development, Cisco Systems -
Measure and Monitor Team Progress
As mentioned in PART 2 of the Ultimate Guide to Agile Methodology, taking measures to avoid Scope Creep during a Sprint is paramount to success. This means that you'll need to know your team's capacity for work, as well as the amount of work they are committing to when adding issues to a sprint.
Typically, your team should estimate issues before adding them to the Sprint, in order to see the total estimated work for that Sprint. You can then match the estimation against your team's capacity for work by looking at past Sprints.
Don't worry if you have no historical data- everybody starts somewhere. After running your first 2 or 3 Sprints, you'll get a good idea of your team's work capacity and velocity.
TARA’s software will measure and monitor the velocity of work being done for each and every Sprint. In the screenshot on next page, you can see TARA's project dashboard which automatically measures and monitors your team's progress
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 41
TARA developers are:
● Extremely capable
● On time
● On budget
● Able to provide a fixed price quote within 24 hours
Additionally, TARA will assign you a product success manager to make sure your product is on track to being delivered.
To see how both large and small companies have benefited from using TARA, browse TARA Case Studies here.
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 42
Thank you for reading TARA’s Ultimate Guide to Agile Methodology!
Ⓒ 2018 TARA AI. All Rights Reserved www.tara.ai Ultimate Guide to Agile Methodology 43