Skip to content

Commit

Permalink
Release v1.5/levenscyclus (#270)
Browse files Browse the repository at this point in the history
Co-authored-by: Ruth Koole <[email protected]>
  • Loading branch information
ruthkoole and Ruth Koole authored Sep 24, 2024
1 parent a25bf2b commit f105186
Show file tree
Hide file tree
Showing 13 changed files with 112 additions and 68 deletions.
94 changes: 79 additions & 15 deletions docs/levenscyclus/index.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,96 @@
---
---
title: Levenscyclus
summary: Hulp per fase van de levenscyclus van algoritmes en AI, zoals probleemanalyse, ontwerpen, ontwikkelen, implementeren en ermee stoppen.
icon: material/reload
hide:
- toc
---
---

# Levenscyclus algoritmes en AI
Bij verantwoord gebruik van algoritmes en AI voldoe je tijdens elke fase van de levenscyclus aan de vereisten.
Van het ontwikkelen van een oplossing, tot het in gebruik nemen van die oplossing en er uiteindelijk weer mee stoppen.
De levenscyclus helpt je om te bepalen in welke fase jouw product zit en welke beslissingen hierbij horen.

Om algoritmes op een verantwoorde manier te gebruiken, zul je op de juiste momenten aandacht moeten hebben voor de juiste onderwerpen en risico's.
Van het ontwikkelen van een oplossing, tot het in gebruik nemen van die oplossing en er uiteindelijk weer mee stoppen.
Door al in een vroeg stadium aandacht besteden aan bijvoorbeeld een eventuele inbreuk op mensenrechten kan je hier gedurende het hele proces al rekening mee houden.

De levenscyclus helpt je om te bepalen wat je wanneer moet doen.


/// html | div[style='float: left; width: 50%;']

## Fases van de levenscyclus

1. [Probleemanalyse](probleemanalyse.md)
2. [Ontwerpen](ontwerp.md)
3. [Dataverkenning en datapreparatie](dataverkenning-en-datapreparatie.md)
4. [Ontwikkelen](ontwikkelen.md)
5. [Verficatie en validatie](verificatie-en-validatie.md)
6. [Implementeren](implementatie.md)
7. [Monitoring en beheer](monitoring-en-beheer.md)
8. [Uitfaseren](uitfaseren.md)
0. [Organisatieverantwoordelijkheden](organisatieverantwoordelijkheden.md)
1. [Probleemanalyse](probleemanalyse.md)
2. [Ontwerpen](ontwerp.md)
3. [Dataverkenning en datapreparatie](dataverkenning-en-datapreparatie.md)
4. [Ontwikkelen](ontwikkelen.md)
5. [Verficatie en validatie](verificatie-en-validatie.md)
6. [Implementeren](implementatie.md)
7. [Monitoring en beheer](monitoring-en-beheer.md)
8. [Uitfaseren](uitfaseren.md)

## Systeemniveau en organisatieniveau
De levenscyclus kent twee verschillende niveau's:

- **organisatieniveau**: Sommige vereisten zijn algemeen en vragen om een organisatiebrede aanpak. Dit gaat bijvoorbeeld om passende processen en risicomanagment in je organisatie. Of het creëeren van bewustzijn en kennis binnen je organisatie. In het ideale geval besteed je hier al aandacht aan voordat je begint met de ontwikkeling of het gebruik van algoritmes. Bij deze fase horen maatregelen die je niet voor ieder systeem opnieuw zal hoeven te bekijken.
- **systeemniveau**: Sommige vereisten voor verantwoorde inzet van algoritmes zul je bij ieder algoritme weer opnieuw aandacht moeten geven. Dat geldt bijvoorbeeld voor het beschermen van grondrechten.

///

/// html | div[style='float: right;width: 50%;']

```mermaid
flowchart TD
subgraph organisatieniveau [organisatieniveau &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp]
0(0. Organisatieverantwoordelijkheden) --> 1(1. Probleemanalyse);
subgraph systeemniveau [systeemniveau &nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp]
7(7. Monitoring en beheer) --> 1(1. Probleemanalyse);
1(1. Probleemanalyse) --> 2(2. Ontwerp);
2(2. Ontwerp) --> 3(3. Dataverkenning en datapreparatie);
3(3. Dataverkenning en datapreparatie) --> 4(4. Ontwikkelen);
4(4. Ontwikkelen) --> 5(5. Verficatie en validatie);
5(5. Verficatie en validatie) --> 6(6. Implementatie);
6(6. Implementatie) --> 7(7. Monitoring en beheer);
7(7. Monitoring en beheer) -.-> 8(8. Uitfaseren);
end
end
click 0 href "organisatieverantwoordelijkheden"
click 1 href "probleemanalyse"
click 2 href "ontwerp"
click 3 href "dataverkenning-en-datapreparatie"
click 4 href "ontwikkelen"
click 5 href "verificatie-en-validatie"
click 6 href "implementatie"
click 7 href "monitoring-en-beheer"
click 8 href "uitfaseren"
style 0 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 1 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 2 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 3 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 4 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 5 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 6 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 7 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style 8 color:#fff, fill:#1975d2, stroke:#1975d2, text-decoration:underline;
style organisatieniveau fill:transparant
```
///

/// html | div[style='clear: both;']
///

!!! tip "Tip"

In de praktijk herhaal je soms fases of ga je terug naar een eerdere fase. Mislukt bijvoorbeeld het valideren (fase 5), dan moet je terug naar de ontwerpfase (fase 2) omdat het product nog niet voldoet aan de wensen of vereisten.

## Andere levenscyclusmodellen
De 8 fasen van de levenscyclus zijn gebaseerd op 10 belangrijke levenscyclusmodellen voor het ontwikkelen van AI, zoals:

De 9 fasen van de levenscyclus zijn gebaseerd op 10 belangrijke levenscyclusmodellen voor het ontwikkelen van AI, zoals:

- CRISP-DM (cross-industry standard process for data mining)
- ASUM-DM (analytics solutions unified method)
Expand All @@ -37,8 +100,9 @@ De 8 fasen van de levenscyclus zijn gebaseerd op 10 belangrijke levenscyclusmode
- NIST (National Institute of Standards and Technology)
- ISO/IEC 22989

Deze 8 fasen passen zo goed mogelijk bij de manier van werken van overheden.
Deze 9 fasen passen zo goed mogelijk bij de manier van werken van overheden.
Het is geen verplicht model. Mogelijk past een ander levenscyclusmodel beter bij jouw organisatie.

## Help ons deze pagina te verbeteren

Deel je idee, suggestie of opmerking via [GitHub](https://github.com/MinBZK/Algoritmekader/edit/main/docs/levenscyclus/index.md) of mail ons via [[email protected]](mailto::[email protected]).
1 change: 1 addition & 0 deletions docs/levenscyclus/monitoren.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,4 @@ Het algoritme of AI-model wordt voortdurend gemonitord om ervoor te zorgen dat h

Het Algoritmekader is nog volop in ontwikkeling. Op deze plek willen we vooral aan de slag gaan op een open en transparante wijze. Het is dus niet definitief. Dat betekent dat er dingen opstaan die niet af zijn en soms zelfs fout. Mocht er iets niet kloppen, laat het ons weten via [GitHub](https://github.com/MinBZK/Algoritmekader).


20 changes: 20 additions & 0 deletions docs/levenscyclus/organisatieverantwoordelijkheden.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: Organisatieverantwoordelijkheden
---

Voordat je start met de ontwikkeling of het gebruik van een algoritme, zul je moeten zorgen dat je organisatie voldoende ingericht is om algoritmes te gebruiken of te ontwikkelen.
In deze fase beschrijven we de randvoorwaarden die je als organisatie moet hebben om aan de slag te gaan. Dit zijn aspecten die je in het ideale geval al regelt voordat je begint aan het gebruik van algoritmes.
Het zijn ook taken die je voortdurend aandacht zal moeten geven, maar die je niet voor ieder algorite opnieuw hoeft te organiseren.

## Vereisten

<!-- list_vereisten levenscyclus/organisatieverantwoordelijkheden -->

## Maatregelen

<!-- list_maatregelen levenscyclus/organisatieverantwoordelijkheden -->


!!! info "Disclaimer"

Het Algoritmekader is nog volop in ontwikkeling. Op deze plek willen we vooral aan de slag gaan op een open en transparante wijze. Het is dus niet definitief. Dat betekent dat er dingen opstaan die niet af zijn en soms zelfs fout. Mocht er iets niet kloppen, laat het ons weten via [GitHub](https://github.com/MinBZK/Algoritmekader).
4 changes: 1 addition & 3 deletions docs/maatregelen/benodigde_expertise_en_capaciteit.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,7 @@ toelichting: De capaciteit en deskundigheid bij de ontwikkeling, het inkopen en
vereiste:
- zorgvuldigheidsbeginsel
levenscyclus:
- probleemanalyse
- ontwerp
- ontwikkelen
- organisatieverantwoordelijkheden
onderwerp:
- governance
rollen:
Expand Down
7 changes: 1 addition & 6 deletions docs/maatregelen/informatiebeveiligingsincidenten.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,7 @@ vereiste:
- ontwerp_voor_nauwkeurigheid_robuustheid_en_cyberbeveiliging
- beveiliging_van_verwerking
levenscyclus:
- ontwerp
- dataverkenning-en-datapreparatie
- ontwikkelen
- verificatie-en-validatie
- implementatie
- monitoring-en-beheer
- organisatieverantwoordelijkheden
onderwerp:
- technische-robuustheid-en-veiligheid
- governance
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,7 @@ vereiste:
- verstrekking_van_informatie_op_verzoek

levenscyclus:
- ontwerp
- dataverkenning-en-datapreparatie
- ontwikkelen
- verificatie-en-validatie
- implementatie
- monitoring-en-beheer
- uitfaseren
- organisatieverantwoordelijkheden

onderwerp:
- governance
Expand Down
8 changes: 1 addition & 7 deletions docs/maatregelen/periodieke_evaluatie_kwaliteit.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,7 @@ vereiste:
- toegankelijkheidseisen_hoog_risico

levenscyclus:
- ontwerp
- dataverkenning-en-datapreparatie
- ontwikkelen
- verificatie-en-validatie
- implementatie
- monitoring-en-beheer
- uitfaseren
- organisatieverantwoordelijkheden
onderwerp:
- governance
rollen:
Expand Down
6 changes: 1 addition & 5 deletions docs/maatregelen/politiek-bestuurlijk_besluit.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,8 @@ vereiste:
- motiveringsbeginsel

levenscyclus:
- ontwerp
- ontwikkelen
- organisatieverantwoordelijkheden
- verificatie-en-validatie
- implementatie
- monitoring-en-beheer
- uitfaseren

onderwerp:
- governance
Expand Down
7 changes: 1 addition & 6 deletions docs/maatregelen/richt_gebruikersbeheer_in.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,7 @@ toelichting: Richt gebruikersbeheer in, waarmee bepaald wordt wie toegang heeft
vereiste:
- beveiliging_informatie_en_informatiesystemen
levenscyclus:
- ontwerp
- dataverkenning-en-datapreparatie
- dataverkenning-en-datapreparatie
- ontwikkelen
- implementatie
- monitoring-en-beheer
- organisatieverantwoordelijkheden
onderwerp:
- technische-robuustheid-en-veiligheid
- governance
Expand Down
5 changes: 1 addition & 4 deletions docs/maatregelen/richt_wachtwoordbeheer_in.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,7 @@ toelichting: Richt wachtwoordbeheer in, waarmee bepaald wordt hoe wachtwoorden w
vereiste:
- beveiliging_informatie_en_informatiesystemen
levenscyclus:
- ontwerp
- ontwikkelen
- implementatie
- monitoring-en-beheer
- organisatieverantwoordelijkheden
onderwerp:
- technische-robuustheid-en-veiligheid
- governance
Expand Down
9 changes: 1 addition & 8 deletions docs/maatregelen/toepassen_risicobeheer.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,14 +47,7 @@ vereiste:
- verstrekking_van_informatie_op_verzoek
- wettelijke_verwerking_van_gevoelige_gegevens
levenscyclus:
- probleemanalyse
- ontwerp
- dataverkenning-en-datapreparatie
- ontwikkelen
- verificatie-en-validatie
- implementatie
- monitoring-en-beheer
- uitfaseren
- organisatieverantwoordelijkheden
onderwerp:
- governance
rollen:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,7 @@ toelichting: Nadat de rollen en verantwoordelijkheden zijn beschreven, zullen de
vereiste:
- zorgvuldigheidsbeginsel
levenscyclus:
- probleemanalyse
- ontwerp
- dataverkenning-en-datapreparatie
- ontwikkelen
- implementatie
- monitoring-en-beheer
- verificatie-en-validatie
- organisatieverantwoordelijkheden
onderwerp:
- governance
- privacy-en-gegevensbescherming
Expand Down
3 changes: 3 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ nav:
- governance/type_algoritme.md
- Levenscyclus:
- levenscyclus/index.md
- levenscyclus/organisatieverantwoordelijkheden.md
- levenscyclus/probleemanalyse.md
- levenscyclus/ontwerp.md
- levenscyclus/dataverkenning-en-datapreparatie.md
Expand Down Expand Up @@ -92,6 +93,7 @@ markdown_extensions:
- pymdownx.snippets:
auto_append:
- includes/begrippenlijst.md
- pymdownx.blocks.html

# Extra opties voor footer
extra:
Expand All @@ -111,6 +113,7 @@ extra_javascript:
- https://unpkg.com/[email protected]/dist/tablesort.min.js
- javascripts/tablesort.js
- javascripts/filtering.js
- https://unpkg.com/[email protected]/dist/mermaid.min.js

plugins:
- glightbox
Expand Down

0 comments on commit f105186

Please sign in to comment.