Agile kontrakter ghm marts2012

Post on 04-Jul-2015

189 views 1 download

Transcript of Agile kontrakter ghm marts2012

Agile kontrakter

Casper Wilstrup & Jesper Thaning, BestBrains

1. marts 2012 betaling

arbejde

Dagsorden

• Succesfulde software-projekter

• Agil og krav?

• Prismodel

• Kontraktens formål?

• Samarbejdsform

• Krav til kunden

• Krav til leverandøren

3

Succesfulde software-projekter

• Kunde og leverandør samarbejder

• Projektet slutter tidligt med den rette funktionalitet

• Kunden kan levere krav løbende

• Kunden får produktionsklar software leveret løbende

• Risici og gevinster deles af kunde og leverandør

4

3 agile software-projekter (ændres til logoer)

• Event-bureau'et– lille, dynamisk firma

– software til interaktivitet for deltagere på topleder-konferencer

– 1-3 programmører, siden august 2008

• Energiselskabet– stort, traditionelt selskab

– software til registrering af kraftværksoplysninger

– 3 programmører, jan 2009 – feb 2010

• Et ministerium– En styringsreol oven på dokumenthåndteringssystem

– 3 programmører, april 2010 – maj 2011

5

Agile erfaringer fra

6

Både agil og krav?

Kan vi både være agile og stille krav til leverandøren?

Sæt pris på agile projekter

• Ikke fast pris– Forudsætter en detaljeret kravspecifikation for hele projektet

• Ikke timepris– For så bærer kunden hele den økonomiske risiko

• Hvordan så?

Et projekteksempel

• Applikationen skal gøre os i stand til at opnå X og Y– Estimat: Det vil tage 3 personer i 6 måneder at udvikle

– Metode: Krav og programmering i ugentlige iterationer

– Betaling: 600 kr/time og 2 * 250.000 kr når det sættes i drift

betaling

arbejde

X

Y

6 mdr3 mdr

9

Hvis vi slutter til tiden

• Pris for kunden 1.000.000

• Samlet timepris for leverandøren 1.000

betaling

arbejde

10

Hvis vi slutter 25% før tid

• Pris for kunden 870.000

• Samlet timepris for leverandøren 1.170

betaling

arbejde

11

Hvis vi slutter 25% over tid

• Pris for kunden 1.130.000

• Samlet timepris for leverandøren 900

betaling

arbejde

Brug timepris for visse faser

• Tidlige prototyper

• Eksperiementer

• Indledende estimering

X

Y

• Vedligeholdelse

Timepris TimeprisAgil prismodel

Fordele ved prismodellen

• Fælles incitament til at slutte før tid og under budget– Billigere for kunden

– Hurtigere afkast på investeringen for kunden

– Højere fortjeneste for leverandøren

Fordele ved prismodellen

• Tilskynder til samarbejde mellem kunde og leverandør– Understøtter at kravene gives løbende

– Understøtter at software leveres løbende

• Kunde og leverandør deler risici og gevinster

Justering af kontrakten

• Højere timepris– Når funktionalitet er vigtigst

• Højere færdiggørelsespris– Når tidsfristen er vigtigst

betaling pr time

betaling ved færdiggørelse

Timepris Fast pris

Spørgsmål

1. Hvad er de vigtigste formål med en kontrakt for en leverandør?

2. Hvad er de vigtigste formål med en kontrakt for en kunde?

Regulering af samarbejdet

Kunde Leverandør

Fire krav Fem krav

Krav nr. 1 til kunden

• Kunden skal specificere krav løbende

• Ikke detaljeret kravspec

Krav nr. 2 til kunden

• Kunden skal prioritere funktionalitet løbende

Krav nr. 3 til kunden

• Skal teste og godkende leveret software løbende

Krav nr. 4 til kunden

• Skal prioritere fejlrettelser over udvikling af funktionalitet

Fire krav til kunden

1) Skal specificere krav løbende

2) Skal prioritere funktionalitet løbende

3) Skal teste og godkende leveret software løbende

4) Skal prioritere fejlrettelser over udvikling af funktionalitet

• Kunden har en klart formuleret produktvision

• Kunden sætter software i drift undervejs

Godt udgangspunkt

Krav nr. 1 til leverandøren

• Leverandøren skal estimere funktionsområder på baggrund af en overordnet produktvision

Krav nr. 2 til leverandøren

• Skal nedbryde funktionalitet og opgaver i uger og dage

Krav nr. 3 til leverandøren

• Skal levere til test hyppigt (continuous delivery)

Krav nr. 4 til leverandøren

• Skal gennemføre automatiske regressionstest

Krav nr. 5 til leverandøren

• Skal følge kundens prioriteringer

Fem krav til leverandøren

1) Skal estimere på grundlag af en overordnet produktvision

2) Skal nedbryde funktionalitet og opgaver i uger og dage

3) Skal levere hyppigt

4) Skal gennemføre automatiske regressionstest

5) Skal følge kundens prioriteringer

Forudsætning nr. 1 til leverandøren

• Kan udvikle arkitekturen løbende

Diskussion

• Hvad skal fremtidens kontrakter indeholde for at bidrage til at flere af fremtidens IT-leverancer bliver en succes for både kunden og leverandøren?

Formuleringer – prismodel

• Formålet med prismodellen er at skabe et fælles økonomisk incitament for både [leverandør] og [kunde] til at løse opgaven indenfor tidsplan og budget, og dermed tilskynde til konstruktivt samarbejde mellem parterne under projektet.

• Perioden op til starten af første releaseperiode afregnes efter en timebaseret prismodel til [x] kr/time ex. moms.

• Releaseperioderne afregnes efter en agil gørelsespris. Den lavere timepris er [y] kr/time ex. moms, og færdiggørelsesprisen forhandles endeligt inden hver releaseperiode på grundlag af den forudgående analyse af prioritering, estimater og risici. Den aftalte færdiggørelsespris betales ved releaseperiodens afslutning, når den leverede software godkendes af [kunden].

• Når den leverede software sættes i drift, er dette en implicit godkendelse.

Formuleringer – samarbejde

• Parterne udvikler systemet efter en agil udviklingsmodel, hvor [kunden] specificerer kravene, tester og giver feedback undervejs, og [leverandøren] løbende leverer systemet til test og feedback, begge dele i tæt samarbejde og dialog, i iterationer af 1 til 2 ugers varighed.

• Udviklingen opdeles i et antal releaseperioder (milepæle) af 4-8 ugers varighed. Hver releaseperiode starter på grundlag af en overordnet specifikation og et estimat som indgår i prismodellen. Releaseperioden afsluttes med at [kunden] godkender leverancen og så vidt muligt sætter den leverede software i drift.

• Inden hver releaseperiode starter, og i høj grad inden første releaseperiode starter, er parterne (udviklere, brugere, styregruppe) i tæt dialog om den konkrete udformning af den del af systemet, der indgår i releaseperioden, fx gennem workshops og løbende feedback.

Henvisninger

• Bender Von Haller Dragsted “Iterative kontrakter”– http://k02.dk/Bogen_Iterative_projektmodeller_og_kontrakter.pdf

– 01i, 02i og 03i

• IT&Telestyrelsen– http://www.itst.dk/it-arkitektur-og-standarder/it-styring/agile-metoder

– Vejledning om agile metoder

• SKI– Ny agil kontrakt velegnet til udbud og mini-udbud

• Kammeradvokaten– Ny agil standardkontrakt

Gå-hjem-møder

• Slib kniven – 6. marts

• Problemløsning for viderekomne – 13. marts

• Styr gennem kaos – 15. marts

• Opnå højere pålidelighed i leverancerne – 20. marts

• Introduktion til agil udvikling – 27. marts

• Kanban: den nye agile metode – 11. april