Zum Inhalt

Praxis-FAQ (SPE & SPM)

Antworten auf häufige, konkrete Fragen aus der Original-Hilfe – mit echten Beispielen aus den .spm-Dateien. Für die grundlegenden Fragen zu Installation, Lizenz und Planung siehe die allgemeine FAQ.

Rund um SPE

Wie erstellt man sinnvoll einen SPM++-Datensatz?

Ein vollständiger Datensatz entsteht in dieser Reihenfolge:

  1. Daten bereitstellen – in Bayern aus ASV (Gymnasien zusätzlich WinQD), sonst Lehrer.spm/Klasse.spm/Fach.spm von Hand plus Eingabe.spm.
  2. Erst-Datensatz erzeugen – Bayern: Datensatz aus ASV-Daten (Gymnasien vorher ASV/WinQD abgleichen + Kollisionsmatrix); sonst aus Eingabe.spm. Danach Graph aufbauen und Fehler beseitigen.
  3. Bereinigen – unechte Klassenpartitionen entfernen, Klassenblock-Namen in Klartext.
  4. Blöcke bilden – Mehrfachstunden zusammenfassen.
  5. Räume vorbereiten – Räume/Raumgruppen definieren, Fachräume und Klassenzimmer festlegen.
  6. Pseudo-Unterrichte – freie Tage, Raumsperren, Sprechstunden (nach den Raum-Vorarbeiten).
  7. Feste Räume zuordnen – Fachräume und Klassenzimmer eintragen.
  8. Unabhängige Räume verteilen (der Rest kommt erst nach der Planung).
  9. Bedingungen erfassen – Tag-, Gleich-, Ungleich-, Stunden- und Schulaufgaben­bedingungen.
  10. FeintuningUnter.spm sortieren und einzelne Einträge prüfen.

Ausführlich in der SPE-Referenz.

Wie funktionieren Minusräume (abhängige Räume)?

Minusräume werden Unterrichten erst nach dem fertigen Stundenplan zugewiesen – das vereinfacht die Planung. Der Status durchläuft:

Planungsschritt Status des Minusraums
Ersten Plan erstellen und speichern weder vorgemerkt noch eingetragen
Minusräume zuordnen vorgemerkt, noch nicht eingetragen
Minusräume in Unter.spm eintragen vorgemerkt und eingetragen

Bei einer Umplanung im Schuljahr trägt man die Minusräume zuerst wieder aus, plant um, ordnet dann erneut zu: passende bleiben, kollidierende werden abgelehnt und neu vorgemerkt.

Rund um SPM

Was sind fixe Raumgruppen und wie werden sie verwendet?

Ein Unterricht liegt entweder in einem festen Raum oder in einer Raumgruppe. Bei mehrstündigen Fächern kann eine Raumgruppe dazu führen, dass die Stunden in verschiedenen Räumen liegen. Soll es derselbe Raum sein (ohne ihn vorab festzulegen), nutzt man die automatisch erzeugte fixe Raumgruppe (Suffix -fix):

// Raum.spm
rBio1.
rBio2.
rB = rBio1 rBio2.

// Unter.spm
U5B01A 5b MEI B 1 rB    vormA.   // 5b: je Stunde frei rBio1 oder rBio2
U5B01B 5b MEI B 1 rB    vormB.
U5C01A 5c SMI B 1 rBfix vormA.   // 5c: beide Stunden im GLEICHEN Raum
U5C01B 5c SMI B 1 rBfix vormB.
Wie kann ich die HTML-Ausgabe anpassen?

Die HTML-Ausgabe folgt einem festen Farb-/Formatschema. Für individuelle Pläne bearbeitet man die .xsl-Dateien im Programmverzeichnis (z. B. einzelplanklasse.xsl). Dort lassen sich u. a. anpassen:

  • Hintergrundfarben (body, .TableHeader, .TableBody) als RGB-Werte,
  • Schriftart der Zellen und Überschriften,
  • die Reihenfolge der Attribute je Zelle (Bezeichnung, Lehrer, Raum, Fach) – die Reihenfolge muss weiter unten in der Datei ein zweites Mal angepasst werden.
Wie plant man Präsenzstunden für Lehrkräfte ein?

Eine bewährte Standardlösung (jede Lehrkraft hält 2 Präsenzen/Woche; in der 2.–5. Stunde sollen 3 Präsenzen verfügbar sein, in der 1. Stunde genügen 2):

  1. In Raum.spm drei Präsenzräume rpr1…rpr3 und eine Gruppe rpr definieren.
  2. In Fach.spm ein Fach anlegen, das mit Präs beginnt.
  3. In Zeit.spm eine Zeittafel zPr (nur 1.–5. Stunde) anlegen.
  4. In Unter.spm je Lehrer zwei Pseudo-Unterrichte (Fach Präs…, Raum rpr, Zeittafel zPr).
  5. Überzählige Präsenzräume per Pseudounterricht sperren (im Beispiel rpr3 in der 1.).
  6. Hohl12.spm anlegen (Hohlstunden um 2 niedriger) mit Randpräsenz-Malus (-pr).
  7. Plan zuerst ohne Präsenzen rechnen und mit Hohl34.spm optimieren.
  8. Vor der Präsenzplanung alle Unterrichte fixieren, dann Raumsperren setzen, Präsenzen verplanen und mit Hohl12.spm optimieren. Zuletzt Fixierung → vorbesetzt.

Grundlagen dazu: Pseudounterrichte.

Wie optimiert man richtig?

Drei Hebel steuern die Optimierung:

  1. die Parameter in den Optimierungsdateien (Hohl*, Leist*, RaumOpt*, FSOpt*, Rhyth*),
  2. die Gewichtung der Kriterien im Optionendialog,
  3. die Auswahl der zu optimierenden Unterrichte.

Sinnvoll sind Zwischenoptimierungen: Die Kursphase der Oberstufe zuerst als Kollegiaten optimieren (mehr Flexibilität), Präsenzen erst nach einer umfassenden Optimierung einplanen.

Planungstiefe kostet Zeit

Jede Erhöhung der Planungstiefe um 1 verlängert die Dauer um Faktor 3–5. Dauert eine Komplettoptimierung bei Tiefe 5 rund 2 Stunden, sind es bei Tiefe 7 schon ein ganzer Tag. Besser: nach einigen Stunden abbrechen, gezielt die „schlechtesten" Lehrer/Klassen optimieren, dann wieder komplett.

Wie plant man Doppelstunden an einem bestimmten Tag ein?

Eine Klasse hat montagnachmittags vier Stunden und soll dort in Doppelstunden unterrichtet werden.

  • Ganzer Montag aus Doppelstunden: In allen Zeittafeln die geraden Stunden am Montag sperren – so ist eine gerade Stunde nur über eine Doppelstunde ab der ungeraden davor erreichbar.
  • Mindestens drei Doppelstunden: drei Pseudounterrichte mit einer Zeittafel zpseud (nur gerade Stunden am Montag) anlegen und über Ungleich.spm verhindern, dass Einzelstunden parallel dazu liegen.
Wie erreicht man bei mehreren Schulhäusern nur einen Hauswechsel pro Tag?

Über einen „Pseudosamstag" als sechsten Unterrichtstag: Für jede Lehrkraft werden pro Tag zwei Pseudounterrichte (P10xA/P10xB) angelegt, die jeweils entweder am Wochentag oder in der 1. Stunde des Pseudosamstags liegen. Über Stunde.spm liegen die Unterrichte aus Haus 1 vor den A-Pseudos und nach den B-Pseudos, die aus Haus 2 dazwischen – so trennt der Pseudounterricht die beiden Häuser. In Tag.spm dürfen A und B nicht am gleichen Tag liegen (P100A <> P100B.).

Aufwand

Bei ~50 Lehrkräften entstehen ~500 neue Unterrichte (je 13 Knoten), der Graph wächst um ~6.500 Knoten – ohne spürbare Geschwindigkeitseinbußen.

Wie plant man 14-tägig wechselnde Unterrichte?

Über die Attribute WocheA und WocheB. Beispiel Sport, bei dem sich Jungen und Mädchen 14-tägig in Turn- und Schwimmhalle abwechseln:

// vorher: eine wöchentliche Doppelstunde je Gruppe
U07A14A sm7ab Sm MÜL 2 vorm2 rTurnhalle.
U07A14B sw7ab Sw SMT 2 vorm2 rSchwimmhalle.

// nachher: je Gruppe zwei Unterrichte mit WocheA / WocheB
U07A14A sm7ab Sm MÜL 2 vorm2 rTurnhalle    WocheA.
U07A14C sm7ab Sm MÜL 2 vorm2 rSchwimmhalle WocheB.
U07A14B sw7ab Sw SMT 2 vorm2 rSchwimmhalle WocheA.
U07A14D sw7ab Sw SMT 2 vorm2 rTurnhalle    WocheB.
Warum gibt es keine „Nachfolger" bei Ungleichbedingungen?

Bei Gleichbedingungen koppelt man Unterrichte paarweise – hier hilft der Knopf Nachfolger, um weitere Paare zu erzeugen. Bei Ungleichbedingungen dagegen müssen alle betroffenen Unterrichte in einer einzigen Bedingung stehen (U05A08A U05A08B U07B08A U07B08B.), sonst könnten sich einzelne Paare doch überschneiden. Da es also immer nur eine Bedingung gibt, wäre ein „Nachfolger" sinnlos.

Wie plant man kleinere Änderungen mit möglichst wenig Nebenwirkungen?

Leitgedanken: so wenige Unterrichte wie möglich öffnen, Auswirkungen auf wenige Klassen/Lehrer beschränken, niemanden verschlechtern und keine Optimierung mehr starten (die wirft zu viel durcheinander). Vorgehen:

  1. Fehlerhafte Unterrichte öffnen, Zuordnung speichern.
  2. Unterrichte umdefinieren (z. B. freier Tag von Di1 auf Mi1).
  3. Graph neu aufbauen, Zuordnung wieder einlesen.
  4. Mit „Vorschlag zu Markierung" (10 Vorschläge samt Auswirkungen) den Vorschlag wählen, der niemanden verschlechtert.

Große Blöcke (freie Tage, Gleichbedingungen, Mehrfachstunden) verschiebt man am besten, indem man störende Unterrichte am Zielplatz vorher öffnet und danach einzeln wieder einfügt.

Wie teilt man Klassen richtig und setzt sie wieder zu Klassenblöcken zusammen?

Das ist der anspruchsvollste Fall. Kurz: Wenn eine Klasse durch Gleichbedingungen (z. B. Religion) faktisch als Ganzes parallel liegt, obwohl sie in anderen Fächern (Franz./HE) unterschiedlich geteilt ist, muss man die Teilungen aufeinander abstimmen – die Klasse wird auch in Religion/Katholisch entsprechend geteilt und über Klassenb.spm neu zusammengesetzt.

Wichtig für VPM

Enthält ein Klassenblock nicht die ganze Klasse (z. B. nur die Katholiken), nimmt VPM bei Ausfall trotzdem an, die ganze Klasse sei betroffen. Sauber ist daher, alle beteiligten Klassen in Katholisch/Evangelisch zu zerlegen und die alten Partitionspartner in Klassenb.spm neu zu definieren.

Wie plant man Klassenkonferenzen?

Zuerst in SPE über Menü Datensätze → Klassenkonferenzen einen passenden Datensatz erzeugen. Dann im Unterordner Konferenz den Graphen aufbauen und alle Unterrichte verplanen. Kern ist die Optimierung im Konferenzmodus: Über die Angabe eines Optimierungsziels für die prozentuale Abdeckung der Konferenzen schaltet SPM++ in diesen Modus, damit möglichst viele Lehrkräfte einer Klasse teilnehmen können. Besonders hilfreich sind danach die Übersichtspläne der Räume (zeitliche Abfolge) und der Lehrer (ihre Konferenzen).

Wie plant man nach dem Fachraum-/Lehrerraumprinzip?

Das Thema hat eine eigene, ausführliche Seite: Fachraumplanung – inklusive der Raumgruppen mit Suffix -LR, der beiden Strategien (eine große Gruppe vs. nach Fachschaften) und der Speicher-Hinweise.

Noch nicht fündig geworden?

Für Installations-, Lizenz- und Update-Fragen siehe die allgemeine FAQ; für den Support sind die Kontaktdaten dort hinterlegt.