Probleemstelling
Er wordt een gebrek aan flexibiliteit ervaren betreffende de releases van het afsprakenstelsel. Dit komt voort uit meerdere oorzaken:
- Vaste releasemomenten, waarin zoveel mogelijk onderwerpen doorgevoerd moeten worden. Kleine correcties op het afsprakenstelsel worden zonder ophoging van het versienummer doorgevoerd, minors en majors worden niet op de voorgeschreven manier toegepast.
- Volledige koppeling met de in de R&A vastgelegde endpoints en de code van de R&A. Bij iedere versiewijziging betekent dit veel administratief werk.
Bovenstaande problemen kunnen niet los van elkaar worden opgepakt, omdat de oplossing voor het eerste probleem en de uitwerking van versioning impact hebben op het tweede probleem.
Koppelingen
Wijzigingsverzoek
Gekoppelde onderwerpen
Huidige situatie
In de huidige situatie wordt twee keer per jaar een release uitgebracht. Deze staan gepland op 30 april en 30 oktober. Vooraf wordt bepaald welke onderwerpen in de volgende release moeten worden verwerkt. Hierbij hebben we te maken met het dakpanmodel, waarbij altijd twee releases van het afsprakenstelsel staan gepubliceerd. Op dit moment zijn dat 1.5.1 en 1.6.0, waarbij de eerste verplicht is voor alle deelnemers en de tweede optioneel. bij een nieuwe release verschuift alles. De verplichte versie wordt ingetrokken, de optionele release wordt verplicht en de nieuwe release wordt optioneel.
Gewenste situatie
We willen meer flexibiliteit introduceren bij het releasen van onderwerpen, waarbij meer rekening wordt gehouden met de implementatietijd van deelnemers. Daarnaast willen we de deelnemers gestructureerder meenemen in de analyses en uitwerkingen. Om dit voor elkaar te krijgen is het voorstel dat we naar intervallen van een maand gaan. Dit betekent dat iedere maand:
- een update gegevens wordt betreffende de onderwerpen waaraan gewerkt is;
- een verwachting wordt uitgesproken van grote onderwerpen waaraan de aankomende maand gewerkt wordt;
- met stakeholders een publicatieplanning wordt bepaald per onderwerp;
- een publicatie kan plaatsvinden met de geplande onderwerpen.
Publicatie
Per publicatieperiode wordt bepaald of een publicatie van toepassing is en wat de publicatie inhoudt. Dit kan bestaan uit updates van de bestaande publicatie, in de vorm van patches, minors en majors. Daarnaast kan ook een volledige nieuwe release nodig zijn.
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Probleem:
Op dit in moment vind twee keer per jaar een release plaats, namelijk in week 14 en 44. In de huidige situatie bepalen de release moment de planning en dit werkt niet ideaal aangezien de onderstaande problemen optreden:
- Als er geen onderwerpen zijn om te releasen dan kunnen we of de optionele versie verplicht maken en geen wijzigingen doorvoeren voor de nieuwe optionele versie of de release kan worden uitgesteld.
- Doordat er een volledige koppeling met de in de R& vastgelegde endpoints en de code van de R& is betekent dit dat er veel administratief werk verricht moet worden als er een wijziging plaatsvind.
- Vaste releasemomenten, waarin zoveel mogelijk onderwerpen doorgevoerd moeten worden. Kleine correcties op het afsprakenstelsel worden zonder ophoging van het versienummer doorgevoerd, minors en majors worden niet op de voorgeschreven manier toegepast.
Huidige situatie:
In de huidige situatie wordt twee keer per jaar een release uitgebracht. Deze staan gepland op 30 april en 30 oktober. Vooraf wordt bepaald welke onderwerpen in de volgende release moeten worden verwerkt. Hierbij hebben we te maken met het dakpanmodel, waarbij altijd twee releases van het afsprakenstelsel staan gepubliceerd. Op dit moment zijn dat 1.5.1 en 1.6.0, waarbij de eerste verplicht is voor alle deelnemers en de tweede optioneel. bij een nieuwe release verschuift alles. De verplichte versie wordt ingetrokken, de optionele release wordt verplicht en de nieuwe release wordt optioneel.
Doel:
We willen meer flexibiliteit introduceren bij het releasen van minors en patches en meer rekening houden met de implementatietijd van deelnemers voor majors. Daarnaast willen we de deelnemers gestructureerd meenemen in de analyses en uitwerkingen.
Aannames
De nieuwe release cycler wordt ondersteunt door de (nieuwe manier van) versioning.
- Op de verplichte stelselversie publicatie worden geen major aanpassingen doorgevoerd tenzij... (bijvoorbeeld o.b.v. security, regelgeving of major bug-fix)
- Op de verplichte stelselversiepublicatie wordt een minimum aan minor aanpassingen met functionele impact doorgevoerd. De scope van de verplichte functionaliteit blijft zover mogelijk gelijk (geeft wel de optie om bv extensie aan te passen).
- Op de verplichte stelselversiepublicatie kunnen patches met procedurele en tekst aanpassingen worden doorgevoerd. De scope van de functionaliteit blijft gelijk.
Voorbehoud
Indien het noodzakelijk is om op korte termijn af te wijken van het release schema vanwege een gedegen reden dan kan er worden afgeweken van het release- en verplichtstellingsschema. Deze beslissing kan alleen worden gemaakt door productowners/productmanager/MT lid?
Oplossingsrichtingen
Om de flexibiliteit voor m.n. releases van minors en patches te verhogen willen we meer releasemomenten per jaar mogelijk maken. Wij stellen voor om een (twee) maandelijks publicatiemoment in te plannen waar stakeholders inspraak hebben over de planning voor releases van onderwerpen.
Het proces zou als volgt in zijn werk gaan, zijn onderwerpen afgerond dan wordt binnen MedMij bepaald wat de impact van dit onderwerp is en op wat voor termijn volgens ons het onderwerp gereleased moet worden. Vervolgens wordt de uitwerking van het onderwerp gepubliceerd als een pre-release stuk. Stakeholders kunnen deze stukken lezen en bepalen of ze willen aansluiten bij het publicatie overleg.
Twee weken voor het publicatiemoment is het publicatie overleg ingepland. Bij dit overleg zijn de product owner en de verschillende stakeholders aanwezig en komen de volgende punten aan bod:
- een update wordt gegeven betreffende de onderwerpen waaraan gewerkt is;
- een verwachting wordt uitgesproken van grote onderwerpen waaraan de aankomende maand gewerkt wordt;
- met stakeholders een publicatieplanning wordt bepaald per onderwerp;
- of de publicatie kan plaatsvinden met de geplande onderwerpen.
De stakeholders hebben dus inspraak in wanneer onderwerpen gereleased worden, hier zit wel een grens aan. De inspraak van de stakeholders is wel dusdanig beperkt dat ze releases niet oneindig uit kunnen stellen. Deelname aan het publicatie overleg is facultatief. Stakeholders hebben vooraf inzicht in de agenda en de pre-release stukken, waardoor ze zelf kunnen bepalen of ze wel of niet aanwezig willen zijn bij het overleg. Om te worden meegenomen in het publicatie overleg moeten de stukken minimaal 2 weken ervoor gepubliceerd zijn.
Ter verduidelijking, een publicatiemoment betekend niet vanzelfsprekend dat er ook een release plaats vind.
Openstaande vragen en overdenkingen
Vragen
Een paar vragen is geen duidelijk antwoord op, daarom zijn er verschillende oplossingsrichtingen uitgewerkt. Deze vragen zijn:
- Hoeveel publicatiemomenten per jaar willen we inplannen?
-> maandelijks: ruimte om ook op regelmatige basis kleine wijzigen door te voeren
-> twee maandelijks: minder druk op de stakeholders. Er is al gemorrel vanuit deelnemers dat de tijdsinvestering te groot is. De vraag is wegen de voordelen om kleine wijzigingen door te voeren op tegen de kosten voor en bezwaren van de deelnemers. Een vraag hieronder is moeten kleine wijzigen worden doorgevoerd op releasemomenten en als ze zo dringend zijn deze wijzigingen dan niet een minor of een patch? - Willen we de optionele versie bewaren?
- Wanneer worden gereleasde versies verplicht en hoe vaak per jaar willen we dit doen?
- Hoeveel tijd moet er minimum zitten tussen de release en de verplichtstelling hiervan?
- Willen we een voorbespreking voor het publicatie overleg?
- Zo ja is deze op een vast moment of wanneer nodig?
- Wie moeten erbij aanwezig zijn naast de schrijver van het stuk en de productmanager?
Nog nadenken over
- De link met de planning voor het uitwerken van onderwerpen
- Of we de planning uitwerking en planning release momenten willen splitsen
- Hoe bepalen we of iets een major of minor is?
- Wat doen we als iets vanuit ons een minor of patch is maar voor de deelnemer veel werk is.
Oplossingsrichting 1
Vraagstuk | Keuze | Voordeel | Nadeel |
Frequentie publicatie moment | Maandelijks |
|
|
Voorbespreking | Nee, wanneer nodig |
|
|
Verplichtstellingsmoment | Vier keer per jaar | Meer vrijheid voor stakeholders om te bepalen wanneer ze majors/minors/patches willen en kunnen implementeren. | Nu geven deelnemers al aan dat 2x per jaar verplicht stellen te veel is. Mogelijk wordt 4x per jaar een probleem. |
Behoud optionele versie | Ja | Dit maakt duidelijk voor deelnemers welke van de onderwerpen die al pre-gereleased zijn ook verplicht worden bij het volgende verplichtingsmoment. | Het is verwarrend als er 3 verschillende versies zijn, namelijk de pre-release, optionele en verplichte versie. |
Minimum tijd tussen het publicatie overleg en het verplicht worden | 3 maanden | De mogelijkheid om belangrijke veranderingen op korte termijn blijft behoudt. | Deelnemer heeft te kort de tijd om major wijzigingen te implementeren. |
Aangezien er maandelijks publicatiemomenten zijn en niet per se elk moment gereleaset wordt is het niet nodig om een vaste maandelijks een interne voorbespreking plaatsvinden
Oplossingsrichting 2
Overweging | Keuze | Voordeel | Nadeel |
Frequentie publicatie moment | Twee maandelijks |
|
|
Voorbespreking | Ja, 2 weken voor de pre-release |
|
|
Verplichtstellingsmoment | Eén keer per jaar | Deelnemers geven aan dat twee keer per jaar een nieuwe versie verplicht maken te veel is. Door slechts eenmaal per jaar een nieuwe versie verplicht te maken voldoen wij aan hun wens. |
|
Behoud optionele versie | Nee | Als er al pre-releases zijn en ze maandelijks gepubliceerd worden dan kunnen de deelnemers daar zien welke versie verplicht wordt bij de volgende verplichtstelling. | Aangezien de gepubliceerde majors tussen mei en oktober en van minors/patches tussen augustus en oktober pas bij de release van het volgende jaar worden meegenomen kan onduidelijk zijn welke van de gepubliceerde pre-releases dan wel of niet verplicht wordt tijdens het komende verplichtstellingsmoment. |
Minimum tijd tussen stakeholder en overleg en verplicht worden a. Patches en Minors b. Majors | a. 3 maanden b. 6 maanden |
|
|
Oplossingsrichting 3
Voor de derde oplossingsrichting is gespeeld met het idee om verschillende publicatie frequenties te gebruiken voor patches, minors en majors.
Ook voor de minimum duur tussen het publicatieoverleg en het verplicht worden van de betreffende versie wordt
NOG INVULLEN
Ook nog toevoegen variatie datum en weekdag
nog optionele combi volgens mij maken
Vraagstuk | Keuze | Voordeel | Nadeel |
Publicatie frequentie a. Patches b. Minors c. Majors | a. Maandelijks b. Per Kwartaal c. Per Halfjaar |
|
|
Voorbespreking | Maandelijks | ||
Verplichtstellingsmoment | Tweemaal per jaar | ||
Behoud optionele versie | Ja, term veranderen | Door de optionele versie te behouden blijft het voor de deelnemers wel inzichtelijk welke versie verplicht gaat worden. Aangezien de wisseling | |
Minimum tijd tussen publicatie overleg en verplicht worden |
| Door een minimum duur tussen publicatie overleg en de verplichtstelling te variëren is het wel mogelijk op korte termijn wijzigingen door te voeren zonder te veel druk op deelnemers te leggen om het te implementeren. |
Oplossingsrichting 4
Bij deze oplossingsrichting is het dakpan model losgelaten, hiervoor is gekozen omdat:
- het dakpanmodel niet in uitwerking van deze oplossingsrichting past,
- deelnemers in de huidige situatie geen gebruik maken van de optionele versie, omdat twee versies van hun systeem in de lucht houden teveel geld kost en
- ook binnen de rest van VZVZ geen gebruik wordt gemaakt van het dakpanmodel
Als het dakpan model geen waarde toevoegt, afwijkt van de rest van de organisatie en niet past binnen deze uitwerking waarom zouden we deze dan behouden.
Het zou als volgt in zijn werk gaan, wanneer onderwerpen zijn afgerond en het is een minor of major dan worden ze aangedragen bij de voorbespreking.
Bij de voorbespreking wordt besproken:
- Het belang van het onderwerp
- De impact van het onderwerp
- In hoeverre het onderwerp samenhangt met andere onderwerpen die gereleased moeten worden of waar nu aan gewerkt wordt
- Op welke termijn we het onderwerp willen doorvoeren
- Hoe vast we willen houden aan deze deadline
Als over de bovenstaande punten duidelijkheid bestaat en willen we het onderwerp pre-releasen op het eerst volgende moment dan wordt één week later het onderwerp gepubliceerd.
Twee weken daarna vindt het verplichtstellingsoverleg plaats hier wordt samen met de stakeholder bepaald wanneer we dit onderwerp verplicht willen laten worden.
Vraagstuk | Keuze | Voordeel | Nadeel |
Publicatie frequentie pre-publicatie Patches & Minors & Majors | Maandelijks:
| Bij deze oplossingsrichting is er geen optionele versie meer en wordt in overleg met de stakeholders bepaald wanneer een onderwerp verplicht wordt. Hierdoor maakt het minder uit wanneer een stuk gepubliceerd wordt aangezien in samenwerking met stakeholders bepaald wordt wanneer een onderwerp verplicht wordt. |
|
Voorbespreking | Maandelijks | In de publicatie overleggen wordt in overleg met de stakeholders overlegt op welk moment minor en majors verplicht worden. Om duidelijk te hebben op welke momenten wijzelf deze minors en majors willen verplicht stellen en hoe hard wij hierin staan is het vereist de publicatie overleggen voor te bespreken. Doen wij dit niet dan is er het risico dat we onderwerpen te laat verplicht worden gesteld terwijl dat niet wenselijk zou zijn of dat we te hard erin gaan staan voor relatieve kleine aanpassingen. | Het vergt tijd van de deelnemers van VZVZ en er zijn al veel standaard overleggen. |
Verplichtstellingsmoment a. Minors en patches b. Major | a. Maandelijks, minors mits toestemming b. Tweemaal per jaar, tenzij x% het eens is dat er tussentijds een major verplicht wordt gesteld |
| |
Behoud optionele versie | Nee | Door geen optionele versie te hanteren is het mogelijk op korte termijn aanpassingen door te voeren voor de verplichte versie. | |
Minimum tijd tussen verplichtings overleg en verplicht worden |
|