41
Agile kontrakter 2. marts 2016 Jesper Thaning, partner BestBrains P/S

Agile kontrakter mar 2016 café-møde BestBrains

Embed Size (px)

Citation preview

Page 1: Agile kontrakter mar 2016 café-møde BestBrains

Agile  kontrakter  

2.  marts  2016  Jesper  Thaning,  partner  BestBrains  P/S  

Page 2: Agile kontrakter mar 2016 café-møde BestBrains

Agenda  

•  Har  vi  brug  for  kontrakter  (Dl  agile  projekter)?  •  Commitment  •  Kontraktparadigmer  •  Behovsopgørelse  •  Rammer  for  Dllid  og  samarbejde  •  Eksempler  på  formuleringer  •  Eksempel  på  agil  prismodel  

Page 3: Agile kontrakter mar 2016 café-møde BestBrains

Det agile Manifest

Processer og værktøjerIndivider og samspil over  

Fastholdelse af en planHåndtering af forandringer over  

Kilde:  www.agilemanifesto.org  

Omfattende dokumentationVelfungerende software over  

KontraktforhandlingSamarbejde med kunden over  

”While  there  is  value  in  the  items  on  the  right,  we  value  the  items  on  the  le4  more”.  

A5  

Har  vi  så  overhovedet  brug  for  en  kontrakt?  

Page 4: Agile kontrakter mar 2016 café-møde BestBrains

Agil  værdiskabelse  

Agil    Vandfald  

Sker  det  helt  af  sig  selv?  

Page 5: Agile kontrakter mar 2016 café-møde BestBrains
Page 6: Agile kontrakter mar 2016 café-møde BestBrains

Hvad  kan  vi  gøre  for  at  skabe  rammerne  for  succes?  

Page 7: Agile kontrakter mar 2016 café-møde BestBrains

Kontraktparadigmer  

Resultat-­‐forplig/gelse:  •  Fokus  på  produkt  og  pris  •  Regulerer  resultatet  •  Vederlag  for  leverancer  •  ”Fastpriskontrakt”  

Indsats-­‐forplig/gelse:  •  Fokus  på  proces,  rammer  

og  mennesker  •  Regulerer  indsats/adfærd  •  Vederlag  for  medgået  Dd  •  ”Time  &  Material”  

(K03)  (K01  –  K02)  

1.  Procesmæssige  krav  2.  Behovsopgørelse  3.  Prismodel  4.  Evaluering  af  leverandører  

Agile  kontrakter  Non-­‐agile  kontrakter  

Risikoen  er  kundens  og  leverandørens   Risikoen  er  kundens  

Page 8: Agile kontrakter mar 2016 café-møde BestBrains

• Hvilket  resultat  vil  vi  opnå?  •  business  case  •  forretningsmål  Mål  

• Hvilken  funk/onalitet  tror  vi  vil  skabe  resultatet?  •  temaer  •  features/epics  •  user  stories  

Behov  • Hvordan  skal  systemet  opføre  sig  og  se  ud?  •  acceptkriterier  •  design  skærmbilleder  •  non-­‐funkDonelle  krav  

Krav  

Behov  i  en  agil  kontrakt   B2  

Ikke  for  mange    funk/onelle  detaljer!  

Kravspec  

Agil  kontrakt  

Page 9: Agile kontrakter mar 2016 café-møde BestBrains

9  

Succesfulde  so_ware-­‐projekter  1.  Kunde  og  leverandør  samarbejder  2.  Projektet  slu`er  Ddligt  med  den  re`e  funkDonalitet  3.  Kunden  kan  levere  krav  løbende  4.  Kunden  får  produkDonsklar  so_ware  leveret  løbende  5.  Risici  og  gevinster  deles  af  kunde  og  leverandør    

Page 10: Agile kontrakter mar 2016 café-møde BestBrains

Hvordan  sæ`er  vi  rammer  for  Dllid  og  samarbejde?  

Kunde   Leverandør  

4  Krav  ü -­‐  ü -­‐  ü -­‐  ü -­‐  

5  Krav  ü -­‐  ü -­‐  ü -­‐  ü -­‐  ü -­‐  

Page 11: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  1  Dl  kunden  •  Kunden  skal  specificere  krav  løbende  

“Kunden  leverer  krav  løbende.  Ikke  detaljeret  kravspec  up-­‐front.”  

Page 12: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  2  Dl  kunden  •  Kunden  skal  prioritere  funkDonalitet  løbende  

“Prioritering  hver  14.  dag  forud  for  sprint-­‐planning”  

Page 13: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  3  Dl  kunden  •  Skal  teste  og  godkende  leveret  so_ware  løbende  

“Godkende  leverance  hver  14.  dag  ved  sprint  review”  

Page 14: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  4  Dl  kunden  •  Skal  prioritere  fejlre`elser  over  udvikling  af  funkDonalitet  

Commitment!  

Page 15: Agile kontrakter mar 2016 café-møde BestBrains

Fire  krav  Dl  kunden  

ü Skal  specificere  krav  løbende  ü Skal  prioritere  funkDonalitet  løbende  ü Skal  teste  og  godkende  leveret  so_ware  løbende  ü Skal  prioritere  fejlre`elser  over  udvikling  af  funkDonalitet  

•  Kunden  har  en  klart  formuleret  produktvision  •  Kunden  sæ`er  so_ware  i  dri_  undervejs  

Et  godt  udgangspunkt:  

Page 16: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  1  Dl  leverandøren  •  Leverandøren  skal  esDmere  funkDonsområder  på  baggrund  af  en  overordnet  produktvision  og  behov  

“Hver  delleverance  skal  esKmeres  forud  for  påbegyndelse”  

Page 17: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  2  Dl  leverandøren  •  Skal  nedbryde  funkDonalitet  og  opgaver  i  uger  og  dage  

“Leverandøren  skal  udarbejde  detaljeret  plan  for  iteraKon”  

Page 18: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  3  Dl  leverandøren  •  Skal  levere  Dl  test  hyppigt  

“Leverandøren  skal  forsøge  at  levere  færdig  funkKonalitet  hver  14.  dag”  

Page 19: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  4  Dl  leverandøren  •  Skal  gennemføre  automaDske  regressionstest  

“Leverandøren  skal  opbygge  regressiontest,  der  kan  køre  automaKsk”  

Page 20: Agile kontrakter mar 2016 café-møde BestBrains

Krav  nr.  5  Dl  leverandøren  •  Skal  følge  kundens  prioriteringer  

Commitment!  

Page 21: Agile kontrakter mar 2016 café-møde BestBrains

Rammer  for  godt  samarbejde  

ü  1.  Skal  esDmere  på  grundlag  af  en  overordnet  produktvision  og  behov  

ü  2.  Skal  nedbryde  funkDonalitet  og  opgaver  i  uger  og  dage  

ü  3.  Skal  levere  hyppigt  ü  4.  Skal  gennemføre  automaDske  

regressionstest  ü  5.  Skal  følge  kundens  prioriteringer  

ü  1.  Skal  specificere  krav  løbende  ü  2.  Skal  prioritere  funkDonalitet  løbende  ü  3.  Skal  teste  og  godkende  leveret  

so_ware  løbende  ü  4.  Skal  prioritere  fejlre`elser  over  

udvikling  af  funkDonalitet  

Kunde   Leverandør  

Page 22: Agile kontrakter mar 2016 café-møde BestBrains

Eksempler  på  formuleringer  

•  Kontrakt  A:  Detaljeret  kontrakt    – Procesmæssige  krav  

•  Kontrakt  B:  Letvægts-­‐kontrakt  – Agil  prismodel  – Samarbejde  

Page 23: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  SamarbejdsorganisaDon  

•  Ingen  af  Parterne  kan  udskiFe  medarbejdere  uden  den  anden  Parts  samtykke,  medmindre  udski_ningen  skyldes  medarbejderens  personlige  forhold,  herunder  ophør  af  ansæ`elsesforhold  eller  lignende  omstændigheder.  –  Den  nye  medarbejder  skal  mindst  have  samme  kvalifikaDoner.    

•  Parterne  skal  af  hensyn  Dl  konDnuiteten  og  kvaliteten  i  arbejdet  i  videst  muligt  omfang  undgå  udskiFning  af  medarbejdere.  –  Udski_ning  må  ikke  påføre  den  anden  Part  yderligere  omkostninger,  og  den  

nye  medarbejder  skal  have  mindst  Dlsvarende  kvalifikaDoner.  En  Part  skal  orienteres  skri_ligt  om  udski_ningen  medarbejdere.  

•  En  Part  skal  eFer  anmodning  udskiFe  en  medarbejder,  såfremt  anmodningen  er  rimeligt  begrundet.  

PROCESMÆSSIGT  KRAV  –  organisaDon  

Leverandøren  kan  udskiFe  Kundens

 medarbejder!  

Page 24: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  Prisafslag  omkring  samarbejdsorganisaDon  

•  Kunden  kan  kræve,  at  der  skal  ske  et  forholdsmæssigt  afslag  i  de  vederlag,  som  Leverandøren  er  berekget  Dl  i  henhold  Dl  kontrakten,  såfremt  der  er  mangler,  herunder  organisatoriske  mangler  i  kontraktens  løbe/d.    –  Organisatoriske  mangler  er  f.eks.  ikke  /lstrækkelige  

medarbejderressourcer  hos  Leverandøren,  at  Leverandøren  ikke  deltager  i  organisaDonen  som  forudsat  i  bilag  7  (SamarbejdsorganisaDon),  eller  at  Leverandøren  ikke  konkret  sDller  med  de  rigDge  kompetencer.  

–  Det  forholdsmæssige  afslag  kan  kræves  fra  Ddspunktet  for  den  fremsa`e  reklamaDon.  

BODSBESTEMMELSE  

Page 25: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  Organisering  og  placering  

•  Leverandørens  projektgruppe  skal  være  fysisk  /l  stede  hos  Kunden  i  hele  projektets  leve/d  –  Det  daglige  arbejde  foregår  hos  Kunden,  og  Leverandørens  projektledelse,  

testmanager,  chefudvikler/arkitekt  og  andre  beslutningstagere  i  projektgruppen  skal  være  placeret  på  Kundens  lokaDon  al  den  Dd,  de  arbejder  på  projektet.  

–  Der  kan  a_ales  undtagelser  i  forbindelse  med  særlige,  forbigående  omstændigheder.    –  Projektleder,  testmanager,  chefudvikler/arkitekt  samt  centrale  seniorudviklere  skal  

være  allokeret  100%  med  mindre  andet  a_ales  særskilt.  •  Kunden  sDller  skriveborde,  stole  og  nemorbindelse  Dl  rådighed  •  Herudover  må  der  ikke  være  personsammenfald  imellem  

ressourcekrævende  roller  –  Eksempelvis  må  projektleder  og  testmanager  ikke  være  samme  person.  

•  Der  skal  tages  højde  for  at  bemandingen  Dl  test  kan  være  ret  intensiv  

PROCESMÆSSIGT  KRAV  –  organisaDon  

Page 26: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  User  stories  afslu`es  løbende  -­‐  som  potenDelle  delleverancer  

•  Kunden  ønsker  et  agilt  forløb  hvor  user  stories  løbende  færdiggøres  på  en  måde,  så  man  løbende  vil  kunne  idriFsæOe  dem,  hvis  man  ønsker  det.  

•  De  angivne  User  Stories  for  hver  enkel  epic  er  Kundens  forslag  Dl  hvordan  epic'en  kan  underopdeles.  Listen  af  user  stories  afgrænser  omfanget  af  epic'en  og  er  udgangspunkt  for  Leverandørens  es/mat  i  forbindelse  med  /lbudsgivning.  –  Det  forudsæ`es  at  hver  enkelt  user  story  kan  blive  nedbrudt  i  yderligere  

user  stories  i  forbindelse  med  user  storiens  aolaringsfase  beskrevet  nedenfor,  med  det  formål  at  gøre  implementering  og  opfølgning  nemmere.  Det  forudsæOes  også  at  der  vil  blive  ændret  og  /lføjet  acceptkriterier  i  user  stories  under  aQlaringsfasen.  

•  Krav  Dl  rytme  af  agile  leverancer:  der  må  højst  være  14  dage  mellem  hver  Agile  leverance  

PROCESMÆSSIGT  KRAV  –  proces  

Page 27: Agile kontrakter mar 2016 café-møde BestBrains

Krav:  Åbenhed  i  udviklingsprocessen  

•  Der  skal  være  fuld  gennemsig/ghed  i  udviklingsprocessen.  Det  betyder  blandt  andet:  –  Kunden  skal  have  indsigt  i  leverandørens  arbejdsdokumenter,  herunder  

dokumenter  om  arkitekturvalg  og  test.  Leverandøren  kan  dog  ikke  forvente  at  Kunden  har  set  dokumenter  m.v.  førend  det  officielt  har  været  sendt  Dl  review  hos  Kunden.  

•  Leverandøren  må  ikke  igangsæOe  en  opgave  uden  Kundens  godkendelse.  –  Her  tænkes  blandt  andet  på  teknik,  arkitektur,  testbarhed  og  GUI.  

•  Kunden  skal  kunne  deltage  i  leverandørens  daglige  møder.    •  Leverandøren  skal  på  ugebasis  levere  en  opgørelse  over  /d  

forbrugt  på  hhv.  aolaring,  udvikling,  test  og  projektledelse  m.v.  –  Den  endelige  specificering  a_ales  i  aolaringsetapen    

Kontrakt  A  

PROCESMÆSSIGT  KRAV  –  Åbenhed  

Page 28: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  Forbedring  af  udviklingsprocessen  

•  Leverandøren  skal  løbende  arbejde  på  at  forbedre  udviklingsprocessen.  Det  betyder  at  leverandøren  mindst  hver  14.  dag  skal  aTolde  retrospec/ves,  hvor  både  Kunde  og  Leverandør  deltager.  –  Kunden  afsæ`er  i  udgangspunktet  1,5  /mer  Dl  hvert  retrospekDv.  Leverandøren  og  Kunden  skal  i  samarbejde  sikre,  at  de  forbedringsDltag  og  forhindringer  som  retrospecDves  idenDficerer  implementeres  henholdsvis  forsøges  rernet.  

–  Leverandøren  skal  sikre  at  udviklingsprocessen  forbedres.  –  Facilitator  sDlles  Dl  rådighed  af  Kunden.  

PROCESMÆSSIGT  KRAV  –  læring  og  forbedring  

Page 29: Agile kontrakter mar 2016 café-møde BestBrains

Krav  X.X  AutomaDseret  systemtest  

•  Til  at  automaDsere  testen  af  brugergrænsefladen  anvendes  for  nuværende  Selenium  og  test  udføres  af  Leverandøren.      –  Testcases  skal  afdække  de  centrale  fejlscenarier,  som  ikke  fanges  af  

uni`est,  og  samDdig  begrænse  vedligeholdelsesbyrden  ved  ændringer  i  brugergrænsefladen.    

–  Testen  vil  primært  omhandle  hovedvejen  i  relaDon  Dl  de  enkelte  registreringsforløb.    

–  Udover  fokus  på  forretningsindholdet  vil  forløb  som  akDverer  yderligere  felDndtastning  også  blive  testet.  

–  Automa/serede  test  konfigura/onsstyres  og  baselines  på  samme  måde  som  alle  andre  Testprodukter,  dokumentaDon  og  kode  mv.  

PROCESMÆSSIGT  KRAV  –  automaDseret  test  

Page 30: Agile kontrakter mar 2016 café-møde BestBrains

h`ps://acpn-­‐2016.confek.events/    

28th  April  8:30  –  17:00  @  BestBrains  (networking  dinner  27th)    

Join  us  in  knowledge  sharing  of  Procurement  with    Agile  Contracts  in  the  Nordic  -­‐  A  Game  Changing  Experience  

SHARING  EXPERIENCES  WITH  AGILE  CONTRACTS  IN  THE  NORDIC    

Page 31: Agile kontrakter mar 2016 café-møde BestBrains

Risiko  

Resultat-­‐forplig/gelse:  •  ”Fastpriskontrakt”  

Indsats-­‐forplig/gelse:  •  ”Time  &  Material”  

Risiko  er  kundens  og  leverandørens  

Risiko  er  kundens  (men  ikke  leverandørens)  

Agil  prismodel  Deling  af  gevinst  og  risiko  

Page 32: Agile kontrakter mar 2016 café-møde BestBrains

Et  projekteksempel  med  agil  prismodel  •  ApplikaDonen  skal  gøre  os  i  stand  Dl  at  opnå  X  og  Y  

–  Es/mat:  Det  vil  tage  1000  Dmer  at  udvikle    –  Opdeling:  2  delleverancer  –  Betaling:  500  kr/Dme  og  2*250.000  kr  når  det  sæ`es  i  dri_  

BETALING  

TID  

X

Y

500.000  kr  

1.000.000  kr  

3  mdr   6  mdr  

2.  Lav  Kmepris  3.  Færdiggørelsespris  

1.  Opdeling  i  delleverancer  

IdenDficerede  behov  

Page 33: Agile kontrakter mar 2016 café-møde BestBrains

33  

Hvis  vi  slu`er  Dl  Dden  •  Pris  for  kunden                        1.000.000  •  Samlet  Dmepris  for  leverandøren    1.000  

betaling

arbejde

Page 34: Agile kontrakter mar 2016 café-møde BestBrains

34  

Hvis  vi  slu`er  25%  før  Dd  •  Pris  for  kunden                  875.000  •  Samlet  Dmepris  for  leverandøren  1.166  

betaling

arbejde

Page 35: Agile kontrakter mar 2016 café-møde BestBrains

35  

Hvis  vi  slu`er  25%  over  Dd  •  Pris  for  kunden                    1.125.000  •  Samlet  Dmepris  for  leverandøren  900  

betaling

arbejde

Page 36: Agile kontrakter mar 2016 café-møde BestBrains

Brug  Dmepris  for  visse  faser  

•  Afklaringer•  Tidlige prototyper•  Eksperimenter•  Indledende estimering

Vedligeholdelse

Dd  

betaling  

Leverancer

TimeprisTimepris Agile prismodel

Opstart

Page 37: Agile kontrakter mar 2016 café-møde BestBrains

Fordele  ved  prismodellen  

•  Fælles  incitament  Dl  at  slu`e  før  Dd  og  under  budget  –  Billigere  for  kunden  –  HurDgere  aoast  på  investeringen  for  kunden  –  Højere  fortjeneste  for  leverandøren  

Page 38: Agile kontrakter mar 2016 café-møde BestBrains

Justering  af  kontrakten  

•  Højere  Dmepris  –  Når  funkDonalitet  er  vigDgst  

•  Højere  færdiggørelsespris  –  Når  Ddsfristen  er  vigDgst  

betaling pr time betaling ved færdiggørelse Timepris  Fast  pris  

Page 39: Agile kontrakter mar 2016 café-møde BestBrains

Formuleringer  –  prismodel  

•  Formålet  med  prismodellen  er  at  skabe  et  fælles  økonomisk  incitament  for  både  [leverandør]  og  [kunde]  /l  at  løse  opgaven  indenfor  /dsplan  og  budget,  og  dermed  Dlskynde  Dl  konstrukDvt  samarbejde  mellem  parterne  under  projektet.  •  Perioden  op  Dl  starten  af  første  releaseperiode  afregnes  e_er  en  Dmebaseret  prismodel  Dl  [x]  kr/Dme  

ex.  moms.  

•  Releaseperioderne  afregnes  eFer  en  agil  færdiggørelsespris.  •  Den  lavere  Dmepris  er  [y]  kr/Dme  ex.  moms,  og  færdiggørelsesprisen  forhandles  endeligt  inden  hver  

releaseperiode  på  grundlag  af  den  forudgående  analyse  af  prioritering,  es/mater  og  risici.  •  Den  a_alte  færdiggørelsespris  betales  ved  releaseperiodens  afslutning,  når  den  leverede  so_ware  

godkendes  af  [kunden].  

•  Når  den  leverede  so_ware  sæ`es  i  driF,  er  deOe  en  implicit  godkendelse.  

PROCESMÆSSIGT  KRAV  –  prismodel   Kontrakt  B  

Page 40: Agile kontrakter mar 2016 café-møde BestBrains

Formuleringer  –  samarbejde  

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

•  Udviklingen  opdeles  i  et  antal  releaseperioder  (milepæle)  af  4-­‐8  ugers  varighed.    •  Hver  releaseperiode  starter  på  grundlag  af  en  overordnet  specifikaDon  og  et  esDmat  som  indgår  i  

prismodellen.  Releaseperioden  afslu`es  med  at  [kunden]  godkender  leverancen  og  så  vidt  muligt  sæ`er  den  leverede  so_ware  i  dri_.    

•  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.  

Kontrakt  B  PROCESMÆSSIGT  KRAV  –  specifikaDon  

Page 41: Agile kontrakter mar 2016 café-møde BestBrains

AlternaDv  prismodel  –  Maksimalpris  •  PrisesDmat  på  hele  leverance  (antal  Dmer)  •  Over  antal  esDmerede  Dmer  -­‐>  Dmepris  falder  

•  Hvor  drasDsk  falder  den?  Kan  den  blive  0  kr.?