LEAN i softwareudvikling Et alternativ til en kravspecifikation
Claus Holm Ansvar Salg og Strategi Baggrund MBA International Sales 18 års erfaring i IT branchen Erfaring fra start-up til store organisationer Opbygget virksomhed i Danmark og USA Fokus på strategi og positionering
Struktur for alle 3 møder Start GoApplicate / Hvorfor Lean / 5 Lean Principper 15 min Pause Næste gang skal vi have en bedre kravspecifikation Styring af projektets gennemløbstid Visuel Ledelse - Stræb efter perfektion 2t 30 min 3 t Opsummering på dagen / Husk det næste / Ring endelig
Målsætningen Afkast i dag og i morgen = Vedvarende afkast Overgennemsnitlig afkast for mere end 10 år Pålidelig udvikling, der er hurtigere end konkurrenter
...pålidelig udvikling, hurtigere end nuværende og fremtidige konkurrenter. På Investeringssiden Ineffektiv i at spotte muligheder, forstå kundens ægte behov og være i stand til hurtigt at beslutte handling som fører til tabt indtjenning og forsinkelser i at nå udvikling Manglende kriterier til at forudse katastrofale indflydelser på gennemløbstiden og som konsekvens heraf at igangsætte for mange samtidige projekter. Dermed tager alle projekter længere tid end nødvendigt Lille eller manglende kommunikation mellem marketing, udvikling og drift fører til høje omkostninger og dårlig kvalitet Der er en tendens til at overudvikle, skabe innovationer fra bunden i stedet for at udvikle det der er nødvendigt På indtægtssiden Overraskende begrænset interaktion med og observation af kunder før og mens udviklingen, som gør det svært at identificere virkelige differentieringsparametre. Performance features bliver frosset inden udviklingen, som næsten garanterer stor overskridelser og samtidig bidrager med udifferentierede tilbud, som igen fører til flop i markedet.
Foreslåede indsatsområder Bedre indsats og resurser til at opfatte og analysere muligheder (opportunities). Kortere udvikling, og bedre til at levere differentierende produkter
Korte nøgletal Etableret 2000 35 medarbejdere + tilknyttede konsulenter 85 % af medarbejdere er Ingeniører 1 af 7 ISV Gold Certified selskaber Top 5 Entrepreneur of the year MS ISV Worldwide Award Nomineret
Mission GoApplicate s missions erklæring: Better software faster GoApplicate er en lokal software udviklingspartner, som gennem tæt dialog, opbygger viden om kundens forretning, som med effektive processer, omsætter denne viden til løsninger, som med engagerede medarbejdere, kontinuerligt stræber efter forbedringer, som ved fleksible og omkostningsfokusering, driver en profitabel forretning. GoApplicate investerer i services, produkter og processer, som sikrer kunderne best value for money. GoApplicate Strategi
IT løsninger på virksomhedernes 4 udfordringer Visioner Systemer Virksomheden Omverden GoApplicate sikrer IT understøttelse af virksomhedens visioner. Når strategien ligger langt fra nutiden er det en udfordring at sikre en glidende overgang af IT systemer med de usikkerheder, daglige tilpasninger og ændringer der ligger på vejen hen mod visionen. GoApplicate skaber sammenhæng i bestående systemer. Når viden ligger i gamle systemer, i Excel regneark eller hos medarbejdere skaber vi en helhed der understøtter forretningsgangene, binder systemerne sammen og skaber mulige effektiviseringsgevinster. GoApplicate understøtter virksomhedens kompleksitet. Når prisberegning, produktsammensætning, salgsstruktur eller processer er meget komplekse, bygger vi de løsninger som er med til at optimere den differentiering der ofte ligger til grund for denne kompleksitet. GoApplicate sikrer integration med omverdenen. Når underleverandører, kunder, andre systemer, datakilder, handelsplatforme eller andre platforme udgør en del af den omverden man agerer i, binder vi denne omverden sammen.
Visioner Innovation af forretningsmodeller Platform Omverden Integration og monitorering Service Management, Proces automatisering, Data validering, Drifts overvågning Kommunikation, Services og Arkitektur Applikationer Situation SharePoint AppFabrik WCF/WWF.Net Generic Model Cloud BI Silverlight BPOS Gamle systemer udstilles: - AS/400, OS/2, DDE, mm. - Forsikring, Produktion, CRM, Proces ERP mm. Databaser Systemer Rolle Effektivisering og rationalisering Pris Konfiguration, Kunde/Leverandør integration, Handelsplatform, Prisberegninger, Business Intelligence, Tilbud- og Ordrestyring, Produktionsoptimering, Portaler. Virksomheden Databaser integreres: - Oracle, SQL, DB/2, mm. - Police, Mølle setup mm. Services Services trækkes og udstilles: - Maps, CVR, Børser mm. - Bilbasen, Kølestatus mm.
Vores motivation for Lean Komme væk fra brugtvognsforhandleren Vi skal kunne hjælpe hinanden Ledelsen er lusen mellem 2 negle Medarbejderne knokler Kunden er ikke tilfreds Løbende forbedrende kultur Vi ville ikke arbejde med forbedringer i 3 år inden for får en gevinst
Kundes verden Hvor har Lean påvirket Indhold Organisatorisk niveau Salg Udv Prod QA Øko Logi Udviklingsafdeling Udviklingsmetode Team A Proj. 1 Agile/ Scrum Team B Proj. 2 Agile/ Scrum Proj. 3 n Lean har betydet : - Ordrestyring - Resursestyring - Økonomistyring - Leverancestyring - Projektstyring - Porteføljestyring - Sprintstyring - Dialogstyring - Prioritetsstyring -.
5 minutter om Lean Thinking 1. Identificer Kundeværdi 2. Kortlæg værdistrømmen og reducer ikke værdiskabende aktiviteter (Spild) 3. Skab Flow i værdistrømmen 4. Indfør træk (Pull) 5. Stræb efter det perfekte 1-2-3-4 Alternativ kravspecifikation 2-3-4 Leveringstid 1-2-3-5 Visuel Ledelse
Hvornår er en kravspecifikation god nok? Tag lige 2 minutter med sidemanden og sidemanden og diskuter hvornår en kravspecifikation efter din mening er god nok.
Vandfaldsmodel 5½ år senere Idé Beskrivelse Aftale Udvikling Nye behov 2 år ½ år 3 år Kilde: Advokat Bender, von Haller, Dragsted
Agile udvikling Vi skal bare flytte 2 kasser æbler undervejs kom der flere til!!!
I hvilket projekt ville du investere?
Lean # 1 - Kundeværdi IT udvikling = IT investering A Forretningbehov B Forretningfordel Kroner Cost (1) Benefit (2) Tid (3) X Usikkerhed (4)
OG INDEN PAUSEN LIGE EN LILLE ØVELSE OM KUNDEVÆRDI
Pause 15 minutter til at strække ben
Projekt Foundation Kundes verden Et dialogbaseret iterativ udviklingsmetode der har til formål at skabe et bedre beslutningsgrundlag for den forretningsmæssige investering. Der er - Spilleregler - Roller
Hvilke 2 numre mellem 1-30 mangler? 7 2 15 23 29 1 14 17 11 9 26 13 19 27 30 4 8 24 3 28 12 5 25 10 21 18 20 16
Hvilke 2 numre mellem 1-30 mangler her? 1 2 3 4 5 6 7 9 10 11 12 13 14 15 16 17 18 19 20 21 22 24 25 26 27 28 29 30
Risiko Baggrund Fokus Område Opbygning af vores Project Foundation Kundedomæne Projektejer Slutkunde Indhold Statisk view Løsningdomæne Dynamisk view Deployment view Statisk view Teknologidomæne Dynamisk view Deployment view Forretningsmæssig risiko Teknisk risiko
Opbygning af vores Project Foundation ProjektFoundation K L T FR TR
Prioritize decisions Project Foundation
Hvem deltager? Fra leverandørsiden: - Chief Entreprenør - Resonsible Expert (typisk en lead architekt) Fra Investorsiden: - Projekt sponsor - User Proxy - Evt. Teknisk counterpart Praktisk roller: - Mødeindholdsleder - Timekeeper - Referatskriver
Baggrund Kundedomæne Projektejer Slutkunde Statisk view Løsningdomæne Dynamisk view Deployment view Statisk view Teknologidomæne Dynamisk view Deployment view Risiko Fokus Projektide Projekt Baggrund Modenhed Bruger- Roller Designdrivers - availability - security - modifiability - testability - performance - useability User Stories Forretningsmæssig risiko Dynamik/ stabilitet Workflow Kendskab System diagram Businessdrivers - time-2-market - Targeted market - Cost-Benefit - Roll-out shedule - projected lifetime - integration with legacy system Domæne model Dataflow Milepæls plan Kompetence Architectural Qualities - Conceptual integrity - Correctness and completeness - Buildability SW Arkitektur Løsningsrum Interfaces & Integration DB model User Interface I/O Teknisk risiko Teknologisk modenhed Domaineviden Designpattern Component Comunication Snitflader Test Relaseplan
Typer af risici Markeds krav Produkt specifikation Produkt design Markeds risiko Teknisk risiko
Hovedtrin i en Project Foundation 1. Når interessant projektidegrundlag og relevante kompetencer er identificiseret 2. Når Projektgrundlaget er gennemgået med hele teamet 3. Når business casen er er vurderet (mulig exit) 4. Når ricisi, såvel markeds som tekniske, er identificeret i fællesskab 5. Når prioriteret opgaveliste for at modne projektideen yderlig er identificeret
BAGGRUNDSSTOF PROJECT FOUNDATION
Evnen til at reagere på det uforudsete 1. Man opnår viden undervejs i processen 2. Omverdenen flytter sig undervejs i processen 3. Man kan ikke forudse alt fra start 4. Beslutninger træffes undervejs i processen 1. Udskyd beslutninger, men... Viden om projektet 2. Skab øget læring Konsekvens af beslutninger Kilde: Riis, AAU
Der er noget galt... Open Loop Control Antagelse: En specifikation er fejlfri Closed Loop Control Antagelse: En specifikation er fejlbehæftet
Indholdsledelse Hvad sker ved tavlen?
The specification should never be the only tool telling the design team what is important to the customer [Managing the Design Factory, Don Reinertsen]
Opsummering 1. Kundeværdi... Udvikling = investering => Udviklingsoptimering = investeringsoptimering 2. Kortlægning af processen: Fra ide til forretningsforbedring Hvor lægger vi de næste 100 kr. for optimering af gennemløbstiden? Fra ide til business case 3. Flow, 4.Pull og 5.Stræb efter perfektion: Eksempel: Project Foundation en Visuel Iterativ Dialogbaseret samarbejdsform for at komme fra ide til business case
Øvelse til i morgen Bed dit team om individuelt at svare på 3 simple spørgsmål Er teamet fokuseret på og synkroniseret om kundens prioritering? Kender teamet risici og er der enighed om hvor de ligger? Arbejdes teamet på at give kundeværdi og reducere risici? og har dette ændret sig igennem projektet.
Tak for i dag Boris Wortmann bwo@goapplicate.com Claus Holm ch@goapplicate.com