AGILE PRIMER
AGENDA
• Overview
• Agile as a Mindset
• Value 1 - Individuals and Interactions over Processes and
Tools
• Value 3 - Customer Collaboration over Contract Negotiation
• 12 Agile Principles
• Principle 2 - Welcome Changing Requirements, Even Late in
Development
• Principle 4 - Business People and Developers Must Work
Together Daily Throughout the Project
• Principle 6 - Face-to-Face Conversation is the Most Efficient
and Effective Method of Conveying Information
• Principle 8 - Agile Processes Promote Sustainable
Development
• Principle 10 - Simplicity is Essential
• Principle 12 - The Team Reflects on How to Become More
Effective
• Daily Stand-up Meetings
OVERVIEW
• Agile is a way to develop software systems
• Term was coined in 2001
• Approaches employed are much older
• Agile aligns with how people intuitively run
projects
• Umbrella term used to describe a variety
of methods, approaches and frameworks
AGILE
APPROACHES
• Team Based Approaches
• Scrum
• XP (eXtreme Programming)
• Scaling Approaches
• SAFe (Scaled Agile Framework)
• Disciplined Agile
• Agile Mindset
• 4 values
• 12 principles
• Many practices
AGILE AS A
MINDSET
• Agile is a way of thinking
• A view of how to collaborate with others and
get work done
• Big on sharing information
• Uses lots of visualizations
• People doing the work are involved in planning
and decision-making
4 AGILE
VA LU E S
• Outlined in the Agile Manifesto
• Created in February 2001
• Meeting of software and methodology
experts
• Forefront of emerging agile methods
VALUE 1 -
INDIVIDUALS AND
INTERACTIONS OVER
PROCESSES AND
TOOLS
• Focus on individuals and interactions
• Work is done by people, not tools
• Problems are solved by people, not
processes
• Products are accepted by people
• Develop individuals and emphasize
productive interactions
• Processes and tools can help, but
projects are about people
• Success requires working in the
unpredictable world of people
VALUE 2 - WORKI N G
SOFTWARE OVER
COMPREHENSIVE
D O C U M E N TAT I O N
• Delivering Purpose and Business Value
• Focus on delivering working software
rather than paperwork
• Characteristics of Developers
• Detail-oriented and process-driven
• May lose focus on the purpose of
software projects
• Reminder of Project Commission
• Build something useful
• Documentation at the expense of
working software is not helpful
VALUE 3 -
CUSTOMER
C O L L A B O R AT I O N
OVER CONTRACT
N E G O T I AT I O N
• Tradeoffs between development team and
business
• Flexible and accommodating approach
• Avoid fixed and uncooperative contracts
• Expect changes in customer preferences or
priorities
• Work towards new goals
• Build trusting relationship with customer
• Flexible contract models
• Shared definition of 'done'
VA LU E 4 -
RESPONDING TO
CHANGE OVER
FOLLOWING A PLAN
• Alfred Korzybski's quote warns against blindly
following maps
• Trust what you see and act accordingly
• Initial plans for complex projects may be
inadequate
• Based on insufficient information
• Agile projects have visible queues of work
and plans
• Backlogs and task boards
• Broader engagement in planning process
12 AGILE
PRINCIPLES
• Four values expanded with twelve guiding
principles
• Provides a larger view for agile
approaches
P R I N C I P L E 1 - S AT I S F Y
T H E C U S T O M E R
T H R O U G H E A R LY A N D
C O N T I N U O U S D E L I V E RY
O F VA LUA B L E S O F T WA R E
• Early and continuous delivery of value
• Structure project and development team
to deliver value early and frequently
• Focus on delivering valuable software
• Not completed work products such as
WBS, documentation, or plans
• Stay focused on the end goal
• Software for software projects, product or
service for other types of projects
PRINCIPLE 2 -
WELCOME CHANGING
REQUIREMENTS, EVEN
LATE IN D EVELOPMEN T
• Changes in Projects
• Good for delivering late-breaking, high-
priority features
• Seen as unfavorable in non-agile projects
• Considered as scope creep or deviation
from plan
• Agile Approaches for Managing Change
• Favor lightweight, high-visibility techniques
• Continuously updating and prioritizing
changes in backlog
• High-visibility approach keeps project
adaptive and flexible
PRINCIPLE 3 -
DELIVER WORKING
SOFTWARE
F R E Q U E N T LY
• Releasing work to a test environment and getting feedback
quickly is important for agile teams.
• Teams need input on their work to see if they can
proceed or if a change of course is required.
• Delivering within a short timeframe keeps the product owner
engaged and the dialogue about the project going.
• Frequent deliveries and demos provide opportunities
to get feedback and learn of new requirements or
changes in business priorities.
• It's better to get feedback early and often to avoid going too
far down the wrong track.
• It's human nature to want our work to be perfect
before sharing it, but we do ourselves a disservice by
holding on to our work for too long.
P R I N C I P L E 4 - B U S I N E SS
P E O P L E A N D
D E V E LO P E R S M U S T
W O R K T O G E T H E R D A I LY
T H R O U G H O U T T H E
P R O J E C T
• Business people and developers work together throughout
the project
• Frequent deliveries and demos
• Daily face-to-face engagement
• Written documents, e-mails, and telephone calls are less
efficient
• Face-to-face interactions are more efficient
• Working together leads to better understanding
• Developers can suggest solutions and alternatives
• Business representatives can fine-tune their requests
• Regular interactions are important
• Proxy customer can be used if daily interactions are
not possible
PRINCIPLE 5 -
BUILD PROJECTS
A R O U N D M O T I VAT E D
INDIVIDUALS
• Best people more important than best processes and tools
• Smart and motivated team members critical for
project success
• Agile approaches promote empowered teams
• Autonomy to organize and plan work
• Emphasis on craftsmanship, collaboration, and
teamwork
• Knowledge work projects require unique expertise
• Team members do best when allowed to make own
decisions
• Leaders provide support for team success
• Recognize team members as experts in their field
P R I N C I P L E 6 - FA C E -T O -
FA C E C O N V E R S AT I O N I S
T H E M O S T E F F I C I E N T
A N D E F F E C T I V E M E T H O D
O F C O N V E Y I N G
I N F O R M AT I O N
• Written documents vs face-to-face
communication
• Written documents are slow and costly to
produce
• Face-to-face communication is quick and
rich in information
• Customizing agile methods for each project
• Face-to-face communication may not be
suitable for all projects
• Appropriate level of different format
communications need to be introduced
PRINCIPLE 7 -
WORKING SOFTWARE
IS THE PRIMARY
MEASURE OF
PROGRESS
• Primary measure of progress: Working software/systems
• Shifts focus to working results rather than
documentation and design
• Assess progress based on emerging product/service
• Questions like “How much of the solution is done
and accepted?” preferred over “Is the design
complete?”
• Results-oriented view of project
• Interim deliverables and partially completed work
get no external recognition
• Focus on project's primary goal: a product that
delivers value to the business
PRINCIPLE 8 - AGILE
PROCESSES PROMOTE
S U S TA I N A B L E
DEVELOPMENT
• Agile methods strive to maximize value over the long
term
• Prefer sustainable pace over intense development
periods
• Long workdays lead to burn-out, mistakes, and
resignations
• Organization loses talent and domain knowledge
• Hiring and integrating new members is slow and
expensive
• A sustainable pace leads to a happier and more
productive team
• Less tension and improved work relationships
P R I N C I P L E 9 -
C O N T I N U O U S AT T E N T I O N
T O T E C H N I C A L
E XC E L L E N C E A N D G O O D
D E S I G N E N H A N C E S
A G I L I T Y
• Balance high-value features with continuous
attention to design
• Allows for long-term value without difficulty
in maintenance or extension
• Preventative maintenance and code cleanup
preferable to fixing problems
• Helps project run smoothly and speeds up
progress
• Refactoring necessary for stable, maintainable
code over the long term
• Ensure development team has enough time
for housekeeping, cleanup, and
simplification
PRINCIPLE 10 -
SIMPLICITY IS
ESSENTIAL
• Reliability in Simplicity
• Up to 60% of built features are used infrequently or never
• Complex systems have increased potential to be
unreliable
• Agile Approaches Focus on Simplicity
• Boiling down requirements to essential elements only
• Complex projects have longer completion time and more
potential failure points
• Building the Simplest Thing That Could Possibly Work
• Plain-vanilla version built first
• Mitigates risk and boosts sponsor confidence
P R I N C I P L E 1 1 - T H E
B E S T A R C H I T E C T U R E S ,
R E Q U I R E M E N T S , A N D
D E S I G N S E M E R G E F R O M
S E L F- O R G A N I Z I N G
T E A M S
• Allows people to find an approach that works
best for them
• Results in better work and higher levels of
ownership and pride
• Ideas created by the team are already aligned
and approved
• Eliminates the need for ideas to be 'sold' to
the team
• Team members are closest to the project's
technical details
• Best able to spot implementation issues
and opportunities for improvement
PRINCIPLE 12 - THE
TEAM REFLECTS ON
HOW TO BECOME
MORE EFFECTIVE
• Gather lessons learned while still applicable and
actionable
• This means gathering them during the project
• Ensure to adjust the remainder of the work
based on what is learned
• Agile approaches employ retrospectives
• Done at the end of each iteration
• Regular opportunities to review the process
• Advantage of frequent retrospectives
• Problems and issues are not forgotten
• Compared to a single lessons learned review at
the end of a project
UNLIMITED
AGILE
PRACTICES
• Thousands of agile practices documented in
books, blogs, and conferences
• Not necessary to learn them all
• Understanding core set allows for
tailored ways of working
• Common agile practices highlight reoccurring
agile values
• Popular techniques often seen on Scrum
teams
• Daily Stand-up Meetings
• Quick, inter-team coordination meets held daily
• Team members share their progress, plans, and
issues
D A I LY • Agile Concepts
• The team owns the work - members report to
S TA N D - U P each other
MEETINGS • Transparency - openly share information for
better decisions
SPRINT DEMO
• Sprint Demo
• Team demonstrates work at end of sprint
• Confirms what to work on next
• Agile Concepts
• Frequent delivery of working software
• Team owns the work
• Focus on business value
• Transparency in sharing information
• Product Backlog: Ordered list of work for the
project/product
• Prioritized by Product Owner based on business
value
• Creates single queue of work items to focus on
• Agile Concepts
PRODUCT • Focus on business value: Prioritized by product
BACKLOG owner
• Transparency: All work items in single, highly
visible queue
• Eliminates side-agreements or under-the-table
agenda items
• Change requests prioritized in backlog, brings
visibility
RELEASE
PLANNING
• Release Planning
• Product owner and development team
meet to discuss, prioritize and estimate
features
• Better insights into technical work and
stronger commitment to estimates
• Agile Concepts
• Focus on business value
• Transparency
• Features and stories refined and
estimated to create release roadmap
• Focus on Business Value
• Work is prioritized by the product owner
• Engage the Team in Decision Making
• The team makes local decisions about how best
to undertake the work
• Self-organize and decide the order of technical
SPRINT tasks
PLANNING • Transparency
• All estimates and progress are discussed openly
within the project team
• Details about progress, issues or setbacks are
discussed daily at the daily stand-up meeting
• Retrospective Workshops
• Held at the end of each sprint/iteration to
review progress, process and people aspects of
the project
• Results in suggestions for improvement in the
next sprint/iteration
• Allows for rapid inspection, adaptation and
RETROSPECTIV improvement throughout delivery
E • Agile Concepts
• Inspect and Adapt: Team reflects on becoming
more effective and adjusts behavior accordingly
• Engage the team in decision making: Best
results emerge from self-organizing teams
• Transparency: Be open to discussing issues and
ways to improve
K A N B A N / TA S K
BOARDS
• Kanban/Task Boards
• Large public displays of work done, in-process,
and waiting to start
• Make the team's work visible
• Agile Concepts
• Transparency: shows what is being worked on,
what has been completed, and what is coming
next
• Engage the team in decision making: team
members can better alert us to potential
problems and solutions