Agile Project Management
date post
25-Feb-2016Category
Documents
view
20download
1
Embed Size (px)
description
Transcript of Agile Project Management
PowerPoint Presentation
Project MethodsDone?PlanningProject Definition and IterationsCompleted DeliverablesReview and AdjustImplementEnvisionIterate:PlanImplementDone?AdaptCompleteYESNOIt is a bad plan that admits to no modifications. -- Publius Syrus (ca. 42 BCE)
Project Management
AgendaWhat is AgileAgile MethodsScrum Deep DiveEstimating and PlanningGetting StartedLeading Agile
What is agile?
4 Find your joy in something finished, and not a thousand things begun. - Douglas Mallock
5What is Agile?From recognition and acceptance of increasing levels of unpredictability in our turbulent economyA chaordic perspectiveCollaborative values and principlesBarely sufficient methodology
- Jim Highsmith8As Knowledge increases Leaders use iterations to guide project towards enhanced goalAgile Encourages Mid Course CorrectionsPlanned PathActual PathActual CompletionStartZone of successPlanned CompletionIncreasing Knowledge888Agile allows you to steer the project through mid course corrections.
Its never possible to plan perfectly. Agile (with stakeholder feedback) Iterations give you a way to compensate for the lack of perfect information during initial planning.
As Eisenhower said Planning is essential. The Plan is worthless.Business Driven Faster & More RewardingAgile projects have a break-even point earlier in time than a traditional waterfall project for applications of the same size.Agile projects are more flexible. Can be stopped or restructured without losing all value. TimeCostProfitInvestmentBreakevenSingle ReleaseSelf-FundingBreakevenSoftware by Numbers by Mark Denne and Jane Cleland-HuangStagedReleasesAgile Defined
10uses continuous stakeholder feedback
11Many terms are used for use cases/user stories/storypoints bottom line, effective understanding of how end users will use the software/features and what gets tested to meet the high quality consumable code piece of the definition. Iterative development who has shipped a product recently? What release criteria was supposed to be addressed/ did you meet that criteria?Criteria should be criteria you grow into with each iteration (2 wk iterations right?) Jeff Sutherland adds additional criteria to his releases **** must be deployed in a clients production environment, he does this in 1 week iterations but it took him 4 years to get to this point.
principles
end users partnersinsidersuses continuous stakeholder feedback12Carl Kessler and John Sweitzer, Outside-in Development
Many terms are used for use cases/user stories/storypoints bottom line, effective understanding of how end users will use the software/features and what gets tested to meet the high quality consumable code piece of the definition. Iterative development who has shipped a product recently? What release criteria was supposed to be addressed/ did you meet that criteria?Criteria should be criteria you grow into with each iteration (2 wk iterations right?) Jeff Sutherland adds additional criteria to his releases **** must be deployed in a clients production environment, he does this in 1 week iterations but it took him 4 years to get to this point.
to deliver high quality, consumable working code/features
through user stories1414and a series of short, stable, time-boxed iterations.
15Many terms are used for use cases/user stories/storypoints bottom line, effective understanding of how end users will use the software/features and what gets tested to meet the high quality consumable code piece of the definition. Iterative development who has shipped a product recently? What release criteria was supposed to be addressed/ did you meet that criteria?Criteria should be criteria you grow into with each iteration (2 wk iterations right?) Jeff Sutherland adds additional criteria to his releases **** must be deployed in a clients production environment, he does this in 1 week iterations but it took him 4 years to get to this point. Agile Defined
Uses continuous stakeholder feedback to deliver high-quality, consumable code through user stories and a series of short, stable, time-boxed iterations.16What is Agile?A development process that conforms to the values and principles of the Agile Alliance(agilealliance.org)Originally for software development
Agile ManifestoWhile there is value in the items on the right we value the items on the left more.Individuals and interactions over processes and toolsWorking software over comprehensive documentationCustomer collaboration over contract negotiationResponding to change over following a plan
18Agile OverviewAgile:Iterative and Incremental to deliver working softwareLight-WeightMeets Changing Needs of StakeholdersHighly Collaborative: Involves CustomersMinimizes DocumentationTest First
Example: Legacy HighwayAgile Principles
Light WeightUtilize only practices that make sense for the project and environmentBarely sufficient artifacts, methodology, and documentationAppropriate vs Best Practices
22Practice ExcellenceRequires self discipline to improved qualityRelies on the team to practice technical excellence instead of imposing disciplineAdopt technical practices that support the other practices such as:Continuous IntegrationTest Driven DevelopmentRefactoring
23Reflect and AdaptLearn from past to improve performanceRetrospectives after each iterationHarness change for improved efficiencyMulti-Horizon planning allows adaptation
24Key Characteristics of Successful Agile Projects Short, Stable, Time-Boxed Iterations Stakeholder Feedback Self-Directed Teams Sustainable Pace
25Bring the points previously together to review these characteristics Ask everyone their perspective around iteration (what is it, how long is it) Ted likes to promote the idea of 2 week iterations but the class may pick a different length.
The first two features are critical towards achieving stable consumable code, the last two features focus on developing/identifying how the team works together and in what fashion.You can choose to discuss what the difference is with self-directed vs self-motivated teams? What are the terms and what do they mean. The term self- directed is intended to promote motivationThe Process Pendulum
Code and FixWaterfallAgileNo ProcessPrescriptiveEmpiricalEmpiricalFrequent inspectionCollaborationAdaptive responsesPrescriptiveDefined set of steps to followPlan the work, work the planPlan is assumed to be correct26I LOVE this!!!!!!!Agile Cycles
VisionPlanningDevelopIteration PlanReview / Adapt
Iteration Planning
Iterations Plan
High Level PlanningDetailed PlanningHow Does Agile Work? Requirements called features, defined using user stories:As a I want to so that .
Agile ProcessUser stories listed in a backlog.Backlog prioritized based on value.Highest priorities estimated and grouped into an iteration (sprint), two weeks long.At end of iteration, ask if enough value to go to market? Add any new user stories to backlog and reprioritize and select next iteration/sprint.Agile ProcessTest cases are written first, before anything is developedGo/no-go decisions reached early and often
Agile MUST be DisciplinedAgile development necessitates greater discipline than traditional methods. Quality and Consumability must be real, not platitudes.
32This is a highly-disciplined activityConsumability = Capability, Usability , Performance, Maintainability, Documentation, Customer Satisfaction, High QualityAll describe the consumability of software.
The diagram is called the Triple Constraint (a PM term) the notion is that if cost is constant then we could potentially move the little balls and ultimately something might have to change so to increase function, we lose quality, if we need to focus on speed to market, then quality and functionality will be affected. The point is that in adopting agile, all three of these things arent constrained any more. What is agileSummary
34Agile Defined
Uses continuous stakeholder feedback to deliver high-quality, consumable code through user stories and a series of short, stable, time-boxed iterations.35ReferencesWhat Is Agile Software Development? Jim Highsmith, CrossTalk, the Journal of Defense Software EngineeringThe New Methodology, Martin Fowler http://martinfowler.com/articleshttp://www.agilealliance.com/articlesWhy Agile (video) http://www.universite-du-si.com/fr/conferences/6/sessions/909User Stories Your Questions?
Project ManagementRemove Obstacles
Agile Methodologies Agile MethodseXtreme Programming, XP (Kent Beck, Ron Jeffries, Ward Cunningham)Scrum (Jeff Sutherland, Ken Schwaber, Mike Beedle)Feature Driven Development, FDD (Peter Coad, Jeff DeLuca)Crystal Methods (Alistair Cockburn)Dynamic Systems Development Method, DSDM (DSDM Consortium)Lean Development (Bob Charette, Mary and Tom Poppendieck)
39Agile OverviewAgile projects succeed when the team gets the spirit of agility. Ron Jeffries, XP Thought Leader
eXtreme Programming
41XP Values and PrinciplesCommunicationSimplicityFeedbackCourageQuality Work
42XP PracticesThe Planning GameSmall ReleasesMetaphorSimple DesignRefactoringTest-First Development
43XP PracticesPair Programming Collective OwnershipContinuous IntegrationSustainable PaceOn Site CustomerCoding Standards
44XP RolesThe CustomerSets project goals and makes business decisionsThe DeveloperTurn customer stories into working codeThe TrackerKeeps track of any metrics used by teamThe CoachGuides and mentors team
45 Scrum
46Scrum RolesScrum TeamScrum MasterCarries water and moves bouldersProduct OwnerResponsib