Aanpak 2: Agile ontwikkeling met (onverwachte) winst
Studiedag Het onbeheersbare beheersen? Managen van ICT projecten bij de overheid
Aanpak 2: Agile ontwikkeling met (onverwachte) winst • Presentatie 1 : Dhr. Luc Van Tilborgh, Domein Manager Federale dienstenintegrator, Fedict
• Presentatie 2 : Dhr. Luc De Kock, relatiebeheerder, Agentschap Geografische Informatie Vlaanderen
• Nabeschouwingen, vragen en antwoorden
Agile ontwikkeling met (onverwachte) winst (1) Studiedag : Het onbeheersbare beheersen ? Managen van ICT projecten bij de overheid Luc Van Tilborgh, Fedict Domeinverantwoordelijke Federale Dienstenintegrator
2015-11-26
© Fedict 2015. All rights reserved | p. 3
HTTP://www.fedict.be
© Fedict 2014. All rights reserved | p. 4
© Fedict 2015. All rights reserved FOR INTERNAL USE ONLY
Digital Belgium
Fedict minister is verantwoordelijk voor ‘Digital Agenda’
www.digitalbelgium.be/en
© Fedict 2015. All rights reserved | p. 6
© Fedict 2014. All rights reserved
Back-office integratie ? Vereenvoudig, optimaliseer, ‘reengineer’ eerst Integreer processen Service Oriented Architecture Federal Service Bus
© Fedict 2014. All rights reserved | p. 8
Federale Service Bus concept : Fedict vergemakkelijkt toegang tot authentieke bronnen via web services en FSB
Notaris
FSB • Federal Service Bus •1 unieke connectie tussen ‘back ends’ •Beveiligde toegang
RN
XML Web
© Fedict 2015. All rights reserved | p. 9
XML RBis
FSB Productie infrastructuur Loadbalancing tier
Loadbalancer Reverse Proxy 1
Application tier 2 - Registry
Registry
Application tier 3 - Repository
Repository
Loadbalancer Reverse Proxy 2
Web tier
Webserver 1
Webserver 2
Webserver 3
Webserver 4
Application tier 1 - Service Bus
FSB Server 1
FSB Server 2
FSB Server 3
FSB Server 4
FSB Server 5
FSB Server 6
FSB Server 7
FSB Server 8
Monitor server
Data tier
99,95% beschikbaar Database Cluster node 1
Database Cluster node 2
Federale Service Bus Componenten
2 data centers
Firewall, network (Fedman), VM… beheerd door DC team.
Silo architectuur
Linux OS / XEN virtualisatie
Binnen de VM : Linux OS (Redhat), Apache, Weblogic, OSB. Logstash, Kibana, Systinet.
Oracle DB laag : Oracle RAC in 1 DC, ‘failover’ Oracle onderneming in de andere DB © Fedict 2015. All rights reserved | p. 11
FSB statistieken Hoogste # berichten voor FSB per maand
83
Klanten, of 195 applicaties
145 6.671.266
99,86%
Webservices in 17 service families
FSB 24/7 globale beschikbaarheid (incl. gepland onderhoud)
Overheidsopdracht “FSB 1.1” voor het ondersteunen van de Federal Service Bus
Een redelijk complexe en kritische omgeving
Team Fedict : architect, analyst, service managers (2), project managers (2), support (2)
Team leverancier : project manager / team lead, soa architecten, soa developers, testers… Evolutie van het platform
Support team leverancier : 3rd line, monitoring, reporting, “keep it running” Operatie van het platform
Andere Fedict domeinen (infra) en hun leveranciers
© Fedict 2015. All rights reserved | p. 13
Het probleem
We zaten in de loopgraven Leveringen duurden heel lang (dus ook : kost) Watervalbenadering (voorgedefinieerde Work Packages) Geen akkoord over aanpak, verschillen in opvatting Het was nooit goed genoeg Security upgrades gebeurden niet altijd of niet op tijd Escalaties proces verbaal van vaststelling, moeilijke discussies in de stuurgroepen, …
Malaise Zowel medewerkers van Fedict als van leverancier gaven aan dat het zo niet verder kon. (…)
Crisis ! (begin 2014)
© Fedict 2015. All rights reserved | p. 14
De oplossing
We introduceerden “AWOW” : the agile way of working (op aangeven van technische medewerkers)
Addendum aan het contract Co-location Mixed team met medewerkers Fedict en leverancier Omzetting van een deel van het budget van fixed price naar time & means
Gekozen methodologie : Scrum
Ondersteunende tools Jira, Jira Agile Confluence
© Fedict 2015. All rights reserved | p. 15
Scrum
© Fedict 2014. All rights reserved | p. 16
Scrumbuts
Een “ScrumBut” is een afwijking van de regels :
(ScrumBut)(Reason)(Workaround) "(We use Scrum, but) (having a Daily Scrum every day is too much overhead,) (so we only have three per week.)“
Fedict “ScrumButs” :
Geen 100% dedicated team (mensen doen buiten het agile werk ook nog andere taken) 3 stand ups per week, soms ook met teleconferencing Taken worden op voorhand toegekend (niet uitgepikt tijdens de sprints maar afgesproken tijdens de sprint planning)
© Fedict 2014. All rights reserved | p. 17
Backlog
© Fedict 2015. All rights reserved | p. 18
Burndown
© Fedict 2015. All rights reserved | p. 19
De resultaten
Doorlooptijd : vb. volgens de klassieke waterval inschatting 15 maanden voorzien, afwerkt op 5 maanden (complex WP) deels omdat Fedict medewerkers actief mee werkten aan de realisatie, deels door elimineren van “stages and gates”
De kost voor de taken werd (meer dan) 30% lager
De project management overhead viel van 15% terug op 5%
We beslisten zelf welke patches geïnstalleerd dienden te worden => geen discussie meer, platform up-to-date en stabiel
Dit is ook een win-win voor de leverancier
© Fedict 2015. All rights reserved | p. 20
De onverwachte resultaten
De motivatie van de mensen is toegenomen (ze komen graag werken)
De wrijving tussen de teams is volledig verdwenen
En dus ook de wrijving tussen Fedict en leverancier We hebben nu minder frequente en minder intense stuurgroepen
Andere Fedict domeinen worden mee in het bad getrokken (de samenwerking verbetert daar ook)
“Sense of responsibility”, ownership van de technische mensen
Risico’s verminderen aanzienlijk -> experimenten worden mogelijk -> nieuwe inventieve oplossingen
Kibana, Elasticsearch, … (zie volgende slide)
© Fedict 2015. All rights reserved | p. 21
© Fedict 2015. All rights reserved | p. 22
De onverwachte problemen
Cultuurschok
Voor de project- en servicemanagers – Geraken al hun referentiepunten kwijt – Agile Training – Introductie van een “tactisch” niveau Voor het management – Commitment ? – Wat zijn we aan het doen, tegen wanneer, … – Introductie van een “strategisch” niveau
Training, advocacy, literatuur
© Fedict 2015. All rights reserved | p. 23
Agile@fedict : inspired upon SAFe
Strategic
http: www.scaledagileframework.com
Strategic alignment
Portfolio
Tactic
Transparency, communication Program Backlog Roadmap Program Increment
Interaction w. service management
Operational
Interaction between backlogs Interaction with Quality Assurance
SCRUM sprints Product backlogs
© Fedict 2015. All rights reserved | p. 24
Scrum in Prince2 context
© Fedict 2014. All rights reserved | p. 25
Scrum in PRINCE2 context (ctd.)
© Fedict 2014. All rights reserved | p. 26
Bijdrage project, service managers in Scrum
© Fedict 2015. All rights reserved | p. 27
Consumer Projects
Sprint planning Dev
CAB PMT Sprint planning PLAT
Consumer Changes
Visie op evolutie R&D
WebService Building Blocks
Service Management
NSR
Pipeline
Catalog
Service Mgr
En het management ?
Creatie van een “top” laag
Rapportering
Commitments volgens “MoSCoW” methode
Velocity gebruiken voor voorspelling
© Fedict 2015. All rights reserved | p. 31
Velocity gebruiken voor voorspelling
© Fedict 2015. All rights reserved | p. 32
Velocity gebruiken voor voorspelling
© Fedict 2015. All rights reserved | p. 33
Velocity gebruiken voor voorspelling
MoSCoW :
<- MUST
<- SHOULD (wordt must in volgende Program Increment)
© Fedict 2015. All rights reserved | p. 34
Portfolio : Epics, strategisch niveau
© Fedict 2015. All rights reserved | p. 35
Program backlog : features, tactisch niveau
© Fedict 2015. All rights reserved | p. 36
Velocity 9,00 8,00 7,00 6,00 5,00 4,00 3,00 2,00 1,00 0,00
120 100 80
60 Complete 40
Not complete Removed
20
10/11/2015
28/10/2015
14/10/2015
29/09/2015
9/09/2015
18/08/2015
28/07/2015
8/07/2015
16/06/2015
26/05/2015
6/05/2015
15/04/2015
25/03/2015
4/03/2015
11/02/2015
20/01/2015
7/01/2015
9/12/2014
18/11/2014
28/10/2014
7/10/2014
16/09/2014
26/08/2014
5/08/2014
0
16/07/2014 7/08/2014 27/08/2014 18/09/2014 8/10/2014 30/10/2014 19/11/2014 11/12/2014 7/01/2015 21/01/2015 11/02/2015 4/03/2015 25/03/2015 15/04/2015 6/05/2015 27/05/2015 17/06/2015 8/07/2015 29/07/2015 19/08/2015 9/09/2015 30/09/2015 14/10/2015 29/10/2015
Juridica Custom l Upgrad er Evidenc e OSB Specific e and to the Integrat Privacy latest ions Audit version
Operational XML Maintenance of the Gatewa platform 2015-2016 y
Status : Epics & Features Feature: XML Gateway : Vendor selected and product ordered Feature: Reporting: Bug fixing and improvement Feature: Apache 2.4 Migration Gesloten
Feature : Q4/2015 : Oracle Security Patch
Ongoing Open
Feature: OSB 12c install on INT Feature: PAT NG in TA & INT Feature: ePV batch integration 0
2
4
6
8
10
12
14
16
18
20
Work in progress…
Op deze wijze creëren we terug orde in de chaos
Niet alle project / service managers voelen zich hier goed bij
De directie is wel overtuigd (“show me the money”), maar is (nog) niet overtuigd van de universele toepasbaarheid
Agile is een “reis”, geen “doel”
Continue verbetering Eliminate the waste
Enkele besluiten
Agile brengt grote voordelen, ook onverwachte
Agile vermindert de risico’s aanzienlijk
Agile is geen excuus om niet te plannen
Failure IS an option (but : fail early)
Mentaliteitswijziging is nodig, vooral als je bottom-up Agile in de organisatie brengt
Het Safe framework kan helpen als inspiratie
Je kan NIET alles in sprints doen
Er is een belangrijke verschuiving van verantwoordelijkheid
Naar het technische team (architecten, ontwikkelaars, support)
Referenties en aan te raden lectuur
Product development flow
« The principles of product development flow », Donald G. Reinertsen http://lpd2.com/wp-content/uploads/2013/06/ReinertsenFLOWChap1.pdf
Agile http://blog.crisp.se/author/henrikkniberg
System Error : fixing the flaws in government IT http://www.instituteforgovernment.org.uk/publications/systemerror
Safe http://scaledagileframework.com/
© Fedict 2014. All rights reserved | p. 41
Agile ontwikkeling met (onverwachte) winst (b): De GIPOD case Voortdurend in beweging Luc De Kock Relatiebeheerder
www.bestuurszaken.be
Wat is GIPOD? (generiek informatieplatform openbaar domein)
• Informatie over hinder op de weg
Wat is GIPOD? • Platform voor uitwisselen van informatie – Werken – Omleidingen – Manifestaties – Andere hinder
Waarom GIPOD? • Meer afstemming tussen – Werken – Manifestaties – Omleidingen • Minder hinder • Minder conflicten • Meer synergie
Uitdagingen • Stakeholders met zeer verschillende achtergrond • GIPOD meerwaarde vs. verplichte deelname
Projectorganisatie
Projectorganisatie Rollen en verantwoordelijkheden Product Owner Leiden van werkgroepen Organisatie van & Rapportage bestuurscomité
Klantenrelaties
AGIV Afdelingshoofd Beheer budget & escalatie
Nieuwe organisaties aantrekken
Sprint planning 1
Integratie stimuleren
RFC negotiatie
Communicatie releases / versies
Organisatie van & Rapportage aan bestuurscomité
Integratie opvolgen
Vertegenwoordiging belangen alle partijen Marketing
Opleiding
Product visie / samenstelling / prioriteiten INTERN stakeholder management Leiden estimation meetings
Input leveren voor rapportage bestuurscomité
Resource management (meer/minder teamleden, specialisten)
Buss Analyse Func Analyse
SPOC voor het dev team
Voorbereiding werkgroepen
Organisatie werkgroepen
Organiseren Nazorg 1.0 – 2.0
Werkgroep feedback consolideren
Voorbereiden estimation meetings Product backlog grooming
Pre-planning
Prioritisatie bugs
Sprint planning 2
Business Analyst
Validatie user stories
Scrum Master
Interne Status Rapportering
Opvolging Planning & Budget
Administratie
Planning / Opvolging Implementatie
Project Manager
Uitzetten in de tijd van releases
Goedkeuring budget
Bestuurscomité
Ontwikkelmethode Agile – scrum
Continue verbetering • Op productniveau – Inbreng via gebruikersbijeenkomsten – Inbreng via relatiebeheerders
Continue verbetering Op productniveau - inbreng via gebruikersbijeenkomsten
2007
2008
2009
idee
Werkterreinen 1. Goeie data 2. Decreet 3. Efficiënte koppelingen 4. Verbeterde processen 5. Nieuwe actoren
2010
2011
2012
2013
2014
2015
GIPOD 3.0
GIPOD 1.0 GIPOD 2.0
Gebruikers bijeenkomst
GIPOD 4.0
2016
Verplichte deelname
Continue verbetering Op productniveau - inbreng via gebruikersbijeenkomsten GROEP 1
GROEP 2
GROEP 3
GROEP 4
Tom Boi
Gitte Van Gompel
Ivan De Vreese
Marleen Ombelets
Sylvie Lippens
Dirk Doclo
Kelly Scheir
Nele Somers
Lies Vissers
Philippe Van Waeyenberghe
Maarten Vanoverbeke
Jo De Ruyver
Dirk Morel
Werner De Vreese
Gert Vermeiren
Philippe Smeets
Filip Broekaert
Dirk Van Leuven
Klaartje Nackaerts
Benjamin Deprez
Bart Delaey
Ilse Pauwelyn
Sylvie Palmans
Peter Goetmackers
Annelies Vandewalle
Katrien Steenackers
Jan Stuckens
Leen Notelé
Katrin Stammen
Marc Van Pelt
Dirk Verbruggen
Philip Verhegge
Moderatoren: Luc De Kock
Naomi Oste
Bart Coessens
Jef Daems
Eerste GG van 28/5 was een succes!
Continue verbetering Op productniveau - inbreng via gebruikersbijeenkomsten Product backlog voor GIPOD 3.0
Bijkomende invloeden: - Scope - Business impact - Technische haalbaarheid
- IT alignment - aanwezige competenties - Technische impact - Timing constraints met andere projecten of ontwikkelingen
Continue verbetering Op productniveau - inbreng via gebruikersbijeenkomsten High level backlog, beslissing door BC Project: X1140 - GIPOD ID
Stack Rank 19223 19277 19227 19228 19232 19233 19234 19235 19248 19252 19250 19259 19261 19257 18991 19012 19253 19007 19251 19283
Server: aocsrv15.vlm.be\AGIV
Query: Product Backlog 3.0
List type: Flat
Title 3000[EPIC] verbeterde publieke ontsluiting (via geopunt) 3120[EPIC] [TECHNISCH] upgrade architectuur conflictdetectie 3140[TECHNISCH][SERVICES] centraal auditing en loggingsysteem voor het tracen van service calls 3160[TECHNISCH] [MOBILE] impactstudie responsive web design op bestaande web-toepassing 3180[TECHNISCH] [ALARM/INFO] Herwerking back-end van alarm- en infolijsten 3200[TECHNISCH] [BROWSERS][MOBILE] ondersteun IE10 3220[TECHNISCH] Bouw GIPOD WMS 3240[TECHNISCH] migratie naar .Net 4.5 3300[EPIC] koppeling met KLIP 3400[EPIC] overzicht van gefaseerde werken in GIPOD 3450[EPIC] verbeterd overnemen van het beheer (delegatie en als beheerder) 3500[EPIC] verbeterde procesondersteuning voor conflictafhandeling 3550[EPIC] toevoegen van data om processen beter te ondersteunen 3600[EPIC] verbeterde ondersteuning voor omleidingen 3660[GG 14][ZOEKEN][USABILITY] Zoeken op veroorzakende werkopdrachten (door ODB) 3670[GG 35][ZOEKEN][RAPPORT] Meer mogelijkheden voor rapportering en zoekfilters 3700[EPIC] Verbeterde gebruikerservaring - gebruiksvriendelijkheid - usability [GG 30][ZOEKEN][VERKAVELING][KAART] Zoeken (+rapporten) op 'verkaveling' (valt weg: & automatisch intekenen 3750straat bij aanduiding begin-/eindpunt) 3800[EPIC] verbeteringen aan de kaartweergave 3850[EPIC] nodige behoeften komend uit ondersteuning GIPOD 2
Story Points 50 50 25 13 50 13 5 13 30 75 40 60 40 13 13 50 50
Column1 50 100 125 138 188 201 206 219 249 324 364 424 464 477 490 540 590
8 25 40
598 623 663
Continue verbetering Op productniveau – inbreng via gebruikersbijeenkomst
• Realistische planning, ‘time’ – of ‘scope’-based?
Continue verbetering Op productniveau – inbreng via relatiebeheerders Klantenrelaties
Gebruikers
Projectteam Nieuwe organisaties aantrekken
Integratie stimuleren Communicatie releases / versies
Marketing
Opleiding
Intern
Extern
•
Wekelijkse projectopvolging bijwonen
•
•
Demosprints opvolgen
•
Rapporteren van bugs
•
Rapporteren van suggesties
•
Vertalen van opmerkingen, suggesties, gebruikerservaringen, specifieke beperkingen van gebruikersomgevingen
•
–
Inhoudelijk
–
Volgens belangrijkheid
…
•
•
Infosessies (sensibiliseren) –
Gebruikers
–
Software- en dienstenleveranciers
Opleidingen –
Train the trainer
–
Opleidingstraject voor eindgebruikers
Ondersteuning –
organisatie 1ste lijns ondersteuning
–
2de lijns ondersteuning
•
Actief betrokken bij gebruikersbijeenkomst
•
Verzamelen feedback&suggesties
•
…
Continue verbetering Op organisatieniveau
• Belang van de ‘retrospectives’ • Uitbreiding naar ‘retrospective ++’ – Terugblikken over verschillende sprints
Continue verbetering Op organisatieniveau
• Retrospective, belangrijk voor het scrum team
Continue verbetering Op organisatieniveau
• Retrospective, belangrijk voor het scrum team
Continue verbetering Op organisatieniveau
• scrum team visie : ‘wat is belangrijk voor ons, hoe willen we software opleveren’
Continue verbetering Op organisatieniveau
• Veranderingen door visie – Focus leggen op kwaliteit • ‘Echt’ opleveren van user stories • Zero bug policy -> betere demo’s -> tevreden business -> vertrouwen in releases – Focus op betere doorstroming • Bottlenecks vinden en wegwerken -> focus op volledige proces – SLA’s voor het samenstellen van de sprint backlog • Grote user stories eerst • Beperken van het aantal grote user stories
Continue verbetering Op organisatieniveau
• Resultaten – Betrouwbare planning • Bugvrije software • Consistente oplevering • Sterke definitie ‘done’ – Stakeholders zijn tevreden • Gemakkelijke eindgebruikers testen en demo’s • Betere feedback – Hecht scrumteam • Focus op ‘afwerken’ ipv ‘opstarten’
GIPOD resultaten • Enthousiaste gebruikers (1 jaar voor verplichte deelname)
GIPOD resultaten • Evolutie naar betere planning van werken (1 jaar voor verplichte deelname)
evolutie synergiën / werkopdrachten 30% 29% 25%
20% 20% 15% 10%
14% 10% 6% 5%
3%
0% november '13
mei '14 % synergieaanvragen
november '14 % synergiën
GIPOD en AGILE Scrum • Conclusie – Sterke punten van AGILE Scrum • Zorgt voor hoge kwaliteit (bèta-release is productieklaar) • Controleerbaar ontwikkelproces (requirements voor ontwikkeling komen in hapklare brokjes)
– Extra aandachtspunt voor GIPOD • PO van GIPOD is diverse groep stakeholders: consensus bereiken vraagt tijd • Stakeholders worden continu betrokken – Aandachtspunt • Scrum team moet gesmeerd blijven Stilvallen is geen optie (moeilijke heropstart)
Nabeschouwing: Enkele conclusies • Agile / Scrum zorgt voor hoge kwaliteit • Agile / Scrum zorgt voor goede controle tijdens het ontwikkelproces o Requirements in hapklare brokjes o Risicobeheersing • Agile / Scrum verkort de doorlooptijd en vermindert de kost • Het invoeren van een Agile ontwikkelmethodologie vereist echter een mentaliteitswijziging • Stakeholder management is en blijft een aandachtspunt
Vragen en antwoorden
Bedankt! Fedict Boulevard Simon Bolivarlaan 30/9 Brussel 1000 Bruxelles TEL. +32 2 212 96 00 | FAX +32 2 212 96 99
[email protected] | ww.fedict.belgium.be Agentschap voor Geografische Informatie Vlaanderen Koningin Maria Hendrikaplein 70 bus 110 9000 Gent Tel 09 276 15 00 |
[email protected] Vanaf 1 januari wordt het AGIV Informatie Vlaanderen !