Transitie in beeld Agile & DevOps Presentatie voor functioneel beheerders
Agenda Aanleiding Agile versus traditionele project aanpak De rollen in een Agile team? Hoe werkt scaled agile? Wat betekent agile werken voor de rol van Functioneel Beheer? Q&A Aanvullende onderwerpen Wat nodig om te kunnen starten? Wat is Agile, Scrum, DevOps? Hoe bepalen we wat we eerst doen? Hoe bepalen we de scope? Hoe regelen we de afstemming op portfolio niveau? Hoe organiseren we de aansluiting met bestaande processen? Hoe regelen we afhankelijkheden over de teams heen? Wat komt er eigenlijk allemaal kijken bij een Agile transitie?
De Business Drivers van Agile werken Beter aansluiten bij de wensen van klanten en gebruikers Een (veel) kortere Time to Market Vaker en betrouwbaarder kunnen releasen Een hogere beschikbaarheid van applicaties Meer business waarde uit IT investeringen Directe communicatie, betere en prettigere samenwerking
De Agile Principles Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Continuous attention to technical excellence and good design enhances agility. Simplicity--the art of maximizing the amount of work not done--is essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Agile versus traditionele aanpak Oude wijn in nieuwe zakken?
Hoe ontstaan
Waarom Agile / Scrum? 35 % van de oorspronkelijke requirements verandert gedurende het project Veel van de klassiek ontwikkelde oplossingen wordt in de praktijk niet of slechts zelden gebruikt Werkende oplossingen, iedere paar weken opgeleverd, geven eerder, beter, en een vollediger beeld op hetgeen uiteindelijk maximale waarde toevoegt voor de klant De flexibiliteit die Agile/Scrum biedt is meer en meer een vereiste om snel en efficiënt in te kunnen spelen op snel veranderende omstandigheden in de markt Het terugdringen van (project) kosten en het beter beheersen van (project) risico s is noodzakelijk
Ontwikkelingen gaan steeds sneller
Klassiek ontwikkelen levert veel verspilling
Waterval versus Agile ontwikkelen
Agile versus waterval: business benefits
Agile versus waterval: Project Risico s
Wat zijn de rollen in een Agile team?
Scrum basics
Team rollen Product Owner Value maximizer. Verantwoordelijk voor Visie en geprioriteerde product backlog Scrum Master Proces facilitator. Coaching team op toepassen Scrum proces Developers Opleveren onderdelen van de Product Backlog. Het team is zelf organiserend en bevat alle disciplines die nodig zijn om onderdelen (User Stories) op te kunnen leveren die voldoen aan de Definition of Done
Agile team rollen, best practices Alle developer skills zijn bij voorkeur minimaal dubbel in het team aanwezig. Bijvoorbeeld informatie analist, designer, front end developer, back end developer, testautomatiseerder, content manager, functioneel beheer en technisch applicatiebeheer, infrastructuur beheer (Operations). Agile werken leidt tot delen van kennis en vaardigheden (T-shaped teams) Het team bestaat naast de Product Owner en Scrum Master rollen uit 3 tot maximaal 9 Developers. Daarnaast zijn er enkele teamoverschrijdende faciliterende rollen. Denk aan bijvoorbeeld de: domein architecten, security en performance specialisten, compliance etc.
Rollen die gedeeld worden over teams heen (eenvoudig scaled agile) Security Performance Op afroep, ondersteunend In het programma team Solution Architect Domein Architect Infrastructuur Architect Compliance
Wat betekent dit voor Functioneel Beheerders?
Wat betekent Agile werken voor FB? Vakspecialismen als applicatie consultants, testspecialisten en functioneel beheerders hebben in de bestaande organisatie hun eigen lijn aansturing. In agile transities kunnen dit chapters (gelijke specialismen komen bij elkaar voor bijvoorbeeld vakontwikkeling) of guilds (gelijke interessegebieden) worden (Spotify-model). Als Developer is iedereen onderdeel van een agile team en lever je allemaal een bijdrage aan het op te leveren product Het Change- en Release Management wordt bij agile werken ook echt anders. Ieder team wordt zo veel mogelijk in staat gesteld zijn eigen product zo vaak mogelijk naar de klant te brengen. Om zo te toetsen of ze op de goede weg zijn en te leren vanuit de praktijk. De coördinerende rollen over teams heen worden ook anders ingevuld. Als er veel afhankelijkheden tussen teams zijn wordt er gezamenlijk gepland en is er een rol als Release Train Engineer a la SAFe om de coördinatie over de verschillende onderdelen te faciliteren De rol van ondersteunende rollen ( oliemannetjes ) blijft nodig echter de basis blijft dat de agile teams zoveel mogelijk zelf bepalen hoe zij het effectiefst kunnen zijn en de meeste business waarde kunnen opleveren
Q&A Wat hebben we nodig om te kunnen starten? Wat is Agile, Scrum, Kanban, Lean en DevOps? Hoe bepalen we wat we eerst doen? Hoe bepalen we de scope? Bestaan er nog projecten?
Hoe organiseren we de aansluiting met bestaande processen en wat verandert er?
Impact Agile werken op bestaande processen We gaan van op projectbasis samengestelde teams (met problemen om mensen vrij te spelen, planningsproblematiek, wachttijden) naar long live teams die op elkaar ingespeeld zijn en de gelegenheid krijgen om steeds beter te worden We brengen het werk naar de mensen in plaats van de mensen naar het werk We doen wat het belangrijkst is eerst en na iedere Sprint is er de mogelijkheid om in te spelen op veranderingen Funding van op projectbasis naar op basis van in jaarplakken voorgefinancierde ontwikkelstraten. Uitgangspunt is dat de ontwikkelstraten op jaarbasis voldoende business case bijdragen om de BuCa op programma niveau te kunnen valideren Nieuwe business epics kunnen aan de programma Roadmap worden toegevoegd na akkoord van een BuCa beoordelingscomittee waarin business, IT en Financial Control vertegenwoordigd zijn
Wat komt er eigenlijk allemaal kijken bij een Agile transitie?
Focusgebieden Agile transitie Agile Mindset Way of Working Agile Basis Automation
Focusgebieden samengevat Agile Basis Agile Mindset Agile Way of Working Automation Long Live, Lerende Teams Sponsoring vanuit hoger management Gericht toepassen Lean, Kanban, Scrum, DevOps, SAFe Test Automation Funding, BuCa sturing op portfolio niveau Agile portfolio management Ondersteunende tooling in place Monitoring Governance mandaat PO en Team Gericht zijn op maximale flow creëren Gemeenschappelijke basis Continuous Delivery & Deployment Resourcing en faciliteiten Toetsen met klanten AB testing Analytics Tribes/Squads voor vakontwikkeling Provisioning Kortcyclisch werken Van Agile doen naar Agile zijn Product Owner alignment PaaS, services architectuur Release Train management