Wir wirkten an einer Verwaltungssoftware für Schulen mit, die als zentrales System für die Administration und die behördenübergreifende Vernetzung des Berliner Schulwesens aufgebaut und weiterentwickelt wurde. Das Projekt lief für einen Auftraggeber, der die Umsetzung für einen öffentlichen Endkunden verantwortete. Unser Schwerpunkt lag auf der Frontend-Architektur, der Abstimmung mit dem Endkunden sowie auf Prozessen für Änderungen und Releases und der Modernisierung der bestehenden Codebasis.
Ausgangslage
Der Auftrag kam von einem Auftraggeber, der das Projekt für einen öffentlichen Auftraggeber umsetzte. Gesucht war ein zentrales System zur Administration und zur behördenübergreifenden Vernetzung des Berliner Schulwesens.
Im Projekt bestand die Aufgabe darin, die Frontend-Architektur fachlich zu führen, die Umsetzung mit dem Endkunden abzustimmen und die Arbeitsgrundlagen im Entwicklungsteam weiterzuentwickeln. Dazu gehörten auch geordnete Prozesse für Änderungen und Releases sowie die Modernisierung der vorhandenen Codebasis.
Lösung

Wir übernahmen die fachliche Führung der Frontend-Architektur auf Basis von Angular und TypeScript und stimmten die Architekturentscheidungen mit dem Endkunden ab. Für die Benutzeroberfläche und die Browseranwendung arbeiteten wir damit im Bereich Webentwicklung.
Zusätzlich schulten wir die Entwickler und unterstützten ITIL-konforme Change- und Release-Prozesse. ITIL ist ein Rahmenwerk für klar definierte Abläufe im IT-Service-Management. Außerdem migrierten wir die Versionsverwaltung von TFVC zu Git und modernisierten die Codebasis.
Das Projekt lief von April 2019 bis Juli 2021 mit einer Teamgröße von 3.
Ergebnis
Geliefert wurde unser Beitrag zu einem zentralen System für die Administration und die behördenübergreifende Vernetzung des Berliner Schulwesens. Dazu zählten die geführte Frontend-Architektur, die Abstimmung mit dem Endkunden, die Schulung der Entwickler, die Unterstützung der Change- und Release-Prozesse sowie die Migration von TFVC zu Git und die Modernisierung der Codebasis.
Das Projekt wurde nach einer Laufzeit von 28 Monaten abgeschlossen.
Technik

- Angular für die Frontend-Architektur der Webanwendung
- TypeScript für die Umsetzung im Frontend
- Node.js als Teil des technischen Stacks
- Telerik für Komponenten der Benutzeroberfläche
- NgRx für Zustandsmanagement im Frontend; damit wird der Zustand einer Anwendung strukturiert verwaltet
- TFS und Azure DevOps für die Entwicklungs- und Bereitstellungsprozesse
- MS SQL Server für die Datenhaltung
- ITIL v4 als Grundlage für ITIL-konforme Change- und Release-Prozesse
Warum Verwaltungssoftware für Schulen klare Strukturen braucht
Verwaltungssoftware für Schulen muss in solchen Vorhaben meist weit mehr leisten als einzelne Arbeitsabläufe digital abzubilden. Typischerweise geht es darum, unterschiedliche Zuständigkeiten, mehrere beteiligte Stellen und langfristig wachsende Anforderungen in einem gemeinsamen System zusammenzuführen. Gerade im Umfeld öffentlicher Auftraggeber ist es deshalb sinnvoll, Architektur, Zuständigkeiten und Änderungsprozesse früh zu klären.
Ein zentraler Punkt ist die fachliche Struktur der Anwendung. Wenn Bereiche wie Stammdaten, Rollen, Abläufe und Auswertungen ungeordnet zusammenwachsen, wird die Weiterentwicklung schnell schwer steuerbar. Eine tragfähige Frontend-Architektur hilft dabei, die Oberfläche in klar getrennte Teile zu gliedern. Das erleichtert spätere Erweiterungen, verbessert die Zusammenarbeit mehrerer Entwickler und reduziert das Risiko, dass Änderungen an einer Stelle unbeabsichtigte Folgen an anderer Stelle haben.
Ebenso wichtig ist ein sauberer Umgang mit dem Zustand der Anwendung. Zustandsmanagement bedeutet, dass die Software klar festhält, welche Daten gerade geladen, geändert oder geprüft werden. Das ist vor allem bei umfangreichen Fachanwendungen relevant, in denen viele Masken, Filter, Berechtigungen und Bearbeitungsschritte ineinandergreifen. Ohne solche Regeln entstehen leichter schwer nachvollziehbare Fehlerbilder.
Für ähnliche Projekte spielt außerdem die organisatorische Einbettung eine große Rolle. In der Praxis müssen Änderungen nicht nur entwickelt, sondern auch bewertet, freigegeben und kontrolliert ausgerollt werden. Geregelte Change- und Release-Prozesse sorgen dafür, dass Anforderungen, Korrekturen und neue Funktionen nachvollziehbar in den Betrieb übergehen. Release-Prozesse sind die Abläufe, mit denen neue Softwarestände geplant, geprüft und bereitgestellt werden.
Auch die Modernisierung bestehender Systeme ist bei Verwaltungssoftware typisch. Viele Vorhaben starten nicht auf der grünen Wiese, sondern bauen auf vorhandenen Lösungen auf. Dann ist es oft sinnvoll, zunächst die Codebasis, die Versionsverwaltung und die Entwicklungsabläufe zu ordnen, bevor größere funktionale Ausbauten folgen. So entsteht eine belastbare Grundlage für den laufenden Betrieb und für spätere Weiterentwicklung.
Wer ein ähnliches Vorhaben plant, sollte deshalb nicht nur auf Funktionen schauen, sondern ebenso auf Architektur, Änderungsprozesse, Wartbarkeit und Zusammenarbeit zwischen Fachseite, Auftraggeber und Entwicklung.
So laufen Projekte für solche Fachanwendungen typischerweise ab
Bei Fachanwendungen dieser Art beginnt ein Projekt üblicherweise mit einer gemeinsamen Klärung von Ausgangslage, Zuständigkeiten und Zielbild. Gerade wenn ein Auftraggeber für einen öffentlichen Endkunden umsetzt, ist es wichtig, Kommunikationswege und Entscheidungsrunden eindeutig festzulegen. So wird früh sichtbar, wer fachliche Anforderungen bewertet, wer technische Entscheidungen vorbereitet und wer Freigaben erteilt.
In der Konzeptphase wird typischerweise beschrieben, welche Arbeitsabläufe das System unterstützen soll, welche Daten geführt werden und an welchen Stellen andere Behörden oder Organisationseinheiten eingebunden sind. Parallel wird die Struktur der Anwendung geplant: Welche Bereiche werden voneinander getrennt, wie werden Berechtigungen gedacht und wie sollen Änderungen künftig umgesetzt werden. Für browserbasierte Fachanwendungen gehört dazu oft auch die Planung der Datenbankentwicklung, Schnittstellen und Datenmigration, weil Datenmodelle und Anbindungen an andere Systeme die Anwendung stark prägen.
Danach folgt meist die Umsetzung in abgestimmten Arbeitspaketen. Regelmäßige Abstimmungen mit Fachseite und Auftraggeber helfen, fachliche Fragen früh zu klären und Missverständnisse zu vermeiden. In solchen Projekten ist es sinnvoll, Architekturentscheidungen nicht nur intern zu treffen, sondern transparent zu dokumentieren und mit den Beteiligten zu besprechen. Das gilt besonders dann, wenn ein bestehendes System modernisiert wird oder wenn Arbeitsweisen im Team umgestellt werden.
Zur Umsetzungsphase gehört häufig auch der Aufbau oder die Anpassung der Entwicklungsprozesse. Dazu zählen Versionsverwaltung, Nachvollziehbarkeit von Änderungen, Freigaben und geregelte Übergaben in Test und Betrieb. Eine moderne Versionsverwaltung erleichtert es, Änderungen parallel zu entwickeln, zusammenzuführen und nachvollziehbar zu prüfen.
Vor dem Livegang stehen typischerweise Qualitätssicherung, Abnahme und die Vorbereitung des Betriebs. Qualitätssicherung bedeutet, dass Funktionen, Datenflüsse und Bedienabläufe systematisch geprüft werden. Danach folgt der geregelte Übergang in den Betrieb mit klaren Zuständigkeiten für Support, Korrekturen und Weiterentwicklung.
Wer ein ähnliches Projekt plant, kann den Rahmen früh schärfen, indem er die Anforderungen strukturiert aufbereitet. Dafür eignen sich ein Projekt-Check oder ein unverbindliches Erstgespräch, um Aufgabenbild, offene Punkte und den voraussichtlichen Zuschnitt des Vorhabens zu klären.
Typische Stolpersteine bei Betrieb, Schnittstellen und Änderungen
In solchen Vorhaben liegen die größten Risiken oft nicht in einzelnen Funktionen, sondern an den Übergängen zwischen Fachlichkeit, Technik und Organisation. Ein häufiger Stolperstein ist unklare Verantwortung. Wenn nicht eindeutig festgelegt ist, wer Anforderungen priorisiert, Änderungen freigibt oder fachliche Rückfragen beantwortet, entstehen Verzögerungen und widersprüchliche Entscheidungen.
Ein weiterer kritischer Punkt sind Schnittstellen und Daten. Schnittstellen sind technische Verbindungen zu anderen Systemen, über die Daten ausgetauscht werden. Gerade bei behördenübergreifenden Prozessen müssen Datenfelder, Zuständigkeiten und Aktualisierungsregeln sauber beschrieben sein. Andernfalls kommt es leicht zu Medienbrüchen, doppelter Pflege oder widersprüchlichen Datenständen. Auch Migrationen sollten sorgfältig vorbereitet werden, damit Altbestände, Historien und fachliche Besonderheiten nicht verloren gehen.
Bei der Anwendung selbst sind Berechtigungen und Nachvollziehbarkeit besonders wichtig. Ein System im Verwaltungsumfeld muss in der Regel verschiedene Rollen, Zuständigkeiten und Bearbeitungsstände abbilden. Deshalb sollte früh geklärt werden, wer was sehen, anlegen, ändern oder freigeben darf. Ebenso relevant ist die Protokollierung von Änderungen, damit Vorgänge nachvollziehbar bleiben. Welche rechtlichen Vorgaben im Einzelfall gelten, sollte mit den zuständigen Stellen sowie bei Bedarf mit Rechtsberatung oder Datenschutzbeauftragten geprüft werden.
Auch der Betrieb verdient früh Aufmerksamkeit. Es reicht nicht, eine Anwendung zu entwickeln; sie muss auch verlässlich bereitgestellt, überwacht und weiterentwickelt werden. Dazu gehören geregelte Abläufe für Änderungen, Releases, Fehlerbehebung und technische Pflege. Wenn der Betrieb in der Cloud geplant ist, sollten Verantwortlichkeiten, Sicherheitsmaßnahmen, Zugriffe und Betriebsprozesse von Anfang an mitgedacht werden. Informationen zu Hosting und Betrieb in der Microsoft Cloud helfen, die betrieblichen Fragen strukturiert einzuordnen.
Schließlich wird die Wartbarkeit oft unterschätzt. Wenn Teams wachsen, Zuständigkeiten wechseln oder neue Anforderungen hinzukommen, rächt sich unstrukturierter Code schnell. Deshalb lohnt es sich, Architektur, Benennung, Tests und Entwicklungsprozesse konsequent zu pflegen. Wer ein ähnliches Vorhaben vorbereitet, sollte diese Punkte nicht als Nebenthemen behandeln, sondern als festen Teil des Projekts.
Häufige Fragen
Wovon hängen die Kosten einer Verwaltungssoftware für Schulen ab?
Die Kosten hängen bei solchen Vorhaben vor allem vom fachlichen Umfang, von Rollen- und Berechtigungskonzepten, von Schnittstellen, von bestehenden Altsystemen und vom gewünschten Betriebsmodell ab. Auch die Qualität der vorhandenen Anforderungen beeinflusst den Aufwand deutlich. Für eine erste Einordnung eignet sich der Kostenrechner. Liegen bereits eine Beschreibung oder ein Lastenheft vor, ist ein Projekt-Check sinnvoll, um offene Punkte und die Kostenspanne strukturierter zu klären.
Wie geht man an ein solches Projekt am besten heran?
Bewährt hat sich ein Vorgehen, das Fachlichkeit, Architektur und Betrieb von Anfang an zusammen betrachtet. Zunächst werden Anforderungen, Erwartungen und Rahmenbedingungen geklärt. Danach folgen Konzept und Design mit einer belastbareren Einordnung des Vorhabens. In der Umsetzung sind regelmäßige Abstimmungen wichtig, damit fachliche Entscheidungen und technische Konsequenzen zusammenpassen. Anschließend folgen Qualitätssicherung, Livegang sowie Support und Weiterentwicklung.
Welche Risiken sollte man früh einplanen?
Typische Risiken liegen in unklaren Zuständigkeiten, unscharfen Anforderungen, schwer überschaubaren Schnittstellen und einer gewachsenen Codebasis. Ebenfalls kritisch sind ungeklärte Freigabeprozesse und fehlende Regeln für Änderungen und Releases. Wenn personenbezogene oder sensible Daten betroffen sind, sollten Datenschutz, Aufbewahrung, Zugriffe und Protokollierung früh mit den zuständigen Fachstellen geklärt werden. Rechtliche Bewertungen sollten dabei durch geeignete interne Stellen oder externe Beratung erfolgen.
Was muss das System im Betrieb dauerhaft leisten?
Im Betrieb muss eine solche Fachanwendung nicht nur erreichbar sein, sondern kontrolliert geändert und nachvollziehbar weiterentwickelt werden. Dazu gehören Überwachung, geregelte Releases, Fehlerbehebung, Benutzer- und Rechteverwaltung sowie ein sauberer Umgang mit Daten und Schnittstellen. Wichtig ist auch, dass Wissen nicht nur in einzelnen Köpfen steckt, sondern dokumentiert und im Team nutzbar ist. So bleibt das System auch bei Änderungen handhabbar.
Wann lohnt sich externe Unterstützung durch einen Softwaredienstleister?
Externe Unterstützung ist besonders sinnvoll, wenn Architekturentscheidungen anstehen, vorhandene Systeme modernisiert werden sollen oder internes Personal im Tagesgeschäft gebunden ist. Auch bei Übergängen zwischen Auftraggeber, Fachseite und Entwicklung hilft ein externer Partner oft, Anforderungen zu strukturieren und Prozesse sauber aufzusetzen. Wenn Sie ein ähnliches Vorhaben vorbereiten, können wir bei ballmüller solutions den Projektrahmen in einem unverbindlichen Erstgespräch gemeinsam einordnen.
