Skip to content

Commit

Permalink
Lets talk components
Browse files Browse the repository at this point in the history
  • Loading branch information
rubenvdlinde committed Aug 5, 2024
1 parent d713f0a commit 95452d2
Show file tree
Hide file tree
Showing 4 changed files with 68 additions and 9 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/Architectuur.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Feature request
name: Architectuur vraag
description: Request a feature
title: "[feature]: As a user I want ....."
labels: [feature-request]
Expand Down
31 changes: 29 additions & 2 deletions docs/Componenten.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
# Title
# Componenten

Dit is een test voor automatische PDF generatie
## Basis Componenten
In de kern bestaad Open Catalogi uit een viertal basis componenten

- Een publicatie platform waarin de burger kan zoeken
- Een beheer interface waarin medewerkers publicaties en configuratie kunnen beheren
- Een beheer API die de beheer interfae faciliteerd
- Een zoeken API de het publicaite platform faciliteerd

De bijde API's maken daarbij gebruik van data opslag, in de meest simpele form is dat
- Objecten opslag voor publicaites, metadata over documenten, thema's, catalogi etc
- Zoek Index voor het lezen van zoeken functionaliteit

Vanuit de architectuur doen we geen uitspraken over de dataopslag behalve dat er een harde scheiding moet zijn tussen het opslag van behandel gegevens (Objecten opslag) waar ook niet publieke informatie in kan voorkomen en de zoek gegevens (Zoek index) waar alleen publieke informatie mag voorkomen.

![Basis Componenten](handleidingen/components_commonground.svg)

## Data Opslag
Hoewel erg geen archtiecturele eis is met betrekking tot hoe documenten en objecten worden opgeslagen kiesen we er zelf bij de uitvoering voor om documenten (bestanden) en gegevens over documenten de scheiden. Voornaamste overweging hierachter is dat je documenten een spel appart zijn dat je graag in een [DMS](https://en.wikipedia.org/wiki/Document_management_system) speelt.

Daarmee word de structuur zo als we die doorgaans zien

![Basis Componenten](handleidingen/components_commonground_dms.svg)

## Alternatieve naamgeving van componenten

Binnen verschillende projecten worden andere namen gebruikt voor wat defacto dezelfde componenten zijn

-
12 changes: 6 additions & 6 deletions docs/handleidingen/components_commonground.puml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@startuml
title: Open Catalogi
footer: Open Catalogi | Components
header: Matrix
header: Componenten Matrix


package "Layer 5 (interactie)" {
Expand All @@ -11,20 +11,20 @@ package "Layer 5 (interactie)" {


package "Layer 2 (api)" {
[Gebruikers API] as objectsAPI
[Beheer API] as beheerAPI
[Zoeken API] as searchAPI
}

package "Layer 1 (data)" {
database "Search index" as elastic
database "Zoek index" as elastic
database "Objecten opslag" as ORC
}

adminUI .down.> objectsAPI: Opslaan
adminUI .down.> beheerAPI: Opslaan
userUi <.down. searchAPI: Opzoeken
objectsAPI .down.> ORC: Opslaan
beheerAPI .down.> ORC: Opslaan
searchAPI <.down. elastic: Zoeken
ORC .left.> elastic: Updaten
ORC .right.> elastic: Updaten


@enduml
32 changes: 32 additions & 0 deletions docs/handleidingen/components_commonground_dms.puml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
@startuml
title: Open Catalogi
footer: Open Catalogi | Components
header: Componenten Matrix


package "Layer 5 (interactie)" {
[Beheer Interface] as adminUI
[Publicatie platform] as userUi
}


package "Layer 2 (api)" {
[Beheer API] as beheerAPI
[Zoeken API] as searchAPI
}

package "Layer 1 (data)" {
database "Zoek index" as elastic
database "Objecten opslag" as ORC
database "Documenten opslag" as DMS
}

adminUI .down.> beheerAPI: Opslaan
userUi <.down. searchAPI: Opzoeken
beheerAPI .down.> ORC: Opslaan
beheerAPI .down.> DMS: Opslaan
searchAPI <.down. elastic: Zoeken
ORC .right.> elastic: Updaten


@enduml

0 comments on commit 95452d2

Please sign in to comment.