Work days 180 160 Burndown Sprint 18 Remaining capacity Remaining effort 140 120 100 Smidige prosjekter med styring 80 60 40 20 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Sprint days Ved Scrum Master John Olav Midtlyng
Tema for presentasjonen Kort om smidige prosjekter SCRUM? Eksempel på prosjekt SMSC Ny fysikkplattform Hva er PMI/IPMA/Prince 2? Hvordan kombinere dette for store, krevende prosjekter? Eksempler på verktøy: MS Prosjekt plan med PMI og SCRUM-aktiviteter Verktøy for Produkteier og Scrum master (backlog, sprinter og burndown)
Holistisk angrepsform i stedet for stafettløp The relay race approach to product development may conflict with the goals of maximum speed and flexibility. Instead a holistic or rugby approach where a team tries to go the distance as a unit, passing the ball back and forth may better serve today s competitive requirements. Hirotaka Takeuchi and Ikujiro Nonaka, The New New Product Development Game, Harvard Business Review, January 1986. Holistisk = Helheten er mer enn summen av dens deler
SCRUM med få ord SCRUM er en smidig prosess som tillater oss å fokusere på å levere det som har forretningsmessig størst verdi på kortest mulig tid Det gir oss muligheten til raskt og gjentakende å inspisere aktuell og fungerende leveranser (hver 2. til 4. uke) Forretningen bestemmer prioriteten på oppgavene. Det selvorgansierende teamet bestemmer beste måte å levere de høyest prioriterte leveranser på. Hver 2. til 4. uke kan alle se fungerende leveranser og beslutte om de kan implementeres i organisasjonen eller om man skal fortsette å forbedre leveransen i neste sprint.
Kilde: www.agilemanifesto.org Det agile manifest Individuals and interactions Working software Customer collaboration Responding to change over over over over Process and tools Comprehensive documentation Contract negotiation Following a plan
Case: SMSC Ny fysikkplattform SMSC lever av å selge kurs for styrmenn, kapteiner, kranførere, etc Kursene kjøres på simulatorer med reelle broer/førerhus, hvor vinduene er projiserte skjermbilder Særdeles komplekse matematiske modeller for fysiske lover, for å avbilde virkeligheten mest mulig reelt blir sjøsyk på brua! Henter inspirasjon fra dataspill-utviklingsmiljøet Skal skifte ut hele fysikkmotoren Kjører SCRUM med et team på 10 utviklere, 3 produkteiere og undertegnede som innleid SCRUM master. Utfordring: Mange andre prosjekter blander seg inn i sprintene, da firmaet egentlig ønsker at alle prosjekter ++ skal kjøres smidig gjennom bruk av SCRUM og ett Scrum-team. De 3 produkteierne sitter geografisk spredd!
SCRUM rammeverket
Sprint Scrum prosjekter leverer fremdrift i en serie av sprinter Tilsvarer iterasjoner i ekstrem programmering Typisk varighet er 2-4 uker, eller maksimum en kalendermåned; vi lander vanligvis på 15 arbeidsdager En konstant varighet leder til bedre rytme i arbeidet, og forutsigbarhet Produktet blir designet, kodet og testet i løpet av en sprint Planlegger sprintens varighet ut ifra hvor lenge man kan binde seg til å holde endringer utenfor sprinten Minst mulig endringer underveis i en sprint vi aksepterer nye ting, men kun fra produkteierne (røde lapper)
Sekvensiell vs overlappende utvikling Requirements Design Code Test Rather than doing all of one thing at a time......scrum teams do a little of everything all the time Source: The New New Product Development Game by Takeuchi and Nonaka. Harvard Business Review, January 1986.
Scrum rammeverkets bestanddeler Roller Product owner ScrumMaster Sprint-team Sermonier/hendelser Sprint planlegging Daglig scrum møte Sprint review/demo Sprint erfaringsutveksling Artifacts Product backlog Sprint backlog Burndown graf
Produkteier Vedlikeholder kontinuerlig product backlog Definerer egenskapene av produktet på grovt nivå Beslutter leveransedato og innhold Er ansvarlig for lønnsomheten for leveransen (ROI) Prioriterer egenskapene for leveransen ift markedsverdi Justerer egenskapene og prioriteringen for hver sprint, etter behov Godkjenner/avslår tilføyelser til sprintene underveis Godkjenner/avslår ferdige leveranser
ScrumMaster Er normalt prosjektleder for prosjektet Er ansvarlig for at prinsippene og beste praksis for smidige prosjekter ivaretas vokter over arbeidsprosessene Fjerner hindringer for teamet Er garantisten for at teamet er produktivt og fungerer optimalt Sørger for tett samarbeide mellom alle relevante roller og funksjoner Beskytter teamet for eksterne forstyrrelser
Sprint-team Ansvarlig for å produsere leveransene Typisk 5-9 personer, men vi har 10 Tverrfaglige team: Programmerere, testere, designere, etc. i samme team Teammedlemmene bør være 100 % tilgjengelige Noen unntak kan tillates(f.eks. database administrator) Teamet er selvorganiserende Helst ingen titler eller faste roller Medlemsskap i teamet bør kun skiftes mellom hver sprint
Sprint Planleggingsmøte foran hver sprint Teamets kapasitet Product backlog Forretnings -behov Dagens produkt Teknologi Sprint planleggingsmøte Sprint prioritering Analyserer og evaluerer product backlog Definerer sprintens mål Sprint planlegging Beslutte hvordan oppnå sprintens mål (design) Utarbeide sprintens backlog (tasks) fra product backlog deler (user stories / egenskaper) Estimerer sprint backlog in dagsverk (planning poker) Sprint mål Sprint backlog
Det daglige scrum-møtet Stikkord Daglig 15 minutter Stående foran veggavisa Ikke for problemløsning Enhver i organisasjonen kan delta Bare team-medlemmer, Scrum-master og produkt eiere, kan snakke Medfører mindre behov for unødvendige møter! Diskusjonsmøter taes etterpå
Hvert teammedlem besvarer kun 4 spørsmål foran alle 1 Hva gjorde du igår? Hva vil du gjøre idag? 2 Ser du noen hindringer? 3 Hvor mye arbeid gjenstår? 4 Dette er ikke status for ScrumMaster Men det er forpliktelser foran likesinnede i teamet!
Oppgaver på veggavisa og vår Burndown Project: Vips Backlog item: Filtering Activity: Ring buffer of received packets. Filter position based on history. Wire and object move packets Done: Demonstrate motion in the simulator. Resource: Pål Estimate: 5 dv Actual: 2 dv Remaining: 4 dv
Sprint review/demo Alle i organisasjonen kan delta normalt bør hele ledelsen stille opp Hvert teammedlem presenterer hva det fikk til i løpet av sprinten, foran alle Typisk blir dette en demo av leveransen Ingen overheads, nei! Er Done -kravet tilfredsstilt?
Sprint retrospective/erfaringsmøte Erfaringsmøte etter hver sprint for å se på hva som fungerte og ikke fungerte Typisk 15 30 minutter Hele teamet deltar: Scrum master Produkt eiere Teammedlemmene Muligens prosjekteier, kunder og andre
Verktøy for SCRUM jobbing Vi fant ikke noe ferdig verktøy som var hensiktsmessig den gang Undertegnede lagde eget WSP verktøy som vi benyttet med stort hell i prosjektet for SMSC
PMI (ref PMIs PMBOK versjon 4) Se www.pmi.org Prosessgruppe: Kompetanseområde: Igangsettende prosesser Planleggings-prosesser Styringsprosesser Gjennomføringsprosesser Avsluttingsprosesser Integrasjonsledelse Prosjektmandat (Project Charter) (4.1) Samlet prosjektplan (4.2) Koordinere gjennomføring av prosjektplanen (4.3) Overvåk & kontroller (4.4) Endringsstyring (4.5) Prosjekt- eller fase-avslutning (4.6) Omfangsstyring Behovsopptak (5.1) Omfangsdefinisjon (5.2) WBS /AMS (5.3) Omfangsverifikasjon (5.4) Omfangskontroll (5.5) Fremdriftsledelse Aktivitetsplanlegging: Definere (6.1) Sekvensiere (6.2) Estimere ressurser (6.3) Estimere varighet (6.4) Utarbeide tidsplan (6.5) Fremdriftskontroll (6.6) Kostnadsstyring Kostnadsestimering (7.1) Budsjettering (7.2) Kostnadskontroll (7.3) Kvalitetsledelse Kvalitetsplanlegging (8.1) Kvalitetssikring (8.2) Kvalitetskontroll (8.3) Personalledelse Bemanningsplan (9.1) Mobilisering (9.2) Teamutvikling (9.3) Operativ ledelse (9.4) Kommunikasjons-ledelse Interessentanalyse (10.1) Kommunikasjons-planlegging (10.2) Usikkerhetsstyring Planlegge (11.1) Identifisere (11.2) Kvalitativ analyse (11.3) Kvantitativ analyse (11.4) Tiltaksplanlegging (11.5) Distribusjon av informasjon (10.3) Forventningsstyring (10-4) Ytelsesrapportering (10.5) Overvåking og håndtering (11.6) Innkjøpsledelse Anskaffelsesplanlegging (12.1) Gjennomfør innkjøp (12.2) Administrer innkjøp/kontrakt(12.3) Avslutte innkjøp (12.4)
PRojects IN Controlled Environments komplekst!
The Eye of Competence Bedre strukturert i PMBOK
Prosjektledelse med det beste fra alle! Vi i WSP har landet på en mix av: IPMAs mjuke kompetanseområder: - Prosjektets omgivelser - Ledelse og adferd PMIs metoder og teknikker og SCRUM i prosessgruppene: - Igangsetting - Planlegging (inkl Sprint planlegging) - Gjennomføring (inkl Daglig Scrum-møte) - Overvåking og styring (inkl Burndown-graf) - Avslutning
IPMA/PMI+SCRUM = sant Planlegging Gjennomføring vha Scrum Signert kontrakt Igangsetting Prosjektleveranse Avslutning Avsluttet kontrakt Overvåking og styring
Overordnet fremdriftsstyring for store prosjekter vha MS Prosjekt WSP har laget en mal, lagd i MS Prosjekt, som inneholder aktiviteter for PMI og SCRUM.
Spesiell prosjektledelse for smidige prosjekter Omfangsstyring: Produkteier ajourholder kontinuerlig hva som skal være omfanget av prosjektet gjennom en oppdatert product backlog Usikkerhetshåndtering: Produkteier prioriterer oppgavene i product backlog og hindrer for mye nye ting underveis Scrum master identifiserer og fjerner hindringer for farten i teamet Planlegging og fremdriftsstyring: Produkteier prioriterer og beslutter hva som skal leveres først og sist Planning poker benyttes for estimering av brukerhistoriene/aktivitetene Scrum master holder oversikt over kapasiteten til hele utviklingsteamet Teamet selv beslutter hvem som skal gjøre hva Teammedlemmene estimerer kontinuerlig hvor mye som gjenstår Scrum master vedlikeholder burndown-grafen daglig, som viser kontinuerlig hvorledes man ligger an i forhold til planen for sprinten