‏ ‏ ‎ ‏ ‏ ‎

1. Testtermine

  • 1. Dez. 2025

  • es wurden statt dem 2. Test schriftliche und mündliche Mitarbeitsüberprüfungen vereinbart

2. 2025-09-15

2.1. Projekte

  • Franklyn weiterarbeiten

  • ev. Seniorenheim

2.1.1. Themen

  • Gesundheit

  • Umwelt

  • Bildung

  • Beeinträchtigte Personen

3. 2025-09-16

3.1. Authentifizierung und Autorisierung

  • Statuscodes sind nicht korrekt

    • 401 Unauthorized sollte unauthenticated heissen

    • 403 Forbidden sollte unauthorized heissen

3.1.1. Ablauf einer HTTP Anfrage

  1. Zugriff auf eine geschützte Ressource durch Request.

  2. Server antwortet mit 401 Unauthorized und fordert Authentifizierung an. Der Client wird an den Keycloak weitergeleitet.

  3. Client authentifiziert sich beim Keycloak (z.B. durch Login).

  4. Keycloak sendet ein Token (z.B. JWT) an den Client zurück.

  5. Client sendet das Token in der nächsten Anfrage an den Server.

  6. Server überprüft das Token und gewährt Zugriff auf die Ressource, wenn das Token gültig ist.

3.1.2. Keycloak

Realm
User
Client
Role
  • Collection von Rechten

Group
  • Collection von Usern

4. 2025-09-22

4.1. Projektideen Stütz

  • Franklyn: Lehreraccounts, KI-Detektion, ev. weitere Funktionen wie aufzeigen

    • Clemens, Jakob, Eldin, Gregor

  • LeoIoT Jonas, Daniel L, Paul, Elias, Stefan

    • Sensoren in Klassen mit Dashboard

    • Dashboard für PV-Anlage und Verbräuche der Schule

  • Trainingsplaner (Paul, Elias, Daniel L.)

  • HTL 3D für Elternsprechtag

  • MusicVoting

    • Miriam, Simone, Marlies

  • Der sprechende Eisbär (Chatbot mit KI)

  • Dashboard mit Grafana und InfluxDB für eine Mineralölfirma

    • Hanan

    • Almin

  • FPV-Drohnen Assistent (David, Simon)

4.2. Projektideen Schüler

  • Brailleleiste

  • Lernplattform (Hanan) vgl. Code Academy

  • HÜ-Planer (Clemens, Jakob)

  • Whatsapp-Alternative (Miriam)

  • SOS-Taschenrechner (Daniel R.)

4.3. Aufgabenstellung

  • Erstellung einer Projektidee mit Projektkonzept

    • User Stories

    • Systemarchtitektur

5. 2025-09-23 Keycloak

IAM …​ Identity and Access Management

Keycloak ist ein Softwareprodukt zur Verwaltung von Identitäten und Zugriffsrechten in Anwendungen und Diensten. Es bietet Funktionen wie Single Sign-On (SSO), Benutzerverwaltung, Rollen- und Berechtigungsmanagement sowie Integration mit verschiedenen Authentifizierungsprotokollen wie OAuth2, OpenID Connect und SAML.

reverse proxy webpack

Die Payload eines tokens ist nicht verschlüsselt jedoch fälschungssicher signiert.

  • Was ist Keycloak

    • Keycloak ist eine Open-Source Identity- und Access-Management-Lösung (IAM), die Single Sign-On (SSO) für Anwendungen und Services bereitstellt. Es übernimmt zentrale Aufgaben im Bereich der Authentifizierung und Autorisierung, basierend auf modernen Sicherheitsstandards wie OAuth 2.0, OpenID Connect (OIDC) und SAML 2.0.

  • CORS (Cross-Origin-Ressource-Sharing)

    • CORS (Cross-Origin Resource Sharing) ist ein Sicherheitsmechanismus in Webbrowsern, der den Zugriff von Webanwendungen auf Ressourcen über Domänengrenzen hinweg regelt.

cors
  • Was ist Kubernetes?

    • Kubernetes ist ein Container-Orchestrierungstool, welches dafür sorgt , dass Container automatisch gestartet, überwacht, skaliert und im Fehlerfall neu gestartet werden.

6. 2025-10-07

6.1. Pure Web

 npm create vite
  • Wir verwenden Vite als Build-Tool (Bundler)

    • https://vitejs.dev/guide/

    • Erstellt ein großes javascript file mit allen Abhängigkeiten.

    • Unterstützt auch React, Vue, Svelte, …​

    • Einfacher zu konfigurieren als Webpack

    • Vergleichbar mit webpack

  • package-lock.json zu .gitignore hinzufügen

  • Model erstellen

6.1.2. Warum Typescript Module?

  • Auf einer herkömmlichen Website wird alles javascript direkt im globalen Scope ausgeführt. Eigener Code im globalen Scope kann leicht mit fremdem Code kollidieren (z.B. Bibliotheken) und ist daher unwartbar.

  • Deshalb werden Typescript Module verwendet. Diese haben ihren eigenen Scope und kollidieren nicht mit anderem Code.

typemodule

6.1.3. Model

  • Das Model ist die Wahrheit, die reine Wahrheit und nichts als die Wahrhei → Single Source of truth

  • Das Aussehen des Bildschirms wird AUSSCHLIESSLICH durch das Model bestimmt. In der GUI werden keine Zustände gespeichert.

7. 2025-10-21

7.1. Trennung von Layout und Daten

7.1.1. MVC

7.1.2. MVVM

Ein Model ist immer notwendig. Ein Model ist die Wahrheit, die reine Wahrheit und nichts als die Wahrheit.
  • Problem: Wir sollten die Daten nicht in den Komponenten speichern.

  • Abhilfe: Die Daten sollten zentral gespeichert werden → store

8. 2025-11-04

tests in projekten

9. 2025-11-10

9.1. Backlog mit User Stories

Jede Gruppe muss ein Backlog erstellen, in dem alle User Stories für das Projekt gesammelt werden. Dabei ist zu beachten, dass die User Stories klein genug sind, um in einem Sprint umgesetzt werden zu können. Auch sind nur wenige User Stories detailliert auszuarbeiten, die meisten sollten nur grob beschrieben werden, da diese erst späte im Projekt detailliert werden.

9.2. Systemarchitektur

Abgeleitet vom Backlog ist ein erster entwurf der Systemarchitektur zu erstellen. Dabei sind die wichtigsten Komponenten des Systems zu identifizieren und deren Zusammenspiel zu beschreiben. Auch sind die wichtigsten Technologien und Frameworks zu benennen, die im Projekt verwendet werden sollen.