Agile Release Planning in hybride en Agile projecten

wanneer u werkt in een agile project of streven naar agile methoden te gebruiken, agile release planning kan een kritische techniek voor IT – en product-centric projecten. Agile release planning wordt vermeld als een scheduling techniek in de PMBOK (PMI ‘ s Project Management Body of Knowledge). Het is daarom ook relevant voor de Project Management Professional (PMP) certificering.

hoewel deze methode niet noodzakelijk een vereiste is in alle echte agile benaderingen, is het een goed instrument voor release-driven agile en hybride projecten. Dit komt omdat agile release planning de kloof kan overbruggen tussen meer traditionele projectplanning en agile of iteratieve productontwikkeling.

Lees verder voor meer informatie over deze techniek.

Hoe Werken Releases?

een release bestaat doorgaans uit een reeks functies of softwarecomponenten die binnen een bepaalde periode zijn ontwikkeld en getest. Bij de ontwikkeling en het testen, deze functies worden ingezet in een keer als onderdeel van de release.

Releases kunnen functies en verbeteringen van software bevatten, evenals delen en stukken van Grotere ontwikkelingsprojecten. Zo kan de upgrade van een zelfontwikkeld of kant-en-klare systeem worden opgesplitst in verschillende releases om een vlotte overgang te garanderen, de voortzetting van de activiteiten, en om de risico ’s die inherent zijn aan’ big bang ‘ migraties te voorkomen.

Wat Is een Vrijgaveplan?

het vrijgaveplan is het document dat het bereik, de tijdlijn en, in sommige organisaties, de middelen en kosten van een vrijgave beschrijft.

een vrijgaveplan beschrijft welke systeemcomponenten gedurende een bepaalde tijd (vaak tussen 1 en 6 maanden) worden ontwikkeld, getest en geïmplementeerd. De release plan kan worden gezien als een geprioriteerde lijst van functies, vergelijkbaar met product backlogs in sommige agile frameworks. Het vereist meestal enige prioritering omdat het vaak het geval is dat niet alle Systeemvereisten kunnen worden gedekt door een enkele release. Dit geldt met name in complexere organisatorische en IT-omgevingen.

naast nieuw ontwikkelde functies of producten kan een vrijgaveplan ook defectbevestiging en kritische verbeteringen of wijzigingen aan bestaande systemen omvatten.

Release plannen worden vaak van tevoren opgezet voor een paar komende releases (bijvoorbeeld plannen voor 4 releases binnen 1 jaar). Dit maakt het mogelijk om componenten toe te wijzen aan een doelversie op basis van de individuele prioriteit, risico en kriticiteit van de functies. Meestal is het plan voor de dichtstbijzijnde release gedetailleerd, terwijl de plannen voor volgende releases de neiging om ruw te zijn. Echter, deze plannen worden normaal verfijnd en steeds meer gedetailleerd als de respectievelijke release komt dichterbij. Dit is vergelijkbaar met het concept van progressieve uitwerking in projectmanagement.

Release plannen in traditionele en Agile projecten

in traditionele IT-gerelateerde projecten zijn release plannen een veel voorkomende techniek om software ontwikkeling en implementatie te beheren.

ook maken sommige agile frameworks gebruik van releases en release plannen. In Extreme Programming (XP), bijvoorbeeld, bestaat een release uit verschillende iteraties die korter en gemakkelijker te beheren zijn omdat deliverables worden opgedeeld in kleinere delen van de scope van een release.

de generieke Scrum-aanpak daarentegen definieert sprints in plaats van iteraties en releases die tussen de 2 en 4 weken kunnen duren. Softwareontwikkeling met Scrum impliceert daarom niet noodzakelijkerwijs releases en release planning, maar er kunnen Scrum releases in de praktijk zijn (lees hieronder meer).

vereisten worden echter ook beheerd in lijsten met prioriteiten: de sprint backlog en de product backlog zijn dergelijke lijsten die dynamisch worden geprioriteerd door de eigenaar van het product.

Wat Is een Release Candidate in Agile?

een release candidate wordt gewoonlijk gedefinieerd als een softwareversie of een set functies die functioneel is maar nog niet klaar is om op de markt te worden gebracht, bijvoorbeeld om testen af te ronden en feedback van gebruikers te ontvangen (bron).

in agile release planning kan een release candidate vaak verwijzen naar een functie die is ontwikkeld, in principe functioneel is en in een iteratie wordt getest. Zodra het volledig is getest en alle fouten zijn opgelost, gaat het verder om te worden opgenomen in de algehele release.

Als release candidates falen in een iteratie, wordt hun foutfixatie en afronding vaak gedaan in de volgende iteratie.

Wat is Agile Release Planning?

Agile release planning verwijst naar de scope – en tijdlijn-instelling voor een iteratief of Incrementeel productontwikkelingsproject. Het wordt gebruikt in agile of hybride projecten waar een middellange tot lange termijn planning van het product of systeem ontwikkeling of integratie is vereist.

Agile release planning in de context van productvisie en roadmap, releases en iteraties / iteratieplannen
overzicht van Agile Release Planning.

Agile release planning wordt vaak gezien als het proces van het creëren van het grote plaatje dat de visie van het product en de routekaart verbindt met de release schema en de release naar iteraties die op hun beurt gebruik maken van een iteratie plan dat functies en taken definieert op een meer gedetailleerd niveau.

de term wordt genoemd in het Kennisorgaan van het projectmanagement van het PMI als een techniek in het kader van het “Ontwikkelschema” – proces (PMBOK®, 6e ed, ch. 6.5.2.8). Hoewel de PMBOK de neiging heeft om zich te concentreren op de meer voorspellende en traditionele project management benaderingen, wordt deze techniek geà ntroduceerd in PMI ‘ s framework om iteratie-gebaseerde agile projecten te overwegen.

de term ‘op iteratie gebaseerde agile’ wordt gedefinieerd in PMI ‘ s Agile Practice Guide (hfdst. 5.2.6). Het gaat om de eerste (ruwe) planning van iteraties, die delen van een release zijn. Wanneer meer informatie bekend is die een nauwkeurigere projectie mogelijk maakt, zullen agile teams hun iteraties aanpassen om rekening te houden met deze verfijning. Dit kan ook aanpassingen van het vrijgaveplan vereisen.

Hoe wordt Agile Release Planning in de praktijk gebruikt?

Agile release planning kan een aantal doeleinden dienen, afhankelijk van de projectbenadering en organisatorische vereisten

hier zijn een paar voorbeelden:

Release Planning in Agile projecten

in agile benaderingen en projecten die gebruik maken van releases en iteraties, is release planning een techniek om de productroadmap te implementeren die is afgeleid van de productvisie. De product roadmap bevat de hoge eisen opgesplitst in releases.

het vrijgaveplan geeft het aantal herhalingen binnen een vrijgave aan. Op een meer gedetailleerd niveau, het iteratieplan definieert de functies die moeten worden ontwikkeld binnen een release.

hoewel releases en release – plannen een perspectief op middellange tot lange termijn hebben, zijn iteraties veel korter en dus smaller wat betreft reikwijdte. Dit vergemakkelijkt een flexibele ontwikkeling en, in het bijzonder, de verwerking van feedback en kortetermijnwijzigingen in vereisten en functies.

refereer naar de onderstaande grafiek voor een voorbeeld van hoe release planning wordt gedaan in agile frameworks zoals XP.

flow chart
voorbeeld van Release-en Iteratieplanning in XP (bron & credit: extremeprogramming.org).

de planning van agile releases kan handmatig worden gedaan of met behulp van project management software. Bijvoorbeeld, Lucidchart publiceerde een gids voor het ontwikkelen van een agile release plan met behulp van hun software.

Release Planning in hybride projecten

naast de hierboven genoemde link tussen product roadmap en iteraties, kunnen agile release plannen ook helpen bij het integreren van agile ontwikkelingsprojecten in een release-georiënteerde organisatie of architectuur.

Centrale release management en organisatorische planning eisen zijn gekoppeld aan iteraties en agile productontwikkeling door de techniek van agile release planning
illustratie van hoe agile release planning kan worden gebruikt om de kloof tussen organisatorische release planning eisen en agile productontwikkeling te overbruggen.

Zo kan een klantgericht systeem worden ontwikkeld met behulp van agile benaderingen. Dit systeem zou echter moeten worden geïntegreerd in de complexe IT-architectuur van het bedrijf, waarbij ook interfaces met andere systemen betrokken zijn. De ontwikkeling en implementatie van dat klantgerichte systeem zou dus noodzakelijkerwijs afhankelijk zijn van de centrale release planning van de organisatie.

in dergelijke gevallen kan de techniek van Agile release planning de releases van de organisatie koppelen aan de iteraties en functies die zijn ontwikkeld in een agile (sub)project.

Wat is een Agile Release Plan in Scrum?

een release plan in Scrum vertegenwoordigt de toewijzing van items van een product achterstand (de lijst van kenmerken en vereisten van een product) aan releases. Deze functies worden vervolgens ontwikkeld in sprints.

overeenkomstig de waarden en principes van Scrum is een vrijgaveplan bedoeld als richtlijn en een levend document dat dynamisch wordt bijgewerkt wanneer dingen veranderen of nieuwe informatie bekend wordt.

volgens het Scrum Institute™ vereist een Scrum release plan een geprioriteerde en geschatte product achterstand, de snelheidsindicator van het team en de ‘conditie van tevredenheid’ (of definitie van gedaan) die het doel van de productontwikkeling omvat.

op basis van de schatting van de inspanning voor functies (de hoeveelheid werk die nodig is) en de snelheid van het team (de productiviteit van het team), kunnen functies worden toegewezen aan verschillende releases en sprints.

Wat is het verschil tussen Releases, iteraties en Sprints?

Releases hebben betrekking op geplande ontwikkeling en implementatie van softwarefuncties of veranderingen over een typische periode van 1 tot 3 (of zelfs meer) maanden. In agile, iteratieve, en sommige hybride projecten, releases zijn onderverdeeld in verschillende iteraties die een kleiner bereik en een kortere termijn, vaak tussen 1 of 2 weken en 1 maand. In sommige agile frameworks zoals Scrum worden iteraties ook wel sprints genoemd.

Hoe lang duurt een Sprint in Agile / Scrum?

een sprint in Scrum duurt doorgaans 2 weken tot 1 maand. Het kan echter ook korter of langer zijn als dit geschikter wordt geacht voor het ontwikkelingsproject.

conclusie

of u werkt als projectmanager of producteigenaar in een agile, iteratief of hybride project of dat u zich voorbereidt op uw PMP – examen-inzicht in agile release planning is de sleutel om agile of iteratie – gebaseerde ontwikkeling mogelijk te maken in combinatie met release en projectplanning op middellange tot lange termijn. Lees onze artikelen over de andere schema management technieken als u meer wilt weten over het ontwikkelen en beheren van project schema ‘ s.

dankzij het Agile release plan kunnen een aantal maanden van tevoren een scope, die verder verfijnd kan worden, en een tijdschema worden vastgesteld. Tegelijkertijd kunnen agile ontwikkelteams hun vrijheid behouden om de exacte scope van elke iteratie te plannen en regelmatig te herzien. Tot op zekere hoogte is agile release planning een techniek die projectmanagers en producteigenaren in staat stelt om de voordelen van zowel traditioneel projectmanagement (bijvoorbeeld planning op middellange/lange termijn) als agile projectbenaderingen (bijvoorbeeld reactievermogen op verandering en feedback) te combineren.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.