From 9f69d1d896b45e477525ae6bebc3156b15ec2706 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Sun, 9 Feb 2025 11:27:43 +0100 Subject: [PATCH 01/25] HW3-8 html2md Tabelle --- pflichtenheft.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 0f114b0..f8b104c 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -71,8 +71,9 @@ *Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch.* -| **300 aktuellen Nutzern**
Das System muss mindestens 300 aktuelle Benutzer unterstützen, die das System administrieren, bearbeiten und nutzen können. Nicht jeder Benutzer benötigt ein eigenes Profil. | HW-1 | +|Anforderung|ID| | --- | --- | +| **300 aktuellen Nutzern**
Das System muss mindestens 300 aktuelle Benutzer unterstützen, die das System administrieren, bearbeiten und nutzen können. Nicht jeder Benutzer benötigt ein eigenes Profil. | HW-1 | | **ca. 50 Zugriffe / Tag**
Das System muss in der Lage sein, ca. 50 aktive Benutzer pro Tag (tendenziell steigend) zu unterstützen, ohne dass die Systemleistung beeinträchtigt wird. Die Systemressourcen sollten ausreichend dimensioniert sein, um eine reibungslose und effiziente Nutzung durch die Benutzer zu gewährleisten. | HW-2 | | **Einfach skalierbar**
Das System muss einfach skaliert werden können, um aufsteigende Anforderungen und Benutzerzahlen reagieren zu können. Dies sollte ohne wesentliche Änderungen an der Systemarchitektur oder -Infrastruktur möglich sein, um eine flexible und kosteneffiziente Anpassung an zukünftige Bedürfnisse zu ermöglichen. | HW-3 | @@ -80,7 +81,13 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. -

Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.

HW-4

Hochverfügbar: 99.5%

Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.

HW-5

Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.

Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung

HW-6

.Net Runtime muss unterstützt werden
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.

HW-7

Sicherheit und administrativer Zugriff:

Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken

erreicht werden.

HW-8

+|Anforderung|ID| +| --- | --- | +| **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | +| **Hochverfügbar: 99.5%**
Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf. | HW-5 | +| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

| HW-6 | +| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.| HW-7 | +| **Sicherheit und administrativer Zugriff:**
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From b5ee3711fb51178ce33d14567e306dec0e47aa37 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:28:32 +0100 Subject: [PATCH 02/25] HW-5, HW-6, HW-8 --- pflichtenheft.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index f8b104c..9427145 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -84,10 +84,10 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. |Anforderung|ID| | --- | --- | | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | -| **Hochverfügbar: 99.5%**
Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf. | HW-5 | -| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

| HW-6 | -| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.| HW-7 | -| **Sicherheit und administrativer Zugriff:**
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

erreicht werden. | HW-8 | +| **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | +| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank wird auf beiden Servern repliziert vorhanden sein. Ob das ein warm-standby, hot-standby, oder gar eine Multi-Master Replizierung wird, muss noch entschieden werden. Im Falle eines Ausfalls einer der beiden DBs, soll die andere automatisch zum neuen Master "promoted" werden, wodurch die Anwendung ohne einen groß Merkbaren ausfall direkt weiter ausgeführt werden kann.
Außerdem soll regelmäßig ein Backup von der gesamten Datenbank gemacht werden, welches auf einem unabhängigen File Server/Provider gelagert wird, um im Falle eines Datenverlustes die DB wiederher zu stellen. *
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

* | HW-6 | +| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-7 | +| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From 1300d573607d06204564636e089f151f4f326f13 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:30:28 +0100 Subject: [PATCH 03/25] HW-12 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 9427145..b284e9a 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -98,7 +98,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. ## Anforderungen an das Backup, Recovery und Desaster-Recovery -| **Automatisierte Datensicherung**

Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. (Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten) | HW-12 | +| **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | | --- | --- | | **Wiederherstellungszeitraum**

Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | | **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-14 | -- 2.45.1 From 04a7f63621eef193e426bfe0f0d5c1ed35a5340b Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:30:47 +0100 Subject: [PATCH 04/25] HW-13 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index b284e9a..1682019 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -100,7 +100,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | | --- | --- | -| **Wiederherstellungszeitraum**

Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | +| **Wiederherstellungszeitraum**

<>Das gehört mMn. nach oben zu allgemeine Anforderungen und ausgetauscht mit HW-5<> Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | | **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-14 | ## Anforderungen an Redundanz und Verfügbarkeit -- 2.45.1 From a0065e0ca70f12c7ac7f60e792f3d399ea547855 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:05 +0100 Subject: [PATCH 05/25] RED-4 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 1682019..758cb55 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -116,7 +116,7 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth ### Verfügbarkeitsanforderungen -| **99% / Jahr (87.6h)**

Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | +| **99% / Jahr (87.6h)**
Durch eine schnelle Wiederherstellungszeit und klar vorgegebene Disaster Recovery Dokumentation und resilienz in der Architektur des Systems, sowie ein Monitoring und Logging zur frühen Erkennung etwaiger Probleme werden die 99% / Jahr eingehalten werden.
Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | | --- | --- | | **Wiederherstellungszeit: the next business day**

Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | | | | -- 2.45.1 From 2ef84e5aafe6b68ac00875d319608a7a2dcf0394 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:15 +0100 Subject: [PATCH 06/25] RED-5 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 758cb55..c1ccdfa 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -118,7 +118,7 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth | **99% / Jahr (87.6h)**
Durch eine schnelle Wiederherstellungszeit und klar vorgegebene Disaster Recovery Dokumentation und resilienz in der Architektur des Systems, sowie ein Monitoring und Logging zur frühen Erkennung etwaiger Probleme werden die 99% / Jahr eingehalten werden.
Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | | --- | --- | -| **Wiederherstellungszeit: the next business day**

Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | +| **Wiederherstellungszeit: the next business day**
Durch weitgehende automatisierte Skripte soll der Wiederherstellungsprozess vereinfacht werden. Ein Desaster-Recovery Handbuch liegt bei, um den Benutzer schritt für Schritt durch den Wiederherstellungsprozess zu begleiten.
Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | | | | ## Schnittstellen -- 2.45.1 From 0afc7b06e68e8497172b324ee7e3a277f9e03fbc Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:41 +0100 Subject: [PATCH 07/25] ScB-1 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index c1ccdfa..87d3b83 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -341,7 +341,7 @@ Mehr Prosa (Unterscheidung Phase 1 & 2) ## Schwarzes Brett (Phase 2) -| **Feed**

Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | +| **Feed**
Es muss ein Interface / eine Schnittstelle für alle Elemente, welche am Schwarzen Brett auftauchen geschaffen werden. Dann muss eine API Route für das Abrufen der einzelnen Einträge geschaffen werden. Die gesammte Entwicklung wird in einem Oqtane Modul geschehen. Der Feed priorisiert die Posts vom Absolventenverein und muss die Sichtbarkeitsstufe des Posts berücksichtigen.
Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | | --- | --- | | **Posten**

Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | | **Werbung**

Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | -- 2.45.1 From 3a5b3af51341d95fd37d2e04cbef83a291d80473 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:51 +0100 Subject: [PATCH 08/25] ScB-2-4 --- pflichtenheft.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 87d3b83..08c888c 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -343,9 +343,9 @@ Mehr Prosa (Unterscheidung Phase 1 & 2) | **Feed**
Es muss ein Interface / eine Schnittstelle für alle Elemente, welche am Schwarzen Brett auftauchen geschaffen werden. Dann muss eine API Route für das Abrufen der einzelnen Einträge geschaffen werden. Die gesammte Entwicklung wird in einem Oqtane Modul geschehen. Der Feed priorisiert die Posts vom Absolventenverein und muss die Sichtbarkeitsstufe des Posts berücksichtigen.
Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | | --- | --- | -| **Posten**

Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | -| **Werbung**

Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | -| **Meldungsvorgang**

Man kann unangemessene Inhalte melden, diese Meldungen werden dann von Hand durchgeschaut, ob diese den Regeln widersprechen, und kann dem Benutzer über eine Rollenänderung das Privileg des Postens / Interagieren mit anderen Nutzern auf der Seite entfernt werden. | ScB-4 | +| **Posten**
Es wird eine neue API Route in dem Modul implementiert, die es ermöglicht eigene Einträge auf dem schwarzen Brett zu posten. Hierfür braucht man nichts wirklich ausgefallenes.
Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | +| **Werbung**
Um Werbung auf dem schwarzen Brett anbieten zu können, muss mitgezählt werden, welche Posts geladen / gesehen worden sind. Es wird auch eine "Abrechnungsseite" geben, auf der die Kosten Vorgerechnet werden. Um die Abrechnung muss sich der Absolventen Verein selber kümmern.
Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | +| **Meldungsvorgang**
Es werden neue Knöpfe bei den Posts hinzugefügt, mit denen man einen Post melden kann. Optional mit Angabe eines Grundes. Dieser Post wird sofort offline genommen und dann zur Durchsicht von Seiten des Absolventenvereins markiert. Je nach dem, was der AV dann Beschließt, wird dem Benutzer dann das Recht auf Posten entzogen.
Man kann unangemessene Inhalte melden, diese Meldungen werden dann von Hand durchgeschaut, ob diese den Regeln widersprechen, und kann dem Benutzer über eine Rollenänderung das Privileg des Postens / Interagieren mit anderen Nutzern auf der Seite entfernt werden. | ScB-4 | ## Anmeldetool für Treffen -- 2.45.1 From 2e647d753d9263529e5766fc3abb444c38c79b3d Mon Sep 17 00:00:00 2001 From: KoCoder Date: Sun, 9 Feb 2025 11:27:43 +0100 Subject: [PATCH 09/25] HW3-8 html2md Tabelle --- pflichtenheft.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 069462c..541e851 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -71,8 +71,9 @@ *Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch.* -| **300 aktuellen Nutzern**
Das System muss mindestens 300 aktuelle Benutzer unterstützen, die das System administrieren, bearbeiten und nutzen können. Nicht jeder Benutzer benötigt ein eigenes Profil. | HW-1 | +|Anforderung|ID| | --- | --- | +| **300 aktuellen Nutzern**
Das System muss mindestens 300 aktuelle Benutzer unterstützen, die das System administrieren, bearbeiten und nutzen können. Nicht jeder Benutzer benötigt ein eigenes Profil. | HW-1 | | **ca. 50 Zugriffe / Tag**
Das System muss in der Lage sein, ca. 50 aktive Benutzer pro Tag (tendenziell steigend) zu unterstützen, ohne dass die Systemleistung beeinträchtigt wird. Die Systemressourcen sollten ausreichend dimensioniert sein, um eine reibungslose und effiziente Nutzung durch die Benutzer zu gewährleisten. | HW-2 | | **Einfach skalierbar**
Das System muss einfach skaliert werden können, um aufsteigende Anforderungen und Benutzerzahlen reagieren zu können. Dies sollte ohne wesentliche Änderungen an der Systemarchitektur oder -Infrastruktur möglich sein, um eine flexible und kosteneffiziente Anpassung an zukünftige Bedürfnisse zu ermöglichen. | HW-3 | @@ -80,7 +81,13 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. -

Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.

HW-4

Hochverfügbar: 99.5%

Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.

HW-5

Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.

Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung

HW-6

.Net Runtime muss unterstützt werden
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.

HW-7

Sicherheit und administrativer Zugriff:

Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken

erreicht werden.

HW-8

+|Anforderung|ID| +| --- | --- | +| **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | +| **Hochverfügbar: 99.5%**
Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf. | HW-5 | +| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung
| HW-6 | +| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.| HW-7 | +| **Sicherheit und administrativer Zugriff:**
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From fc660d86e30b2a7d0fdd40e84acf2e63017b0cd4 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:28:32 +0100 Subject: [PATCH 10/25] HW-5, HW-6, HW-8 --- pflichtenheft.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 541e851..13614e0 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -84,10 +84,10 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. |Anforderung|ID| | --- | --- | | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | -| **Hochverfügbar: 99.5%**
Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf. | HW-5 | -| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung
| HW-6 | -| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen.| HW-7 | -| **Sicherheit und administrativer Zugriff:**
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | +| **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | +| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank wird auf beiden Servern repliziert vorhanden sein. Ob das ein warm-standby, hot-standby, oder gar eine Multi-Master Replizierung wird, muss noch entschieden werden. Im Falle eines Ausfalls einer der beiden DBs, soll die andere automatisch zum neuen Master "promoted" werden, wodurch die Anwendung ohne einen groß Merkbaren ausfall direkt weiter ausgeführt werden kann.
Außerdem soll regelmäßig ein Backup von der gesamten Datenbank gemacht werden, welches auf einem unabhängigen File Server/Provider gelagert wird, um im Falle eines Datenverlustes die DB wiederher zu stellen. *
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung
* | HW-6 | +| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-7 | +| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From f8679af95ac7be76952dd280e78012ac7b870ff6 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:30:28 +0100 Subject: [PATCH 11/25] HW-12 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 13614e0..7c956eb 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -98,7 +98,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. ## Anforderungen an das Backup, Recovery und Desaster-Recovery -| **Automatisierte Datensicherung**

Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. (Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten) | HW-12 | +| **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | | --- | --- | | **Wiederherstellungszeitraum**

Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | | **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-14 | -- 2.45.1 From bf2e0a1aa2c054d4e6e65fd7ea67bce3fd3aeb4a Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:30:47 +0100 Subject: [PATCH 12/25] HW-13 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 7c956eb..28d8aa7 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -100,7 +100,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | | --- | --- | -| **Wiederherstellungszeitraum**

Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | +| **Wiederherstellungszeitraum**

<>Das gehört mMn. nach oben zu allgemeine Anforderungen und ausgetauscht mit HW-5<> Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | | **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-14 | ## Anforderungen an Redundanz und Verfügbarkeit -- 2.45.1 From c01a49da7db1d2d17f4364ee4685c3fc8f4f5743 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:05 +0100 Subject: [PATCH 13/25] RED-4 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 28d8aa7..deda699 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -116,7 +116,7 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth ### Verfügbarkeitsanforderungen -| **99% / Jahr (87.6h)**

Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | +| **99% / Jahr (87.6h)**
Durch eine schnelle Wiederherstellungszeit und klar vorgegebene Disaster Recovery Dokumentation und resilienz in der Architektur des Systems, sowie ein Monitoring und Logging zur frühen Erkennung etwaiger Probleme werden die 99% / Jahr eingehalten werden.
Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | | --- | --- | | **Wiederherstellungszeit: the next business day**

Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | | | | -- 2.45.1 From 8a6984a04e957237409d09e7ab08b1d2e13182d2 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:15 +0100 Subject: [PATCH 14/25] RED-5 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index deda699..a8e91bd 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -118,7 +118,7 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth | **99% / Jahr (87.6h)**
Durch eine schnelle Wiederherstellungszeit und klar vorgegebene Disaster Recovery Dokumentation und resilienz in der Architektur des Systems, sowie ein Monitoring und Logging zur frühen Erkennung etwaiger Probleme werden die 99% / Jahr eingehalten werden.
Das System soll weniger als 90 Stunden im Jahr ausfallen. | RED-4 | | --- | --- | -| **Wiederherstellungszeit: the next business day**

Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | +| **Wiederherstellungszeit: the next business day**
Durch weitgehende automatisierte Skripte soll der Wiederherstellungsprozess vereinfacht werden. Ein Desaster-Recovery Handbuch liegt bei, um den Benutzer schritt für Schritt durch den Wiederherstellungsprozess zu begleiten.
Das System soll bis zum übernächsten Werktag wieder in einen Nutzbaren zustand bringbar sein. | RED-5 | | | | ## Schnittstellen -- 2.45.1 From 4acf19848b16d4e623f3d9892086b9edf4a9d694 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:41 +0100 Subject: [PATCH 15/25] ScB-1 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index a8e91bd..eaa19ec 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -349,7 +349,7 @@ Mehr Prosa (Unterscheidung Phase 1 & 2) ## Schwarzes Brett (Phase 2) -| **Feed**

Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | +| **Feed**
Es muss ein Interface / eine Schnittstelle für alle Elemente, welche am Schwarzen Brett auftauchen geschaffen werden. Dann muss eine API Route für das Abrufen der einzelnen Einträge geschaffen werden. Die gesammte Entwicklung wird in einem Oqtane Modul geschehen. Der Feed priorisiert die Posts vom Absolventenverein und muss die Sichtbarkeitsstufe des Posts berücksichtigen.
Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | | --- | --- | | **Posten**

Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | | **Werbung**

Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | -- 2.45.1 From 1e3c710d70cecb84fc90857907812ff8e9df33be Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 10 Feb 2025 08:31:51 +0100 Subject: [PATCH 16/25] ScB-2-4 --- pflichtenheft.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index eaa19ec..6d101e4 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -351,9 +351,9 @@ Mehr Prosa (Unterscheidung Phase 1 & 2) | **Feed**
Es muss ein Interface / eine Schnittstelle für alle Elemente, welche am Schwarzen Brett auftauchen geschaffen werden. Dann muss eine API Route für das Abrufen der einzelnen Einträge geschaffen werden. Die gesammte Entwicklung wird in einem Oqtane Modul geschehen. Der Feed priorisiert die Posts vom Absolventenverein und muss die Sichtbarkeitsstufe des Posts berücksichtigen.
Eine Seite auf den Mitteilungen und Ankündigungen gemacht werden. Hier kann man Events anzeigen lassen, Posts anderer Mitglieder usw. | ScB-1 | | --- | --- | -| **Posten**

Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | -| **Werbung**

Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | -| **Meldungsvorgang**

Man kann unangemessene Inhalte melden, diese Meldungen werden dann von Hand durchgeschaut, ob diese den Regeln widersprechen, und kann dem Benutzer über eine Rollenänderung das Privileg des Postens / Interagieren mit anderen Nutzern auf der Seite entfernt werden. | ScB-4 | +| **Posten**
Es wird eine neue API Route in dem Modul implementiert, die es ermöglicht eigene Einträge auf dem schwarzen Brett zu posten. Hierfür braucht man nichts wirklich ausgefallenes.
Jeder darf posten, solange ihm in der Vergangenheit dieses Privileg nicht weggenommen wurde. Diese Posts werden dann in dem Feed angezeigt. Ein Post kann eine Sichbarkeitsstufe haben (standardmäßig: öffentlich = jeder angemeldete Benutzer) | ScB-2 | +| **Werbung**
Um Werbung auf dem schwarzen Brett anbieten zu können, muss mitgezählt werden, welche Posts geladen / gesehen worden sind. Es wird auch eine "Abrechnungsseite" geben, auf der die Kosten Vorgerechnet werden. Um die Abrechnung muss sich der Absolventen Verein selber kümmern.
Firmen können Job Inserate schalten, Diplomarbeitskooperationen anbieten usw. Wir stellen die Schnittstelle für diese Firmen bereit, aber um die Abrechnung muss sich gesondert jemand anderer kümmern | ScB-3 | +| **Meldungsvorgang**
Es werden neue Knöpfe bei den Posts hinzugefügt, mit denen man einen Post melden kann. Optional mit Angabe eines Grundes. Dieser Post wird sofort offline genommen und dann zur Durchsicht von Seiten des Absolventenvereins markiert. Je nach dem, was der AV dann Beschließt, wird dem Benutzer dann das Recht auf Posten entzogen.
Man kann unangemessene Inhalte melden, diese Meldungen werden dann von Hand durchgeschaut, ob diese den Regeln widersprechen, und kann dem Benutzer über eine Rollenänderung das Privileg des Postens / Interagieren mit anderen Nutzern auf der Seite entfernt werden. | ScB-4 | ## Anmeldetool für Treffen -- 2.45.1 From 0778c31432c1b04230e8b9e4c88fce1a94ce6ce2 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:30:07 +0100 Subject: [PATCH 17/25] HW-6 -> SW-4: Verschieben --- pflichtenheft.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 6d101e4..60e60e7 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -140,13 +140,12 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth ## Allgemeine Anforderungen +|Anforderung|ID| +|---|---| | Die Website oder Webanwendung wird so entwickelt, dass sie in den aktuellen und vorherigen Versionen der gängigsten Webbrowser einwandfrei funktioniert:

Google Chrome (Desktop und Mobile)
Mozilla Firefox (Desktop und Mobile)
Safari (macOS und iOS)
Microsoft Edge (Chromium-basiert)

1. Programmiersprachen und Standards:
-Die Entwicklung erfolgt auf Basis moderner Technologien wie HTML5, CSS3 für eine plattformübergreifende Funktionalität.

2. Frameworks und Bibliotheken:
-Frameworks wie React, Angular oder Vue.js (für die Frontend-Entwicklung) sowie CSS-Frameworks wie Bootstrap oder TailwindCSS können zum Einsatz kommen.

3. Build-Tools:
-Tools wie Webpack, Vite oder Parcel werden zur Optimierung der Assets (z. B. Minifizierung und Bundling von Dateien) verwendet,um die Performance auf verschiedenen Browsern zu gewährleisten.

| SW-1 | - - - | Barrierefreiheit (WAI-ARIA-Standard) ...

1. Verwendung von ARIA-Attributen:
-Semantik und Bedienbarkeit durch role, aria-label, aria-expanded, aria-live etc. verbessern.
-Dynamische Inhalte und interaktive Elemente mit Attributen wie aria-controls oder aria-describedby ausstatten.

2. Technologien und Tools:
-Unterstützung durch Frameworks (z. B. React, Angular) und CSS-Frameworks (z. B. Bootstrap).
-Einsatz von Tools wie Axe, Lighthouse oder eslint-plugin-jsx-a11y zur Validierung.

3. Tastaturbedienbarkeit und Kontraste:
-Sicherstellen, dass alle Inhalte per Tastatur erreichbar sind.
-Einhalten der Kontrastvorgaben gemäß WCAG 2.1 Stufe AA.

| SW-2 | - | **CMS**:
Das System soll einen redaktionellen Schülerzugagng bieten, damit die Diplomarbeiten von Schülern selbst eingepflegt werden können. | SW-3 | +| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | SW-4 | ## Zugriffsverwaltung -- 2.45.1 From 4c147f6335a69daf55f2b72f11f859de43c4da0b Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:32:30 +0100 Subject: [PATCH 18/25] Revert "HW-6 -> SW-4: Verschieben" This reverts commit 0778c31432c1b04230e8b9e4c88fce1a94ce6ce2. --- pflichtenheft.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 60e60e7..6d101e4 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -140,12 +140,13 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth ## Allgemeine Anforderungen -|Anforderung|ID| -|---|---| | Die Website oder Webanwendung wird so entwickelt, dass sie in den aktuellen und vorherigen Versionen der gängigsten Webbrowser einwandfrei funktioniert:

Google Chrome (Desktop und Mobile)
Mozilla Firefox (Desktop und Mobile)
Safari (macOS und iOS)
Microsoft Edge (Chromium-basiert)

1. Programmiersprachen und Standards:
-Die Entwicklung erfolgt auf Basis moderner Technologien wie HTML5, CSS3 für eine plattformübergreifende Funktionalität.

2. Frameworks und Bibliotheken:
-Frameworks wie React, Angular oder Vue.js (für die Frontend-Entwicklung) sowie CSS-Frameworks wie Bootstrap oder TailwindCSS können zum Einsatz kommen.

3. Build-Tools:
-Tools wie Webpack, Vite oder Parcel werden zur Optimierung der Assets (z. B. Minifizierung und Bundling von Dateien) verwendet,um die Performance auf verschiedenen Browsern zu gewährleisten.

| SW-1 | + + + | Barrierefreiheit (WAI-ARIA-Standard) ...

1. Verwendung von ARIA-Attributen:
-Semantik und Bedienbarkeit durch role, aria-label, aria-expanded, aria-live etc. verbessern.
-Dynamische Inhalte und interaktive Elemente mit Attributen wie aria-controls oder aria-describedby ausstatten.

2. Technologien und Tools:
-Unterstützung durch Frameworks (z. B. React, Angular) und CSS-Frameworks (z. B. Bootstrap).
-Einsatz von Tools wie Axe, Lighthouse oder eslint-plugin-jsx-a11y zur Validierung.

3. Tastaturbedienbarkeit und Kontraste:
-Sicherstellen, dass alle Inhalte per Tastatur erreichbar sind.
-Einhalten der Kontrastvorgaben gemäß WCAG 2.1 Stufe AA.

| SW-2 | + | **CMS**:
Das System soll einen redaktionellen Schülerzugagng bieten, damit die Diplomarbeiten von Schülern selbst eingepflegt werden können. | SW-3 | -| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | SW-4 | ## Zugriffsverwaltung -- 2.45.1 From 98b2d5617bc9851e3448ae27e1c02a94ce5a17e1 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:33:41 +0100 Subject: [PATCH 19/25] HW-6 -> RED-1: DB-Replikation verschoben --- pflichtenheft.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 6d101e4..315d2c3 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -85,7 +85,6 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | --- | --- | | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | | **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | -| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank wird auf beiden Servern repliziert vorhanden sein. Ob das ein warm-standby, hot-standby, oder gar eine Multi-Master Replizierung wird, muss noch entschieden werden. Im Falle eines Ausfalls einer der beiden DBs, soll die andere automatisch zum neuen Master "promoted" werden, wodurch die Anwendung ohne einen groß Merkbaren ausfall direkt weiter ausgeführt werden kann.
Außerdem soll regelmäßig ein Backup von der gesamten Datenbank gemacht werden, welches auf einem unabhängigen File Server/Provider gelagert wird, um im Falle eines Datenverlustes die DB wiederher zu stellen. *
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung
* | HW-6 | | **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-7 | | **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | @@ -109,10 +108,9 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth -| | RED-1 | +| Anforderung | ID | | --- | --- | -| | RED-2 | -| | RED-3 | +| **Datenbank und Anwendung muss redundant und gegen Ausfall eines Servers gesichert sein.**
Die Datenbank wird auf beiden Servern repliziert vorhanden sein. Ob das ein warm-standby, hot-standby, oder gar eine Multi-Master Replizierung wird, muss noch entschieden werden. Im Falle eines Ausfalls einer der beiden DBs, soll die andere automatisch zum neuen Master "promoted" werden, wodurch die Anwendung ohne einen groß Merkbaren ausfall direkt weiter ausgeführt werden kann.
Außerdem soll regelmäßig ein Backup von der gesamten Datenbank gemacht werden, welches auf einem unabhängigen File Server/Provider gelagert wird, um im Falle eines Datenverlustes die DB wiederher zu stellen. *
Die Datenbank und die Anwendung müssen redundant und gegen Ausfälle gesichert sein, um Datenverluste und Systemausfälle zu vermeiden. Dies umfasst die Implementierung von:

  • Datenbankreplikation
  • Regelmäßige Backups und Datenwiederherstellung
* | RED-1 | ### Verfügbarkeitsanforderungen -- 2.45.1 From bfd2defff49ba56caecd3c13ff76b46c05aaf3c4 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:35:18 +0100 Subject: [PATCH 20/25] HW-7 -> HW-6 --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 315d2c3..721ed9c 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -85,7 +85,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | --- | --- | | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | | **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | -| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-7 | +| **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-6 | | **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From 7b581d0f599cba3d220ff0bf29e84fb5f5955e99 Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:36:38 +0100 Subject: [PATCH 21/25] HW-8 -> SW-4: Sicherheit und Adminzugriff verschoben --- pflichtenheft.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 721ed9c..138ad11 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -86,7 +86,6 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | | **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | | **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-6 | -| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | HW-8 | ## Anforderungen an den Bedienrechner / das mobile Endgerät @@ -138,13 +137,12 @@ Redundanzeigenschaften Bespr. Mit Hr. Prof. Gürth ## Allgemeine Anforderungen +| Anforderung | ID | +| --- | --- | | Die Website oder Webanwendung wird so entwickelt, dass sie in den aktuellen und vorherigen Versionen der gängigsten Webbrowser einwandfrei funktioniert:

Google Chrome (Desktop und Mobile)
Mozilla Firefox (Desktop und Mobile)
Safari (macOS und iOS)
Microsoft Edge (Chromium-basiert)

1. Programmiersprachen und Standards:
-Die Entwicklung erfolgt auf Basis moderner Technologien wie HTML5, CSS3 für eine plattformübergreifende Funktionalität.

2. Frameworks und Bibliotheken:
-Frameworks wie React, Angular oder Vue.js (für die Frontend-Entwicklung) sowie CSS-Frameworks wie Bootstrap oder TailwindCSS können zum Einsatz kommen.

3. Build-Tools:
-Tools wie Webpack, Vite oder Parcel werden zur Optimierung der Assets (z. B. Minifizierung und Bundling von Dateien) verwendet,um die Performance auf verschiedenen Browsern zu gewährleisten.

| SW-1 | - - - | Barrierefreiheit (WAI-ARIA-Standard) ...

1. Verwendung von ARIA-Attributen:
-Semantik und Bedienbarkeit durch role, aria-label, aria-expanded, aria-live etc. verbessern.
-Dynamische Inhalte und interaktive Elemente mit Attributen wie aria-controls oder aria-describedby ausstatten.

2. Technologien und Tools:
-Unterstützung durch Frameworks (z. B. React, Angular) und CSS-Frameworks (z. B. Bootstrap).
-Einsatz von Tools wie Axe, Lighthouse oder eslint-plugin-jsx-a11y zur Validierung.

3. Tastaturbedienbarkeit und Kontraste:
-Sicherstellen, dass alle Inhalte per Tastatur erreichbar sind.
-Einhalten der Kontrastvorgaben gemäß WCAG 2.1 Stufe AA.

| SW-2 | - | **CMS**:
Das System soll einen redaktionellen Schülerzugagng bieten, damit die Diplomarbeiten von Schülern selbst eingepflegt werden können. | SW-3 | +| **Sicherheit und administrativer Zugriff:**
Der Administrative zugriff auf das System geschieht über eine SSH Verbindung, welche nur duch eine VPN (Wireguard) aufgebaut werden kann. Die Authentifizierung (der VPN und SSH) wird über Schlüsselpaare gemacht, um sicherer gegenüber bruteforce Angriffe zu sein.
Der Zugriff auf die Anwendung und die Infrastruktur muss jederzeit gegeben sein. Dies kann durch die Implementierung von:

  • SSH-Zugriff für Administratoren
  • VPN-Verbindung (Virtual Private Network) für eine sichere und verschlüsselte Verbindung
  • Zugriffskontrolle und Authentifizierung, um den Zugriff auf autorisierte Personen zu beschränken
erreicht werden. | SW-4 | ## Zugriffsverwaltung -- 2.45.1 From 08a8a20b3dfe507b9ea317c5ad78d378dd3a548e Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:44:41 +0100 Subject: [PATCH 22/25] HW-13 -> HW-7 && HW-14 -> HW-13 --- pflichtenheft.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 138ad11..e8e1237 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -86,6 +86,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | | **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | | **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-6 | +| **Wiederherstellungszeitraum**

<>Das gehört mMn. nach oben zu allgemeine Anforderungen und ausgetauscht mit HW-5<> Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-7 | ## Anforderungen an den Bedienrechner / das mobile Endgerät @@ -96,10 +97,10 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. ## Anforderungen an das Backup, Recovery und Desaster-Recovery -| **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | +| Anforderung | ID | | --- | --- | -| **Wiederherstellungszeitraum**

<>Das gehört mMn. nach oben zu allgemeine Anforderungen und ausgetauscht mit HW-5<> Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-13 | -| **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-14 | +| **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | +| **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-13 | ## Anforderungen an Redundanz und Verfügbarkeit -- 2.45.1 From cade31e51a0369c70f6916f9f9db29b934bdc60c Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:47:46 +0100 Subject: [PATCH 23/25] Verschiebhinweis entfernen --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index e8e1237..9f78eed 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -86,7 +86,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | **Die Anwendung wird auf einem Cloud-Server betrieben, der skalierbar ist, um den Anforderungen eines wachsenden Benutzerstamms gerecht zu werden.** | HW-4 | | **Hochverfügbar: 99.5%**
Damit diese Anforderung auch im Falle eines gröberen Ausfalls eingehalten werden kann, muss es diverse Dokumentation und Anleitungen zum Wiederherstellungsprozesses geben. Es wird ein eigenes Desaster Recovery Handbuch geben. Damit diverse Probleme schnell erkannt werden, wird es ein rudimentäres Logging geben. (Wie viele Requests? Ressourcenverbrauch? Durchschnittliche antwortzeit des Servers...) Sollte einer dieser Werte auffällig weit aus der Norm fallen, wird der Absolventenverein, sowie diese Diplomarbeitsgruppe automatisch benachrichtigt, damit mit untersuchungen / gegenmaßnahmen in angriff genommen.
*Das System muss eine Verfügbarkeit von mindestens 99,5% aufweisen. Dies bedeutet, dass das System innerhalb eines Jahres höchstens 43,8 Stunden (0,5% von 8760 Stunden) nicht verfügbar sein darf.* | HW-5 | | **.Net Runtime muss unterstützt werden**
Die Anwendung muss die .NET Runtime unterstützen, um eine reibungslose Ausführung von .NET-basierten Anwendungen zu ermöglichen. | HW-6 | -| **Wiederherstellungszeitraum**

<>Das gehört mMn. nach oben zu allgemeine Anforderungen und ausgetauscht mit HW-5<> Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-7 | +| **Wiederherstellungszeitraum**

Die Wiederherstellung des Servers im Falle eines Ausfalls (des Rechenzentrums) muss innerhalb von **einem Tag** gewährleistet sein. Also nach 24 Stunden muss das System wieder in einen benutzbaren Zustand gebracht werden | HW-7 | ## Anforderungen an den Bedienrechner / das mobile Endgerät -- 2.45.1 From 20c73afd109750d668c542a13d585159a8cad0dd Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 08:53:10 +0100 Subject: [PATCH 24/25] HW-13 - Update --- pflichtenheft.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pflichtenheft.md b/pflichtenheft.md index 9f78eed..0a41da5 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -100,7 +100,7 @@ Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch. | Anforderung | ID | | --- | --- | | **Automatisierte Datensicherung**
Zur Erhöhung der Datensicherheit soll über das Komplettsystem eine automatisierte Datensicherung erfolgen. Versionen / Binaries der Anwendungen, Konfigurationsdateien und Nutzerdaten, die Datenbank... Diese Dateien werdenauf einem unbhängigen File Server gelagert. Die Binaries sollen nur bei Updates unserer Software ausgetauscht werden, Konfigurationen bei Änderung erneuert gesichert und die Datenbank mit Nutzerdaten in einem regelmäßigen Zeitfenster. (Vielleicht misbrauchen wir einfach ein Git Repository, das ist vorallem für die Versionierung und Automatisierung dieser Backups sehr gut geeignet) | HW-12 | -| **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems | HW-13 | +| **Dokumentation zum Wiederherstellungsverfahren muss vorhanden sein.**

Schritt für Schritt Anweisungen zum Wiederherstellen des Systems. Skriptgestützte Automatische Wiederherstellung mit einer Dokumentation/Tutorial, um dieses Disaster-Recovery auch ohne Skript durchführen zu können. | HW-13 | ## Anforderungen an Redundanz und Verfügbarkeit -- 2.45.1 From 6cc0b5beaa2f03b0cc993def3ec3a2c3d47fe47f Mon Sep 17 00:00:00 2001 From: KoCoder Date: Mon, 17 Feb 2025 09:09:37 +0100 Subject: [PATCH 25/25] =?UTF-8?q?L=C3=B6sung=20f=C3=BCr=20allgemeine=20Anf?= =?UTF-8?q?orderungen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pflichtenheft.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pflichtenheft.md b/pflichtenheft.md index 0a41da5..f298457 100644 --- a/pflichtenheft.md +++ b/pflichtenheft.md @@ -70,6 +70,12 @@ ## Allgemeine Anforderunge *Phase 2: Schülerzugang braucht mehr Nutzer…. Zugriffe / Tag steigen auch.* +Um den nachfolgenden Anforderungen gerecht zu werden, nutzen wir: +| Produkt | Preis | +| --- | --- | +| 2* Hetzner CX22 | 3.79€ / Montat / Server | +| Domain (easyname.at) | 35€ / Jahr | +| Mailservice (Brevo) | 0€ / Jahr | |Anforderung|ID| | --- | --- | -- 2.45.1