Continue planning verkennen

Voltooid

Continue planning is een van de acht DevOps-mogelijkheden.

Ontdekken waarom continue planning nodig is

Laten we een casestudy doorlopen van een softwaretoepassing die is ontwikkeld door een overheidsinstantie tussen 2000 en 2005. Het project was niet bijna voltooid toen het officieel werd verlaten in januari 2005, na een compleet fiasco te zijn geworden. Naast het verspillen van ten minste $ 100 miljoen, bracht de mislukking wijdverspreide kritiek naar het agentschap en zijn directeur.

In 2006 werd een tweede project gestart, met vergelijkbare rampzalige resultaten. De twee inspanningen gebruikten big design vooraf en de Waterval-ontwikkelingsmethodologie, met een klassieke geplande big bang go-live-gebeurtenis. Ze eindigden met niets geleverd en honderden miljoenen dollars uitgegeven.

Diagram shows the government agency project timeline.

Waarom zijn deze pogingen mislukt?

  • Big design vooraf – team van 200 personen heeft zes maanden besteed aan het maken van de vereisten.
  • Het verschuiven van prioriteiten - een ramp is gedeeltelijk door het project gebeurd, wat resulteert in enorme veranderingen in het bereik - en een ander team van 300 personen werkte zes maanden, wat resulteerde in 600 pagina's met vereisten.
  • Verspilde inspanningen en herwerk leidde tot gemiste deadlines en team burn-out – 700.000 regels code die worden geschreven en opnieuw geschreven.

In december 2010 werd er een Scrum-studio opgezet en co-locatie gevonden. Het personeel werd teruggebracht van 400 op de oorspronkelijke projecten tot 40. Ontwerp ging van 600 pagina's met vereisten naar 670 gebruikersverhalen. Het team heeft elke twee weken code verzonden en nieuwe functies gedemonstreerd. Na een paar sprints werd het mogelijk om ruwe tijdschalen te voorspellen en incrementele bedrijfswijzigingen te plannen. De code is voltooid in december 2011.

Maar waarom is het moeilijk om goed in detail te plannen?

Alan Turing ontwikkelde een machine tijdens de Tweede Wereldoorlog om het versleutelingsapparaat te kraken dat bekend staat als de Enigma Machine.

Turing moest voortdurend nieuwe codes ontcijferen om levens te redden. In plaats van op te geven vanwege de schijnbaar oneindige complexiteit, wist Turing dat hij alleen kleine details moest kraken om meer resultaten te bereiken:

"We kunnen slechts een korte afstand vooruit zien, maar we kunnen daar genoeg zien dat moet worden gedaan."

Ambitieuze softwareprojecten zijn altijd complex. Maar laat de complexiteit je niet overweldigen. Voer in plaats daarvan uit waar duidelijkheid is: de korte termijn.

Plan continu en effectief met duidelijke richting, focus en flexibiliteit die afhankelijk is van doelstellingen en belangrijke resultaten (OKR)

Voordat we continue planning definiëren, moeten we een belangrijk concept en framework introduceren om u continu en effectief te helpen plannen met duidelijke richting, focus en flexibiliteit.

Doelstellingen en belangrijke resultaten (OKR's) is een doelkader dat is ontworpen om strategische doelen te verbinden die zijn ingesteld door leiderschap met de dagelijkse activiteiten van uitvoeringsteams.

Belangrijk

OKR's helpen het best mogelijke resultaat te identificeren en duidelijkheid te creëren over hoe echt succes eruitziet.

OKR's worden over het algemeen elk kwartaal ingesteld voor scherpe focus en flexibiliteit.

Het doel is de richting en het belangrijkste resultaat moet meetbaar zijn. Aan het einde kunt u kijken, en zonder argumenten, beslissen: Heb ik dat gedaan of heb ik het niet gedaan? Ja? Nee? Eenvoudig. Er is geen oordeel in.

OKR's worden gelokaliseerd in alle teams binnen de organisatie om uitlijning en transparantie te demonstreren.

Wat zijn OKR's?

Er zijn drie essentiële aspecten van OKR's:

  • Ze vormen een kader voor het definiëren van duidelijke doelstellingen, wat duidelijkheid biedt over de intentie en richting op alle niveaus in de organisatie.

  • Ze worden versterkt met meetbare belangrijke resultaten. Belangrijke resultaten zijn resultaten waarmee succes wordt gemeten.

  • Ze stimuleren een mindsetcultuur voor uitkomsten , waardoor een duidelijke verschuiving van een uitvoermentaliteit tot een resultaatmentaliteit mogelijk wordt.

OKR-voorbeeld

Hier volgt een OKR-voorbeeld:

Doelstelling: zet in 1970 een astronaut op de maan.

Belangrijkste resultaten:

  1. Bouw een ruimteschip onder 40000 pond in 1965.
  2. Train astronauten voor maanlanding in 1967.
  3. Land het ruimteschip op de maan.
  4. Breng de astronauten veilig terug naar de aarde.

Dit OKR-voorbeeld identificeert het doel of doel van het plaatsen van een astronaut op de maan tegen 1970.

Notitie

Doelstellingen moeten gemakkelijk te begrijpen zijn, duidelijke richting geven en motivatie bieden.

In dit voorbeeld zijn de belangrijkste resultaten metingen van voortgang waarmee het succes van de doelstelling wordt gemeten.

Notitie

Belangrijke resultaten moeten meetbaar zijn en bepalen hoe het doel moet worden bereikt.

Belangrijkste voordelen van OKR's

Er zijn vijf belangrijke voordelen van OKR's:

  • Focus: elke doelstelling moet op één regel passen. Wat belangrijke resultaten betreft, moet u niet meer dan vijf per doelstelling hebben.
  • Uitlijning: managers en inzenders koppelen hun dagelijkse activiteiten aan de bedrijfsbrede visie van de organisatie. De term voor deze koppeling is uitlijning en de waarde ervan kan niet worden overschreden.
  • Toezegging: planningen en resources worden aangepast om ervoor te zorgen dat alle overeengekomen toezeggingen worden geleverd.
  • Het bijhouden van OKR's van uitvoer naar resultaat is waarom beheer op doelstellingen zo populair is bij bedrijven in de toplaag. Elke OKR moet kunnen worden bijgehouden via de metrische gegevens die zijn vastgesteld toen ze werden geschreven.
  • Stretching: OKR's pushen organisaties inherent om verder te streven, om iets meer uit te proberen dan wat ze dachten mogelijk was.

Continue en statische planning vergelijken

Continue planning is een praktijk die planners, architecten en agile teams nodig heeft om hun plannen continu in de hele onderneming te integreren.

In continue planning kunnen teams de planning op basis van scrum en opkomende ontwerpen verfijnen in het uitvoeringsniveau.

Het is belangrijk om een plan op hoog niveau te hebben dat tolerant is voor verandering, maar wordt geleid door duidelijke visie en doel.

De ijzerdriehoek van compromissen voor Waterval versus Agile-ontwikkelmethoden illustreert de vergelijking tussen continue en statische planning.

In de statische methodologie is het plannen van het bereik vast. U bepaalt hoeveel tijd het project kost en hoeveel het kost.

In Agile-methodologie , die gebruikmaakt van principes voor continue planning, is de tijd vast om te voldoen aan bedrijfsdoelstellingen. Het enige wat onderhandelbaar is, is bereik.

Diagram shows the iron triangle of tradeoffs for Waterfall vs. Agile development methodologies.

De ijzerdriehoek toont doorgaans tijd, resources en functionaliteit. Gartner heeft kwaliteit aan deze voorstelling toegevoegd omdat duur en kosten gecorreleerd zijn en kwaliteit vaak wordt gemist.

Maar hoe zit het met het succes van de twee praktijken?

Diagram shows a comparison between the success rates of Agile and Waterfall projects. 9% of the Agile projects failed, 39% succeeded, and 52% were challenged. 29% of the Waterfall projects failed, 11% were successful, and 60% were challenged.

Een van de redenen waarom Agile-projecten succesvoller zijn, is omdat kleine batchreleases de kansen vergroten om kennis te verkrijgen.

Er zijn vier dingen om rekening mee te houden:

  • Bedrijfsbehoeften veranderen voortdurend en doen dit op korte termijn.
  • Agile heeft de planningsmechanismen om bedrijfswijzigingen bij te houden.
  • Goed presterende teams kunnen net zo eenvoudig in de verkeerde richting gaan.
  • Het verkrijgen van kennis vermindert het risico.

De Waterval- en Agile-methodologieën worden beide aan de uitdaging gesteld. Agile is 30% meer van de tijd succesvol.

De zes principes van continue planning verkennen

Er zijn zes principes van continue planning:

  1. Eenvoud van waarde
  2. Het manifest voor agile softwareontwikkeling
  3. Ontwerpdenken
  4. Iteratieve en incrementele ontwikkeling
  5. Lean management
  6. Nauwkeurigheid van schatting

Principe van continue planning #1: Eenvoud van waarde

Het eerste principe voor continue planning is om eenvoud te waarderen.

"Als je het niet eenvoudig kunt uitleggen, begrijp je het niet goed genoeg."

-Albert Newton

Doorlopend planningsprincipe #2: Manifesto voor agile softwareontwikkeling

Het tweede principe voor continue planning is het manifest voor agile softwareontwikkeling.

Het Manifesto gaat over het leveren van software. Het gaat om softwareontwikkeling, niet projectmanagement of ontwerp. Het ligt aan de kern van Continue Planning en DevOps.

We ontdekken betere manieren om software te ontwikkelen door het te doen en anderen te helpen het te doen. Door dit werk hebben we het volgende gewaardeerd:

  • Individuen en interacties over processen en hulpprogramma's
  • Werkende software via uitgebreide documentatie
  • Samenwerking van klanten via contractonderhandeling
  • Reageren op wijziging na een plan

Doorlopend planningsprincipe #3: Ontwerpdenken

Het derde principe voor continue planning is ontwerpdenken.

Ontwerpdenken maakt gebruik van een mensgerichte benadering van innovatie. Het richt zich op het snijpunt van levensvatbaarheid, haalbaarheid en wenselijkheid om grenzen vast te stellen en afval te verminderen.

Diagram explains design thinking. Design thinking establishes the boundaries of the product early (often called the minimal viable product or “MVP”). It focuses on the intersection between business viability, technical and budget feasibility, and desirability. This intersection is where innovation happens.

Doorlopend planningsprincipe #4: Iteratieve en incrementele ontwikkeling

Het vierde principe voor continue planning is iteratieve en incrementele ontwikkeling.

Sommigen zijn bang dat ze niet weten wat ze krijgen. Iteratieve ontwikkeling lost dit probleem op door vereisten en prioriteit te geven aan de belanghebbenden in een iteratieve feedbacklus. Elke iteratie is volledig, bruikbaar en nuttig voor de gebruikers. Het voegt meer functionaliteit toe, bij voorkeur de belangrijkste functionaliteit eerst.

Principes voor continue planning #5: Lean management

Het vijfde principe voor continue planning is lean management.

De waarde wordt gedefinieerd vanuit het oogpunt van de eindklant. In het proces worden waardestromen geïdentificeerd en stappen waarbij de waarde niet aan de klant wordt geleverd, worden geïdentificeerd als afval en verwijderd.

Het proces begint opnieuw, strevend naar een status van perfectie met behulp van continue verbetering.

Diagram shows the stages of the process: identify value, map the value stream, create flow, establish pull, and seek perfection.

Doorlopend planningsprincipe #6: Nauwkeurigheid van schatting

Het zesde principe voor continue planning is schattingsnauwkeurigheid.

Een schatting is een analytische voorspelling van hoe lang iets duurt, hoeveel het kost of hoeveel functies er kunnen worden geleverd. Het heeft twee kenmerken: nauwkeurigheid en precisie, die volledig niet aan elkaar zijn gerelateerd. Schattingen zijn eigendom van het technische team.

Een doel is een verklaring van een bedrijfsbehoefte: hoe lang we iets willen nemen, hoeveel we willen kosten of hoeveel functies we willen leveren. Doelen zijn eigendom van het bedrijf.

Een toezegging is een belofte om functionaliteit en kwaliteit te leveren op een bepaalde datum. Toezeggingen zijn gezamenlijk eigendom.

Belangrijk

Het doel van continue planning is om de afstemming tussen schattingen, doelen en toezeggingen te behouden. Anders voldoen we niet aan verwachtingen binnen en buiten de organisatie.

De relatie tussen OKR en Scrum uitleggen

Nu u begrijpt waarom en wat van OKR's, evenals iets over continue planning, is dit de verbinding tussen de twee.

Het structureren van werk met behulp van technieken zoals OKR's vermindert de onzekerheid, ten minste voor de korte termijn. Omdat OKR's zijn bedoeld om op trapsgewijze wijze te worden gedefinieerd, begint dit te veranderen hoe de managers hun managementstijl zullen vertonen.

Technieken zoals OKR's zijn een snelle en efficiënte manier om de reis weg te zetten van de stijl van autoritair management.

Objectives and key results lead to epics. Epics help define features, which involve user stories, and result in a development task.