# DÜSK - Düsseldorfer Schülerinventar (Lazarus/Free Pascal) [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Lazarus](https://img.shields.io/badge/Lazarus-2.0.6+-red.svg)](https://www.lazarus-ide.org/) [![Free Pascal](https://img.shields.io/badge/Free%20Pascal-3.0.4+-blue.svg)](https://www.freepascal.org/) Eine Desktop-Anwendung für das **Düsseldorfer Schülerinventar (DÜSK)** - ein Instrument zur Erfassung von Schülerkompetenzen durch Selbst- und Fremdeinschätzung. ## 📋 Inhaltsverzeichnis - [Über das Projekt](#-über-das-projekt) - [Features](#-features) - [Technische Voraussetzungen](#-technische-voraussetzungen) - [Installation](#-installation) - [Starten der Anwendung](#-starten-der-anwendung) - [Bedienungsanleitung](#-bedienungsanleitung) - [API-Endpunkte](#-api-endpunkte) - [Projektstruktur](#-projektstruktur) - [Kompilierung](#-kompilierung) - [Fehlerbehandlung](#-fehlerbehandlung) - [Lizenz](#-lizenz) ## 🎯 Über das Projekt Das Düsseldorfer Schülerinventar (DÜSK) ist ein diagnostisches Instrument zur Erfassung von Schülerkompetenzen in sechs Bereichen: 1. **Arbeitsverhalten** - Zuverlässigkeit, Arbeitstempo, Arbeitsplanung, Organisation 2. **Lernverhalten** - Selbstständigkeit, Belastbarkeit, Konzentration 3. **Sozialverhalten** - Teamfähigkeit, Hilfsbereitschaft, Kommunikation 4. **Fachkompetenz** - Schreiben, Lesen, Mathematik, Naturwissenschaften 5. **Personale Kompetenz** - Eigeninitiative, Leistungsbereitschaft, Reflexion 6. **Methodenkompetenz** - Problemlösung, Abstraktion, Präsentation Die Anwendung ermöglicht die Erfassung von **Selbsteinschätzung (SE)** und **Fremdeinschätzung (FE)** über 36 Items und berechnet daraus Profilwerte im Vergleich zu Normtabellen (Hauptschule/Förderschule). ## ✨ Features | Funktion | Beschreibung | |----------|--------------| | 🔐 **Login** | Authentifizierung mit Benutzername/Passwort (Gastzugang: gast/gast) | | 📋 **Profilübersicht** | Tabellarische Liste aller Profile mit Name, Gruppe und ID | | ➕ **Neues Profil** | Vollständige Erfassung aller 36 Items für SE und FE | | ✏️ **Profil bearbeiten** | Nachträgliche Änderung vorhandener Profile | | 👁️ **Profil anzeigen** | Detaillierte Ansicht mit SE/FE-Tabellen, Diagrammen, Statistik und Items | | 📊 **Korrelation** | Berechnung der Übereinstimmung zwischen SE und FE | | 📈 **Zeitreihe** | Verlaufsdarstellung aller Profile einer Gruppe mit Diagramm | | 👥 **Gruppenverwaltung** | Gruppen hinzufügen, löschen und zuordnen | | 🖥️ **Grafische Diagramme** | Liniendiagramme für SE, FE und Vergleich (TAChart) | ## 💻 Technische Voraussetzungen - **Lazarus 2.0.6 oder höher** - **Free Pascal Compiler 3.0.4 oder höher** - **Internetverbindung** (für API-Zugriff auf `https://paul-koop.org/api/`) - **Betriebssystem**: Windows, macOS, Linux ### Benötigte Pakete - `TAChartLazarusPkg` (für Diagramme) - ist normalerweise bereits enthalten ## 📦 Installation ### 1. Repository klonen oder Dateien herunterladen ```bash git clone https://github.com/yourusername/duesk-lazarus.git cd duesk-lazarus ``` ### 2. Projekt in Lazarus öffnen 1. **Lazarus starten** 2. `Projekt` → `Projekt öffnen...` 3. `project1.lpi` auswählen ## 🚀 Starten der Anwendung ### In Lazarus: - Drücken Sie **F9** (Ausführen) ### Als eigenständige .exe: ```bash # Windows project1.exe # Linux ./project1 # macOS open project1.app ``` ## 📖 Bedienungsanleitung ### Login | Feld | Standardwert | Beschreibung | |------|--------------|--------------| | Benutzername | `gast` | Ihr persönlicher Benutzername | | Passwort | `gast` | Ihr persönliches Passwort | > **Hinweis:** Bei der ersten Anmeldung mit neuen Zugangsdaten wird automatisch ein Benutzerkonto erstellt. ### Hauptfenster **Toolbar-Buttons:** - **Neues Profil** - Erstellt ein neues Profil - **Aktualisieren** - Lädt die Profilliste neu - **Gruppen** - Öffnet den Gruppenmanager - **Abmelden** - Beendet die Sitzung **Aktionen pro Profil (Buttons unter der Tabelle):** - **Anzeigen** - Zeigt das komplette Profil mit Diagrammen - **Bearbeiten** - Ändert die Item-Werte des Profils - **Löschen** - Entfernt das Profil (mit Bestätigung) - **Zeitreihe** - Zeigt die Entwicklung der Gruppe ### Neues Profil / Profil bearbeiten 1. **Profil-Informationen** - Name des Schülers/der Schülerin - Auswahl einer vorhandenen Gruppe oder Erstellung einer neuen Gruppe 2. **Selbsteinschätzung (36 Items)** - Bewertungsskala: 4 = trifft voll zu, 3 = trifft zu, 2 = trifft teilweise zu, 1 = trifft nicht zu 3. **Fremdeinschätzung (36 Items)** - Gleiche Bewertungsskala wie bei Selbsteinschätzung ### Profil anzeigen Die Profilansicht ist in vier Reiter unterteilt: #### 1. Selbsteinschätzung (SE) - Tabelle mit X-Markierungen für die 6 Kompetenzen - Liniendiagramm der Werte #### 2. Fremdeinschätzung (FE) - Gleiche Darstellung wie bei SE #### 3. Statistik - **Korrelation** zwischen SE und FE - **Übereinstimmung** in Prozent - **Vergleichsdiagramm** (SE vs. FE) - **Interpretation** in verständlicher Sprache #### 4. Alle Items - Vollständige Liste aller 36 Items mit SE- und FE-Werten **Normauswahl:** Oben rechts können Sie zwischen **Hauptschule (HS)** und **Förderschule (FS)** wechseln. ### Zeitreihe Zeigt alle Profile einer Gruppe mit: - Liniendiagramm der ausgewählten Kompetenz - Tabelle mit allen Kompetenzwerten ### Gruppenverwaltung - **Hinzufügen** - Neue Gruppe mit Namen erstellen - **Löschen** - Vorhandene Gruppe entfernen ## 🔌 API-Endpunkte Die Anwendung kommuniziert mit folgenden API-Endpunkten: | Endpunkt | Methode | Beschreibung | |----------|---------|--------------| | `api_login.php` | POST | Authentifizierung und Session-Erstellung | | `api_profiles.php` | GET | Liste aller Profile oder Einzelprofil | | `api_profiles.php` | POST | Neues Profil erstellen | | `api_profiles.php` | PUT | Profil aktualisieren | | `api_profiles.php` | DELETE | Profil löschen | | `api_groups.php` | GET | Gruppenliste abrufen | | `api_groups.php` | POST | Neue Gruppe erstellen | | `api_groups.php` | DELETE | Gruppe löschen | | `api_logout.php` | POST | Session beenden | | `api_norms.php` | GET | Normtabellen abrufen | ## 📁 Projektstruktur ``` duesk_lazarus/ ├── project1.lpr # Hauptprogramm ├── project1.lpi # Projektinformationen ├── u_login.pas + .lfm # Login-Formular ├── u_profilelist.pas + .lfm # Profilliste ├── u_profiledetail.pas + .lfm # Profildetail mit Diagrammen ├── u_profileedit.pas + .lfm # Profil bearbeiten/neu ├── u_timeseries.pas + .lfm # Zeitreihe ├── u_groups.pas + .lfm # Gruppenverwaltung ├── u_api.pas # API-Kommunikation ├── u_norms.pas # Normwerte und Konstanten └── u_chart.pas # Diagramm-Komponente ``` ## 🔧 Kompilierung ### In Lazarus: 1. Projekt öffnen (`project1.lpi`) 2. `Ausführen` → `Kompilieren` (Strg+F9) 3. `Ausführen` → `Start` (F9) ### Kommandozeile (fpc): ```bash fpc project1.lpr ``` ### Für verschiedene Betriebssysteme: **Windows:** ```bash fpc -Twin64 project1.lpr ``` **Linux:** ```bash fpc -Tlinux project1.lpr ``` **macOS:** ```bash fpc -Tdarwin project1.lpr ``` ## ⚠️ Fehlerbehandlung | Fehler | Ursache | Lösung | |--------|---------|--------| | Keine Verbindung | Internet offline | Internetverbindung prüfen | | Login fehlgeschlagen | Falsche Zugangsdaten | Benutzername/Passwort prüfen | | Keine Profile | API nicht erreichbar | Server-Status prüfen | | Diagramm nicht sichtbar | TAChart nicht installiert | Paket nachinstallieren | ## 📄 Lizenz Dieses Projekt ist unter der MIT-Lizenz lizenziert. ## 👨‍💻 Autor **Paul Koop M.A.** - Website: [https://paul-koop.org](https://paul-koop.org) ## 🙏 Danksagung Die PHP-API und die Datenbankstruktur basieren auf der bestehenden DÜSK-Online-Anwendung.