Upload
phungnhan
View
223
Download
0
Embed Size (px)
Citation preview
History of PMI
History of Software Development
History of Agile
Introduction to Agile
Agile Methodologies
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
2
In the 1960s project management began to be used in the construction, aerospace, and defense industries
It was founded in October 1969 at the Georgia Institute of Technology as a nonprofit organization
In the 1980s efforts were made to standardize project management procedures and approaches.
PMI produced the first Project Management Body of Knowledge (PMBOK) in 1996 PMBOK Methodology employs the Waterfall Process,
which requires: Stable Requirements, leading to Rigid Scope, Budget, and Schedule
3
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Code and Fix
Waterfall
Spiral Development
4
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Code and Fix was the Original approach to Software Development
Ad Hoc Corrective Action (i.e. Bug Fixes)
Code eventually delivered when Code was Bug Free
Code and Fix approach became more Unrealistic as Code became more Complex
1980s ushered in the Spiral Model, allowing for Iterative and Incremental approach, leading to a more Formal approach of Agile Methodologies
5
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Widely accepted Waterfall Process
Fixed Requirements
Design
Development (Coding in the Software World)
Integration
Testing or Inspection (System, Performance, and User Acceptance Testing)
Deployment
Waterfall allows no Changes except for Formal Change Requests
6
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Successful Waterfall Conditions Requires a Clear Picture of the Final Product with
minimal changes
Physical Product Production Construction
Manufacturing
Top-Down Culture
Few Competitors
Established Business
Repeatable Process
Regulation or Compliance Focus
7
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
PROs
Detail with Extensive Planning
Client Gets What He Asked For
Recordkeeping with Clear Expectations
CONs
Follows a Strict Process with No Going Back
Testing at the End of the Project
No Evolving Requirements
8
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Initial Approach to Incremental and Iterative Development Methodology
Incremental Deliver working code in small chunks
Iterative Learning from Feedback
Eventually led to Agile Approaches
9
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
A philosophy
An approach to product development
Adaptive – there is no AGILE METHODOLOGY
Follows the values and principles of the Agile Manifesto
10
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
The Agile Manifesto (February 2001)* for Software Development
Individuals and Interactions over Process and Tools
Working Software over Comprehensive Documentation
Customer Collaboration over Contract Negotiation
Responding to Change over Following a Plan
*Copyright of John Wiley & Sons
11
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Agile Approach Successful in
Software
Services
Bottoms-Up Culture
Highly Competitive Industries
Workers can
Self-Organize
Self-Prioritize
Re-Order tasks as Needed
Delivery of Small Working Sections periodically
12
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Stakeholders (represented by the Product Owner)
Team Members Product Owner
Project Manager
Team
Team Lead
Business Analyst
Architect
Developers
QA Test
13
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Daily Standup/Scrum
Epic (which will break down to one-iteration stories)
Product Backlog(prioritized list)
Iteration/Sprint
Sprint Backlog (fixed stories for each iteration)
Story Points
14
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
SCRUM
Extreme Programming (XP)
Lean Software Development
Kanban (Just-In-Time Delivery)
Dynamic System Software Development (DSSM)
Feature Driven Development (FDD)
15
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Agile Planning Release Planning – Product Owner set Priorities Backlog is reviewed and re-prioritized each iteration if necessary
Pareto Principle: 20% of backlog can satisfy 80% of what customer wants
Iteration Planning – Team Members Identify Work to be accomplished (Self-Organization) in each 2 or 3 week iteration (Scrum is usually 30 Days)
Daily Planning – Daily work is planned at the Stand-Up meeting (or Scrum). 5-15 minutes long What was accomplished yesterday What is planned for today Roadblocks (Impediments)
16
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
User Story Format Title: (name for user story) As a: (user) I want to (take this action) So that (I get this benefit)
Estimation of User Story Points T-shirt sizes (S, M, L, XL) Planning Poker (Relative Size, NOT Hours)
Each team member selects (at the same time) a relative size of a User Story from Fibonacci sequence (1,2,3,5,8,13) Each number is the sum of the two previous numbers
Differences are discuss and team votes again
17
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Velocity Tracks User Points/Iteration Average determined after 3 or 4 Iterations
Measuring Progress Burndown Chart reports number of story points
completed vs. number of remaining story points predicted by velocity
Continuous Integration Integrating tested solutions into builds as often as
possible, sometimes on a daily basis Continuous Deployment deploys successful builds at pre-
determined releases
18
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
User Story Tests are written prior to code development
Tests are run to ensure failure
Re-tested after code is developed to ensure passing
19
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Iteration Reviews (Called Sprint Reviews in Scrum) are held at the end of each Iteration (Scrum)
Entire team including Business Owner is present (including Management only if requested)
Completed User Stories are informally demonstrated
Feedback is solicited from Stakeholders so changes can be incorporated into code and process (if necessary)
20
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Team discusses how the iteration went
What went well (to ensure the practice is continued)
What can be improved the next iteration
Roadblocks
The Goal of the Retrospective is Continuous Improvement of the process
21
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
The most popular approach to Agile Software Development
Team generally follows the Agile process Team Members
Product Owner – Prioritizes product Backlog each Sprint
Scrum master – Servant Leader
Leads the team but is NOT the team’s manager
Team Member – everyone else of the team Sprint is 30-day timebox with a 15 minute daily Scrum
(similar to the Agile Stand-Up meeting)
Product Backlog is re-prioritized every sprint
Sprint backlog is the fixed scope committed to each Sprint
22
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Beginning of Iteration Planning with Team, including Business Partner (Product
Owner)
Use Planning Poker to develop Story Points
Select number of Stories using Approximate Velocity
First Week Develop Test Cases
BA, QA, and Developers
Daily Stand-Up (Scrum)
1-2 Minutes per person Daily Builds Peer/Code Reviews Roadblocks Parking Lot (selective team members only)
23
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
End of Iteration
Retrospective
What went Right – Kudos
What went Wrong – Correct for future iteration
Demo to Customers and Stakeholders
Release to PROD according to Release Schedule
24
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Team Values include:
Simplicity in code, documentation and process
Communication amongst all team members
Respect for all team members
Feedback from the business, users and peers
Courage to discard bad code and get help from the team
25
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Key practices are Small and frequent releases
Automated Testing
Simple design
Paired Programming
Test Driven Development
Refactoring earlier developed code when necessary
Continuous integration
Collective ownership
Coding standards
Sustainable pace
26
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Focuses on eliminating waste, including unnecessary functionality and slow communications
Eight Wastes of Software Development are: Delays
Over Production or Extra Features
Rework or Defects
Motion that does not add value
Non-Value Added processes
Inventory or Partial Work
Failure to use Intellect
Multi-tasking
27
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Similar to the Agile Process including the Iterative process lifecycle that includes:
Feasibility Study
Business Study
Functional Model Iteration
Design/Build Iteration
Implementation
28
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Process requiring up-front collection of Requirements
Features are delivered iteratively in accordance with general Agile processes
29
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
PROs of Agile
Allows for Changes
Short-Term Releases
Customer Focus
Team members assume all positions as necessary to maximize product flow
CONs of Agile
No Scheduled Plan
Final Product Usually Different from Original
Reliance on Other Team Members
30
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
New Methodology Usually has Less Training
Lack of Management Buy-In Less Control
Agile Does Not Translate into Waterfall Story Point Are Not Defined Time
Less Metrics for Management
No Firm Customer Agreement
31
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Management Culture is Slow to Change
Some Metrics are Required (e.g. Burndown chart)
Lack of a Benchmark
Allows for Management Visibility
32
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Agile principles can be adopted to many situations Remodeling the kitchen
Planning a wedding
Reorganizing a department
Work with Customers to see if Agile principles can be adopted
Establish face-to-face communications rather than using email and phone calls
Implement Continuous Improvement
33
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Implement daily planning
Identify short-term goal
Define Acceptance Criteria to demonstrate completion of customer needs
34
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
Waterfall Agile
35
Scope(Fixed)
Scope(Variable)
Resources(Variable)
Time(Fixed)
Time(Variable)
Resources(Fixed)
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
36
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
• Agile Manifesto was written in 2001
• Since 2001 the software environment has changed
• Mobile Communications is worldwide
• Social networks share information instantly
• Software is ubiquitous
• Software complexity has increased
37
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
• Individuals and Interactions over Process and Tools
• Today tools are tightly coupled with individuals
and interactions
• Working Software over Comprehensive Documentation
• Now documentation is greater than MS Word
documents
• Today’s documentation are whiteboard, sticky
notes, wiki, etc.
• Stories, epics and decisions are written every day
38
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC
• Customer Collaboration over Contract Negotiation
• Contracts are still indispensable
• Negotiation IS collaboration
• Contract is a living document to reflect
collaboration
• Responding to Change over Following a Plan
• Now requirements are written to reduce confusion
around the “plan”
• The plan is the Vision
Education BSEE, MSEE (Computer Science) MBA PhD (Engineering Management)
Certifications PMP PMI-ACP IC Agile Certified Professional (International Consortium for Agile) Professional Engineer (PE) License
Project Management Experience 25 years PM experience in Telecom, IT, Finance, Retail, Banking 12 years Dallas PMI Chapter PMP Review Trainer Crosswind Project Management PMP Certification Trainer SimpliLearn PMP and PMI-ACP Trainer
Semi Retired Program/Project Management Consultant Project Management Training
39
Jeff Bayer PhD, PMP, PMI-ACPBayer Project Management LLC