Det produktive team Software kvalitet og kultur 09-12-2018 1 Software Kvalitet - Stephan Korsholm, sek@via.dk
Indhold Formål Min baggrund? Budskab Det produktive team – et eksempel Det uproduktive team – et eksempel Værktøjer, teknikker og processer Hvordan? Konklusion 09-12-2018 2 Software Kvalitet - Stephan Korsholm, sek@via.dk
Formål SW/HW udviklere, Vil gerne bruge sine evner til at udtænke, designe og implementere nye features som har værdi for kunden Og blive værdsat for det Det inkluderer ikke, Opdage fejl i sidste øjeblik Finde og rette andres fejl Have uklare mål Miste overblikket og følelsen af kontrol 09-12-2018 3 Software Kvalitet - Stephan Korsholm, sek@via.dk
Formål Ledere og chefer, Vil gerne have forudsigelighed i projektforløbet! Hvad kræver det af ressourcer? Hvornår er det færdig? Virker det? Generelt have så lidt bøvl som muligt Det inkluderer ikke, Overskredne (tids) budgetter Kunder der finder fejl Love ting man ikke kan holde Få over draget ansvar for et problem man ikke kan løse 09-12-2018 4 Software Kvalitet - Stephan Korsholm, sek@via.dk
Min baggrund Big Scale Programming Embedded Programming Master Computer Science (1998) Ph.D. Embedded Programming (2013) Embedded Programming Big Scale Programming 09-12-2018 5 Software Kvalitet - Stephan Korsholm, sek@via.dk
Værktøjer, teknikker og Budskab.... Værktøjer, teknikker og processer Evner, erfaring Kultur, holdning og engagement 09-12-2018 6 Software Kvalitet - Stephan Korsholm, sek@via.dk
Værktøjer, teknikker og Budskab.... Evner, erfaring Værktøjer, teknikker og processer Kultur, holdning og engagement Hvordan arbejder jeg? Kan jeg forbedre mine arbejdsmetoder en smule i dag? Hvad kan jeg gøre? 09-12-2018 7 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det produktive team – et godt eksempel 09-12-2018 8 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det produktive team – et godt eksempel Efter ”Planning Poker”, Er den samlede sum større end vores ”Velocity” Tilpas listen Udfør arbejdet Arbejdet udføres over en 14 dages periode, i fred og uden forstyrrelser 09-12-2018 9 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det produktive team – et godt eksempel Efter arbejdet er udført, Done vs. donedone Skriv test Tilføj til buildserver Review Ryd op (merge, interfaces, abstract, refactor) Demonstrér nye features for kunden Hvad forudsætter det om arbejdsopgaverne? 09-12-2018 10 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det produktive team – et godt eksempel Efter demonstration, Retrospective, Hvordan klarede vi os? Kan vi forbedre vores arbejdsmetoder en smule til næste gang? Hvad kan vi gøre? 09-12-2018 11 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det uproduktive team – et godt eksempel Kunden ringer og indrapporterer en fejl 09-12-2018 12 Software Kvalitet - Stephan Korsholm, sek@via.dk
Det uproduktive team – et godt eksempel Kunden ringer og indrapporterer en fejl Nogen venter Benjamin forsøger at genskabe den Nogen ”retter” fejlen Lang process Benjamin ringer tilbage til kunden: ”Det virker for mig” Fejlen kan endelig genskabes. Klaus skal rette den... Projektlederen beordre Benjamin til at gå i gang med næste feature Det virker nu for Klaus (fejlen er rettet?) Benjamin synes han er færdig Commit Resolve Conflict! Benjamin pakker et nyt release på hans maskine og sender det til kunden 09-12-2018 13 Software Kvalitet - Stephan Korsholm, sek@via.dk
Værktøjer, teknikker og Budskab.... Evner, erfaring Værktøjer, teknikker og processer Kultur, holdning og engagement Hvor ligger vi i dette spænd mellem det uproduktive og det produktive? Hvad kan jeg gøre i dag for at komme lidt tættere på det produktive? Eller fastholde det? Eller blive endnu bedre? Hvordan kan jeg få de andre med? 09-12-2018 14 Software Kvalitet - Stephan Korsholm, sek@via.dk
Værktøjer, teknikker og processer Adskillelse af hardwarenær software og forretningsbærende software Brug test dreven udvikling (TDD) Build servers Automated regression tests Code review Planning poker baseret på verificerbare opgaver (TDD) Skift roller .................. 09-12-2018 15 Software Kvalitet - Stephan Korsholm, sek@via.dk
Hvordan.... Det starter hos udviklerne Tag initiativet selv Få de andre med stille og roligt Vent ikke på nogen eller noget, men gør det du kan inden for de rammer du har Skab en fast platform. Hold den stabil og troværdig. Udvid den i små skridt Der findes ikke noget tool eller nogen process som sikre succes. Det er kultur, holdning og engagement som er vigtigst 09-12-2018 16 Software Kvalitet - Stephan Korsholm, sek@via.dk
Konklusion Hvordan arbejder vi? Kan vi gøre det lidt bedre? Hvad er vores måde at gøre det bedre på? 09-12-2018 17 Software Kvalitet - Stephan Korsholm, sek@via.dk
Konklusion Hvordan arbejder vi? Kan vi gøre det lidt bedre? Hvad er vores måde at gøre det bedre på? Det kræver træning at opbygge Og vedvarende træning at vedligeholde 09-12-2018 18 Software Kvalitet - Stephan Korsholm, sek@via.dk