PMI-ACP : Lesson 1 : Agile Framework
-
Upload
saket-bansal -
Category
Technology
-
view
1.549 -
download
4
description
Transcript of PMI-ACP : Lesson 1 : Agile Framework
Saket Bansal
PMP, PMI-ACP , CSM , ITIL V3 F
Agile Framework
www.izenbridge.com 1
Essence of Agile
Agile Values and Principles
Overview of Agile Methods
Agile and Traditional Development Methodology
APM (Agile Project Management Framework)
www.izenbridge.com 2
In the struggle for survival, the fittest win out at the expense of
their rivals because they succeed in adapting themselves best
to their environment.
—Charles Darwin
www.izenbridge.com 3
The United States Department of Defense (DoD) and NASA
have used iterative and incremental development (IID) since
the 1950s
In the 1960s, Evolutionary project management(Evo) was
conceptualized by Thomas Gilb. Evo recommends one- to
two-week iterations, delivery of product each iteration
In 1986, “The New New Product Development Game,” a
whitepaper published by Takeuchi and Nonaka
Takeuchi and Nonaka discuss the “rugby approach” of
dedicated, self-organizing teams
www.izenbridge.com 4
“The… ‘relay race’ approach to product development…may
conflict with the goals of maximum speed and flexibility.
Instead a holistic or ‘rugby’ approach—where a team tries
to go the distance as a unit, passing the ball back and
forth—may better serve today’s competitive requirements.”
The New New Product Development Game
www.izenbridge.com 5
Source: Wikipedia-Photo taken by Maree Reveley (aka Somerslea)
www.izenbridge.com 6
The 1990s saw a flurry of agile approaches
Scrum at Easel Corporation
Extreme Programming
Clear Crystal
IBM’s Rational Unified Process
Dynamic Systems Development Method (DSDM)
www.izenbridge.com 7
Agile software development is a group of software
development methods based on iterative and incremental
development, where requirements and solutions evolve
through collaboration between self-organizing, cross-
functional teams. It promotes adaptive planning, evolutionary
development and delivery, a time-boxed iterative approach,
and encourages rapid and flexible response to change. It is a
conceptual framework that promotes foreseen interactions
throughout the development cycle
www.izenbridge.com 8
The Salt Lake Valley,
Snowbird, Utah
The Agile Manifesto was
written
In 2001, a group of 17
“lightweight"
methodologists met.
The meeting also included the
representatives of
eXtreme Programming (XP)
Scrum
DSDM
Adaptive Software
Development
Photo taken by Scott Catron
www.izenbridge.com 9
We are uncovering better ways of developing software by doing
it and helping others do it. Through this work we have come to
value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right,
we value the items on the left more.
www.izenbridge.com 10
Focus on empowered, self-managing teams
Autonomous teams do not need the day-to-day intervention
of management
Management protects team from outside interference
Agile teams are amalgamation of varied professional skills
Agile team members are able to step in for each other as
necessary
www.izenbridge.com 11
Traditionally we measure progress by the percent complete of
the functional milestones
Agile teams provide actual working product as a status
report, “product review”
Design changes as the system is built, results in outdated
documentation
Agile teams prefer face-to-face communication over
documentation which is simpler, faster, and more reliable.
www.izenbridge.com 12
Contract negotiation, Identify and define everything and
spells out the payment and date specifications
Customers become a part of the development process
Writing specs down and throwing them over the fence is
simply not effective
www.izenbridge.com 13
It’s much easier to respond to change when the organization
and the customer share a clear understanding of the project’s
status
In plan-driven environments, all requirements are specified
up front, broken down to the task level and estimated
Agile plans follow more of a rolling wave approach using top-
down planning
www.izenbridge.com 14
The empirical model of process control provides and exercises
control through frequent inspection and adaptation for
processes that are imperfectly defined and
generate unpredictable and unrepeatable outputs.
www.izenbridge.com 15
www.izenbridge.com 16
Empiricism asserts that knowledge comes from experience
and making decisions based on what is known.
Three pillars uphold every implementation of empirical
process control:
• Transparency
• Inspection
• Adaptation
www.izenbridge.com 17
Agile Principles
www.izenbridge.com 18
Our highest priority is to satisfy the customer through early
and continuous delivery of valuable software.
Welcome changing requirements, even late in development.
Agile processes harness change for the customer’s
competitive advantage.
Deliver working software frequently, from a couple of weeks
to a couple of months, with a preference to the shorter
timescale
Business people and developers must work together daily
throughout the project.
19 www.izenbridge.com
Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get
the job done
The most efficient and effective method of conveying
information to and within a development team is face-to-face
conversation.
Working software is the primary measure of progress.
Agile processes promote sustainable development. The
sponsors, developers, and users should be able to maintain a
constant pace indefinitely.
20 www.izenbridge.com
Continuous attention to technical excellence and good design
enhances agility
Simplicity—the art of maximizing the amount of work not
done—is essential.
The best architectures, requirements, and designs emerge
from self-organizing teams.
At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly.
21 www.izenbridge.com
We increase return on investment by making continuous flow
of value our focus.
We deliver reliable results by engaging customers in frequent
interactions and shared ownership.
We expect uncertainty and manage for it through iterations,
anticipation, and adaptation.
We unleash creativity and innovation by recognizing that
individuals are the ultimate source of value, and creating an
environment where they can make a difference.
We boost performance through group accountability for
results and shared responsibility for team effectiveness.
We improve effectiveness and reliability through situational
specific strategies, processes and practices.
www.izenbridge.com 22
Agile Methods
www.izenbridge.com 23
Phases
Inception, Elaboration, Construction, Transition
Disciplines
Model, Implementation, Test, Deployment, Configuration
Management, Project Management, Environment
Philosophies
Your staff knows what they're doing, Simplicity, Agility,
Focus on high-value activities, Tool independence, You'll
want to tailor the AUP to meet your own needs
24 www.izenbridge.com
Frequent Delivery of Usable Code to Users (required) Reflective Improvement (required) Osmotic Communication Preferably by Being Co-Located
(required) Personal Safety Focus Easy Access to Expert Users Automated Tests, Configuration Management, and Frequent
Integration
25 www.izenbridge.com
Principles
• User involvement is the main key, The project team must be empowered, Frequent delivery of products, Delivering a system that addresses the current business needs, Development is iterative and incremental, Changes are reversible, High level scope and requirements should be base-lined, Testing is carried out throughout the project life-cycle, Communication and cooperation among all project stakeholders
Techniques
• Timeboxing, MoSCoW, Prototyping, Testing, Workshop, Modelling
26 www.izenbridge.com
Values
• Communication, Simplicity, Feedback, Courage, Respect
Activities
• Coding, Testing, Listening, Designing
Practices
• Pair programming, Planning Game, Test Driven
Development, Whole team, Continuous Integration, Design
Improvement, Small Releases, Coding Standards, Collective
Code Ownership, Simple Design, System Metaphor,
Sustainable Pace
27 www.izenbridge.com
Activities • Develop Overall Model, Build Feature List, Plan By Feature,
Design By Feature, Build By Feature, Milestones Best practices
• Domain Object Modelling • Developing by Feature • Individual Class (Code) Ownership • Feature Teams • Inspections • Configuration Management • Regular Builds • Visibility of progress and results
28 www.izenbridge.com
Scrum Team
Events
• Sprints
• Sprint Planning Meeting
• Sprint Review Meeting
• Daily Scrum
• Sprint Review Meeting
• Sprint Retrospectives
Artifacts
• Product Backlog
• Sprint Backlog
www.izenbridge.com 29
Agile Vs. Traditional
www.izenbridge.com 30
A project is still a project:
• Vision
• Life cycle
• Requirements
• Schedule
• Team
• Communication mechanisms
www.izenbridge.com 31
Waterfall Model Agile Project Life Cycle
www.izenbridge.com 32
www.izenbridge.com 33
Traditional Agile : Iterative
Plan as you go
Feature-breakdown
structure
User stories
Release plan
Story boards
Deliver as you go
Learn every iteration ,
Adapt
Manage team
Plan all in advance
Work-breakdown
structure
Functional specs
Gantt chart
Status reports
Deliver at the end
Learn at the end
Follow the plan
Manage tasks
www.izenbridge.com 34
Agile Project Management Framework
www.izenbridge.com 35
Based On Adaptive Software Development (Highsmith 2000). www.izenbridge.com 36
Envision: Determine the product vision and project objectives
and constraints, the project community, and how the team
will work together
Speculate: Develop a capability and/or feature-based release
plan to deliver on the vision
Explore: Plan and deliver running tested stories in a short
iteration, constantly seeking to reduce the risk and
uncertainty of the project
Adapt: Review the delivered results, the current situation,
and the team’s performance, and adapt as necessary
Close: Conclude the project, pass along key learning, and
celebrate.
www.izenbridge.com 37
What is the customer’s product vision?
What are the key capabilities required in the product?
What are the project’s business objectives?
What are the project’s quality objectives?
What are the project constraints (scope, schedule, cost)?
Who are the right participants to include in the project
community?
How will the team deliver the product (approach)?
www.izenbridge.com 38
The elevator test statement—an explanation of the project to
someone within two minutes—takes the following format:
For (target customer)
Who (statement of the need or opportunity)
The (product name) is a (product category)
That (key benefit, compelling reason to buy)
Unlike (primary competitive alternative)
Our product (statement of primary differentiation)
39 www.izenbridge.com
Clients/customers
Project leader
Product manager
Executive Sponsor
Project Objective Statement
Business Objectives
Tradeoff matrix
Exploration factor
Delay cost
Capabilities
Quality Objectives
Performance/quality
attributes
Architectural Guidelines
Issues/risks
40 www.izenbridge.com
Speculating establishes a target and a direction.
Speculating isn’t wild risk-taking but “conjecturing
something based on incomplete facts or information.”
The Speculate phase spotlights product and project.
Produce a refined list of scope items
Develop a Release
Develop detailed Iteration Plans for the next Iteration
www.izenbridge.com 41
Product Backlog
• The objective of creating a product backlog is to expand
the product vision, through an evolutionary requirements
definition process, into a product feature list, or backlog.
Release Planning
• A release plan presents a roadmap of how the team intends
to achieve the product vision within the project objectives
and constraints identified in the project data sheet
42 www.izenbridge.com
Iteration 0 helps teams balance anticipation with
adaptation.
The “0” implies that nothing useful to the customer—stories,
in other words—gets delivered in this time period. However,
the work is useful to the team.
43 www.izenbridge.com
44 www.izenbridge.com
Iteration Planning and Monitoring
Technical Practices
Project Community
www.izenbridge.com 45
A traditional project manager focuses on following the plan,
whereas an agile leader focuses on adapting successfully to
inevitable changes
Team has to answer critical questions
• Is value, in the form of a releasable product, being
delivered?
• Is the quality goal of building a reliable, adaptable product
being met?
• Is the project progressing satisfactorily within acceptable
constraints?
• Is the team adapting effectively to changes imposed by
management, customers, or technology?
www.izenbridge.com 46
Conduct the Project Closure , Pass along key learning and
celebrate.
www.izenbridge.com 47
Saket Bansal
M: 9910802561
Web: www.iZenBridge.com
Twitter: Saket_tg
LinkedIn: www.linkedin.com/in/saketbansal
www.izenbridge.com 48