Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Copyright 2014, Simplilearn, All rights reserved.1
PMI® & ACP are the registered marks of Project Management Institute, Inc. Copyright 2014, Simplilearn, All rights reserved.
Agile Methodologies–I
PMI®—Agile Certified Practitioner (PMI-ACP)®
Copyright 2014, Simplilearn, All rights reserved.2
● Explain some of the Agile methodologies and techniquesAfter completing
this lesson, you will
be able to:
Objectives
Copyright 2014, Simplilearn, All rights reserved.3
A number of core Agile methodologies share the same philosophy expressed in the Agile Manifesto,
however, there are different implementations with their own practices, processes, and techniques.
The PMI-ACP certification references several core methodologies:
Agile Methodologies, Frameworks, and Processes
Scrum
Extreme Programming
(XP)
Lean Kanban
Crystal
Dynamic Systems
Development Method
(DSDM Atern)
Feature Driven
Development (FDD)
Agile Project
Management (APM)
OpenUP
Copyright 2014, Simplilearn, All rights reserved.4
Scrum is one of the leading Agile techniques developed in the 1990s by Ken Schwaber and Jeff
Sutherland.
Features that make scrum popular:
● Simplicity and proven results
● Enables other Agile engineering techniques
● Emphasizes small teams and team empowerment
● Welcomes changes to requirements
● Allows working from a single source of prioritized work items
● Daily status meetings
● Team commitment to a potentially shippable increment during a ‘Sprint’
Scrum
Copyright 2014, Simplilearn, All rights reserved.5
The Scrum roles are important features of Scrum and not using these specific terms is often referred
to as ‘Scrum-but.’
Scrum defines three roles:
Scrum Roles
Product Owner Scrum Master Development Team
Responsible for the
project’s success by
defining the project
vision, requirements, and
priorities.
Accountable to the team
to remove impediments
that will prevent them
from achieving the goals
of the Product Owner.
Team comprises people
with a mix of roles and
self-organizes to
determine how to best
meet the goals of the
Product Owner.
Copyright 2014, Simplilearn, All rights reserved.6
Following are some points to be kept in mind for each Scrum role:
Scrum Roles—Tips and Tricks
● Works to assist both the team and the Product Owner.
● Guides the Product Owner how to maximize Return On Investment (ROI).
● Improves the lives of the Development Team by facilitating creativity and empowerment.
● Resists the temptation to "manage" the team and to add more important work after the
sprint is already in progress.
● Be willing to make hard choices during the sprint planning meeting.Product Owner
Scrum Master
● The team has the autonomy to choose how to best meet the goals, and is held responsible
for them.
The Team
Copyright 2014, Simplilearn, All rights reserved.7
Following are some key Scrum terms:
● Product Backlog: All work to be performed in the foreseeable future, both well-defined and
requiring further definition.
● Sprint: A period of 30 days or less within which a set of work will be performed to create a
deliverable.
● Sprint Backlog: A well defined requirement that can be worked on with relatively little change over
a period of 30 days or less and will result in a tangible, potentially shippable incremental
deliverable.
● Scrum: A daily meeting at which progress and impediments to progress is reviewed.
Scrum Vocabulary
Copyright 2014, Simplilearn, All rights reserved.8
Scrum defines four required Meetings.
Scrum Meetings
Sprint
planning Daily Scrum
1 2 3 4 5 6 7 8 9 10 …… 30Days
Sprint
review
27 28 29 30
Sprint 1 Sprint 2
Retrospective
1 2 3 4 …..
Sprint 3
Sprint
planning
Each sprint begins with an
eight hour meeting to identify
features and estimate effort.
Four hours for selecting stories
and four hours for estimating.
A 15 minute standing team
meeting where three
questions are answered:
● What was done yesterday?
● What will be done today?
● What blockers are there?
Team showcases
what they have
achieved in the
form of potentially
shippable
deliverable.
At the end of each sprint
the team reflects on
what went well and what
they would like to
improve in the next
sprint.
Copyright 2014, Simplilearn, All rights reserved.9
Project Using Scrum—Example
Given below is a graphical representation of an ideal Agile project that uses Scrum.
Copyright 2014, Simplilearn, All rights reserved.10
Extreme Programming (XP) was developed by Kent Beck and Ward Cunningham in the 1990s to:
● respond to the high cost of changing requirements; and
● institute strong engineering practices to improve software quality.
XP introduced many revolutionary concepts to software development that have now become
standard practices:
● Test Driven Development;
● Continuous Integration;
● Iterations; and
● User Stories.
Extreme Programming
Copyright 2014, Simplilearn, All rights reserved.11
Extreme Programming Process Diagram
The process of XP goes as follows:
Copyright 2014, Simplilearn, All rights reserved.12
Five Core Principles of XP
Extreme Programing builds upon five core principles.
Communication Simplicity Feedback Courage Respect
● Frequent
collaboration
between users
and
programmers.
● Use simple
designs common
metaphors and
application of
patterns.
● Focus on the
simplest
solution.
● Don’t build
more
functionality
than required.
● Refactor
complexity.
● Unit Tests for
feedback from
the system.
● Acceptance
Tests for
feedback from
the customer.
● The Planning
Game for
feedback from
the team.
● Refactor code to
make future
changes easier.
● Throw code
away that is
obsolete.
● Respect for
others;
● Self respect;
● Adopting the
other four
values; and
● Respect gained
from others in
the team.
Copyright 2014, Simplilearn, All rights reserved.13
XP Practices
The XP Practices introduced a range of techniques that are now accepted as standard practices.
Continuous integration; Refactoring or design improvement; Small releases
Pair programming; Planning game; Test-driven development; Whole team
Fine-scale
feedback
Continuous
process
Coding standards; Collective code ownership; Simple design; System metaphor
Shared
understanding
Sustainable pace
Programmer
welfare
Copyright 2014, Simplilearn, All rights reserved.14
Crystal Methodologies
Different levels of governance and visibility were
required based on the ‘type’ of project.
Crystal Clear: For small teams working on
projects with low risk to life and using
discretionary monies. In the graph, the projects
that fall on the far left belong to the category of
‘Crystal Clear.’
Crystal Red: For a larger project dealing with life
and death implications which would have more
governance, documentation, and control gates.
The projects on the far right belong to the
category of ‘crystal red’, in the graph.
Copyright 2014, Simplilearn, All rights reserved.15
DSDM was developed in the 1990s to provide more discipline to Rapid Application Development
(RAD). The latest version is called Atern. DSDM uses a prioritization technique called MoSCoW (Must,
Should, Could and Won’t) to determine which requirements should be included in a release or
iteration.
Following graphic represents phases of DSDM:
Dynamic Systems Development Method
Project life-cycle
1. Feasibility phase
2. Foundation phase
3. Exploration phase
4. Engineering phase
5. Deployment phase
Pre-
project
Post-
project
Copyright 2014, Simplilearn, All rights reserved.16
Following are the eight DSDM Atern principles:
Principles of DSDM Atern
Copyright 2014, Simplilearn, All rights reserved.17
Feature Driven Development
Feature Driven Development (FDD) is an iterative and incremental approach to software
development that was developed in the late 1990s by Jeff DeLuca and Peter Coad.
● Features are small pieces of client-valued functions expressed in the form:
"<action> <result> <object>"
● Through decomposition domain models are broken down into subject areas which are then
expressed as business activities.
● Each step in a business activity is a feature.
● Features should not take more than two weeks to complete, or they should be broken down into
smaller pieces.
Copyright 2014, Simplilearn, All rights reserved.18
The steps of feature driven development cycle are as follows:
Feature Driven Development Cycle
[complex/interactivefeature]
Form modeling
team
Conduct domain
walk-through
Study
documents
Develop small
group models
Develop team
models
Refine overall
object model
Write model
notes
Form modeling
team
Build features
list
Form planning
team
Determine
development
Sequence
Implement classes
and methods
Inspect code Conduct unit
test
Form feature
team
Conduct domain
Walk-through
Refine object
model
Study referenced
documents
Develop sequence
diagram(s)
Write class and
method prologue
Design inspection
Develop
Overall
Model
Plan By
Feature
Build
Feature List
Assign
business
activities
to Chief
programmers
Assign classes
to
developers
Promote to build
Design By
Feature
[else]
Build By
Feature
[requirements clear] [else]
Copyright 2014, Simplilearn, All rights reserved.19
Success of XP Methodology—Real Life Example
The graphic below shows the problems faced during the development of IMPRO, an image
processing environment.
The IMPRO Project
The IMPRO Programming Team
● Had to outline the functionality of the system
● Was required to have 20 C Language modules, 5 Assembly
Language (x86) modules, and 9 Executable Helper
Applications
Copyright 2014, Simplilearn, All rights reserved.20
Success of XP Methodology Example—Outcome
The graphic below shows the successful outcome of the IMPRO Project.
● Used most of the extreme programming features
● Outlined the functionality of the system with their
customer
● Coded most parts of the image processing environment
daily for 10-14 hours for 4 months
The IMPRO Project
The IMPRO Programming Team
● Consisted of more than 40,000 lines of code
● Was completed on time
● Had almost 100% bug free functioning software
Copyright 2014, Simplilearn, All rights reserved.21
Quiz
Copyright 2014, Simplilearn, All rights reserved.22
QUIZ
a.
b.
c.
d.
How many roles are there in Scrum?
1
3
12
7 ± 2
None
Copyright 2014, Simplilearn, All rights reserved.23
QUIZ
a.
b.
c.
d.
How many roles are there in Scrum?
1
Answer: b.
Explanation: Scrum identifies three roles: Product Owner, Scrum Master, and the Team.
3
12
7 ± 2
None
Copyright 2014, Simplilearn, All rights reserved.24
QUIZ
a.
b.
c.
d.
Which of the following values is XP based upon?
2
Visualize, Limit WIP, Manage flow, Make management policies, Improve
collaboratively
Trust, Commitment, Value, Delivery
Simplicity, Communication, Feedback, Courage, and Respect
Reduce the cost of requirements changes
Copyright 2014, Simplilearn, All rights reserved.25
QUIZ
a.
b.
c.
d.
Which of the following values is XP based upon?
2
Answer: d.
Explanation: XP is based on 5 values Simplicity, Communication, Feedback, Courage, and
Respect. It was developed to respond to the high cost of requirements change. Answer b
reflects the core practices of Lean Kanban.
Visualize, Limit WIP, Manage flow, Make management policies, Improve
collaboratively
Trust, Commitment, Value, Delivery
Simplicity, Communication, Feedback, Courage, and Respect
Reduce the cost of requirements changes
Copyright 2014, Simplilearn, All rights reserved.26
QUIZ
a.
b.
c.
d.
Which of the following is not one of the XP Practices ?
3
Fine-scale feedback
Shared understanding
Programmer welfare
Courage
Copyright 2014, Simplilearn, All rights reserved.27
QUIZ
a.
b.
c.
d.
Which of the following is not one of the XP Practices ?
3
Answer: a.
Explanation: Courage is one of the XP Principles. The other XP Practice is Continuous
Improvement.
Fine-scale feedback
Shared understanding
Programmer welfare
Courage
Copyright 2014, Simplilearn, All rights reserved.28
● A number of core agile methodologies share the same philosophy expressed
in the Agile Manifesto, however, there are different implementations with
their own practices, processes, and techniques.
● Scrum and Extreme Programing (XP) are some of the Agile practices that are
widely popular.
Summary
Here is a quick
recap of what was
covered in this
lesson:
Copyright 2014, Simplilearn, All rights reserved.29
Copyright 2014, Simplilearn, All rights reserved.PMI® & ACP are the registered marks of Project Management Institute, Inc.
THANK YOU

More Related Content

PMI-ACP Lesson 01 Nugget 2 Agile Methodologies-i

  • 1. Copyright 2014, Simplilearn, All rights reserved.1 PMI® & ACP are the registered marks of Project Management Institute, Inc. Copyright 2014, Simplilearn, All rights reserved. Agile Methodologies–I PMI®—Agile Certified Practitioner (PMI-ACP)®
  • 2. Copyright 2014, Simplilearn, All rights reserved.2 ● Explain some of the Agile methodologies and techniquesAfter completing this lesson, you will be able to: Objectives
  • 3. Copyright 2014, Simplilearn, All rights reserved.3 A number of core Agile methodologies share the same philosophy expressed in the Agile Manifesto, however, there are different implementations with their own practices, processes, and techniques. The PMI-ACP certification references several core methodologies: Agile Methodologies, Frameworks, and Processes Scrum Extreme Programming (XP) Lean Kanban Crystal Dynamic Systems Development Method (DSDM Atern) Feature Driven Development (FDD) Agile Project Management (APM) OpenUP
  • 4. Copyright 2014, Simplilearn, All rights reserved.4 Scrum is one of the leading Agile techniques developed in the 1990s by Ken Schwaber and Jeff Sutherland. Features that make scrum popular: ● Simplicity and proven results ● Enables other Agile engineering techniques ● Emphasizes small teams and team empowerment ● Welcomes changes to requirements ● Allows working from a single source of prioritized work items ● Daily status meetings ● Team commitment to a potentially shippable increment during a ‘Sprint’ Scrum
  • 5. Copyright 2014, Simplilearn, All rights reserved.5 The Scrum roles are important features of Scrum and not using these specific terms is often referred to as ‘Scrum-but.’ Scrum defines three roles: Scrum Roles Product Owner Scrum Master Development Team Responsible for the project’s success by defining the project vision, requirements, and priorities. Accountable to the team to remove impediments that will prevent them from achieving the goals of the Product Owner. Team comprises people with a mix of roles and self-organizes to determine how to best meet the goals of the Product Owner.
  • 6. Copyright 2014, Simplilearn, All rights reserved.6 Following are some points to be kept in mind for each Scrum role: Scrum Roles—Tips and Tricks ● Works to assist both the team and the Product Owner. ● Guides the Product Owner how to maximize Return On Investment (ROI). ● Improves the lives of the Development Team by facilitating creativity and empowerment. ● Resists the temptation to "manage" the team and to add more important work after the sprint is already in progress. ● Be willing to make hard choices during the sprint planning meeting.Product Owner Scrum Master ● The team has the autonomy to choose how to best meet the goals, and is held responsible for them. The Team
  • 7. Copyright 2014, Simplilearn, All rights reserved.7 Following are some key Scrum terms: ● Product Backlog: All work to be performed in the foreseeable future, both well-defined and requiring further definition. ● Sprint: A period of 30 days or less within which a set of work will be performed to create a deliverable. ● Sprint Backlog: A well defined requirement that can be worked on with relatively little change over a period of 30 days or less and will result in a tangible, potentially shippable incremental deliverable. ● Scrum: A daily meeting at which progress and impediments to progress is reviewed. Scrum Vocabulary
  • 8. Copyright 2014, Simplilearn, All rights reserved.8 Scrum defines four required Meetings. Scrum Meetings Sprint planning Daily Scrum 1 2 3 4 5 6 7 8 9 10 …… 30Days Sprint review 27 28 29 30 Sprint 1 Sprint 2 Retrospective 1 2 3 4 ….. Sprint 3 Sprint planning Each sprint begins with an eight hour meeting to identify features and estimate effort. Four hours for selecting stories and four hours for estimating. A 15 minute standing team meeting where three questions are answered: ● What was done yesterday? ● What will be done today? ● What blockers are there? Team showcases what they have achieved in the form of potentially shippable deliverable. At the end of each sprint the team reflects on what went well and what they would like to improve in the next sprint.
  • 9. Copyright 2014, Simplilearn, All rights reserved.9 Project Using Scrum—Example Given below is a graphical representation of an ideal Agile project that uses Scrum.
  • 10. Copyright 2014, Simplilearn, All rights reserved.10 Extreme Programming (XP) was developed by Kent Beck and Ward Cunningham in the 1990s to: ● respond to the high cost of changing requirements; and ● institute strong engineering practices to improve software quality. XP introduced many revolutionary concepts to software development that have now become standard practices: ● Test Driven Development; ● Continuous Integration; ● Iterations; and ● User Stories. Extreme Programming
  • 11. Copyright 2014, Simplilearn, All rights reserved.11 Extreme Programming Process Diagram The process of XP goes as follows:
  • 12. Copyright 2014, Simplilearn, All rights reserved.12 Five Core Principles of XP Extreme Programing builds upon five core principles. Communication Simplicity Feedback Courage Respect ● Frequent collaboration between users and programmers. ● Use simple designs common metaphors and application of patterns. ● Focus on the simplest solution. ● Don’t build more functionality than required. ● Refactor complexity. ● Unit Tests for feedback from the system. ● Acceptance Tests for feedback from the customer. ● The Planning Game for feedback from the team. ● Refactor code to make future changes easier. ● Throw code away that is obsolete. ● Respect for others; ● Self respect; ● Adopting the other four values; and ● Respect gained from others in the team.
  • 13. Copyright 2014, Simplilearn, All rights reserved.13 XP Practices The XP Practices introduced a range of techniques that are now accepted as standard practices. Continuous integration; Refactoring or design improvement; Small releases Pair programming; Planning game; Test-driven development; Whole team Fine-scale feedback Continuous process Coding standards; Collective code ownership; Simple design; System metaphor Shared understanding Sustainable pace Programmer welfare
  • 14. Copyright 2014, Simplilearn, All rights reserved.14 Crystal Methodologies Different levels of governance and visibility were required based on the ‘type’ of project. Crystal Clear: For small teams working on projects with low risk to life and using discretionary monies. In the graph, the projects that fall on the far left belong to the category of ‘Crystal Clear.’ Crystal Red: For a larger project dealing with life and death implications which would have more governance, documentation, and control gates. The projects on the far right belong to the category of ‘crystal red’, in the graph.
  • 15. Copyright 2014, Simplilearn, All rights reserved.15 DSDM was developed in the 1990s to provide more discipline to Rapid Application Development (RAD). The latest version is called Atern. DSDM uses a prioritization technique called MoSCoW (Must, Should, Could and Won’t) to determine which requirements should be included in a release or iteration. Following graphic represents phases of DSDM: Dynamic Systems Development Method Project life-cycle 1. Feasibility phase 2. Foundation phase 3. Exploration phase 4. Engineering phase 5. Deployment phase Pre- project Post- project
  • 16. Copyright 2014, Simplilearn, All rights reserved.16 Following are the eight DSDM Atern principles: Principles of DSDM Atern
  • 17. Copyright 2014, Simplilearn, All rights reserved.17 Feature Driven Development Feature Driven Development (FDD) is an iterative and incremental approach to software development that was developed in the late 1990s by Jeff DeLuca and Peter Coad. ● Features are small pieces of client-valued functions expressed in the form: "<action> <result> <object>" ● Through decomposition domain models are broken down into subject areas which are then expressed as business activities. ● Each step in a business activity is a feature. ● Features should not take more than two weeks to complete, or they should be broken down into smaller pieces.
  • 18. Copyright 2014, Simplilearn, All rights reserved.18 The steps of feature driven development cycle are as follows: Feature Driven Development Cycle [complex/interactivefeature] Form modeling team Conduct domain walk-through Study documents Develop small group models Develop team models Refine overall object model Write model notes Form modeling team Build features list Form planning team Determine development Sequence Implement classes and methods Inspect code Conduct unit test Form feature team Conduct domain Walk-through Refine object model Study referenced documents Develop sequence diagram(s) Write class and method prologue Design inspection Develop Overall Model Plan By Feature Build Feature List Assign business activities to Chief programmers Assign classes to developers Promote to build Design By Feature [else] Build By Feature [requirements clear] [else]
  • 19. Copyright 2014, Simplilearn, All rights reserved.19 Success of XP Methodology—Real Life Example The graphic below shows the problems faced during the development of IMPRO, an image processing environment. The IMPRO Project The IMPRO Programming Team ● Had to outline the functionality of the system ● Was required to have 20 C Language modules, 5 Assembly Language (x86) modules, and 9 Executable Helper Applications
  • 20. Copyright 2014, Simplilearn, All rights reserved.20 Success of XP Methodology Example—Outcome The graphic below shows the successful outcome of the IMPRO Project. ● Used most of the extreme programming features ● Outlined the functionality of the system with their customer ● Coded most parts of the image processing environment daily for 10-14 hours for 4 months The IMPRO Project The IMPRO Programming Team ● Consisted of more than 40,000 lines of code ● Was completed on time ● Had almost 100% bug free functioning software
  • 21. Copyright 2014, Simplilearn, All rights reserved.21 Quiz
  • 22. Copyright 2014, Simplilearn, All rights reserved.22 QUIZ a. b. c. d. How many roles are there in Scrum? 1 3 12 7 ± 2 None
  • 23. Copyright 2014, Simplilearn, All rights reserved.23 QUIZ a. b. c. d. How many roles are there in Scrum? 1 Answer: b. Explanation: Scrum identifies three roles: Product Owner, Scrum Master, and the Team. 3 12 7 ± 2 None
  • 24. Copyright 2014, Simplilearn, All rights reserved.24 QUIZ a. b. c. d. Which of the following values is XP based upon? 2 Visualize, Limit WIP, Manage flow, Make management policies, Improve collaboratively Trust, Commitment, Value, Delivery Simplicity, Communication, Feedback, Courage, and Respect Reduce the cost of requirements changes
  • 25. Copyright 2014, Simplilearn, All rights reserved.25 QUIZ a. b. c. d. Which of the following values is XP based upon? 2 Answer: d. Explanation: XP is based on 5 values Simplicity, Communication, Feedback, Courage, and Respect. It was developed to respond to the high cost of requirements change. Answer b reflects the core practices of Lean Kanban. Visualize, Limit WIP, Manage flow, Make management policies, Improve collaboratively Trust, Commitment, Value, Delivery Simplicity, Communication, Feedback, Courage, and Respect Reduce the cost of requirements changes
  • 26. Copyright 2014, Simplilearn, All rights reserved.26 QUIZ a. b. c. d. Which of the following is not one of the XP Practices ? 3 Fine-scale feedback Shared understanding Programmer welfare Courage
  • 27. Copyright 2014, Simplilearn, All rights reserved.27 QUIZ a. b. c. d. Which of the following is not one of the XP Practices ? 3 Answer: a. Explanation: Courage is one of the XP Principles. The other XP Practice is Continuous Improvement. Fine-scale feedback Shared understanding Programmer welfare Courage
  • 28. Copyright 2014, Simplilearn, All rights reserved.28 ● A number of core agile methodologies share the same philosophy expressed in the Agile Manifesto, however, there are different implementations with their own practices, processes, and techniques. ● Scrum and Extreme Programing (XP) are some of the Agile practices that are widely popular. Summary Here is a quick recap of what was covered in this lesson:
  • 29. Copyright 2014, Simplilearn, All rights reserved.29 Copyright 2014, Simplilearn, All rights reserved.PMI® & ACP are the registered marks of Project Management Institute, Inc. THANK YOU