220 likes | 337 Views
Agil udvikling i en mindre IT virksomhed - udfordringer Infinit – Processer og IT 06.03.2012. Dagsorden. Dafolo ? Udgangspunktet Udfordringer Hvad med de store offentlige IT projekter ?? Eksempler fra ”den virkelige verden” Vores svenske projekt KOMBIT projekt – K02 kontrakt
E N D
Agil udvikling i en mindre IT virksomhed - udfordringerInfinit – Processer og IT06.03.2012
Dagsorden Dafolo ? Udgangspunktet Udfordringer Hvad med de store offentlige IT projekter ?? Eksempler fra ”den virkelige verden” Vores svenske projekt KOMBIT projekt – K02 kontrakt Lægemiddelstyrelsen
Dagsorden Kan man udvikle agilt ift en K02 kontrakt? Kan man sælge en agil proces? Hvordan kommer man i gang med agil udvikling? Agil udvikling og kvalitetssikring?
Dafolo Mindre dansk IT virksomhed 21 ansatte i IT udviklingsafdelingen 65 personer i alt Hovedkontor i Frederikshavn Kontorer i Fredericia, København, (Sverige?) Løsninger til borgerservice og kommunal administration Med udgangspunkt i elektroniske blanketløsninger med mange år på bagen Ca. 70 kommuner som kunder Samme type løsninger til statslige org. og private virksomheder Stor faglig viden om kommunal administration God og bred viden om systemudvikling Flere og flere medarbejdere med fokus på usability, agil udvikling Datamatikere, dataloger, multimediedesign Dafolo – en virksomhed med stort potentiale for agil udvikling
Udgangspunktet – udfordringer og muligheder Har anvendt Prince2 som projektledelsesmetode i en årrække Udvikling baseret på præcise kravspecifikationer Plejer det at gå godt ….? Ja, hvis vi har kunderne tæt på udviklingen … Og løbende tilpasser kravspecifikationen Hvad med ledelsens opbakning ? Indførelse af agil udvikling er sat som mål i talentudviklingsprogram Hvad med medarbejdernes opbakning? ”Opinionsundersøgelse” viste stort engagement ;-) Kunderne var tilstede, viljen var der (hos medarbejdere og ledelse), tiden var der, processen var i gang Manglede metode og værktøj til agil udvikling … samt den nødvendige viden
Mål og hensigt Det vi vælger at gøre, vil vi gøre ordentligt ;-) Danmarks bedste løsninger på de områder, vi sammen med kunderne udvikler Samarbejde med Aalborg Universitet om indførelse af agil metode Scrum – roller, aktiviteter, produkter i en mindre virksomhed Innovation – proces ”på toppen af” Scrum Usability – sikre ”perfekte” løsninger Komme tættere på kunderne Kundegruppe – kreativ cirkel 25 kommuner – prioriterer, indgår i udviklingsteam, deltager i usability test Sikre vidensdeling I udviklerteam Mellem udviklere og support, salg mm Med kunderne Sikre bedre styring af projekterne !
Udfordringer ? Bud på løsninger Scrum master rollen – anderledes end ”almindelig udvikler” Scrum master kurser + ”ledelses værktøjer” – coaching mm Fungerer godt – udviklerne er med på at tage ansvar ! Projektlederne – normal meget styrende ift detaljer i projektet - blæksprutte ledelse? ”Omskolet” til andre roller – usability eksperter, kontraktansvarlige Fungerer ok efter nogle indkørings vanskeligheder Productowner rollen Salg? Kunder? Input fra support, salg, kunder, konsulenter - samles i emnelogs Tidligere projektledere har productowner rollen – sikrer prioritering af emner sammen med salg, kunder
Udfordringer ? Bud på løsninger Resten af organisationen? Udviklingsafdelingen skal holde fast i principperne ! Sekventielle projekter fremfor parallelle projekter Prioritering ud fra forretningsværdi / business cases Mange mindre projekter ? Team til løsning af mindre projekter fremfor enkeltmandsprojekter Vidensdeling, færre videns-kritiske områder Drift/support opgaver samtidig med projektarbejde Lave ophold mellem sprints til disse løbende opgaver Definere specielle sprint med disse opgaver
Udfordringer ? Bud på løsninger Kontrakter indenfor det offentlige Ufleksible kontrakter med faste kravspecifikationer og bod – K01, K02 Brug Scrum til at organisere internt – giver mere fokuseret styring af projektet Prøv at ”lokke” kunden med på en agil arbejdsmetode Giv fast pris på enkelte sprints Giv kunderne en oplevelse med agil udvikling Er allerede set som krav i udbud fra store offentlige styrelser Konkurrence- og Forbrugerstyrelsen
Fordele ved agil udvikling Forøger effektiviteten Giver mere præcise tidsplaner Giver mere fokus på økonomien i projekterne Giver mere tilfredse kunder Øger vidensdelingen i virksomheden Befordrer samarbejdet på tværs i virksomheden
Store offentlige IT projekter ?? Mange eksempler på, at det er gået galt … Tager man agil udvikling i brug? Forslag til kontrakter, der understøtter agil udvikling Kritik af agil udvikling Kunden har ikke styr på indholdet – hvor meget får kunden? Agil: Det man får er det vigtigste og det passer til kundens behov! Der er ikke styr på tidsplanen? Agil: Man får langt bedre styr på plan og fremdrift. Tydeligt, hvis planen begynder at skride! Kunden har ikke styr på omkostningerne? Agil: Kvalitet for pengene – det kunden får, virker! Mange beslutningspunkter ! Traditionel udvikling: Oftest ved kunden først til sidst, om projektet har ramt plet Mange, dyre ændringsønsker Store forsinkelser, store ekstrabevillinger Kuldsejlede projekter
Et eksempel fra den ”virkelige verden” – Sverige ;-) Udvikling af svensk eFormService – det svenske Borgeronline Udfordringer Et helt nyt koncept for kunden og Dafolo Kunden er på lang afstand Kunden har kun lidt erfaringer fra lignende udviklingsprojekter Kunden har ingen erfaring med agil udvikling Dafolo har ingen erfaringer med svensk kommunal administration Vi havde få måneder til at udvikle første version Muligheder Dafolo er ekspert i produktet - og tillod sig at tage rolle som procesekspert også Kunden valgte vores produkt primært ud fra vores arbejde med usability sammen med kunderne En ”blank tavle”
Et eksempel fra den ”virkelige verden” – Sverige ;-) Kravspecifikation Blev fastlagt på workshop med kunden og dennes eksperter Estimater og penge Bliver fremover givet i forbindelse med planlægning af hvert sprint Kunden har løbende styr på budgettet Sprint reviews Enkelte workshops med kunden Online mødeværktøj Mange løbende ændringsønsker Forsøgt opsamlet til efterfølgende sprints Men løbende virtuelle møder efter behov Daglige Scrum møder i teamet Hvad med test Dafolo’s tester deltager i daglige Scrum møder Løbende dialog og koordinering mellem Dafolo’s tester og kundens kvalitetsansvarlige Usability …..!!
Et eksempel fra den ”virkelige verden” – Sverige ;-) Restrospective – lessonslearned ? Afholdes som workshop forud for projektets næste fase Men kunden har flere gange udtalt, at det er sjovtat arbejde sammen med os ;-) Resultatet ? Bedre Hurtigere udvikling Billigere Selvom der er mange løbende ændringsønsker, er det billigere og hurtigere at lave dem i den iterative proces Kan vi bruge samme model på alle projekter? Ja, ellers tilpasser vi den og bruger de elementer, vi kan !
Et eksempel fra den ”virkelige verden” - K02 kontrakt Traditionel K02 kontrakt – traditionel kunde (KOMBIT) Dog var usability test et af kravene For 2 af 9 delløsninger Supergode resultater, så dette blev udvidet til alle 9 delløsninger ;-) Og så var der åbnet for agilitet … Dog med ”drivankre” som ændringslog og –ønsker Stor forskel på kravspecificeret løsning og leveret løsning Løsning, der rammer plet Tilfeedse kunder ;-)
Agil udvikling og kvalitetssikring Test integreret i Scrum -> bedre teknisk kvalitet Løbende prioritering af productbacklog -> bedre funktionel kvalitet Kunden får mest muligt for pengene … Ikke behov for lappeløsning for at udbedre funktionelle mangler -> hæver den tekniske kvalitet på langt sigt Agil proces indarbejdes i kvalitetsstyringssystem Forudsætninger Klar rollefordeling Opbakning fra hele organisationen Og fra kunderne
Kan man sælge en agil proces Eksempel fra Lægemiddelstyrelsen Proof of concept til indberetning af nye lægemidler Uklar kravspecifikation Købte et antal timer Prioriterede løbende productbacklog sammen med udvikler Tilfreds kunde ;-) God økonomi for Dafolo Undgik et POC projekt, der løb ”løbsk”
Hvordan kommer man i gang Mød medarbejderne, hvor de er – start derfra Start der, hvor der er størst chance for succes Udvælg nogle få områder, som du vil forbedre i næste runde Gør det tydeligt for medarbejderne, hvad vi har nået, og hvad vi mangler Fokuser i hver ”iteration” på, hvad der er gået godt Sammenlign med den situation, man kom fra Hav fokus på nye roller for medarbejderne
Opsummering Samarbejde med kunder, usability, agil udvikling – forskellige sider af samme sag Kommunikation, vidensdeling, gensidig læring Med kunder, internt i teamet, med resten af organisationen Agil udvikling giver en langt mere moden proces F.eks. ”overdragelse” fra udvikling til support/drift En løbende proces i projektet fremfor overdragelsesprocedure / instruktion Bedre at starte med enkelte elementer fremfor at vente til alt er på plads Start, hvor man har mest kontrol og størst chance for succes – internt i teamet Udviklerne ”vokser” med den agile proces Mere indflydelse, ansvar, tilfredshed Projektlederne ”vokser” med den agile proces Ny rolle – fokus på det mere strategiske og kommunikative element i projektet Organisationen ”vokser” med den agile proces Hyppigere leveringer til kunder, bedre fælles ”fodslaw” Løbende forventningsafstemninger – internt og kunden