Post on 17-Feb-2016
description
Agile Contracts?
AgilePrague 2012Johannes Brodwall, Principal Architect
Steria Norway
@jhannes
Part I
Motivation
Agile ManifestoIndividuals and interactions over processes and toolsWorking software over comprehensive documentation
Customer collaboration over contract negotiationResponding to change over following a plan
Agile ManifestoIndividuals and interactions over processes and toolsWorking software over comprehensive documentation
Customer collaboration over contract negotiationResponding to change over following a plan
Does «contract» make a difference?
Supplier
Customer
Hold on, I expected a much fancier UI
for this.?
Most common contracts:Fixed price
Time and material
Supplier
Customer
Hold on, I expected a much fancier UI
for this.
Crap
Supplier
Customer
Hold on, I expected a much fancier UI
for this. No problem, we’ll work some more
«Time and material» creates the most happiness
«Time and material» creates the most happiness
(Source: My best and worst projects)
«Time and material» creates the most happiness
(Also for customer!)
So why care about the rest?
Do you pay taxes?
How should your government handle:
• We’re running out of money for pensions• We need to change the rules!
• The current system is huge
How should govt spend your money?
• A big, state-run project?• Hire a random company to do it all?
• Just pay consultants until it’s done?• “Just be agile”?
Can Agile help?
Customer collaboration over contract negotiation:
• Contracts hurt• Big tax-funded projects are inevitable
• Agile can help – but insufficient
Part II
PS2000 + Agile
Typical Norwegian public sector project:
«We need to replace huge system X…
Typical Norwegian public sector project:
«We need to replace huge system X…… we’d like to use Scrum»
PS2000:«Target price»
(Target price:Set a budget,
report cost.Supplier & client splits difference)
PS2000 + agile:«Colocated»
«Sprints»«Sprint reviews»«Product owner»
«Product backlog»
… but also«Negotation phase»
«Requirement phase»«Acceptance test phase»
Whence PS2000?
Contract standard from Norwegian Computing
Association
2001: PS2000 with target price
2009: PS2000 + Agile
Norwegian trends:• Active community
• Meetups about contracts• Scrum certifications
• Large and diverse consultancy industry
Some project highlights
In progressLARM: Domain: Electricity reserve powerApplication: Operator UI
Internal IntegrationProject size: 2 scrum teams plus supportOrganization: Supplier + Customer teams
Colocated at customer siteTeam size: 7 per teamDuration: 3 years (1,5 years left)Sprint length: 3 weeks (customer present)Releases: 3 times per yearContract: Target pricing for whole scope
?
Bid
Apr, 2010
Negotiation
Aug, 2010
Mar, 2010
Elaboration
Nov, 2010
Release 1Sprint Sprint Sprint Sprint Sprint
May, 2011
Acceptance Production
Sept, 2011
Elaboration Sprint Sprint Sprint
Sprint Sprint
Sprint
SIGNED
Smart move:Reliable product backlog using
scenarios
Big win:First release in use 1 year after contract, containing most used
screen
Big loss:Feature creep of individual user
stories
CompletedPERFORM: Domain: State pension fundApplication: Case worker UI
External IntegrationProcess flow
Project size: 12-14 scrum teams plus supportOrganization: Three suppliers with 3-6 teams
Colocated at customer siteTeam size: 10 per teamDuration: 3 yearsReleases: 3 times per yearSprint length: 3 weeks, with shared demoContract: First release: Time & materials
Subsequent:Target pricing per release
Smart move:Contract on price per release
First release on T&M«Competing» suppliers
Big win:Delievered what was needed
Government is happyUsers are happy
Big loss:Full time requirement spec
Hostile architecture team
Customer collaboration over contract negotiation
Reality:• We must compete
• We must commit
Part III
Wishful contracts
The source of our troubles
Fabulation
Speculation
Bungling
Yelling
Worrying
2 year - development Use
Fabulation
Speculation
Bungling
Yelling
Worrying
2 years - development Use
ContractPrice
ScopeDeliverableOk?
The problem
Fabulation
Speculation
Bungling
Yelling
Worrying
2 years - development Use
ContractPrice
Scope
A way out?
Pure fabria
ction
IMAGINE: Project size: Some scrum teams with independent
users and product ownersOrganization: Colocated at customer siteTeam size: 6-8 per teamDuration: 3 yearsSprint length: 2 weeks, with shared demoReleases: Every month
Bidding: Performance competitionContract: Target estimate per user story
Pricing: Unit pricing
Menu:• Simple GUI: 20 kNOK• Complex GUI: 50 kNOK• GUI that customer decides
how looks: 100 kNOK
(Or 2, 5, 20 story points)
Supplier
Customer
I need a screen shot for X. We want something simple. Ok. 2
kEURO
Supplier
Customer
Do you have anything to show for it?
We’ve spent half the budget
Nothing that is tested yet
Okay, I’m pulling the
plug
Supplier
Customer
Stop!
We’ve spent the budget
Supplier
Customer
But I wanted rounded corners, and gradients!
No problem, but that means it’s
no longer «simple»
Oh, never mind.
(I hate having this sort of discussions)
Supplier
Customer
But I wanted …!
Oh, I guess we have to do it, thenNo way! Change
order!
Hmm…we didn’t consider that when we gave the price
Bidding: Competitive delivery
Supplier
Supplier
Supplier
Supplier
Supplier
Customer
Project referenceResumesHourly rates
Supplier
Pre-qualification
Supplier
Supplier
Supplier
Supplier
Supplier
Supplier
6-10 weeks
Supplier
Supplier
AnalysisCoding
Delivery
Analysis
Coding
Delivery
Analysis
Coding Coding
AnalysisDelivery
Delivery
Supplier
Supplier
Supplier
AnalysisCoding
Delivery
Analysis
Coding
Delivery
Analysis
Coding Coding
AnalysisDelivery
Delivery
Supplier
Another model
Pure fabria
ction
Supplier Commitment:Δ ☺Δ $
IMAGINE:
Questions and discussions
Conclusion
Customer collaboration over contract negotiation
We need an answer for large investments
Norway’s answer ain’t half bad
Norway’s answer ain’t half bad
But
We can do better
Thank youjohannes@brodwall.com
http://johannesbrodwall.com
http://twitter.com/jhannes