Agile Project Management with SCRUM Fast Track Course ... · Successful Project Successful project...
Transcript of Agile Project Management with SCRUM Fast Track Course ... · Successful Project Successful project...
Agile Project Management with SCRUM
Fast Track CourseNobleProg Limited
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 2
Who r u?●What do you do now●What made you decide to participate in this
course●Theoretical knowledge about project
management?●Practical experience with PM●How many of you heard about Agile/Scrum●How many of you heard about NobleProg
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 3
Waterfall•Published in 1970 by Winston W. Royce•Ironically, Royce was presenting this model as an example of a flawed, non-working model
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 4
Waterfall•Ideal in construction or engineering projects•Usually preceded by prototyping•Requires Central Control System•As complexity increases, central control breaks down•
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 5
Waterfall Model Problems•Changing Requirements•Blaming other people (Analysts blaming designers, designers developers, etc..)•Lack of understanding business by lower ranks•Long feedback•Hit-by-a-spaceship effect•
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 6
Agile Manifesto
http://agilemanifesto.org/
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 7
Building your house in an agile way
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 8
Agile Frameworks/Methodologies
•Extreme Programming (XP)•Scrum•Agile Unified Process (AUP)•Feature Driven Development (FDD)•Open Unified Process (OpenUP)•RUP•Kanban
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 9
The Bible
http://www.scrum.org/storage/scrumguides/Scrum_Guide.pdf
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 10
Scrum Current Affairs●Ken Schwabers●scrum.org●PSM
●Scrumallience.org●CSM
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 11
Waterfall vs Agile● Requirements for the whole project vs. requirements for the
iteration, overview of the bigger picture● Clearly defined roles vs Cross-functional teams● Long time estimation vs short time estimation● Long-time bud getting vs short time budgeting● Abandoning project in the middle leaves useless artefacts vs
each iteration delivers business value● Extensive out-of-synch documentation vs lean general and in-
code documentation● Changes are expensive vs changes are expected and cheap● Long feedback loop between customer and developer vs
almost immediate feedback
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 12
Successful Project●Successful project is not necessarily a
project that goes exactly as expected, yielding results identical to those that were predicted.
●Scrum controls the process of software development to guide work toward the most valuable outcome possible.
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 13
SCRUM
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 14
Why SCRUM?In 1986, Hirotaka Takeuchi ( 竹内 弘高 ) and Ikujiro Nonaka ( 野中 郁次郎 )Compared the methodology where phases strongly overlap and the whole process is performed by one cross-functional team across the different phases, to rugby, where the whole team "tries to go to the distance as a unit, passing the ball back and forth.
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 15
Scrum Roles•Product Owner–The customer itself or the proxy between the customer and the team•Scrum Master–Is not a project manager•Development Team
All management responsibilities in a project are divided among these three roles!!!
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 16
Project Manager
THERE IS NOTHERE IS NOPROJECT MANAGER ROLE!PROJECT MANAGER ROLE!
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 17
Project Manager
What does the project manager do in What does the project manager do in SCRUM?SCRUM?
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 18
Pigs and Chickens
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 19
Pigs and Chickens●The people who fill the three Scrum roles
are those who have committed to the project (Pigs)
●Others might be interested in the project, but they aren’t on the hook (Chickens)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 20
Scrum Team•The Team is responsible for developing functionality•Self-managing and self-organizing•Up to 10 people (7 optimal)•Cross functional (db admin, web designer, tester, etc...)•Bigger project = more Scrum teams•Responsible for managing itself and has full authority to do anything to meet the Sprint goal within the guidelines, standards, and conventions of the organization and of Scrum
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 21
Scrum Team•Self-management–There is no imposed leader–Everybody is responsible for the success of the project•On-site client (or proxy)–Immediate feedback in case of discrepancies–Demonstrations at the end of each iteration shows only working stuff
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 22
Quiz•How many different roles are in SCRUM?•How may people can be in a team?•How long usually does a sprint last?
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 23
Scrum Master● Responsible for the Scrum process● Teaching Scrum to everyone involved in the project● Implementing Scrum so that it fits within an
organization’s culture and still delivers the expected benefits
● Ensuring that everyone follows Scrum rules and practices
● Manager drives the team vs Scrum Master serves the team
● Scrum Master is a facilitator
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 24
Product Owner● Responsible for representing the interests of everyone
with a stake in the project and its resulting system● Achieves initial and ongoing funding for the project by
creating:● project’s initial overall requirements● return on investment (ROI) objectives● release plans
● The list of requirements is called the Product Backlog● The most valuable functionality is produced first● Prioritize the Product Backlog to queue up the most
valuable requirements for the next iteration
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 25
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 26
Product Backlog•The requirements for the system or product•Product Owner is responsible for the contents, prioritization, and availability of the Product Backlog•It is never complete•Is merely an initial estimate of the requirements
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 27
Product Backlog•Span to foreseeable future•Made of pieces of functionality–Stories (XP)–Use cases (UML)•Proven business value•Testable•Completion time should not be longer than a couple of days•Examples–User can browse on-line catalogue–Client can buy a product using a credit card
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 28
Sprint Backlogs•A subset of Product Logs•Specified and discussed with all the team members especially with the product owner•Estimated by more than one person•If it takes longer than a couple of days, they should be split
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 29
Iteration (Sprint)•Planning and Estimating (4+4)–Define clear goals–Everyone (not only the person who are going to develop it) MUST understand the task–Everyone can contribute their way they see is the best•Daily Scrums (15min every day)•Demonstration (4h)•Retrospection – post-mortem (4h)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 30
Estimation in Iteration Meeting•User stories–Business value–How to test it (acceptance criteria)•Different schools about complexity–Abstract size (0,1,2,5,8)–Number of days•Planning poker•Splitting User stories into task•Task duration from 1 hour up to 3 days
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 31
Planning Poker
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 32
Precision vs Accuracy•Precise but not accurate PI number: 3.12134352343435•Accurate but not precise number PI number: 3.14•Try to be accurate not precise•Precision gives false confidence about estimation
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 33
Estimation●What is the height of the highest mountain●What is the longitude of Reykjavik●What is the latitude of Reykjavik
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 34
Estimation Exercises1)Choose couple of user stories2)Each person in a group should write down
their estimations without communicating with each other
3)Then, each person tells their estimates and quickly explain why (the components)
4)If there are discrepancies, take another round for the same story
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 35
Exercise
•Put the proper names in the boxes above using words: Scrum, Retrospective, Demo, Planning, Estimating
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 36
Backlogs•Product backlog–User stories–Epics•Iteration backlog–User stories (what)–Tasks (how)–Bugs
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 37
User Story Example●As a dog owner,●I want to sign-up for a kennel reservation over Christmas so that I get a confirmed spot● Verify individual as a registered pet owner● Verify that preferred members get 15% discount on basic
service● Verify that preferred members get 25% discount on extended
services and reservation priority over other● members● Verify that past Christmas customers get reservation priority● Verify that declines get email with discount coupon for future
services
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 38
What does it mean DONE!?Definition of doneness can differClarify what does it mean done is a Scrum Muster and Product Owner role
For example:● functional and unit tested● documented● committed into repository● deployed on staging environment● accepted by the client (thumbs up)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 39
Epic ExamplesTrainer and Delegate can negotiate the date of the instructor-led on-line course in the system without a training coordinator involvement
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 40
Advert●More about User Stories, Epics, Use
Cases and prioritization can be found in Product Owner Course available at
●http://www.nobleprog.com/scrum-product-owner/training-course
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 41
Post It
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 42
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 43
Post-it vs tools●Tools can confine your choices●Post-its are simple and always visible●Tools are recommended when you work
with an outsourced teams’ members
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 44
Exercises•Sort the pieces of functionality from the short to the longest one:Story, Epics, Task
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 45
Burn-down Chart
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 46
Burndown Charts
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 47
Iteration Duration and Team Velocity
•Do not change the duration of an iteration!•What if we discovered new tasks to do in order to complete user story?•Measurement – hours or finished tasks•What does it mean done•Overtime•Adjusting next iteration
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 48
Team Responsibility•All team members are responsible•Hit-by-the-bus factor•Openness•Support and knowledge exchange•Pair programming (one keyboard)•Master-lamma pair programming
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 49
Daily Scrums
•People MUST stand•Up to 15 min regardless of the team size•Everyone invited, only pigs are talking
The questions must be asked:● What have I done since the last Daily Scrum?● What am I going to do between now and the next Daily Scrum?● What is preventing me from doing my work?
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 50
Scrum guidelines•Backlog Planning (PO, Managers, Application Users)
•Planning Meeting (Team, PO, SM)
•Estimation•Iteration (Sprint) from 2 to 4 weeks–Daily Scrum (stand-up meeting)•Demonstration•Iteration review (retrospective meeting)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 51
Exercise•Choose roles•Start planning project•Estimate project•Create backlog•Conduct the iteration meeting–Estimate the stories (cards)–Assign the stories to people•Develop the product•Conduct the demonstration•Conduct retrospective meeting
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 52
Scrum (pros)•Better communication•Faster development•Better team relations•Better productivity
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 53
Scrum (cons)•People must be focused all the time. Some people may leave.•Managers loose some of their powers. Some may leave or obstruct the changes.•Partially introduce can do more harm than good.
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 54
Scrum•Accepting uncertainty•Welcome technology changes•Delivering early and often•Constant estimating and planning•Sustainable work pace•Early feedback and learning•Self managing work environment•Self controlling environment•Delegating the responsibility•Having fun at work
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 55
Scrum and...•documentation–You still need some sort of documentation•budgeting•outsourcing•bigger projects
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 56
Where not to use SCRUM•If you know requirements upfront and model must be proven–Life critical projects (medical, army, etc...)•Cannot change the way clients or your management thinks•Old ways work fine ; -)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 57
Painful Transition•What happened to Gantt?•Time reporting?•Documentation?•Responsibility•Clients involved all the times
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 58
Tools•JIRA (Greenhopper)•Redmine•Xplanner (deprecated)•Google Calc (be careful)•Agilo•Scrumy•Spreedsheet (deprecated)
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 59
Books
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 60
Scrum Modifications•Extreme Programming (XP)•Scrum•Agile Unified Process (AUP)•Feature Driven Development (FDD)•Open Unified Process (OpenUP)•RUP•Kanban
02/02/09 www.NobleProg.comNobleProg 2010 All Rights Reserved 61
Thank Youwww.nobleprog.comOnline Consultancy and TrainingClassroom Training