Ein Notenrechner für integrierte Gesamtschulen in Deutschland.
Entstanden im Informatikunterricht der Jahrgangsstufe 13 an der Grace Hopper Gesamtschule, Teltow.
Der Schulabschluss Rechner hilft Schülerinnen und Schülern der 10. Klasse dabei, jederzeit zu berechnen, welchen Schulabschluss sie aktuell erreichen würden. Anstatt auf die offizielle Beurteilung der Schule zu warten, können Punkte beliebig oft eingetragen werden — das Ergebnis wird sofort berechnet.
Die App ist kostenlos, speichert keine Daten auf externen Servern und funktioniert auf iOS und Android.
Beim ersten Start richtet man die Fächerkonfiguration ein — entweder durch Auswahl eines Schulprofils aus der Liste oder durch manuelle Eingabe. Danach trägt man für jedes Fach die eigenen Punkte ein, und die App berechnet automatisch die Gesamtpunktzahl sowie den bestmöglichen Abschluss.
Zusätzlich zeigt die App genau an, welche Voraussetzungen für einen höheren Abschluss noch fehlen. Eine fertige Punkteübersicht lässt sich als PDF exportieren — zum Beispiel für Gespräche mit Lehrkräften oder Eltern.
| Abschluss | Vollständige Bezeichnung | Beschreibung |
|---|---|---|
| BR | Berufsbildungsreife | Einfacher Hauptschulabschluss |
| EBR | Erweiterte Berufsbildungsreife | Erweiterter Hauptschulabschluss |
| FOR | Fachoberschulreife | Mittlere Reife |
| FORQ | Fachoberschulreife mit Qualifikation | Mittlere Reife mit Berechtigung für die gymnasiale Oberstufe |
- Live-Berechnung — Ergebnisse aktualisieren sich beim Eingeben
- Unterstützung von E-Kurs und G-Kurs in Fächergruppe I
- Automatische Durchschnittsbildung für Gesellschaftswissenschaften
- Schulprofil-Bibliothek mit Remote-API und integriertem Fallback
- Manuelle Fächerkonfiguration mit vollständiger Kontrolle
- PDF-Export, formatiert für den Druck und Lehrergespräche
- Alle Daten verbleiben auf dem Gerät — kein Konto, kein Tracking
- Unterstützung für Schulen mit zwei oder drei Fächergruppen
Erster Start — Schuleinrichtung
- Die App starten. Ein kurzer Einrichtungsassistent führt durch den Prozess.
- Wählen, ob ein Schulprofil geladen oder die Fächer manuell eingegeben werden sollen.
- Bei einem Schulprofil: Schule suchen, auswählen — die Fächerliste wird automatisch übernommen.
- Bei manueller Einrichtung: Fächer auswählen, jedes Fach einer Fächergruppe zuordnen und Gesellschaftswissenschaften markieren.
- Konfiguration bestätigen und beginnen.
Punkte eintragen
- Zwischen den Fächergruppen über die untere Navigationsleiste wechseln.
- Für jedes Fach die Plus- und Minus-Schaltflächen verwenden oder direkt in das Eingabefeld tippen. Punkte gehen von 0 bis 15.
- Bei Fächergruppe I: mit dem Schalter auf jeder Karte zwischen E-Kurs und G-Kurs wechseln. Dies beeinflusst die Notenumrechnung.
- Das Ergebnis aktualisiert sich automatisch im Tab "Ergebnis".
Ergebnis lesen
Der Ergebnis-Tab zeigt den aktuell besten erreichbaren Abschluss, die Gesamtpunktzahl aufgeteilt nach Fächergruppen sowie eine Checkliste der Voraussetzungen für jeden Abschluss. Grün bedeutet: Bedingung erfüllt. Grau bedeutet: noch nicht erreicht.
PDF exportieren
Im Ergebnis-Tab auf "Als PDF exportieren" tippen. Die App erstellt ein formatiertes Dokument mit allen Punkten, dem aktuellen Abschluss und Bereichen für Zielvereinbarungen und Unterschriften.
Zurücksetzen
- Nur Punkte löschen (Fächerkonfiguration behalten): Reset-Symbol oben rechts in einem Fächergruppen-Tab tippen.
- Komplett neu einrichten: Im Info-Tab auf "Neu einrichten" tippen.
Die folgenden Regeln entsprechen den offiziellen Bewertungskriterien für den 10. Jahrgang an integrierten Gesamtschulen in Brandenburg.
Fächergruppe I
Die Punktzahl wird je nach Kursart unterschiedlich in Noten umgerechnet:
| Punkte | Note im E-Kurs | Note im G-Kurs |
|---|---|---|
| 13 – 15 | 1 | 1 |
| 11 – 12 | 2 | — |
| 9 – 10 | 3 | 2 |
| 7 – 8 | 4 | 3 |
| 5 – 6 | 5 | 4 |
| 3 – 4 | — | 5 |
| 0 – 4 (E) / 0 – 2 (G) | 6 | 6 |
Fächergruppe II
Gesellschaftswissenschaftliche Fächer (Geschichte, Politische Bildung, Geografie sowie weitere, die beim Setup markiert wurden) werden zu einer gemeinsamen Durchschnittspunktzahl zusammengefasst. Alle anderen Fächer der Fächergruppe II werden einzeln addiert.
Abschlussvoraussetzungen
- BR: Keine Note 6, weniger als drei Fünfen, alle Fächer eingetragen, und entweder alle Fächer mindestens 5 Punkte oder Deutsch bzw. Mathematik mindestens 5 Punkte.
- EBR: Keine Note 6, weniger als drei Fünfen, Gesamtpunktzahl mindestens 65, FG-II-Punkte mindestens 34, Deutsch oder Mathematik mindestens 5 Punkte.
- FOR: Keine Note 6, mindestens zwei E-Kurse, Gesamtpunktzahl mindestens 91, alle FG-I-Fächer mindestens 7 Punkte, FG-II-Punkte mindestens 48, alle effektiven FG-II-Werte mindestens 4 Punkte mit mindestens zwei davon bei 7 oder mehr, Deutsch oder Mathematik mindestens 5 Punkte.
- FORQ: Keine Note 6, mindestens drei E-Kurse davon mindestens zwei aus Deutsch, Englisch und Mathematik, Gesamtpunktzahl mindestens 121, alle FG-I-Fächer mindestens 9 Punkte mit mindestens einem E-Kurs-Fach bei 11 oder mehr, FG-II-Punkte mindestens 64, alle effektiven FG-II-Werte mindestens 4 Punkte.
Dieser Abschnitt richtet sich an Entwicklerinnen und Entwickler.
| Bereich | Technologie |
|---|---|
| Framework | Flutter 3 (Dart) |
| Zustandsverwaltung | Provider |
| Lokaler Speicher | shared_preferences |
| PDF-Erstellung | pdf + printing |
| Netzwerk | http |
Das Projekt folgt einer geschichteten Architektur mit klarer Aufgabentrennung.
lib/
core/ Konstanten, Theme, Rechenlogik, Fächerpool
models/ Subject, SchoolPreset, GraduationResult
providers/ AppProvider (globaler Zustand via ChangeNotifier)
screens/ Onboarding-Assistent, Home-Screen
services/ ApiService, StorageService, PdfService
tabs/ SubjectListTab, ResultTab, AboutTab
widgets/ Wiederverwendbare UI-Komponenten
Onboarding ist als mehrstufiger Assistent mit einer Zustandsmaschine (OnboardingStep-Enum) umgesetzt. Die Schritte variieren je nachdem, ob ein Schulprofil verwendet wird oder nicht.
Calculator (lib/core/calculator.dart) ist eine reine statische Klasse. Sie erhält zwei Fächerlisten und gibt ein GraduationResult-Objekt zurück. Sie hat keine Flutter-Abhängigkeiten und kann isoliert getestet werden.
Speicherung nutzt JSON-Serialisierung über shared_preferences. Der vollständige App-Zustand (Fächer, Schulname, Preset-ID, FG-Anzahl, Onboarding-Flag) wird bei jeder Änderung gespeichert und beim Start wiederhergestellt.
Preset-API lädt von https://api.cactusio.com/api/presets/abschluss. Bei Fehler oder Timeout wird das eingebettete GHG-Preset als Fallback verwendet. Remote-Presets werden mit dem eingebetteten Preset zusammengeführt und nach ID dedupliziert.
Voraussetzungen
- Flutter SDK 3.3.0 oder neuer
- Dart SDK 3.3.0 oder neuer
- Xcode (für iOS) oder Android Studio (für Android)
Einrichtung
git clone https://github.com/jojo2k7/ghg/
cd schulabschluss_rechner
flutter pub get
flutter runRelease-Build
flutter build apk --release # Android
flutter build ipa # iOS (erfordert Xcode und Signierung)Tests ausführen
flutter testSchulen können ihre Fächerkonfiguration einreichen, um in der Preset-Bibliothek aufgenommen zu werden. Kontakt: ulbrichj@gesamtschule-teltow.de
Folgende Informationen werden benötigt:
- Schulname, Ort und Bundesland
- Vollständige Fächerliste für die 10. Klasse
- Fächergruppenzuordnung für jedes Fach (FG I oder FG II)
- Fächer, die zur Durchschnittsbildung der Gesellschaftswissenschaften gehören
Presets folgen dem SchoolPreset-JSON-Schema aus lib/models/school_preset.dart.
Der Schulabschluss Rechner erfasst, überträgt oder speichert keinerlei personenbezogene Daten auf externen Servern. Alle Punkte und Konfigurationen werden ausschließlich auf dem Gerät der Nutzerin bzw. des Nutzers gespeichert. Es werden keine Analyse-, Absturzberichte- oder Tracking-Dienste verwendet.
Die einzige Netzwerkanfrage der App ist das Laden der Schulprofil-Liste vom Cactusio-Server beim ersten Start. Diese Anfrage enthält keine personenbezogenen Informationen.
Diese App wurde im Rahmen des Informatikunterrichts der Jahrgangsstufe 13 an der Grace Hopper Gesamtschule, Teltow, entwickelt.
Team
| Name | Aufgabenbereich |
|---|---|
| Julius Ulbrich | Architektur, Rechenlogik, UI, PDF-Export, API-Integration |
| Florian | Entwicklung |
| Kai | Entwicklung |
Die erste Version war ein einzelner Datei-Prototyp (main.dart). Daraus entstand eine modular aufgebaute App mit persistenter Datenspeicherung, einem Remote-Preset-System, einem Onboarding-Assistenten und einem PDF-Export — und wurde von einer schulspezifischen Lösung zu einem allgemeinen Werkzeug für alle integrierten Gesamtschulen in Deutschland weiterentwickelt.
Dieses Projekt wurde zu Bildungszwecken an der Grace Hopper Gesamtschule entwickelt.
Copyright 2026 Cactusio. Alle Rechte vorbehalten.
Mehr Informationen auf https://policies.cactusio.com/en/
Der Schulabschluss Rechner ist ein inoffizielles Hilfsmittel. Er steht in keiner Verbindung zu einer Schule oder Bildungsbehörde und wird von keiner solchen empfohlen. Die offizielle Beurteilung durch die Schule ist stets maßgeblich.