If you can't read please download the document
Upload
jesper-thaning
View
963
Download
1
Embed Size (px)
Citation preview
Collaborative Agile Contracts
Agile kontrakter
Casper Wilstrup & Jesper Thaning, BestBrains
29. marts 2011
BestBrains: et agilt softwarehus
BestBrainsRdgivningagile & lean praksis
software vrktjer
software arkitektur
Softwarelsninger
Nylige referencerThomson Reuters
DONG Energy
Wizer
DSB
Vkstfonden
Indenrigs- og Sundhedsministeriet
Dagsorden
Baggrund og vision
Cases
Agil og krav?
Prismodel
Samarbejdsform
Krav til kunden
Krav til leverandren
Eksempel p formuleringer
Baggrund
I de sidste 10 r, har BestBrains leveretagil og lean rdgivning for software virksomheder, og
softwareudvikling p timepris som underleverandr
For tre r startede vi et nyt forretningsomrdeudvikle og levere software-lsninger
med agile metoder
Vi mtte finde en passende kontraktform for disse projekter
Vores vision for gode software-projekter
Kunde og leverandr samarbejder
Projektet slutter tidligt med den rette funktionalitet
Kunden kan levere krav lbende
Kunden fr produktionsklar software leveret lbende
Risici og gevinster deles af kunde og leverandr
3 agile software-projekter
Event-bureau'etlille, dynamisk firma
software til interaktivitet for deltagere p topleder-konferencer
1-3 programmrer, siden august 2008
Energiselskabetstort, traditionelt selskab
software til registrering af kraftvrksoplysninger
3 programmrer, siden januar 2009
Et ministeriumEn styringsreol oven p dokumenthndteringssystem
3 programmrer, siden april 2010
Bde agil og krav?
Kan vi bde vre agile og stille krav til leverandren?
St pris p agile projekter
Ikke fast prisForudstter en detaljeret kravspecifikation for
hele projektet
Ikke timeprisFor s brer kunden hele den konomiske
risiko
Hvordan s?
Et projekteksempel
Applikationen skal gre os i stand til at opn X og YEstimat: Det vil tage 3 personer i 6 mneder at udvikle
Metode: Krav og programmering i ugentlige iterationer
Betaling: 600 kr/time og 2 * 250.000 kr nr det sttes i drift
X
Y
6 mdr
3 mdr
Hvis vi slutter til tiden
Pris for kunden 1.000.000
Samlet timepris for leverandren 1.000
Hvis vi slutter 25% fr tid
Pris for kunden 870.000
Samlet timepris for leverandren 1.170
Hvis vi slutter 25% over tid
Pris for kunden 1.130.000
Samlet timepris for leverandren 900
Brug timepris for visse faser
Tidlige prototyper og eksperiementer
Indledende estimering
Vedligeholdelse
Fordele ved prismodellen
Flles incitament til at slutte fr tid og under budgetBilligere for kunden
Hurtigere afkast p investeringen for kunden
Hjere fortjeneste for leverandren
Fordele ved prismodellen
Tilskynder til samarbejde mellem kunde og leverandr under projektetUndersttter at kravene gives lbende
Understtter at software leveres lbende
Kunde og leverandr deler risici og gevinster
Justering af kontrakten
Hjere timeprisNr funktionalitet er vigtigst
Hjere frdiggrelsesprisNr tidsfristen er vigtigst
betaling pr time
betaling ved frdiggrelse
Timepris
Fast pris
Regulering af samarbejdet
Kunde
Leverandr
Fire krav
Fem krav
Krav nr. 1 til kunden
Kunden skal specificere krav lbende
Ikke detaljeret kravspec
Krav nr. 2 til kunden
Kunden skal prioritere funktionalitet lbende
Krav nr. 3 til kunden
Skal teste og godkende leveret software lbende
Krav nr. 4 til kunden
Kan stte software i drift undervejs
Fire krav til kunden
Skal specificere krav lbende
Skal prioritere funktionalitet lbende
Skal teste og godkende leveret software lbende
Kan stte software i drift undervejs
Kunden har en klart formuleret produktvision
Vil prioritere fejlrettelser over udvikling af funktionalitet
Godt udgangspunkt
Krav nr. 1 til leverandren
Leverandren skal kunne estimere p grundlag af en overordnet produktvision
Krav nr. 2 til leverandren
Skal nedbryde funktionalitet og opgaver i uger og dage
Krav nr. 3 til leverandren
Skal levere til test hyppigt
Krav nr. 4 til leverandren
Skal gennemfre automatiske regressionstest
Test
Krav nr. 5 til leverandren
Skal flge kundens prioriteringer
Forudstning nr. 1 til leverandren
Kan udvikle arkitekturen lbende
Fem krav til leverandren
Skal estimere p grundlag af en overordnet produktvision
Skal nedbryde funktionalitet og opgaver i uger og dage
Skal levere hyppigt
Skal gennemfre automatiske regressionstest
Skal flge kundens prioriteringer
Formuleringer - samarbejde
Parterne udvikler systemet efter en agil udviklingsmodel, hvor [kunden] specificerer kravene, tester og giver feedback undervejs, og [leverandren] lbende leverer systemet til test og feedback, begge dele i tt samarbejde og dialog, i iterationer af 1 til 2 ugers varighed.
Udviklingen opdeles i et antal releaseperioder (mileple) af 4-8 ugers varighed. Hver releaseperiode starter p grundlag af en overordnet specifikation og et estimat som indgr i prismodellen. Releaseperioden afsluttes med at [kunden] godkender leverancen og s vidt muligt stter den leverede software i drift.
Inden hver releaseperiode starter, og i hj grad inden frste releaseperiode starter, er parterne (udviklere, brugere, styregruppe) i tt dialog om den konkrete udformning af den del af systemet, der indgr i releaseperioden, fx gennem workshops og lbende feedback.
Formuleringer - prismodel
Formlet med prismodellen er at skabe et flles konomisk incitament for bde [leverandr] og [kunde] til at lse opgaven indenfor tidsplan og budget, og dermed tilskynde til konstruktivt samarbejde mellem parterne under projektet.
Perioden op til starten af frste releaseperiode afregnes efter en timebaseret prismodel til [x] kr/time ex. moms.
Releaseperioderne afregnes efter en agil prismodel, hvor betalingen er delt op i en lavere timepris og en frdiggrelsespris. Den lavere timepris er [y] kr/time ex. moms, og frdiggrelsesprisen forhandles endeligt inden hver releaseperiode p grundlag af den forudgende analyse af prioritering, estimater og risici. Den aftalte frdiggrelsespris betales ved releaseperiodens afslutning, nr den leverede software godkendes af [kunden].
Nr den leverede software sttes i drift, er dette en implicit godkendelse.
Referencer
Bendtner Von Haller Dragsted Iterative kontrakter01i, 02i og 03i
IT&Telestyrelsen Iterative kontrakter I det offentlige
betaling0010
000
arbejde107.50
10100
betaling0012
000
52.50
550
107.50
10100
arbejde12.51.#NAN0
betaling0012
000
7.53.750
7.58.750
arbejde12.51.#NAN0
betaling0012
000
1050
10100
arbejde12.51.#NAN0
betaling0012
000
arbejde12.56.250
12.511.250
12.51.#NAN0