Agile Project Management
Agile Project Management
net/publication/221592363
CITATIONS READS
282 29,850
6 authors, including:
All content following this page was uploaded by Philippe Kruchten on 13 March 2014.
Frank Maurer
University of Calgary
Computer Science
e-Business Engineering Group
[email protected]
http://ebe.cpsc.ucalgary.ca/Frank.Maurer/
Project Management?
• What is it?
• Why do we need it?
• What is important?
• Best experience?
• Worst experience?
• what is to be done
• how it is to be done
• the exact time allowed for doing it
Risk Management
• Risk identification
– E.g. unknown technologies, tools
• Risk quantification
• Risk resolution
– Reserve time for
overcoming troubles
– Define tasks that reduce
risks
• Contingency plan http://www.pru.uts.edu.au/images/risk_management_benefits.gif
Four Values
• Communication
– “problems with projects can invariably be traced to somebody not
talking to somebody else about something important” XP p. 29
• Simplicity
– “what is the simplest thing that could possibly work?”
– YAGNI – you ain‟t gone need it
• Feedback
– Put system in production ASAP
– “Have you written a test case for that yet?”
• Courage
– Hill climbing (simple, complex, simpler,..)
– Big jumps take courage
20-Sep-07 Agile Project Management 20
Copyright © 2006 Frank Maurer. All Rights Reserved.
Project Vision
• Vision =
Statement of what the business
will look like once the new system
is implemented.
• Used to establish a project budget
• Established by product owner
– Provides/finds funding for projects
• Vision includes
– Anticipated benefits for business
– Assessment criteria for management to evaluate progress and
conformance to vision
Management oversight needed
DSDM Process
Feasibility
Feasibility
Create Identify
Functional Functional Model Functional Review Implementation Train
Prototype Prototype business
busines users
s
User approval and
Review Prototype user guidelines
Identify
Design prototype
Agree Review
Design and Build
Schedule Design
Iteration
Prototype
Create
Design Prototype
Software by Numbers, p. 16
• Net present value, internal rate of return
SE Economics
• Monetary versus non-monetary payback
Moløkken-Østvold, Furulund: “The Relationship between Customer Collaboration and Software Project Overruns”, slide used with permission
Contracts
• Contracts are important since they often regulate
collaboration (directly or indirectly)
• Common contract types Target Pricing
A pricing method that involves (1) identifying
– Time and material the price at which a product will be
– Fixed price competitive in the marketplace, (2) defining
the desired profit to be made on the product,
– Target price (better: Flexible pricing) and (3) computing the target cost for the
product by subtracting the desired profit from
• Mutual sharing of cost overruns (and the competitive market price. The formula
vice versa)
• Floors and ceilings for cost sharing Target Price - Desired Profit = Target Cost
1,5
1,0
BREBias
0,5
0,0
-0,5
1 - By the hour 2 - Fixed price 3 - Target price 4 - Other
Contract form N Mean Median
By the hour 4 0.55 0.37
Fixed price 5 0.33 0.19
Target price 7 0.10 0.21
Other 2 0.13 0.13
Moløkken-Østvold, Furulund: “The Relationship between Customer Collaboration and Software Project Overruns”, slide used with permission
0,5
0,0
Why we plan
“Planning is everything. Plans are nothing.”
Field Marshal Helmuth Graf von Moltke
• Reduce risk
• Reduce uncertainty
• Support better decision making
• Establishing trust
• Conveying information
Agile assumption
time
Architectural Spike
• Throw-away prototype
• Answers technical issue
• Reduce technical risk or improve reliability
• Usually: Pair for 1-2 weeks
Time Boxes
• Never slip a date change scope
• Sometimes external deadlines are HARD
• Advantages
– Increased motivation
• Successful delivery keeps developers and customers happy
– Faster feedback
– Creates a constant project heartbeat
– Deadlines create pressure (counters: work fills time available)
• Advantages of flexible dates
– Release only when required scope is completed
– Overly optimistic deadlines are made more realistic
Peter Coad et al: Java Modeling Color with UML, Prentice Hall 1999, p.190
Peter Coad et al: Java Modeling Color with UML, Prentice Hall 1999, p.198
Who Decides ?
• Business decisions
– Scope: which “user stories” should be developed
– Priority of stories
– Composition of releases
– Release dates
• Technical decisions
– Time estimates for features/stories
– Elaborate consequences of business decisions
– Team organization and process
– Scheduling
Managing a Release
• Value Driven Releases
Prioritization of features
• Financial value • Amount of risk removal
• Development cost
High
High risk High risk
Low Value High Value
• Amount of learning
Avoid Do first
Risk
Late design
• Purpose
– brainstorm competing
representations
– bring out user reactions
– bring out user modifications /
suggestions
Sketches
– drawing of the outward appearance of the intended
system
– crudity means people concentrate on high level
concepts
– but hard to envision a dialog‟s progression
Computer Telephone
Last Name:
First Name:
Phone:
Touch Delete
previous that item->
item ->
Pictive
plastic interface for collaborative technology initiatives through video exploration
Muller, CHI 1991
Pictive
• Can pre-make paper interface components
buttons menu alert
box
combo box
tabs
list box
entries
DANGER!
coolant flow 45 % next coolant flow 0 %
drawing
retardant 20% retardant 20%
(for shut
speed 100% down speed 100%
condition)
retardant 20%
speed 100%
Shut
Shut Down
Down
• “pay no attention to
the man behind the
curtain!”
Wizard of Oz
• A method of testing a system that does not exist
– the listening typewriter, IBM 1984
Dear Henry
Speech
Computer
Wizard of Oz
• A method of testing a system that does not exist
– the listening typewriter, IBM 1984
Dear
Henry
Dear Henry
Speech
Computer
Wizard of Oz
• Human „wizard‟ simulates system response
– interprets user input according to an algorithm
– controls computer to simulate appropriate output
– uses real or mock interface
– wizard sometimes visible, sometimes hidden
• “pay no attention to the man behind the curtain!”
• good for:
– adding simulated and complex vertical
functionality
– testing futuristic ideas
Sprint: 30 days
Ideal days
• How long is an American football game:
– 4 x 15min = 60min (ideal time
– Approx. 3h (elapsed time)
• Elapsed time is influenced by
– amount of none-development tasks
– estimation accuracy
– available developer time
– experience
– number of concurrent projects
– …
(wce mlce )
2
i i
i 1
% Hours Overtime
overtime 60.00 Website Release
– Increased 40.00
20.00
customer
0.00
satisfaction -20.00
01-05-2003
02-09-2003
03-16-2003
04-20-2003
05-25-2003
06-29-2003
08-03-2003
09-07-2003
10-12-2003
11-16-2003
12-21-2003
01-25-2004
02-29-2004
04-04-2004
05-09-2004
06-13-2004
07-18-2004
08-22-2004
09-26-2004
10-31-2004
12-05-2004
01-09-2005
02-13-2005
Week
From: http://www.controlchaos.com/old-site/meeting.htm
End-of-Sprint Review
Proceed or terminate?
Proceed:
define next iteration
Based on Ken Schwaber‟s
Certified Scrum Master course
• Project metrics
– Actual time worked on a task
– Work burndown graph
• Per iteration
• #Backlog project
– #Bugs
– #Stories completed
– #Acceptance tests defined and passing
– #Unit tests
– Test coverage
– …
2500
2000
1500
No one home
1000
500
0
11
13
15
17
19
21
23
25
27
29
31
1
Underestimating Overestimating
3000 1800
1600
2500
1400
2000 1200
1000
1500 Underestimating Overestimating
800
1000 600
400
500
200
0
0
11
13
15
17
19
21
23
25
27
29
31
1
11
13
15
17
19
21
23
25
27
29
31
1
http://www.togethercommunity.com/coad-letter/Coad-Letter-0070.html
Ibid p 249ff
Discussion
[email protected]
http://ebe.cpsc.ucalgary.ca/Frank.Maurer