SlideShare a Scribd company logo
1 of 22
Download to read offline
payment



Agile Contracts
Lars Thorup
ZeaLake Software Consulting
                                        effort


October 18, 2011
Who is Lars Thorup?
●   Managing software
    development
    ●   10 years of agile practices
    ●   15 years of automated testing

●   Introducing agile and
    automated testing with clients

●   Assessing software projects
    and companies

●   Founder of 2 agile consulting
    companies
    ●   12+ senior consultants
    ●   10+ years
Background
●   A Danish agile consulting company, BestBrains

●   Founded 10 years ago
    ●   Agile and Lean coaching for software businesses
    ●   Some body shopping (interim management and software
        development) on hourly rate

●   New business area 3 years ago
    ●   Develop and deliver custom software solutions
    ●   ...using agile methods

●   Condition
    ●   Come up with a proper form of contract for these types of projects
Cases - 3 projects in 3 years
●   The event bureau
    ●   small, lively company
    ●   software for participant interactivity at top management conferences
    ●   1-3 programmers since August 2008

●   The energy corporation
    ●   large, traditional corporation
    ●   software for power plant registration
    ●   3 programmers, from January to September 2009

●   The government department
    ●   Case management on top of document management system
    ●   3 programmers, from April 2010 to May 2011
Real contract example

●   Our contract with The Energy Corporation
    ●   A few pages of specification
    ●   Agile development process
    ●   Low price pr hour
    ●   Completion price
A few pages of specification
●   Scope
    ●   described on a few pages with illustrations
    ●   divided into 6 areas of functionality
    ●   estimated roughly by vendor to 2400 hours
Agile development process

●   Development process described by the vendor
    ●   weekly iterations with
    ●   requirements
    ●   estimation
    ●   prioritization
    ●   development
    ●   delivery
    ●   testing
    ●   feedback
Low price pr hour
●   50% below normal time-and-material-rate
Completion price
●   Separate delivery of the 6 areas

●   Each area associated with separate completion price

●   Total completion price equal to half the total project price if
    estimate holds

●   Completion price is paid
    when software is put in production
Collaboration climate
●   Client and vendor help each other with specifications,
    testing, IT environment
    ●   to complete project earlier and cheaper

●   Vendor delivers software early, fix bugs fast
    ●   to increase chance of early completion

●   Vendor allows clients to change requirements
    ●   to ease the clients' put-in-production decision
Negotiation experience
●   Hard to negotiate with contract manager

●   Different views on responsibility, guarantees

●   Project owner resolved in favour of the agile contract model
Combine the traditional contract models


            paid by the hour
 Time &                                             Fixed
 Material                      paid at completion
                                                    Price
An example project
●   The application must enable us to do X and Y
    ●   That will take 3 persons for 6 months
    ●   Specification and implementation in weekly increments
    ●   Pay $100/hour and 2 * $50.000 when deployed to production

                 payment




                                                    effort
If we finish 25% early
●   Price for client          174.000

●   Hourly price for vendor       234



                 payment




                                        effort
If we finish on time
●   Price for client          200.000

●   Hourly price for vendor       200



                 payment




                                        effort
If we finish 25% late
●   Price for client          226.000

●   Hourly price for vendor       180



                 payment




                                        effort
Advantages
●   Common incentive to finish below schedule and budget
    ●   Cheaper for client
    ●   Faster return on investment for client
    ●   Higher profit for vendor

●   Supports incremental requirement
    specification

●   Supports incremental software delivery

●   Encourage collaboration between client and vendor during
    project

●   Client and vendor shares
    ●   risks
    ●   gains
The maturity of the client must be high
●   Have a clearly formulated product vision

●   Can specify requirements incrementally

●   Can prioritize features incrementally

●   Can test and approve delivered software incrementally

●   Can put software into production incrementally

●   Will prioritize bugfixing over feature development
The maturity of the vendor must be high
●   Can estimate from high level product vision

●   Can deliver frequently

●   Can grow an architecture incrementally

●   Can do automated regression testing

●   Can break down features and tasks in weeks and days

●   Will follow the priorities set by the client
Configure the contract
                  paid by the hour
    Time &                                                                  Fixed
    Material                                          paid at completion
                                                                            Price


●   Increase hourly price                     ●   Increase completion price
    ●   When scope is most important              ●    When deadline is most important

        payment                                       payment




                                     effort                                     effort
Use time & material for some phases
●   Early prototyping and experimentation

●   Initial estimation

●   Maintenance
Discussion

More Related Content

What's hot

How to Capture Better Business Requirements in Software Projects
How to Capture Better Business Requirements in Software ProjectsHow to Capture Better Business Requirements in Software Projects
How to Capture Better Business Requirements in Software ProjectsGabor Schönekker
 
Agile fix cost_pecha_kucha
Agile fix cost_pecha_kuchaAgile fix cost_pecha_kucha
Agile fix cost_pecha_kuchaViresh Suri
 
Atagg2015 Fixed cost projects_and_agile
Atagg2015 Fixed cost projects_and_agileAtagg2015 Fixed cost projects_and_agile
Atagg2015 Fixed cost projects_and_agileAgile Testing Alliance
 
Agile Roi
Agile RoiAgile Roi
Agile Roicrsadun
 
Product delivery Pawel Dyrek
Product delivery Pawel DyrekProduct delivery Pawel Dyrek
Product delivery Pawel DyrekPaweł Dyrek
 
Why move to Scrum ?
Why move to Scrum ?Why move to Scrum ?
Why move to Scrum ?Elad Sofer
 
Linkedin Resource Focus
Linkedin Resource FocusLinkedin Resource Focus
Linkedin Resource Focusdewilkin
 
Rfp final
Rfp finalRfp final
Rfp finalsubu
 
Effective It With Middleware Solutions (New Template)
Effective It With Middleware Solutions (New Template)Effective It With Middleware Solutions (New Template)
Effective It With Middleware Solutions (New Template)crsadun
 
GS Nayer - Resume
GS Nayer - ResumeGS Nayer - Resume
GS Nayer - ResumeGS Nayer
 
Nesma autumn conference 2015 - Agile may deliver but it does not win (yet) -...
Nesma autumn conference  2015 - Agile may deliver but it does not win (yet) -...Nesma autumn conference  2015 - Agile may deliver but it does not win (yet) -...
Nesma autumn conference 2015 - Agile may deliver but it does not win (yet) -...Nesma
 
Agile metrics what is... riga-version
Agile metrics   what is... riga-versionAgile metrics   what is... riga-version
Agile metrics what is... riga-versionAlex Birke
 
Ac2017 2. added value!
Ac2017   2. added value!Ac2017   2. added value!
Ac2017 2. added value!Nesma
 
Cost unit 2012 part 2
Cost unit 2012   part 2Cost unit 2012   part 2
Cost unit 2012 part 2Skript
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma
 
Ac2017 3. cast software-metricsincontracts
Ac2017   3. cast software-metricsincontractsAc2017   3. cast software-metricsincontracts
Ac2017 3. cast software-metricsincontractsNesma
 
Estimation in the Tendering Process - Frank Vogelezang
Estimation in the Tendering Process - Frank VogelezangEstimation in the Tendering Process - Frank Vogelezang
Estimation in the Tendering Process - Frank VogelezangNesma
 

What's hot (20)

How to Capture Better Business Requirements in Software Projects
How to Capture Better Business Requirements in Software ProjectsHow to Capture Better Business Requirements in Software Projects
How to Capture Better Business Requirements in Software Projects
 
Agile fix cost_pecha_kucha
Agile fix cost_pecha_kuchaAgile fix cost_pecha_kucha
Agile fix cost_pecha_kucha
 
Atagg2015 Fixed cost projects_and_agile
Atagg2015 Fixed cost projects_and_agileAtagg2015 Fixed cost projects_and_agile
Atagg2015 Fixed cost projects_and_agile
 
Agile contracts
Agile contractsAgile contracts
Agile contracts
 
Agile Roi
Agile RoiAgile Roi
Agile Roi
 
Product delivery Pawel Dyrek
Product delivery Pawel DyrekProduct delivery Pawel Dyrek
Product delivery Pawel Dyrek
 
Why move to Scrum ?
Why move to Scrum ?Why move to Scrum ?
Why move to Scrum ?
 
Linkedin Resource Focus
Linkedin Resource FocusLinkedin Resource Focus
Linkedin Resource Focus
 
Rfp final
Rfp finalRfp final
Rfp final
 
Effective It With Middleware Solutions (New Template)
Effective It With Middleware Solutions (New Template)Effective It With Middleware Solutions (New Template)
Effective It With Middleware Solutions (New Template)
 
GS Nayer - Resume
GS Nayer - ResumeGS Nayer - Resume
GS Nayer - Resume
 
Nesma autumn conference 2015 - Agile may deliver but it does not win (yet) -...
Nesma autumn conference  2015 - Agile may deliver but it does not win (yet) -...Nesma autumn conference  2015 - Agile may deliver but it does not win (yet) -...
Nesma autumn conference 2015 - Agile may deliver but it does not win (yet) -...
 
Agile metrics what is... riga-version
Agile metrics   what is... riga-versionAgile metrics   what is... riga-version
Agile metrics what is... riga-version
 
Ac2017 2. added value!
Ac2017   2. added value!Ac2017   2. added value!
Ac2017 2. added value!
 
Cost unit 2012 part 2
Cost unit 2012   part 2Cost unit 2012   part 2
Cost unit 2012 part 2
 
Agile Metrics
Agile MetricsAgile Metrics
Agile Metrics
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
 
Ac2017 3. cast software-metricsincontracts
Ac2017   3. cast software-metricsincontractsAc2017   3. cast software-metricsincontracts
Ac2017 3. cast software-metricsincontracts
 
Agile contracting
Agile contractingAgile contracting
Agile contracting
 
Estimation in the Tendering Process - Frank Vogelezang
Estimation in the Tendering Process - Frank VogelezangEstimation in the Tendering Process - Frank Vogelezang
Estimation in the Tendering Process - Frank Vogelezang
 

Viewers also liked

Agile Contracts by Drew Jemilo (Agile2015)
Agile Contracts by Drew Jemilo (Agile2015)Agile Contracts by Drew Jemilo (Agile2015)
Agile Contracts by Drew Jemilo (Agile2015)Drew Jemilo
 
Lars thorup-react-and-redux-2016-09
Lars thorup-react-and-redux-2016-09Lars thorup-react-and-redux-2016-09
Lars thorup-react-and-redux-2016-09BestBrains
 
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...GeeksLab Odessa
 
Contracting for Agile Software Development
Contracting for Agile Software DevelopmentContracting for Agile Software Development
Contracting for Agile Software Developmentcspag67
 
Planning for Contract Agile Projects
Planning for Contract Agile ProjectsPlanning for Contract Agile Projects
Planning for Contract Agile ProjectsMike Cohn
 
Agile contracting a real challenge
Agile contracting a real challengeAgile contracting a real challenge
Agile contracting a real challengePeter Horsten
 
Agile Contracts
Agile ContractsAgile Contracts
Agile ContractsJuha Ilola
 
Agile contracts workshop martin kearns
Agile contracts workshop martin kearnsAgile contracts workshop martin kearns
Agile contracts workshop martin kearnsMartin Kearns
 
Agile Development with Agile Contract
Agile Development with Agile ContractAgile Development with Agile Contract
Agile Development with Agile ContractNUS-ISS
 
Agile Contracting in the Second Decade of Agility
Agile Contracting in the Second Decade of AgilityAgile Contracting in the Second Decade of Agility
Agile Contracting in the Second Decade of AgilitySimon Bennett
 
Agile concepts and opportunities for contract management r walters
Agile concepts and opportunities for contract management  r walters Agile concepts and opportunities for contract management  r walters
Agile concepts and opportunities for contract management r walters Expressworks International
 
Agile Wake Up #3 : la contractualisation Agile
Agile Wake Up #3 : la contractualisation AgileAgile Wake Up #3 : la contractualisation Agile
Agile Wake Up #3 : la contractualisation AgileZenika
 

Viewers also liked (17)

120521 agile contracts 2.1
120521 agile contracts 2.1120521 agile contracts 2.1
120521 agile contracts 2.1
 
Agile Contracts by Drew Jemilo (Agile2015)
Agile Contracts by Drew Jemilo (Agile2015)Agile Contracts by Drew Jemilo (Agile2015)
Agile Contracts by Drew Jemilo (Agile2015)
 
Lars thorup-react-and-redux-2016-09
Lars thorup-react-and-redux-2016-09Lars thorup-react-and-redux-2016-09
Lars thorup-react-and-redux-2016-09
 
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...
WebCamp:Project Management Day. Dmytro Gadomsky "How to implement agile to th...
 
Contracting for Agile Software Development
Contracting for Agile Software DevelopmentContracting for Agile Software Development
Contracting for Agile Software Development
 
Planning for Contract Agile Projects
Planning for Contract Agile ProjectsPlanning for Contract Agile Projects
Planning for Contract Agile Projects
 
Agile contracting a real challenge
Agile contracting a real challengeAgile contracting a real challenge
Agile contracting a real challenge
 
Agile Verträge
Agile VerträgeAgile Verträge
Agile Verträge
 
Agile Contracts
Agile ContractsAgile Contracts
Agile Contracts
 
Agile contracts workshop martin kearns
Agile contracts workshop martin kearnsAgile contracts workshop martin kearns
Agile contracts workshop martin kearns
 
Agile Contracts
Agile ContractsAgile Contracts
Agile Contracts
 
Selling Agile
Selling AgileSelling Agile
Selling Agile
 
Agile Development with Agile Contract
Agile Development with Agile ContractAgile Development with Agile Contract
Agile Development with Agile Contract
 
Agile Contracting in the Second Decade of Agility
Agile Contracting in the Second Decade of AgilityAgile Contracting in the Second Decade of Agility
Agile Contracting in the Second Decade of Agility
 
Agile contract 2
Agile contract 2Agile contract 2
Agile contract 2
 
Agile concepts and opportunities for contract management r walters
Agile concepts and opportunities for contract management  r walters Agile concepts and opportunities for contract management  r walters
Agile concepts and opportunities for contract management r walters
 
Agile Wake Up #3 : la contractualisation Agile
Agile Wake Up #3 : la contractualisation AgileAgile Wake Up #3 : la contractualisation Agile
Agile Wake Up #3 : la contractualisation Agile
 

Similar to Agile Contracts

Андрій Просов “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...
Андрій Просов  “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...Андрій Просов  “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...
Андрій Просов “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...Lviv Startup Club
 
Pick the Best Engagement Model for Software Startup development
Pick the Best Engagement Model for Software Startup developmentPick the Best Engagement Model for Software Startup development
Pick the Best Engagement Model for Software Startup developmentMassMedia Group
 
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...Lviv Startup Club
 
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...AgileNetwork
 
Running Agile on a non-Agile Environment, by Nuno Caneco
Running Agile on a non-Agile Environment, by Nuno CanecoRunning Agile on a non-Agile Environment, by Nuno Caneco
Running Agile on a non-Agile Environment, by Nuno CanecoAgile Connect®
 
Running Scrum on a non-Agile environment - Tales from a past experience" By N...
Running Scrum on a non-Agile environment - Tales from a past experience" By N...Running Scrum on a non-Agile environment - Tales from a past experience" By N...
Running Scrum on a non-Agile environment - Tales from a past experience" By N...Agile Connect Lisbon
 
Mohit Sharma C.V -
Mohit Sharma C.V - Mohit Sharma C.V -
Mohit Sharma C.V - Mohit Sharma
 
Agile vs waterfall
Agile vs waterfallAgile vs waterfall
Agile vs waterfallLohet Ramesh
 
]project-open[ Timesheet Project Invoicing
]project-open[ Timesheet Project Invoicing]project-open[ Timesheet Project Invoicing
]project-open[ Timesheet Project InvoicingKlaus Hofeditz
 
Technical Debt Management
Technical Debt ManagementTechnical Debt Management
Technical Debt ManagementMark Niebergall
 
Oracle Project Accounting Training.pdf
Oracle Project Accounting Training.pdfOracle Project Accounting Training.pdf
Oracle Project Accounting Training.pdfSpiritsoftsTraining
 
Agility - Part 1 of 2
Agility - Part 1 of 2Agility - Part 1 of 2
Agility - Part 1 of 2Dennis Byrne
 
Why the Home Office opted for an Open Source, Cloud SaaS Intranet
Why the Home Office opted for an Open Source, Cloud SaaS Intranet Why the Home Office opted for an Open Source, Cloud SaaS Intranet
Why the Home Office opted for an Open Source, Cloud SaaS Intranet Invotra2014
 
Why Home Office opted for an Open Source, Cloud SaaS Intranet
Why Home Office opted for an Open Source, Cloud SaaS IntranetWhy Home Office opted for an Open Source, Cloud SaaS Intranet
Why Home Office opted for an Open Source, Cloud SaaS IntranetInvotra
 
Engineering & Construction Industry Overview
Engineering & Construction Industry OverviewEngineering & Construction Industry Overview
Engineering & Construction Industry OverviewSouvik Chakraborty
 
Hybrid project mgmt
Hybrid project mgmtHybrid project mgmt
Hybrid project mgmtHussam Ahmad
 
Localize Overview
Localize OverviewLocalize Overview
Localize OverviewLocalize
 

Similar to Agile Contracts (20)

Андрій Просов “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...
Андрій Просов  “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...Андрій Просов  “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...
Андрій Просов “Fixed Price Agile Projects: Lessons Learned” Kyiv Project Man...
 
Pick the Best Engagement Model for Software Startup development
Pick the Best Engagement Model for Software Startup developmentPick the Best Engagement Model for Software Startup development
Pick the Best Engagement Model for Software Startup development
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...
Андрій Просов "Fixed Price Agile Projects: Challenges for Project Manager" Kh...
 
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
ANIn Ahmedabad Feb 2024 | Addressing Challenges in Project Management via Agi...
 
Running Agile on a non-Agile Environment, by Nuno Caneco
Running Agile on a non-Agile Environment, by Nuno CanecoRunning Agile on a non-Agile Environment, by Nuno Caneco
Running Agile on a non-Agile Environment, by Nuno Caneco
 
Running Scrum on a non-Agile environment - Tales from a past experience" By N...
Running Scrum on a non-Agile environment - Tales from a past experience" By N...Running Scrum on a non-Agile environment - Tales from a past experience" By N...
Running Scrum on a non-Agile environment - Tales from a past experience" By N...
 
Mohit Sharma C.V -
Mohit Sharma C.V - Mohit Sharma C.V -
Mohit Sharma C.V -
 
Agile vs waterfall
Agile vs waterfallAgile vs waterfall
Agile vs waterfall
 
]project-open[ Timesheet Project Invoicing
]project-open[ Timesheet Project Invoicing]project-open[ Timesheet Project Invoicing
]project-open[ Timesheet Project Invoicing
 
Technical Debt Management
Technical Debt ManagementTechnical Debt Management
Technical Debt Management
 
Oracle Project Accounting Training.pdf
Oracle Project Accounting Training.pdfOracle Project Accounting Training.pdf
Oracle Project Accounting Training.pdf
 
Agility - Part 1 of 2
Agility - Part 1 of 2Agility - Part 1 of 2
Agility - Part 1 of 2
 
Introduction to pm
Introduction to pmIntroduction to pm
Introduction to pm
 
Why the Home Office opted for an Open Source, Cloud SaaS Intranet
Why the Home Office opted for an Open Source, Cloud SaaS Intranet Why the Home Office opted for an Open Source, Cloud SaaS Intranet
Why the Home Office opted for an Open Source, Cloud SaaS Intranet
 
Why Home Office opted for an Open Source, Cloud SaaS Intranet
Why Home Office opted for an Open Source, Cloud SaaS IntranetWhy Home Office opted for an Open Source, Cloud SaaS Intranet
Why Home Office opted for an Open Source, Cloud SaaS Intranet
 
Engineering & Construction Industry Overview
Engineering & Construction Industry OverviewEngineering & Construction Industry Overview
Engineering & Construction Industry Overview
 
Hybrid project mgmt
Hybrid project mgmtHybrid project mgmt
Hybrid project mgmt
 
Localize Overview
Localize OverviewLocalize Overview
Localize Overview
 
resume-.PDF (2)
resume-.PDF (2)resume-.PDF (2)
resume-.PDF (2)
 

More from Lars Thorup

100 tests per second - 40 releases per week
100 tests per second - 40 releases per week100 tests per second - 40 releases per week
100 tests per second - 40 releases per weekLars Thorup
 
SQL or NoSQL - how to choose
SQL or NoSQL - how to chooseSQL or NoSQL - how to choose
SQL or NoSQL - how to chooseLars Thorup
 
Super fast end-to-end-tests
Super fast end-to-end-testsSuper fast end-to-end-tests
Super fast end-to-end-testsLars Thorup
 
Extreme Programming - to the next-level
Extreme Programming - to the next-levelExtreme Programming - to the next-level
Extreme Programming - to the next-levelLars Thorup
 
Advanced Javascript Unit Testing
Advanced Javascript Unit TestingAdvanced Javascript Unit Testing
Advanced Javascript Unit TestingLars Thorup
 
Unit testing legacy code
Unit testing legacy codeUnit testing legacy code
Unit testing legacy codeLars Thorup
 
Advanced QUnit - Front-End JavaScript Unit Testing
Advanced QUnit - Front-End JavaScript Unit TestingAdvanced QUnit - Front-End JavaScript Unit Testing
Advanced QUnit - Front-End JavaScript Unit TestingLars Thorup
 
Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Lars Thorup
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema EvolutionLars Thorup
 
Advanced Jasmine - Front-End JavaScript Unit Testing
Advanced Jasmine - Front-End JavaScript Unit TestingAdvanced Jasmine - Front-End JavaScript Unit Testing
Advanced Jasmine - Front-End JavaScript Unit TestingLars Thorup
 
Javascript unit testing with QUnit and Sinon
Javascript unit testing with QUnit and SinonJavascript unit testing with QUnit and Sinon
Javascript unit testing with QUnit and SinonLars Thorup
 
Continuous Integration for front-end JavaScript
Continuous Integration for front-end JavaScriptContinuous Integration for front-end JavaScript
Continuous Integration for front-end JavaScriptLars Thorup
 
Automated Performance Testing
Automated Performance TestingAutomated Performance Testing
Automated Performance TestingLars Thorup
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Lars Thorup
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering TeamsLars Thorup
 
Elephant Carpaccio
Elephant CarpaccioElephant Carpaccio
Elephant CarpaccioLars Thorup
 
Automated Testing for Embedded Software in C or C++
Automated Testing for Embedded Software in C or C++Automated Testing for Embedded Software in C or C++
Automated Testing for Embedded Software in C or C++Lars Thorup
 
Unit Testing in JavaScript with MVC and QUnit
Unit Testing in JavaScript with MVC and QUnitUnit Testing in JavaScript with MVC and QUnit
Unit Testing in JavaScript with MVC and QUnitLars Thorup
 
Introduction to Automated Testing
Introduction to Automated TestingIntroduction to Automated Testing
Introduction to Automated TestingLars Thorup
 

More from Lars Thorup (19)

100 tests per second - 40 releases per week
100 tests per second - 40 releases per week100 tests per second - 40 releases per week
100 tests per second - 40 releases per week
 
SQL or NoSQL - how to choose
SQL or NoSQL - how to chooseSQL or NoSQL - how to choose
SQL or NoSQL - how to choose
 
Super fast end-to-end-tests
Super fast end-to-end-testsSuper fast end-to-end-tests
Super fast end-to-end-tests
 
Extreme Programming - to the next-level
Extreme Programming - to the next-levelExtreme Programming - to the next-level
Extreme Programming - to the next-level
 
Advanced Javascript Unit Testing
Advanced Javascript Unit TestingAdvanced Javascript Unit Testing
Advanced Javascript Unit Testing
 
Unit testing legacy code
Unit testing legacy codeUnit testing legacy code
Unit testing legacy code
 
Advanced QUnit - Front-End JavaScript Unit Testing
Advanced QUnit - Front-End JavaScript Unit TestingAdvanced QUnit - Front-End JavaScript Unit Testing
Advanced QUnit - Front-End JavaScript Unit Testing
 
Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"Put "fast" back in "fast feedback"
Put "fast" back in "fast feedback"
 
Database Schema Evolution
Database Schema EvolutionDatabase Schema Evolution
Database Schema Evolution
 
Advanced Jasmine - Front-End JavaScript Unit Testing
Advanced Jasmine - Front-End JavaScript Unit TestingAdvanced Jasmine - Front-End JavaScript Unit Testing
Advanced Jasmine - Front-End JavaScript Unit Testing
 
Javascript unit testing with QUnit and Sinon
Javascript unit testing with QUnit and SinonJavascript unit testing with QUnit and Sinon
Javascript unit testing with QUnit and Sinon
 
Continuous Integration for front-end JavaScript
Continuous Integration for front-end JavaScriptContinuous Integration for front-end JavaScript
Continuous Integration for front-end JavaScript
 
Automated Performance Testing
Automated Performance TestingAutomated Performance Testing
Automated Performance Testing
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering Teams
 
Elephant Carpaccio
Elephant CarpaccioElephant Carpaccio
Elephant Carpaccio
 
Automated Testing for Embedded Software in C or C++
Automated Testing for Embedded Software in C or C++Automated Testing for Embedded Software in C or C++
Automated Testing for Embedded Software in C or C++
 
Unit Testing in JavaScript with MVC and QUnit
Unit Testing in JavaScript with MVC and QUnitUnit Testing in JavaScript with MVC and QUnit
Unit Testing in JavaScript with MVC and QUnit
 
Introduction to Automated Testing
Introduction to Automated TestingIntroduction to Automated Testing
Introduction to Automated Testing
 

Recently uploaded

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Recently uploaded (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Agile Contracts

  • 1. payment Agile Contracts Lars Thorup ZeaLake Software Consulting effort October 18, 2011
  • 2. Who is Lars Thorup? ● Managing software development ● 10 years of agile practices ● 15 years of automated testing ● Introducing agile and automated testing with clients ● Assessing software projects and companies ● Founder of 2 agile consulting companies ● 12+ senior consultants ● 10+ years
  • 3. Background ● A Danish agile consulting company, BestBrains ● Founded 10 years ago ● Agile and Lean coaching for software businesses ● Some body shopping (interim management and software development) on hourly rate ● New business area 3 years ago ● Develop and deliver custom software solutions ● ...using agile methods ● Condition ● Come up with a proper form of contract for these types of projects
  • 4. Cases - 3 projects in 3 years ● The event bureau ● small, lively company ● software for participant interactivity at top management conferences ● 1-3 programmers since August 2008 ● The energy corporation ● large, traditional corporation ● software for power plant registration ● 3 programmers, from January to September 2009 ● The government department ● Case management on top of document management system ● 3 programmers, from April 2010 to May 2011
  • 5. Real contract example ● Our contract with The Energy Corporation ● A few pages of specification ● Agile development process ● Low price pr hour ● Completion price
  • 6. A few pages of specification ● Scope ● described on a few pages with illustrations ● divided into 6 areas of functionality ● estimated roughly by vendor to 2400 hours
  • 7. Agile development process ● Development process described by the vendor ● weekly iterations with ● requirements ● estimation ● prioritization ● development ● delivery ● testing ● feedback
  • 8. Low price pr hour ● 50% below normal time-and-material-rate
  • 9. Completion price ● Separate delivery of the 6 areas ● Each area associated with separate completion price ● Total completion price equal to half the total project price if estimate holds ● Completion price is paid when software is put in production
  • 10. Collaboration climate ● Client and vendor help each other with specifications, testing, IT environment ● to complete project earlier and cheaper ● Vendor delivers software early, fix bugs fast ● to increase chance of early completion ● Vendor allows clients to change requirements ● to ease the clients' put-in-production decision
  • 11. Negotiation experience ● Hard to negotiate with contract manager ● Different views on responsibility, guarantees ● Project owner resolved in favour of the agile contract model
  • 12. Combine the traditional contract models paid by the hour Time & Fixed Material paid at completion Price
  • 13. An example project ● The application must enable us to do X and Y ● That will take 3 persons for 6 months ● Specification and implementation in weekly increments ● Pay $100/hour and 2 * $50.000 when deployed to production payment effort
  • 14. If we finish 25% early ● Price for client 174.000 ● Hourly price for vendor 234 payment effort
  • 15. If we finish on time ● Price for client 200.000 ● Hourly price for vendor 200 payment effort
  • 16. If we finish 25% late ● Price for client 226.000 ● Hourly price for vendor 180 payment effort
  • 17. Advantages ● Common incentive to finish below schedule and budget ● Cheaper for client ● Faster return on investment for client ● Higher profit for vendor ● Supports incremental requirement specification ● Supports incremental software delivery ● Encourage collaboration between client and vendor during project ● Client and vendor shares ● risks ● gains
  • 18. The maturity of the client must be high ● Have a clearly formulated product vision ● Can specify requirements incrementally ● Can prioritize features incrementally ● Can test and approve delivered software incrementally ● Can put software into production incrementally ● Will prioritize bugfixing over feature development
  • 19. The maturity of the vendor must be high ● Can estimate from high level product vision ● Can deliver frequently ● Can grow an architecture incrementally ● Can do automated regression testing ● Can break down features and tasks in weeks and days ● Will follow the priorities set by the client
  • 20. Configure the contract paid by the hour Time & Fixed Material paid at completion Price ● Increase hourly price ● Increase completion price ● When scope is most important ● When deadline is most important payment payment effort effort
  • 21. Use time & material for some phases ● Early prototyping and experimentation ● Initial estimation ● Maintenance