You are on page 1of 44

Agile

2021

© 2021 Cognizant
Introduction
What is Agile?
➢ Agile is an iterative software development methodology to delivery software
frequently with faster feedback cycles and with the ability to create and respond
to change swiftly

➢ Agile is based on the values and principles expressed in the Agile Manifesto
and the 12 principles behind it.

➢ Agile is..
• Simple (not easy to apply)
• Doing important things first – It respects urgency
• About People, Values, Principles & Practices
• Focused on Team Communication
• Regularly delivering value through working software
3 © 2019 Cognizant
What is Agile?
A framework for iterative and incremental delivery
of a product or project

AGILE IS…
• Simple (not easy to apply)
• Completing important tasks first to respect urgency
• About People, Values, Principles & Practices
• Focused on team communication
• Regularly delivers value through working software
Agile Manifesto
# Principles
1 The highest priority is to satisfy the customer through early and continuous
delivery of valuable software.

2 Welcome changing requirements, even late in development. Harness


Themes change to develop the competitive advantage.
Individuals and interactions over processes and tools 3 Deliver working software frequently, from a couple of weeks to a couple of
months.
Working software over comprehensive
4 Business people and developers must work together daily throughout the
documentation project.
Customer collaboration over contract negotiation 5 Build projects around motivated individuals. Give them the environment
and support they need, and trust them to get the job done.
Responding to change over following a plan
6 Development teams communicate frequently. The most efficient and
effective method of conveying information to and within a
That is, while there is value in the items on development team is face-to-face conversation.
the right, we value the items on the left more
7 Working software is the primary measure of progress.

8 Promote sustainable development. The sponsors, developers, and users


should be able to maintain a steady pace indefinitely.

9 Continuous attention to technical excellence and good design enhances


agility.
10 Simplicity -- the art of maximizing the amount of work not done -- is
Quoted from the Manifesto for essential.
Agile Software Development, 11 The best architectures, requirements, and designs emerge from self-
http://agilemanifesto.org organizing teams.
12 At regular intervals, the team reflects on how to become more effective,
then tunes and adjusts
its behavior accordingly.
5
12 Principles of “Agile Manifesto”
1. Our highest priority is to satisfy the customer through early and 7. Working software is the primary measure of progress.
continuous delivery of valuable software.

8. Agile processes promote sustainable development. The sponsors,


2. Welcome changing requirements, even late in development. developers, and users should be able to maintain a constant pace
Agile processes harness change for the customer's competitive
indefinitely.
advantage.

3. Deliver working software frequently, from a couple of weeks 9. Continuous attention to technical excellence and good design enhances
to a couple of months, with a preference to the shorter agility.
timescale.
10. Simplicity--the art of maximizing the amount of work not done--is essential.
4. Business people and developers must work together daily
throughout the project.
11. The best architectures, requirements, and designs emerge from self-
organizing teams.
5. Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the
job done. 12. At regular intervals, the team reflects on how to become more effective,
then tunes and adjusts its behavior accordingly.
6. The most efficient and effective method of conveying
information to and within a development team is face-to-face
conversation.

6 © 2019 Cognizant
Traditional Lifecycle

7 © 2021 Cognizant
Traditional Vs Agile Approach

8 © 2019 Cognizant
Waterfall vs. Agile

© 2021 Cognizant
Waterfall

PROS CONS

❑A well-defined methodology that has ❑Any changes in the requirements are


been used in every business vertical. costly.
❑Rigid requirements definitions inhibit
❑Provides a very detailed definition of creativity.
the deliverables, timelines and
❑Requirements can be misinterpreted
milestones from the very beginning. because the developers interact less with
❑Reduces the amount of time stakeholders.
developers spend interacting with ❑Excessive documentation is required to
stakeholders. create detailed definitions of the
deliverables, timelines and milestones prior
❑Team deliverable is predictable. to the beginning of the project.
Agile

PROS CONS

❑Priorities and requirements can be ❑Deliverables, timelines and


easily adjusted throughout the project. milestones are less predictable.
❑The team is empowered to make ❑Stakeholders need to invest a lot
decisions, define deliverables and of time throughout the project.
milestones, take responsibility for the ❑Documentation is not created,
delivery. which could be a problem for
❑Time to market is significantly regulated industries.
decreased. ❑Since the requirements change all
❑More opportunity for creativity. the time, re-work will be inevitable.
Task 1: Waterfall vs Agile
Waterfall

PROS CONS

❑Clear Milestones ❑Inflexibility to changes


❑A rigid structure ❑Lack of customer involvement
❑Clear understanding of Deliverables ❑Only suited for projects with clear
❑Fixed budget & Timeline deliverables
❑Difficulties in accommodating scope
changes
Agile

PROS CONS

❑Flexibility ❑Lack of long-term planning


❑Customer involvement ❑Lack of clear milestones
❑Rapid delivery ❑Difficulties in delivering a clear
❑Allows for iteration deliverable
❑Lack of a rigid structure
Waterfall vs. Agile

© 2021 Cognizant
Waterfall

PROS CONS

❑A well-defined methodology that has ❑Any changes in the requirements are


been used in every business vertical. costly.
❑Rigid requirements definitions inhibit
❑Provides a very detailed definition of creativity.
the deliverables, timelines and
❑Requirements can be misinterpreted
milestones from the very beginning. because the developers interact less with
❑Reduces the amount of time stakeholders.
developers spend interacting with ❑Excessive documentation is required to
stakeholders. create detailed definitions of the
deliverables, timelines and milestones prior
❑Team deliverable is predictable. to the beginning of the project.
Agile

PROS CONS

❑Priorities and requirements can be ❑Deliverables, timelines and


easily adjusted throughout the project. milestones are less predictable.
❑The team is empowered to make ❑Stakeholders need to invest a lot
decisions, define deliverables and of time throughout the project.
milestones, take responsibility for the ❑Documentation is not created,
delivery. which could be a problem for
❑Time to market is significantly regulated industries.
decreased. ❑Since the requirements change all
❑More opportunity for creativity. the time, re-work will be inevitable.
Task 2: User Stories
USER STORY TEMPLATE

User Role
(Who?)

As a <type of user>, I want to <immediate goal> so that


<business outcome>.

End Result Desired Function


(Why?) (What?)

Who, What, Why..


What is NOT here?
Good examples
• As a customer, I need to use a debit card to make purchases so that I only
use cash on hand for purchases.
• As a customer, I need to search for health care providers so that I can choose
the lowest cost option.
• As a customer, I need to edit my profile information so that I don’t have to
User enter my personal details before each interaction.
• As an end-user, I need to find a pediatrician health care provider in my

Story network in my local area so that I may take my kids to the doctor.

Bad examples
Examples • Our new e-commerce system should take credit cards (no particular
viewpoint)
• New users must take the HRA (why?)
• The system must be written in on the .net platform (no business value)
• A user must find the website easy to use (not testable)
• Show pediatricians by zip code (for whom and why?)

21
Agile

2021

© 2021 Cognizant
Task 3: Role Assignments
and Ceremonies
Sprint Ceremonies Cadence
Scrum -- Roles, Ceremonies and Artifacts

Roles Ceremonies Artifacts

Product Sprint Product


Owner Planning Backlog

Sprint
Scrum Master Sprint Review Backlog

Burn Down
Development Sprint Chart
Team Retrospective

Daily Scrum
Daily Stand Up

Purpose: Inspect & Adapt


event
• the team inspects progress What did you
towards the sprint goal and do yesterday?
adapts accordingly
Attendees: Scrum Team
What will you
Rules:
do today?
▪ 15 min time box
▪ Everyone stands
▪ Same time & place
every day Is anything in
▪ Everyone answers three your way?
questions
Scrum Roles

Product Owner Scrum Master Team

The voice of the The Agile coach The ones who make
customer it happen
Product Owner
▪ Maximize the value of the Product backlog and work of the team

▪ The PO is sole responsible person for managing the Product


Backlog

▪ The PO may be assisted by Technical POs to manage the


Product Backlog, but PO remains accountable

▪ Creating and clearly communicating Product Backlog items


(Epics/Features/User Stories) Product Owner
▪ Prioritize Features and stories according to the market value The voice of the
▪ Accepts or rejects the work customer
▪ Decides what is desired in a release after consulting all the
stakeholders
Scrum Master
▪ Is a Change Agent - Gathers support from everyone to make
sure that change is accepted

▪ Is a Coach – Train, mentor and make the team speak the same
language

▪ Is a Protector – Protects the team from the outside interferences

▪ Is a Problem Solver – Works with stakeholders to escalate / Scrum Master


resolve impediments so that the team achieve the sprint goal

▪ Is a Process Owner – Teach Scrum to everyone and ensure that The Agile coach
the right things are done the right way

▪ Is a true leader who serve the Scrum Team and the larger
organization
The Team
▪ A cross functional and self-managing team

▪ Empowered and autonomous

▪ Creating a plan for the Sprint, the Sprint Backlog;

▪ Instilling quality by adhering to a Definition of Done;

▪ Adapting their plan each day toward the Sprint Goal; and, Team
▪ Holding each other accountable as professionals.
The ones who make
it happen
Activity - Responsibilities (5 minutes)
Skillsets Value Sprint Backlog
responsibility Product Backlog Individual
assigned Team Self-Manage

• Teams should contain the necessary Skillsets


________ needed to complete the
items.
• Story-level estimates are done by the __________.
Team
• Task-level estimates are done by the ___________.
Individual
• Teams are not ___________
assigned responsibility
work, instead they accept _____________.
• Teams are responsible for creating and maintaining the _____________.
Sprint Backlog
• Teams members can ask for clarification of items in the Product
_____________.
Backlog
• Teams ___________
Self-Manage to complete items that have ____________.
Value
Activity - Scrum Role & Responsibilities (5 Minutes)
Which Scrum role matches each responsibility?

Remove Impediments Creates initial set of Estimates stories Provides Technical Delivery
Acceptance Criteria alternatives
Scrum Master Product Owner Team Team
Commits to work for a given Represent the business and Answers questions on User Attends Backlog Refinement
Sprint customer Stories
Team Product Owner Product Owner Team
Orders Product Backlog Assigns stories and tasks for Owns the Product Backlog Brings in Agile and scrum
development practices
Product Owner Team Product Owner Scrum Master
Build the Sprint Backlog Estimate Tasks Provides a Shield from Facilitates Scrum Meetings
Distractions
Team Team Scrum Master Scrum Master
Attends QI planning Attends Sprint Planning Attends Scrum of Scrums Owns the delivery of Sprint
All commitments
Team Scrum Master Team
Scrum Values
Scrum framework

Agile Coach
Daily Scrum
Scrum Master 24 hours

Sprint Review
The Team 1-4 weeks

Potentially
Product Backlog Shippable
Sprint
Backlog Product
Increment

Release Cycle

Product Owner

Mike Cohn; Mountain Goat Software Sprint Retrospective


Scrum Events
Agile

2021

© 2021 Cognizant
Task 6: Resource Review
• Scrum process is highly structured and will produce more documentation
than any waterfall project.

• Scrum follows an opportunistic approach to developing functionality. So…don’t


ask for a project plan; ask for the release plan.

• It takes time for a team to learn and internalize the process. Understand the
organizational change management aspect of scrum and the mental shift
required to be successful.
Learnings
• Know the 5+5 rule: it takes five sprints to learn what to do and five sprints to
learn to do it better.

• Scrum is focused on enablement of the team as a whole. Every member of the


team is valuable, has a specific role and knows what to do to make the team
successful (like a Marine combat team)

• Early sprint results will be uneven; look for trends. Don’t be alarmed by great
results in sprint 2 but poor results in sprint 3.

38
Planning Onion and different levels of Planning

▪ It's a common myth that Agile and


Scrum requires little or no planning

▪ Planning is a regular event in an Agile


environment and occurs regularly, even
daily
Bring Agile to Your Team

1 2 3
Be Adaptive Focus on the Deliver High Value
In our industry, change is
Customer and High Quality
inevitable. Plans and people
Any Agile project only exists Agile is not just about making
must be flexible in order to
because a customer has asked something happen fast. Speed
remain competitive in the
for something. The customer is important, but what you
market. Welcome feedback
is a person with a problem that deliver is more important.
and change throughout
you can help solve. Plan Focus on what brings the most
projects, and view failure as an
around their needs, listen to value to the customer, and
opportunity to grow. Agile
their feedback, and evolve limit work in progress so those
teams aim to continuously
your strategies as their items are done right.
improve, not remain the same.
requirements change.
Bring Agile to Your Team

4 5 6
Simplify Communicate Put Ownership on
Accomplish tasks by focusing
Constantly the Team
only on what is most
Transparency is one of the Agile practices aim to
important. Maximize the time
main pillars of Agile. eliminate blame on
spent on delivering what the
Communicate among teams individuals. Team members
customer needs, not on
and with customers as often share responsibility for the
unnecessary work. Strive for
as possible, preferably face-to- whole project, not just certain
efficiency while still delivering
face. Be sure that everyone aspects. If something goes
quality.
involved in a project is wrong, the whole team must
informed and aware of what is resolve the problem. If a
happening in the project. project is successful, the whole
team receives praise.
Bring Agile to Your Team

7 8 9
Stand Up Visualize Work Reflect
Even if your team is not using a When the work in a project is Like standups, business
pure Scrum framework, daily represented visually, it is easier retrospectives are a powerful
standups are a great way to for teams to recognize and Agile strategy. Teams should
keep team members aligned on concentrate on the highest strive to improve continuously
project progress and priority tasks. Real-time just like their products do.
roadblocks. Standups foster displays of work allow teams to Hold team retrospectives
improved communication and quickly respond to changes and regularly to determine what is
visibility among teams, and easily identify bottlenecks in and is not working well among
encourage teams members to workflows in order to assist the team and with customers
share ideas and help each other each other in resolving issues. to improve relationships and
succeed. efficiency.
What is an Agile Release?
Agile release is planned delivery of product features over a series of sprints. The length of release depends on the
product, domain, market conditions etc.

- - - Release 1- - - - - - - Release 2- - - - - - - - Release 3- - - -

Incremental Delivery
Minimum Viable Product Incremental Release N Incremental Release N + 1
- First release is usually a MVP - Remaining must have and should - Remaining should have and nice to
- Must have features have features have features
- Some should have features - Customer feedback on MVP - Customer feedback
release - Enhancements
- Focus on building the scalable
platform for future releases - Some nice to have features - Full product scope
Velocity Charts
Velocity. By far the single most important word to
any Agile team. Whether you are currently
practicing Agile, looking to adopt within your
organization or trying to achieve your Agile
Nirvana, understanding Velocity is fundamental to
achieving success with Agile. Beyond a basic
understanding, it’s important that you learn how to
measure, influence and improve upon it. Velocity
Like burndown charts, velocity charts are is a point-in-time metric (unit), used to accurately
invaluable as they provide insight into how a team measure the value that your product development
is progressing with their current and any previous teams are delivering to your business.
iterations.

44
Agile
Metrics
Burndown Charts
The blue bars represent work remaining,
and the green bars represent the work
completed.

The chart is created daily for the project


leadership.

It provides “project intelligence” for


leadership, and visibility into how the team
is progressing on a daily basis.

If a team becomes blocked by an issue, it


will show up in the chart as the blue bars
will level off or increase.

45

You might also like