Fra myter og moter til evidensbasert IT-utvikling"



Like dokumenter
Jeg ser det når jeg tror det!

Jeg ser det når jeg tror det!

Fra myter til evidens" Magne Jørgensen Simula Research Laboratory

Nyttestyring og viktigheten av den gode kunde

Nyttestyring og viktigheten av den gode kunde. Magne Jørgensen

Hvorfor og hvordan oppstår myter? Særlig for salg av tjenester og markedsføring av ideer. Kan godt være basert på gode studier

Bedre valg av leverandør gjennom trialsourcing & Fastpris eller per time?! Oslo, 1. desember, 2014 Magne Jørgensen

Innovasjonsvennlig anskaffelse

Myter og empiri. (og hvorfor vi aldri vil få svaret på om smidige metoder virker) Magne Jørgensen

Evaluering av digitalisering i offentlig sektor Hvor gode er vi? Evaluerer vi det som er viktig? Trenger vi mer eller annen type evaluering?

Undervisning i Smidige metoder ved Universitetet i Oslo

Hvordan kan man holde kontakten med venner eller familie? Kan du legge til noen ideer på listen? Sende tekstmeldinger. Sende (bursdags-)kort

Public roadmap for information management, governance and exchange SINTEF

Prosjektledelse - fra innsiden

FIRST LEGO League. Härnösand 2012

Capgeminis 7 verdier et indisk perspektiv. Oslo, , Marius Volden

LEAN STARTUP. Jørund Leknes Forretningsutvikler

Den europeiske byggenæringen blir digital. hva skjer i Europa? Steen Sunesen Oslo,

Smidige metoder i praksis Høgskolen i Oslo Kristin Meyer Kristiansen Objectnet AS

KROPPEN LEDER STRØM. Sett en finger på hvert av kontaktpunktene på modellen. Da får du et lydsignal.

Emneevaluering GEOV272 V17

ESTIMERING I SMIDIGE PROSJEKTER

Familieeide selskaper - Kjennetegn - Styrker og utfordringer - Vekst og nyskapning i harmoni med tradisjoner

Ny instituttpolitikk

Capturing the value of new technology How technology Qualification supports innovation

Midler til innovativ utdanning

The Future of Academic Libraries the Road Ahead. Roy Gundersen

Unit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3

Dagens tema: Eksempel Klisjéer (mønstre) Tommelfingerregler

Grunnlag: 11 år med erfaring og tilbakemeldinger

DIGITALISERING I UH-SEKTOREN. DigiEx, Handelshøyskolen BI. Prosjekt 2014, 13. November, 2014

HVILKE ENDRINGER KAN BRANSJEN FORVENTE SEG FREMOVER SETT FRA ET BRUKERPERSPEKTIV CHRISTIAN HEIBERG, EXECUTIVE DIRECTOR CBRE AS NORSK EIENDOM

GEOV219. Hvilket semester er du på? Hva er ditt kjønn? Er du...? Er du...? - Annet postbachelor phd

Slope-Intercept Formula

Hvordan unngå skuffelser i ITprosjekter

Endelig ikke-røyker for Kvinner! (Norwegian Edition)

Kurskategori 2: Læring og undervisning i et IKT-miljø. vår

Kundetilfredshetsundersøkelse FHI/SMAP

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Interaction between GPs and hospitals: The effect of cooperation initiatives on GPs satisfaction

DecisionMaker Frequent error codes (valid from version 7.x and up)

Smidig innhold Hvordan smidige metoder hjelper oss å lage kvalitetsinnhold. Ove Dalen

Dean Zollman, Kansas State University Mojgan Matloob-Haghanikar, Winona State University Sytil Murphy, Shepherd University

SFI-Norman presents Lean Product Development (LPD) adapted to Norwegian companies in a model consisting of six main components.

... Annita Fjuk DESIGN THINKING

UNIVERSITY OF OSLO DEPARTMENT OF ECONOMICS

Analyse av kundeavgang IBM Watson Content Analytics. Oslo, 19. november, 2015 Mons Nørve, Capgemini

Erfaringer med smidige metoder på store prosjekter i Telenor. Kristoffer Kvam, Strategic Project Manager, Portfolio & Projects, Telenor Norway

What's in IT for me? Sted CAMPUS HELGELAND, MO I RANA Tid

HONSEL process monitoring

Moving Innovation Forward!

Information search for the research protocol in IIC/IID

Quality in career guidance what, why and how? Some comments on the presentation from Deidre Hughes

Bedre prosjektvirksomhet med gode veiledere for prosjektledelse

Digital Transformasjon

Hva kreves av en god byggherre? «Store utbyggingsprosjekter», 23. okt 2014

2A September 23, 2005 SPECIAL SECTION TO IN BUSINESS LAS VEGAS

Erfaringer fra en Prosjektleder som fikk «overflow»

Moderne systemutviklingsmetoder. Smidige prosesser Kjetil Jørgensen-Dahl Objectnet as

Tyrannosaurus Test Adapt or Die!

// Translation // KLART SVAR «Free-Range Employees»

Bruk av HP Quality Center med smidige utviklingsmetoder. HP Sofware Norge

Risikofokus - også på de områdene du er ekspert

Erfaring fra søknadsutvikling

Fakultet for informasjonsteknologi, Institutt for datateknikk og informasjonsvitenskap AVSLUTTENDE EKSAMEN I. TDT42378 Programvaresikkerhet

ISO 41001:2018 «Den nye læreboka for FM» Pro-FM. Norsk tittel: Fasilitetsstyring (FM) - Ledelsessystemer - Krav og brukerveiledning

A Study of Industrial, Component-Based Development, Ericsson

Hvordan komme i kontakt med de store

Hvorfor Læring av Erfaring er Vanskelig og Hvordan Bli Bedre

EN Skriving for kommunikasjon og tenkning

Trigonometric Substitution

5 E Lesson: Solving Monohybrid Punnett Squares with Coding

GOE-IP AS- GlobalOrganicEnergy-Intelligent Property AS

Planleggingsfasen.. Estimering av kostnader i IT-prosjekter. Gjennomføringen. Hvor gode er vi til å planlegge (estimere kostnader) ihht Standish Group

PIM ProsjektInformasjonsManual Tittel: REDUKSJON AV FLUORIDEKSPONERING I ALUMINIUMINDUSTRIEN INKLUDERT GRUNNLAG FOR KORTTIDSNORM FOR FLUORIDER

Erfarenheter av Bilpooler i Oslo

Medisinsk statistikk, KLH3004 Dmf, NTNU Styrke- og utvalgsberegning

Emnedesign for læring: Et systemperspektiv

Databases 1. Extended Relational Algebra

- En essensiell katalysator i næringsklyngene? Forskningsrådets miniseminar 12. april Mer bioteknologi i næringslivet hvordan?

Produksjon av beslutningsstøtteverktøy fra kunnskapsoppsummeringer til bruk i det kliniske møtet - SHARE-IT

Dynamic Programming Longest Common Subsequence. Class 27

Forecast Methodology September LightCounting Market Research Notes

Innhold. Om Handelshøyskolen BI Status BI 2011 Universitets- og høyskolesektoren as is. Copyright Capgemini All Rights Reserved

Den som gjør godt, er av Gud (Multilingual Edition)

Magne Jørgensen Simula Research Laboratory University of Oslo Scienta

GoOpen 2008 Oslo 8. april. Jernbaneverket Fri programvare i driftskritiske systemer. Ole Morten Killi ole.morten.killi@bouvet.

Kortreist kvalitet - muligheter og utfordringer for ledelse. Nettverkssamling Oslo Lars Wang, insam as

Har vi forretningsmodeller som muliggjør effektiv utvikling og introduksjon av nye tjenester i helsesektoren?

STILLAS - STANDARD FORSLAG FRA SEF TIL NY STILLAS - STANDARD

VELKOMMEN TIL WHAT S HOT #EVRYWHATSHOT

Andrew Gendreau, Olga Rosenbaum, Anthony Taylor, Kenneth Wong, Karl Dusen

Sosial kapital og sosiale nettverk

GIS - BASED STORMWATER MASTER PLANNING: SIMPLIFYING STORMWATER PROGRAM MANAGEMENT. Gregory V. Murphy, PE, ARCSA AP Jonathan A. Villines, EIT, CFM

Innhold. Innledning Del 1 En vei mot målet

Merak Un-glazed Porcelain Wall and Floor Tiles

Western Alaska CDQ Program. State of Alaska Department of Community & Economic Development

UNIVERSITETET I OSLO ØKONOMISK INSTITUTT

Baltic Sea Region CCS Forum. Nordic energy cooperation perspectives

Implementeringen av ROP retningslinjen; er GAP analyser et

Transkript:

Fra myter og moter til evidensbasert IT-utvikling Magne Jørgensen Simula Research Laboratory Evidens-basert systemutvikling er sunn fornuft satt i system 1. Forstå hva du skal finne ut av. Vær tilstrekkelig presis til at det går an å besvare spørsmålet. 2. Søk etter relevant og pålitelig kunnskap: Forskning (strukturert, kritisk innhenting)! Praksisbaserte erfaringer (strukturert, kritisk innhenting)! Empiri i egen organisasjon (pilotstudier, eksperimenter, datainnsamling)! 3. Evaluer relevansen og påliteligheten til kunnskapen. 4. Anvend kunnskapen. 5. Evaluer effekten. 1

Bindersen er en norsk oppfinnelse Misforståelse Dekker et behov Gjentagelse Sjekker ikke en god historie Napoleon-komplekset (korte menn er mer aggressive) Misforståelse Aktiv mytedannelse? Lett å forestille seg Bekreftelsestendens 2

Vi mister vi det meste av varmen gjennom hodet Uklart hva som menes Ingen sjekker kildene og hva de egentlig sier Det meste av kommunikasjon er ikke-verbal Uklart hva som menes Ingen sjekker kildene og hva de egentlig sier 3

Barn blir hyperaktive av sukker Vi ser det når vi tror det Gjentagelse Når vi først har bestemt oss, vil ting sjelden gå tilbake til normalen http://www.ted.com/talks/lang/eng/dan_gilbert_asks_why_are_we_happy.html 4

Hvordan jeg skapte myten om at Risikovillige programmere er bedre 1. Påvirkning: Gruppe A mottar informasjon om et forskningsstudie i favør av de risikovillige, samt blir bedt om å angi et argument i favør av hvorfor det kan være slik. Gruppe B mottar og gjør det samme, men i favør av de risikouvillige. 2. Spørsmål: Basert på din erfaring, tror du at risikovillige programmerere er bedre enn de risikouvillige? è 1 (helt enig) 5 (ingen forskjell) - 10 (helt uenig) 3. Evaluering 1: è Grupe A: 3,3 - Gruppe B: 5,4 4. Evaluering 2: Begge gruppene mottar informasjonen om at studien var der for å villede og ikke var reell. Oppdatering av evaluering. è Gruppe A: 3,5 - Gruppe B: 5,0 5. Evaluation 3: To uker senere. è Gruppe A: 3,5 - Gruppe B: 4,9 Hvordan bli en evidensbasert myth buster? 1. Finn ut hva som menes med påstanden a) Har den noe presist innhold? b) Hvis den ikke lar den seg falsifisere, hvilken funksjon har den? 2. Vær kritisk til din egen tendens til å akseptere påstander uten evidens eller med ikke-nøytral evidens, særlig når du er enig a) Hvorfor høres dette riktig ut? Er det av gode grunner? b) Hvem kommer med påstanden? Aksepterer du den pga kilden, ikke pga argumentasjonen? c) Husk at du glemmer fortere kilden enn innholdet Påstander fra kilder med lav kvalitet kan dermed virke sterkere med tiden! Dette kalles the sleeper effect. 3. Hva finnes av nøytral, pålitelig kunnskap (evidens)? a) Finnes nøytrale og relevante studier eller erfaringer som støtter dette? Erfaringer fra en som selger kurs i samme metode er for eksempel neppe nøytrale. b) Hva sier totaliteten av evidens? c) Når gjelder påstanden? 5

Software crisis : Reell eller Standish-skapt? 200 % 180 % 160 % Misforståelse/dårlig studie Gjentagelse Nytte av at det er slik Ingen sjekker kildens kvalitet Lett å forestille seg 140 % 120 % 100 % 80 % 60 % 40 % 20 % Average percent cost overrun 0 % 1994 1996 1998 2000 2002 2004 2006 2008 2010 2012 (page 13 of their 1994-report): We then called and mailed a number of confidential surveys to a random sample of top IT executives, asking them to share failure stories. Ikke lett å fjerne myter... Har kanskje hatt en viss effekt (the CHAOS Report 2013): 6

The Standish Group - igjen 45% av funksjonaliteten (ved bruk av tradisjonelle utviklingsmetoder) brukes aldri Henvisning til en keynote av Jim Johnson på XP 2002. Flere som etterspør hvordan studien er gjort får ingen svar. Ingen dokumentasjon tilgjengelig. Hva betyr det at 45% av funksjonalitetet aldri brukes? (Aldri av noen? Hvem har de spurt?) Er dette for et bestemt system, eller en survey? Er det noen grunn til å tro at det er bruken av tradisjonelle metoder som er årsaken? Ville en annen metode (smidig) endret tilstanden? Er dette bruk av COTS hvor du får mye ekstra funksjonalitet gratis, produktutvikling der markedet er ukjent, eller for annen type utvikling. Hvordan stemmer dette med det vi ellers vet? Strategien synes å være: Ekstreme påstander noen har nytte av gir oppmerksomhet og økt salg Sucess = On time, on schedule and with specified functionality Finn minst én åpenbar feil i undersøkelsen! 7

The Standish Group er ikke alene... Hvordan bør vi forholde oss til spektakulære funn? Overforenklinger er vanligere enn rene myter, men like farlige! Faktor 10 økning i feilrettingskostnader per fase Dersom det koster 1000 kr å rette en feil i analysefasen, så koster det 1000 * 10 * 10 * 10 = 100 000 kr å rette den i testfasen. Påstanden finnes i mange varianter. Den mildeste er at det koster ALLTID mer å rette en feil i en senere fase. Hva betyr påstanden om x10? Lønner det seg å finne ALLE feil så tidlig som mulig? Hvor kommer x10 fra? Betyr det at smidige metoder tar feil når det legges mindre vekt på å ha en fullstendig og korrekt spesifikasjon? 8

Flere overforenklinger Adding manpower to a late software project makes it later The Mythical Man-Month (Brook s lov) Beskrives av Brook selv som en: outrageous oversimplification. Forskjellen mellom dårligste og beste programmerer er 1:10. Studie fra 1968 på med erfarne utviklere på en konkret problemstilling. Forholdet kan åpenbart variere så mye vi vil avhengig av oppgaven. Brainstorming bør gjøres i grupper Vanligvis er vi er mer innovative alene, ikke i grupper MEN, informasjon bør deles og ideer bør diskuteres i grupper Duplisering av programvarekode bør alltid unngås Number one in the stink parade (Martin Fowler agile guru) Duplisert kode er typisk av høyere kvalitet enn ikke-duplisert kode. Det er helt klart situasjoner der man ikke bør duplisere kode. Når slike finnes, gå til systematisk gjennomganger Eksempel: Hva er effekten av smidig utvikling? Dybå med flere oppsummerer nøytrale kvalitetsstudier om smidig utvikling (hovedsakelig XP) i Information and Software Technology og konkluderer med at: The evidence also suggests that agile methods not necessarily are the best choice for large projects. Thus, consistent with recommendations provided by others [11,12,15], we suggest that practitioners carefully study their projects characteristics and compare them with the relevant agile methods required characteristics.! Due to the limited number and relatively poor quality of the primary studies in this review, it is impossible to offer more definitive and detailed advice. Med andre ord: Ingen klare funn på at vi blir så mye bedre med smidig og det litt mer kjedelige resultatet Det kommer an på... 9

Det uavklarte rundt smidige metoder illustrerer hvor viktig det er med et presist spørsmål Spørsmålet som stilles: Lønner smidige metoder seg? Er spørsmålet riktig stilt? JA: Det er det vi ønsker å vite noe om. NEI: Spørsmålet er for upresist til å la seg besvare meningsfullt! Hva mener vi med smidige metoder? Hele XP, Lean, Kanban, Scrum, inkrementell leveranser,...? Er vi smidige selv om vi kun bruker deler av en smidig metode? Forutsetter det riktig bruk av XP, Scrum,...? Forutsetter det egnede prosjekter? Hva mener vi med lønner seg? Utviklingskostnader? Totalkostnader kunde? Nytte-effekt av systemet (riktig funksjonalitet) Moter og systemutviklingsmetoder 10

De fleste av disse utviklingsmetodene har vært in i en periode Waterfall model, sashimi model, agile development, rapid application development (RAD), unified process (UP), lean development, modified waterfall model, spiral model development, iterative and incremental development, evolutionary development (EVO), feature driven development (FDD), design to cost, 4 cycle of control (4CC) framework, design to tools, re-used based development, rapid prototyping, timebox development, joint application development (JAD), adaptive software development, dynamic systems development method (DSDM), extreme programming (XP), pragmatic programming, scrum, test driven development (TDD), model-driven development, agile unified process, behavior driven development, code and fix, design driven development, V-modelbased development, solution delivery, cleanroom development,. + 1000-vis av firmaspesifikke metoder. Retorisk bruk av begreper er vesentlig for å skape en mote Vil du være moderne, fleksibel, rask, smidig, løsningsdrevet, aktiv og slank eller vil du heller være tradisjonell, ufleksibel, omstendelig og dokumentdrevet? 11

De 10 Bud for å skape en systemutviklingsmote Inspirert av Rhetoric and Myth in Management Fashion av Alfred Kieser 1. BUD Presenter minst en nøkkelfaktor som i følge guruene har blitt neglisjert i tidligere metoder, f eks mulighet for læring underveis vha del-leveranser. Dersom nøkkelfaktoren er velbrukt, finn nye begreper for denne slik at dette likevel virker nytt og neglisjert. 12

2. BUD Beskriv hvordan de tidligere metodene er dømt til å mislykkes fordi de ikke følger prinsippene i den nye metoden, f eks hvordan de tradisjonelle metodene fører til systemer med mye funksjonalitet som kunden ikke trenger. 3. BUD Koble den nye metoden til viktige, positivt ladede verdier, som kommunikasjon, fleksibilitet, brukernytte og kontinuerlig læring. 13

4. BUD La gode fortellere presenter historier om store suksesser forbundet med å bruke metoden. Presenter historiene på industrikonferanser, i lettleste bøker med direkte tale og i så mange fora som mulig. Advarsel: Ikke reflekter omkring årsak-virkning mellom metode og suksess. 5. BUD Unngå for all del å bidra til en oppfattelse av at metoden er laget ved et universitet eller basert på akademisk forskning. Vektlegg i stedet at metoden er basert på svært erfarne utvikleres kunnskap og læring. Et skrekkens eksempel: Spiralmodellen 14

6. BUD Presenter pionerene som særdeles begavede utviklere. Gi dem guru-status. 7. BUD Baser fremstillingen av metoden på en blanding av enkelhet, sunn fornuft og vaghet. Bruk dette til å demonstrere overlegenheten til metoden. Si for eksempel at metoden bygger på at samarbeid er bedre enn kontraktsforhandlinger. 15

8. BUD Påpek at metoden kan være vanskelig å få til. Feilslåtte prosjekter er dermed mulig å forklare som dårlig implementasjon av metoden. 9. BUD Av og til bør metodens fortreffelighet kobles til vitenskapelige studier. Studier med lav kvalitet og svært skjev tolkning av data er ikke noe stort problem. Det er neppe noen som vil sjekke kilden. 16

10. BUD Sørg for å time introduksjonen av metoden godt. Hver ny generasjon av utviklere ønsker sin egen metode for å skille seg fra de etablert og å være de mest kunnskapsrike. I denne mote-lignenede mekanismen ligger dessverre også enhver suksessfull metodes undergang ved at den blir tradisjonell. Tiden er trolig inne for en erstatter til smidig utvikling. Har dere hørt om ELASTIC? ELASTIC Development Together with some of the most experienced developers in the world Simula has developed a new best-practice method: ELASTIC. More and more experienced developers found that they SOMETIMES needed more design/architecture, more planning and more documentation. They could not anymore stand and look at failed projects due to religious beliefs in ONE method. We need to be flexible. We need to be more elastic! Manifesto of ELASTIC: Software projects vary, so should their development methods 17

ELASTIC Development Key principle: ELASTIC has a phase where the developers together with their clients (based on project characteristics such as expected requirement stability, client maturity and technical complexity) agree on the development process design. This tailoring method is unique and not part of any other development method. There is nothing fundamentally wrong with the traditional methods, such as agile, scrum, RUP and waterfall. They lack however: The flexibility to deal with today s variation in clients and types of projects Support on how to tailor a development method. ELASTIC development The main values of ELASTIC are Communicate, Analyze, Reflect and Educate in close collaboration with the client (the CARE values). ELASTIC has so far been a great success! We have so many times been disappointed by the lack of professionalism and low ability of adapting the development method to our needs and maturity levels. Most software developers seem to be more concerned about their own religious belief in a method than creating value for the client. ELASTIC development takes us the client seriously. We will never again choose a software provider that does not follow ELASTIC development. Stein Mathisen, CEO Norwegian Hydropower. 18

ELASTIC development The client went from 50% to 0% failed projects and a 200% increase in profitability by selecting a software provider which followed the ELASTIC method. Other studies also show great benefit from use of the ELASTIC method. The Johnson Group have studied more than 200 projects and found that ELASTIC gave the highest ROI (return on investment). ELASTIC development 6 ROI = (Benefit - Cost)/Cost 5 4 3 2 1 0 Elastic XP Scrum RUP 19

Fra Myter og Moter til Evidens-basert praksis Det positive i det hele er at vi for første gang i historien har all verdens mulighet til å skaffe oss god informasjon om hva som virker. All ære til scholar.google.com for mye av dette Dette krever: Riktig spørsmålstillinger Kunnskap om innhenting og evne til kritisk evaluering av evidens Vi trenger evidens-basert systemtuvikling for å. Gå fra myte og mote-basert til kunnskapsbasert praksiser Motvirke vår velutviklede evne til å se mønstre hvor det ikke er noen Motvirke bekretelsestendensen Fremskaffe kunnskap som ikke kan hentes fra erfaring alene Bedre evnen til å fremskaffe kunnskap, inkludert praksisbasert kunnskap 20

Evidens-basert systemutvikling er sunn fornuft i system 1. Forstå hva du skal finne ut av. Vær tilstrekkelig presis til at det går an å besvare spørsmålet. 2. Søk etter relevant og pålitelig kunnskap. Forskning (strukturert, kritisk innhenting)! Praksisbaserte erfaringer (strukturert, kritisk innhenting)! Empiri i egen organisasjon (pilotstudier, eksperimenter, datainnsamling)! 3. Evaluer relevansen og påliteligheten til kunnskapen 4. Anvend kunnskapen 5. Evaluer effekten 21