Beurteilung
Beurteilung
Abschnitt betitelt „Beurteilung“Wie kommt es zur Beurteilung in SEW - Softwareentwicklung?
Als Basis dient die Leistungsbeurteilungsverordnung (LBVO) des Bundes.
Benotung
Abschnitt betitelt „Benotung“Die Benotung setzt sich aus den folgenden Komponenten zusammen:
- Mitarbeit: Übungsbeispiele (Abgabe über Git, Qualität und Präsentation der Lösungen) sowie aktive Beteiligung im Unterricht.
- Praktische Leistungsfeststellungen: angesagte Programmierübungen am Rechner.
- Projektarbeiten: das Client-Server-Projekt mit Teamworkflow, Dokumentation und Präsentation.
Die genaue Gewichtung wird zu Schuljahresbeginn in der Klasse bekanntgegeben und hier ergänzt.
Grundsätze
Abschnitt betitelt „Grundsätze“-
Jede abgegebene Übung zählt zur Mitarbeit, auch unvollständige Lösungen mit dokumentierten Versuchen.
-
Programmcode muss selbst erklärt werden können. Nicht erklärbarer Code wird nicht gewertet.
-
Abgabetermine sind verbindlich. Verspätete Abgaben werden nur nach Absprache berücksichtigt.
-
Im Teamprojekt zählt der individuelle Beitrag, nachvollziehbar über die Git-Historie und die Review-Verläufe.
Kompetenzraster - 4. Klasse
Abschnitt betitelt „Kompetenzraster - 4. Klasse“Der Kompetenzraster zeigt, welche Leistungen für welche Note erwartet werden. Die Niveaustufen folgen der LBVO:
- Genügend Die wesentlichen Bereiche sind überwiegend erfüllt.
- Befriedigend Die wesentlichen Bereiche sind zur Gänze erfüllt.
- Gut Die Leistungen gehen über das Wesentliche hinaus.
- Sehr gut Die Aufgaben werden eigenständig gelöst und das Gelernte wird sicher auf neue Aufgaben angewendet.
Jede Stufe schließt die darunterliegenden mit ein.
TypeScript und moderne Sprachmittel
Abschnitt betitelt „TypeScript und moderne Sprachmittel“- Genügend Der Schüler oder die Schülerin kann bestehenden TypeScript-Code lesen und einfache Funktionen typisieren.
- Befriedigend Der Schüler oder die Schülerin kann Interfaces und Union Types einsetzen und Compiler-Fehler selbstständig beheben.
- Gut Der Schüler oder die Schülerin kann Datenmodelle vollständig typisieren und Typen als Dokumentation nutzen.
- Sehr gut Der Schüler oder die Schülerin kann Typsysteme gezielt einsetzen, um Fehlerklassen auszuschließen, und den Nutzen an Beispielen belegen.
Nebenläufigkeit
Abschnitt betitelt „Nebenläufigkeit“Event Loop, Promises, async/await
- Genügend Der Schüler oder die Schülerin kann asynchronen Code mit async/await nach Vorlage schreiben.
- Befriedigend Der Schüler oder die Schülerin kann die Ausführungsreihenfolge asynchronen Codes vorhersagen und Fehler mit try/catch behandeln.
- Gut Der Schüler oder die Schülerin kann parallele Abläufe mit Promise.all koordinieren, Timeouts umsetzen und Messungen interpretieren.
- Sehr gut Der Schüler oder die Schülerin kann Race Conditions erkennen, reproduzieren und entschärfen und die Lösung anderen erklären.
Schnittstellen
Abschnitt betitelt „Schnittstellen“HTTP, REST, JSON
- Genügend Der Schüler oder die Schülerin kann eine fremde API mit fetch ansprechen und die Antwort verarbeiten.
- Befriedigend Der Schüler oder die Schülerin kann HTTP-Verkehr analysieren, Statuscodes deuten und Fehlerfälle behandeln.
- Gut Der Schüler oder die Schülerin kann eine REST-Schnittstelle für eine Aufgabenstellung entwerfen und so dokumentieren, dass andere dagegen entwickeln können.
- Sehr gut Der Schüler oder die Schülerin kann Schnittstellen-Entwürfe reviewen, Zielkonflikte benennen und die eigenen Entwurfsentscheidungen verteidigen.
Client-Server-Anwendungen
Abschnitt betitelt „Client-Server-Anwendungen“React, Next.js
- Genügend Der Schüler oder die Schülerin kann Komponenten mit Props und State nach Vorlage bauen.
- Befriedigend Der Schüler oder die Schülerin kann eine mehrseitige Next.js-Anwendung mit Routing und eigenen API-Routen umsetzen.
- Gut Der Schüler oder die Schülerin kann Client und Server sauber verbinden, Eingaben serverseitig validieren und Lade- und Fehlerzustände behandeln.
- Sehr gut Der Schüler oder die Schülerin kann eine umfangreiche Client-Server-Anwendung eigenständig strukturieren und Framework-Entscheidungen begründen.
Architektur und Persistenz
Abschnitt betitelt „Architektur und Persistenz“Mehrschichtarchitektur, SQLite, Datenformate
- Genügend Der Schüler oder die Schülerin kann die drei Schichten benennen und zuordnen, welche Datei wohin gehört.
- Befriedigend Der Schüler oder die Schülerin kann ein Projekt in Schichten strukturieren und Daten in SQLite ablegen.
- Gut Der Schüler oder die Schülerin kann eine Datenzugriffsschicht hinter einem Interface austauschbar halten und Daten zwischen Anwendungen austauschen.
- Sehr gut Der Schüler oder die Schülerin kann Architekturregeln im Team durchsetzen, Verstöße erkennen und die Austauschbarkeit praktisch nachweisen.
Qualität im Team
Abschnitt betitelt „Qualität im Team“Branches, Reviews, Tests
- Genügend Der Schüler oder die Schülerin kann auf einem Branch arbeiten und einen Merge Request stellen.
- Befriedigend Der Schüler oder die Schülerin kann Reviews nach Checkliste schreiben und Tests für die Logik-Schicht verfassen.
- Gut Der Schüler oder die Schülerin kann Feedback konstruktiv formulieren, einarbeiten und API-Endpunkte automatisiert testen.
- Sehr gut Der Schüler oder die Schülerin kann den Teamworkflow mitgestalten, Reviews auf hohem Niveau führen und Qualität über den ganzen Projektverlauf halten.
Methoden- und Sozialkompetenz
Abschnitt betitelt „Methoden- und Sozialkompetenz“- Genügend Der Schüler oder die Schülerin kann die eigenen Aufgaben im Team termingerecht erledigen.
- Befriedigend Der Schüler oder die Schülerin kann Absprachen einhalten, den eigenen Stand kommunizieren und um Hilfe fragen, bevor eine Blockade entsteht.
- Gut Der Schüler oder die Schülerin kann Arbeitspakete schneiden, Zusagen realistisch treffen und Konflikte im Team sachlich klären.
- Sehr gut Der Schüler oder die Schülerin kann Verantwortung für ein Teilsystem übernehmen und das Team fachlich weiterbringen.
Für die Note muss die jeweilige Stufe in allen fachlichen Kompetenzbereichen erreicht sein. Liegen einzelne Bereiche darunter, entscheidet das Gesamtbild nach LBVO.