KONTRAKTER FOR PROGRAMVAREUTVIKLING Ståle L Hagen UiO 10 mai 2017 www.selmer.no
Praktisk kontraktsrett En kontrakt er en avtale som mellom partene etablerer en bindende forpliktelse 4l å gjøre eller å unnlate å gjøre noe Tilbud + Aksept = Avtale Ingen formkrav :l de fleste typer kontrakter Muntlig / SkriAlig / Konkludent adferd / Pre- kontraktuelt ansvar Kontraktens innhold Partene / Leveransen / FremdriAsplan Bistandsforpliktelse / Spesifisert resultat / Definert tjenestenivå eller kvalitet Variabel pris / Fast pris / Målpris / Ytelsesbasert pris Advokatfirmaet Selmer DA } Doc. ref.: } 2
Kontraktkategorier One :me off kontrakter Rammeavtaler Løpende tjenestekontrakter Samarbeidsavtaler Garan:er Advokatfirmaet Selmer DA } Doc. ref.: } 3
Noen "kontraktstyper" Kjøp av hyllevare Lisensiering av en begrenset reu :l å bruke Programvareutvikling Leveranse / Prosjekt Konsulentbistand / - oppdrag Vedlikehold / Support DriA / Outsourcing IaaS / PaaS / SaaS Advokatfirmaet Selmer DA } Doc. ref.: } 4
Særtrekk ved programvareutvikling Kompleksiteten Normalprosjektet innebærer høy grad av kompleksitet Konstruksjon og forskning Sosiotekniske systemer Skal brukes av mennesker og kan innebære endring å måter å arbeide på organisasjonsstruktur Abstrakte og usynlige systemer Mangel på modenhet IT bransjen er enda ung... Advokatfirmaet Selmer DA } Doc. ref.: } 5
Hvorfor skal arbeidet utføres? Advokatfirmaet Selmer DA } Doc. ref.: } 6
Utfordringer i store IT-prosjekter Uklar målse[ng og manglende avgrensning Udefinerte suksesskriterier Usikkerhet håndteres ikke underveis Mange endringer underveis i gjennomføringen Systeminnføring blir undervurdert oae betydelige krav :l oms:lling i organisasjonen Manglende kompetanse og prosjekterfaring hos deltagerne Dårlig kommunikasjon mellom kunde og leverandør Prosjektene blir for store og komplekse Erfaringer underveis blir ikke :lstrekkelig hensyntau Advokatfirmaet Selmer DA } Doc. ref.: } 7
It s not the strongest species that survive, nor the most intelligent, but the most responsive to change Charles Darwin, 1809-1882 Advokatfirmaet Selmer DA } Doc. ref.: } 8
Kontrakter for programvareutvikling Resultatansvar / Fossefall" Spesifisert resultat Fast pris Høy grad av forutberegnelighet, men begrenset fleksibilitet Itera:v gjennomføringsmodell / "Serie- fossefall" Definert gjennomføringsmodell og løpende spesifisering av delleveranser Målpris / Es:meringsmodell Forutberegneligheten øker og fleksibiliteten reduseres underveis i gjennomføringen Bistandsforpliktelse / Ressurskjøp Avtalt hvilke ressurser og omfang de skal arbeide, men uten spesifisert resultat Betaling euer medgåu :d og kostnader Høy grad av fleksibilitet, men begrenset forutberegnelighet Advokatfirmaet Selmer DA } Doc. ref.: } 9
Valg av kontraktstype Avoid the tail wagging the dog Det som skal leveres bør bestemme kontraktvalget, ikke motsau 1) Hva skal leveres? 2) Hvordan skal det leveres? 3) Hvilket ansvar skal leverandøren påta seg? 4) Hvilken usikkerhet skal plasseres hos leverandøren? 5) Prismodell? 6) Valg av kontraktstype Advokatfirmaet Selmer DA } Doc. ref.: } 10
Fossefall Behov / Krav Løsning Utvikling / Koding Verifisering Forvaltning Advokatfirmaet Selmer DA } Doc. ref.: } 11
Seriefossefall PS2000 Advokatfirmaet Selmer DA } Doc. ref.: } 12
Ressurskjøp med fokus på effektivitet Advokatfirmaet Selmer DA } Doc. ref.: } 13
Det smidige manifest (2001) Personer og samspill fremfor prosesser og verktøy Programvare som virker fremfor omfauende dokumentasjon Samarbeid med kunden fremfor kontraktsforhandlinger Å reagere på endringer fremfor å følge en plan Advokatfirmaet Selmer DA } Doc. ref.: } 14
Hva er Smidig Forretningsverdi som vik:gste kvalitetsmål Kon:nuerlig prioritering av funksjonalitet ut fra kost/nyue TeU dialog mellom fagpersoner og utviklere Autonomi: Selvorganiserte tverrfaglige team Korte iterasjoner Hyppige leveranser :l produksjon Beslutninger tas så sent som mulig ( Rolling Wave Planning ) Evaluering, læring og forbedring underveis Advokatfirmaet Selmer DA } Doc. ref.: } 15
Fordeler og ulemper med Smidig Fordeler Rask igangse[ng Lite ressursbruk på kravspesifikasjon og endringshåndtering Fleksibilitet Brukerinvolvering Absorberer læring underveis Løpende, gradvis ferdigs:llelse Kompetanseoverføring Effek:vitet Ulemper Begrenset ansvarliggjøring av leverandør for resultat og budsjeu Advokatfirmaet Selmer DA } Doc. ref.: } 16
Smidig metode ( scrumish ) Kontrakt Etableringsprosjekt Produktkø Brukerhistorie1 Brukerhistorie2 Brukerhistorie3 Brukerhistorie4 Brukerhistorie 5 Brukerhistorie 6 Brukerhistorie7 Sprint = Samling av brukerhistorier Definition of Done Advokatfirmaet Selmer DA } Doc. ref.: } 17
Scrum forutsetter felles prosjektstyring Advokatfirmaet Selmer DA } Doc. ref.: } 18
Fossefall og Smidig Advokatfirmaet Selmer DA } Doc. ref.: } 19
Vi kan ikke løfte begge vektskålene samtidig... Mange kunder erkjenner ikke hva som er konsekvensene av smidige prosesser Kvalitet / Scope Kostnader Tid...og inkluderer spesifikasjon av funksjonelle krav i kontrakten men endringshåndtering avvises, fordi debe underminerer smidigheten og avvik mellom avtalt og levert scope utgjør mislighold av kontrakten Forutsigbarhet Fleksibilitet Responsibility Advokatfirmaet Selmer DA } Doc. ref.: } 20
Anskaffelsesprosess - Tradisjonell vs Smidig Tradisjonell prosess 1) Kravs- og løsningsspesifikasjon 2) Tilbudsinvitasjon 3) Tilbud 4) Evaluering / Forhandlinger 5) Kontraktsinngåelse 6) Kontraklorvaltning 7) Avslutning Smidig prosess 1) Forespørsel 2) Tilbud 3) Evaluering / Forhandlinger 4) Kontraktsinngåelse 5) Kravs- og løsningsspesifikasjon 6) Kontraklorvaltning 7) Avslutning Advokatfirmaet Selmer DA } Doc. ref.: } 21
Norske standardkontrakter Fossefall m/spesifisert resultat og fastpris Seriefossefall m/gradvis spesifisert resultat og fastpris Body hire m/bistand betalt eber medgåb 4d SSA- T PS2000 PS2000SOL SSA- B SSA- S IKT- Norge Systemutvikling / Systemutviklingsprosjekt IKT- Norge Konsulentbistand Advokatfirmaet Selmer DA } Doc. ref.: } 22
"Den perfekte kontrakten for programvareutvikling" avhenger av bruksområde, men vil kunne være: "Fossefall"; når resultatet er klart spesifisert, og omfang og kompleksitet er begrenset Seriefossefall ; når resultatet kan defineres på overordnet nivå og partene er enige om å følge en avtalt gjennomføringsmodell hvor resultatet i hver delleveranse spesifiseres underveis "Ressurskjøp"; når det skal utvikles euer smidig metode eller resultatet av andre grunner ikke er klart definert Eller kanskje en smidig kontraktsmodell hvor leverandøren aldri overtar det kontraktuelle ansvaret for funksjonaliteten, men likevel er ansvarlig for ressurser, å følge avtalt gjennomføringsmodell og definerte ikke- funksjonelle krav Advokatfirmaet Selmer DA } Doc. ref.: } 23
Kontakt Advokalirmaet Selmer DA Ståle L Hagen, advokat / partner slh@selmer.no +47 934 90 842 Advokatfirmaet Selmer DA } Doc. ref.: } 24