1 open besluit1414 voorstellen

Onderwerp

De eerste levering door het ontwikkelteam

Hoe het ontwikkelteam de eerste levering bouwt en overdraagbaar maakt: wie waarover beslist, welke werkafspraken gelden, in welke omgevingen wordt gewerkt, hoe namen en versiebeheer zijn opgebouwd en hoe een nieuw team start.

Nog niet bevestigd door een mens. Eigenaar: vdo89. Bron in de atlas

Domein
Volgt uit
Functies
Producten
Verwant

Wat het is

De eerste levering bouwt het vlootbeheer en beheercel 1 in AM4 op en levert daarop de eerste dienst; zie de reikwijdte van de eerste levering. Een ontwikkelteam van interne en externe medewerkers doet dat werk en draagt het resultaat over aan platformbeheer.

Dit onderwerp legt vast wie waarover beslist, welke werkafspraken voor iedere wijziging gelden, in welke omgevingen wordt gewerkt, hoe namen en versiebeheer zijn opgebouwd, hoe een nieuw team start en hoe een werkinstructie is opgebouwd.

Waarom zo

Na de oplevering moet RWS het platform zelf kunnen beheren. Daarom bouwt het ontwikkelteam alles als code, via beoordeelde wijzigingen en in opslagplaatsen die aan platformbeheer worden overgedragen, en beslist RWS over ontwerp, risico en acceptatie. Het ontwikkelteam krijgt geen blijvende beheerrechten, zodat bouwen en beheren gescheiden blijven.

De rolverdeling en de plaats van het versiebeheer zijn vastgesteld. De werkafspraken, de omgevingen, de naamgeving, de indeling van de opslagplaatsen en de startvolgorde zijn een voorstel: zij volgen de principes voor gecontroleerde, reproduceerbare wijzigingen en houden het werk herhaalbaar en overdraagbaar, ook als het team wisselt.

Uitspraken

4 vastgesteld15 voorstellen

Alle 15 voorstellen vaststellen

Rollen en verantwoordelijkheden

VastgesteldRegel#

Bij de eerste levering is iedere rol verantwoordelijk voor een eigen deel van het werk en beslist zij over dat deel.

RolVerantwoordelijk voorBeslist over
Productverantwoordelijke platform (RWS)Prioriteit en volgorde van het werk; acceptatie van opleveringen.Wat af is en wat eerst komt; als diensteigenaar van het platform ook de vrijgave voor reguliere en bedrijfskritische productie.
Architect (RWS)Samenhang met het doelbeeld; vastleggen van ontwerpbesluiten.Afwijkingen van de standaard en van de gekozen productversies.
CISO-functie en beveiligingsadviseur (RWS)Beveiligingskaders, vaststelling van de normen van de baseline, beoordeling van uitzonderingen en advies over restrisico’s.Beveiligingsadvies bij de vrijgave voor productie; medeondertekening voor het restrisico.
SOCAansluiting van logbronnen, detectieregels en incidentafhandeling.Welke signalen worden gevolgd en opgevolgd.
Netwerkbeheer (RWS)Bouw en beheer van het nieuwe datacenternetwerk, de zones, het adresplan en de externe koppelingen.Netwerkvarianten, zonecontrole en de routekaart van het netwerk.
Opslagbeheer (RWS)Bouw en beheer van het opslagcluster per cel; uitgifte van koppelgegevens per cluster; capaciteitsbeheer en uitbreiding.Foutdomeinen, opslaggebieden en uitbreiding van het opslagcluster.
Identiteitsbeheer (RWS)Identiteitsbronnen, rollenmodel, herbeoordeling van rechten en de voeding van het identiteitsbeheer per cel vanuit de centrale RWS-bronnen.Rollen en koppelingen met bestaande bronnen.
OntwikkelteamBouwen als code, testen, documenteren en overdragen.Technische uitwerking binnen de gegeven kaders.
PlatformbeheerMeelopen vanaf de start en overname van het beheer na acceptatie.Of beheer de oplevering kan dragen.
Eerste applicatieteamTesttoepassing en beoordeling van de bruikbaarheid.Of de dienst het werk lichter maakt.
Toelichting

Netwerkbeheer en opslagbeheer leveren het datacenternetwerk en het opslagcluster buiten de opdracht van het ontwikkelteam; loopt een van beide uit, dan schuift de eerste levering op. Zie de beheersing van de aandachtspunten.

Werkafspraken

VoorstelRegel#

Clusters, instellingen, beleid, pijplijnen (geautomatiseerde reeksen bouw- en controlestappen) en draaiboeken staan als code in versiebeheer, en niemand past een omgeving met de hand aan, ook niet onder tijdsdruk. De enige uitzondering is de noodroute; een wijziging langs die route wordt binnen één werkdag alsnog in code vastgelegd.

Toelichting

De werkafspraken van het ontwikkelteam maken het werk herhaalbaar, controleerbaar en overdraagbaar. Zij werken het principe uit dat wijzigingen gecontroleerd en reproduceerbaar worden doorgevoerd. Dat de uitvoerende voorzieningen goedgekeurde versies zelf ophalen en afwijkingen melden, volgt uit GitOps.

VoorstelRegel#

Iedere wijziging van het ontwikkelteam loopt via een wijzigingsvoorstel dat twee beoordelaars naast de auteur beoordelen; een wijziging aan beveiliging, netwerk of identiteit beoordeelt ook de betrokken RWS-rol. De geautomatiseerde controles moeten slagen op precies die vastlegging voordat de wijziging wordt doorgevoerd, en alleen een standaardwijziging wordt daarna automatisch samengevoegd.

Toelichting

Dezelfde regels gelden voor het portaal, de API en direct gebruik van het versiebeheer; de takbeveiliging dwingt ze af. Zie ook geen herhaalde beoordeling.

VoorstelMaatregel#

Geheimen staan in het geheimenbeheer, nooit in code. De pijplijnen controleren op uitgelekte geheimen, en een gevonden geheim geldt als incident: het wordt ingetrokken en vervangen, het gebruik ervan wordt onderzocht en de gecompromitteerde waarde wordt nooit hersteld.

VoorstelRegel#

Het ontwikkelteam gebruikt alleen de gekozen productversies, binnen hun ondersteuningstermijn. De leverancier bevestigt vóór de acceptatie van een opgeleverd onderdeel de ondersteuning van iedere combinatie van versies. Bijwerken hoort bij het lopende werk en verloopt per laag langs hetzelfde pad als een nieuwe versie.

VoorstelEis#

Een opgeleverd onderdeel van de eerste levering is pas af als het aan de definitie van gereed voldoet.

CriteriumWanneer voldaan
CodeAlle inrichting staat in versiebeheer, is beoordeeld volgens de werkafspraken en wordt opgehaald door de uitvoerende voorziening.
Automatische controleTests, beleidstoetsing en de controle op geheimen slagen; de compliancescan toont geen open afwijking met hoog risico, tenzij die is vastgelegd als goedgekeurde uitzondering met einddatum.
BeveiligingDe toepasselijke maatregelen van de baseline werken en het bewijs is vastgelegd, of er is een goedgekeurde uitzondering met einddatum.
Bewaking en loggingMeldingen komen bij platformbeheer; audit- en beveiligingslogboeken komen bij het SOC, dat de ontvangst heeft bevestigd.
HerstelDe back-up is ingericht en het herstel van het opgeleverde onderdeel is ten minste één keer uitgevoerd, met vastgelegde hersteltijd.
DocumentatieDe draaiboeken voor installatie, update, herstel en veelvoorkomende storingen en de ontwerpbesluiten zijn bijgewerkt.
OverdrachtDe primaire en plaatsvervangende beheerders van platformbeheer hebben de belangrijkste handelingen en draaiboeken onder begeleiding zelf uitgevoerd.
Toelichting

Herstelproeven voor de volledige dienst horen bij de acceptatieproeven.

Omgevingen, naamgeving en versiebeheer

VoorstelWaarde#

Tijdens de eerste levering wordt in vier omgevingen gewerkt, elk met eigen regels. Zodra een omgeving RWS-gegevens verwerkt of met RWS-netwerken is verbonden, gelden de normale beheer- en beveiligingsregels.

OmgevingDoel en inhoudRegels
LeeromgevingOefenen met de gekozen productversies, in een eigen rek van cel 1 met acht servers. Vlootbeheer, clusterbeheer en basisdienstencluster draaien er als compacte clusters op virtuele machines van de werkervirtualisatie van de leeromgeving. De leeromgeving bewijst werking en volgorde, geen prestaties.Geen RWS-gegevens en geen RWS-koppelingen; mag worden gewist.
Beheercel 1Fundament, eerste dienst en acceptatie.Volledige baseline; wijzigen alleen via wijzigingsvoorstellen.
Proefgroep binnen cel 1Een of meer applicatieclusters.Als beheercel 1; de uitrol komt hier vóór de eerste uitrolgolf.
HerstelomgevingControleren en terugzetten van kopieën; voor een herstelproef of incident uit code opgebouwd en na vastlegging van het bewijs verwijderd.Eigen aanmelding, geheimen en netwerk; capaciteit uit de reserve van de andere cel, in de eerste levering uit cel 1.
Toelichting

De samenstelling van de leeromgeving, met drie opslagknooppunten, drie werkerknooppunten, één besturingsknooppunt en een koude reserveserver, staat in het domein Beheercellen & samenhang.

VoorstelWaarde#

Namen volgen één vaste opbouw, zodat de automatisering, de bewaking en het SOC dezelfde objecten herkennen. Adresreeksen, domeinnamen en namen van apparatuur worden eerst vastgelegd in de datacenterregistratie.

ObjectOpbouwVoorbeeld
PlatformclusterCel, functie en volgnummer; voor het vlootbeheer alleen functie en volgnummerc1-bd-01 (basisdiensten), c1-cb-01 (clusterbeheer), c1-vw-01 (werkervirtualisatie), vl-01 (vlootbeheer)
OpslagclusterCel, functie en volgnummerc1-os-01
ApplicatieclusterTeam, omgeving, cel en volgnummeronderhoud-ont-c1-01
Gehost platformclusterFunctie, omgeving, cel en volgnummerbouw-prd-c1-01 (bouwcluster voor de pijplijnen), portaal-prd-c1-01 (portaal), mesh-prd-c1-01 (besturing van het dienstennetwerk, doelsituatie)
DatabaseToepassing, omgeving en volgnummerplanning-ont-01
ServerCel, rek, functie en volgnummerc1-r04-os-03
DomeinnaamFunctie onder het domein van het clusterapi.onderhoud-ont-c1-01.c1.dc3.internal
Dienstnaam van een bedrijfskritische dienstDienst onder het vlootdomein, zonder cel; de naam blijft gelijk bij overname door de andere cel, met een certificaat uit de tussen-CA ‘vloot’planning.dc3.internal
Toelichting

Netwerkbeheer legt vóór de eerste uitrol de domeinen en de regels voor unieke namen vast; de voorbeelden gebruiken het private domein dc3.internal.

VoorstelWaarde#

Het ontwikkelteam werkt met een beperkt aantal gescheiden opslagplaatsen, elk met een eigenaar en vaste beoordelaars. De hoofdtak van iedere opslagplaats is ook beschermd tegen de beheerders van het versiebeheer.

OpslagplaatsInhoudBeoordeling door
PlatformInrichting van het vlootbeheer, de cellen, het opslagcluster en de platformclusters.Ontwikkelteam en platformbeheer
BeleidBeveiligings- en compliancebeleid, toegestane varianten, de normen van de baseline en goedgekeurde uitzonderingen met eigenaar en einddatum.Architect en beveiligingsadviseur
CatalogusDienstsjablonen, standaardinrichting, pijplijnsjabloon, register van toegelaten software van derden en documentatie voor afnemers, gepubliceerd als genummerde versies.Productverantwoordelijke; voor het register van toegelaten software ook de beveiligingsadviseur
AfnemersDienstbeschrijvingen per team en per dienst.Applicatieteam en platformbeheer
DraaiboekenBeheer-, herstel- en incidentprocedures en ontwerpbesluiten.Platformbeheer
Toelichting

Dat de hoofdtak alleen beoordeelde en ondertekende wijzigingen aanneemt, volgt uit GitOps.

VoorstelOntwerpbesluit#

Een applicatieteam verwijst vanuit zijn eigen opslagplaats naar een genummerde versie van het pijplijnsjabloon en de standaardinrichting in de opslagplaats Catalogus. De koppeling loopt in één richting: de bouwpijplijn van het team haalt sjabloon en broncode op; het platform heeft geen toegang tot de opslagplaatsen van teams en de pijplijn van een team heeft geen ondertekensleutel.

Toelichting

Hoe software van teams wordt gebouwd, ondertekend en toegelaten, staat in het domein Softwarelevering & toelating.

Start en werkinstructies

VoorstelWerking#

Een nieuw ontwikkelteam start in een vaste volgorde, zodat het zo snel mogelijk productief is. De startperiode is afgerond wanneer het team in de leeromgeving een cluster volledig vanuit code kan opbouwen, herstellen en afbreken.

StapWat het team doet
  1. Kaders leren kennen
De kernbegrippen, de dienstverlening, de opbouw van het platform, het groeipad, de eerste levering, de werkinstructies, de beveiliging en de beproeving leren kennen, met de productversies, de technische invulling van de baseline en het ontwerp van opslag en netwerk; de ontwerpbesluiten bespreken met de architect.
  1. Toegang regelen
Screening, persoonlijke accounts, meerfactoraanmelding en de beheerwerkplek regelen voordat iemand iets installeert.
  1. Oefenen in de leeromgeving
Installatie, update, back-up en herstel oefenen tot die vanuit code herhaalbaar zijn.
  1. Versiebeheer inrichten
De opslagplaatsen aanmaken, met een beschermde hoofdtak, vaste beoordelaars en de automatische controles: eerst in het tijdelijke versiebeheer, na de oplevering van het basisdienstencluster in het versiebeheer van het platform. Ook installatie en herstel van dat versiebeheer oefenen in de leeromgeving.
  1. Nulmeting uitvoeren
De nulmeting uitvoeren, samen met de productverantwoordelijke.
  1. De bouw beginnen
Beginnen met de registratie van apparatuur, netwerken en adressen, en de firmwarebasislijn vaststellen.
Toelichting

De nulmeting legt vast hoe lang een vergelijkbare levering nu duurt; zie de opbrengst van de invoering. De firmwarebasislijn legt de firmwareversies en beveiligingsinstellingen van alle servers vast.

VoorstelRegel#

Iedere werkinstructie voor de bouw van het platform volgt dezelfde opbouw, zodat een nieuw teamlid snel ziet wat nodig is en wanneer iets af is.

OnderdeelInhoud
DoelWat het onderdeel oplevert, waarom het op deze plaats in de volgorde staat en de bedoeling van de belangrijkste ontwerpkeuzes, elk met het afgevallen eenvoudiger alternatief.
VoorwaardenWat vooraf klaar moet zijn, zoals voorgaande onderdelen, adressen en toegang.
StappenDe handelingen in volgorde, iedere stap met een vastgelegd resultaat in versiebeheer of in de registratie.
ParametersDe ontwerpwaarden die het team toepast.
WerkwijzeEen terugkerende of geautomatiseerde bewerking in tabelvorm; de werkwijze beschrijft de handelingen, en het team automatiseert haar zelf.
Controle en bewijsWat wordt gecontroleerd, hoe, en welk bewijs bij de oplevering hoort; ‘Gereed wanneer’ vat het resultaat samen.
TerugvaloptieHoe een mislukte stap veilig wordt teruggedraaid of hersteld.
VoorstelRegel#

Een werkwijze beschrijft een terugkerende bewerking in een vaste indeling. Een naam tussen punthaken, zoals <cel>, staat voor een waarde uit de dienstbeschrijving of uit de datacenterregistratie.

OnderdeelBetekenis
VoorafDe voorwaarden voor de eerste stap en waar zij zijn vastgelegd; is een voorwaarde niet vervuld, dan begint de werkwijze niet.
StappenDe handelingen in volgorde; iedere stap noemt wie of wat haar uitvoert en levert een controleerbaar resultaat op.
Controle en vastleggingPer stap waaraan het slagen te zien is en welk bewijs wordt vastgelegd in versiebeheer, de registratie, het logboek of het geheimenbeheer.
AfwijkingBij een mislukte stap: terugdraaien of stoppen, wie een melding krijgt en waar de afwijking wordt bijgehouden.

Verwijzen hiernaar

Onderwerpen 3