Echte Individualsoftware − wenn Standardlösungen nicht passen
Das erwartet Sie in diesem Artikel:
Warum Netzbetreiber maßgeschneiderte IT-Lösungen brauchen
Ein Fachbeitrag von Harald Mühlhoff, Software-Architekt, und Matthias Liesbrock, Lead-Entwickler.
Netzbetreiber stehen vor einer komplexen Herausforderung: Sie müssen ihre Hoch- und Höchstspannungsnetze effizient verwalten, modernisieren und gleichzeitig Kosten optimieren. Standardsoftware stößt dabei oft an ihre Grenzen.
Die SMF GmbH entwickelt daher seit vielen Jahren IT-Lösungen für Netzbetreiber, darunter Teile der TMSuite von SPIE, die bei Leitungsnetzbetreibern zum Einsatz kommt; z.B. TMBase für die Bestandspflege und Planung von Hoch- und Höchstspannungsnetzen und TMLeisys für die zugehörige Liegenschaftsverwaltung. Doch wie entsteht eine maßgeschneiderte Softwarelösung, die wirklich passt? Ein Blick hinter die Kulissen zeigt, worauf es ankommt.
Von der Idee zur Lösung: Evolution der TMSuite
Jedes neue Softwaremodul beginnt mit einer klaren Anforderung: So entstand etwa TMCheck, um die Netzprüfung vom Boden und aus der Luft zu unterstützen. Wenn Sie einen Blitzeinschlag in einen Strommast auf dem Parkplatz eines Einkaufszentrums überleben, so könnte es an der softwaregestützten Erdungsprüfung mit unseren Produkten liegen.
Auch unser Produkt Mareq ist ein Beispiel für eine präzise IT-Lösung: Leitungsnetzbetreiber wissen durch Erfassung während des Leitungsbaus zukünftig genau, welche Teile aus welchen Produktchargen in den Masten verbaut wurden, um Probleme gezielt beheben zu können. Das vermeidet aufwändige Inspektionen und sorgt für eine gezielte Wartung – eine wichtige Lektion, wenn man an die massiven Stromausfälle im Münsterland nach Eislastschäden vor einigen Jahren denkt.
Technologischer Wandel: Von alten Systemen zu moderner Architektur
Eine intensive Zusammenarbeit in der IT über Jahrzehnte geht naturgemäß nicht, ohne dem technologischen Wandel Rechnung zu tragen. Die TM-Produktentwicklung für SPIE startete mit einer Gupta SQLWindows-basierten Lösung („FAT Client“ mit Oracle Datenbank-Backend). Über Jahre entstanden umfangreiche und passgenaue Anwendungen mit einem speziellen Datenmodel, das insbesondere die Modellierung von geplanten Leitungen basierend auf dem Bestand unterstützte.
Die Technologie funktionierte lange, aber für moderne Anforderungen reichte sie nicht mehr aus. Eine Neuentwicklung parallel zur Weiterentwicklung der Alt-Anwendung kam jedoch aus Kostengründen nicht infrage; neue Module sollten nur in der „neuen Welt“ entstehen. Die Lösung: Eine schrittweise Migration, die Kompatibilität wahrt und gleichzeitig Innovation ermöglicht.
Der erste Schritt führte weg von Gupta SQLWindows. Ein eigener OR-Mapper wurde in Microsoft .NET mit der Programmiersprache C# entwickelt. Er unterstützt verschiedene Datenbanken wie z.B. Oracle, aber auch SQLite für mobile Endgeräte. Er kümmert sich um die Handhabung von „Details“, wie logisch gelöschte Sätze und den Zugriff auf das Datenmodell aus den Planungssichten oder der Bestandssicht.
Der zweite große Schritt war die Ablösung der Alt-Anwendungen TM2 BASE und LEISYS. Dabei wurde die neue Client-Server-Anwendung TM3 so entwickelt, dass sie bestehende Module schrittweise ersetzte, ohne das bewährte Datenmodell aufzugeben. Gleichzeitig sollte die Abhängigkeit von einem konkreten UI-Framework vermieden werden, um langfristige Flexibilität zu gewährleisten.
Ein entscheidender Schritt für die Plattformunabhängigkeit war die Umstellung von Microsoft .NET Framework auf .NET Core (heute .NET). Durch regelmäßige Updates profitieren Entwicklerinnen und Entwickler von neuen Sprachfeatures und Performance-Optimierungen – ohne unnötigen Mehraufwand.
Schrittweise Migration: Ein neues Framework für nachhaltige IT-Lösungen
So entstand, parallel zur schrittweisen Migration der Alt-Anwendung, ein neues Framework mit einigen zentralen Bausteinen:
Ein verteilter OR-Mapper, der sowohl In-Speicher-Transaktionen wie auch das Remoting von Objekten sowie Transaktions-Kontexten zwischen Client und Server erlaubt.
Unterstützt wird er von einem Model-Editor, der die komfortable Pflege der Entitäten wie Masten, Leitungen, Spannfelder… ermöglicht. Ein Datenbank-Update-Tool erlaubt die einfache Migration nach Model-Aktualisierungen. So können wir Entwicklerinnen und Entwickler uns auf die Lösung der Anwender-Herausforderungen konzentrieren und das trotz der Besonderheiten im Datenmodell.
Ein verteilter Linq-Provider, der den OR-Mapper um die Unterstützung für komplexe Abfragen direkt aus C# erweitert.
Komplexe benutzer-initiierte Suchabfragen umfassen teilweise mehrere Dutzend Entitäten, aber selten werden alle Suchbegriffe gleichzeitig eingegeben. Durch eigene Erweiterungen wie „Required Linq-Parts“, können je nach Benutzerinteraktion oder gewählter Tabellensicht die Befehle vor der Umsetzung in SQL und Ausführung in der Datenbank passgenau vereinfacht werden. Aus fünfzig Joins im Maximal-Statement werden so ggf. nur sechs. Spalten, die nicht benötigt werden, nicht ermittelt.
„Server-Functions“ und „Server-Properties“ laden Datenbankwerte direkt auf dem Server nach, um teure Roundtrips zu vermeiden. Diese Art von − für unseren Anwendungsfall kritischen − Optimierungen lassen sich mit „Out of the box“-Lösungen nicht realisieren. Ihre Entwicklung erfordert eine Mischung aus rationalem und kreativem Denken sowie eine gehörige Dosis Inspiration.
Eine ressourcenbasierte Beschreibung der Oberflächen, die die produkt-, kunden- und berechtigungsoptimierte Erzeugung von Oberflächen für verschiedene UI-Frameworks erlaubt.
Ein gemeinsam genutzter Layouter erzeugt Layout-Objekte, die dann von Plattform-spezifischen Renderern in optimierte Oberflächen umgesetzt werden. Aktuell werden Microsoft WPF für Windows, Maui für Android und iOS und Blazor Server für das Web unterstützt. Unterschiede zwischen Kunden werden dabei im Wesentlichen deklarativ beschrieben, Beschäftigte erhalten genau die Oberflächen für deren Nutzung sie berechtigt sind.
Die Migration auf eine neue View-Schicht, wie z.B. Blazor Server, ist dabei deutlich weniger aufwändig, als wenn auch die zugrundeliegenden ViewModel- und Model-Schichten erneut programmiert werden müssten. Das zeigt sich bei der aktuellen Migration von WPF ins Web. Aber auch die App-Entwicklung für iOS (und Android) profitiert von diesem Ansatz; für TMCheck iOS werden die Oberflächen analog zu TM3 mittels Ressource-Dateien beschrieben, mit demselben Layouter gelayoutet und dann mit plattformspezifischen Renderern ausgegeben.
Remote-Message- und Server-Task-Infrastruktur
Die Remote-Message- und Server-Task-Infrastruktur ist ausgezeichnet geeignet für die komfortable und sichere Entwicklung von komplexen Funktionen, die am besten datenbanknah auf den Applikationsservern laufen.
Beispielsweise werden komplexe Berechnungen an den Stromkreisen in Remote-Messages auf dem Server vorgenommen, genauso wie die Übernahme einer Planung in den Bestand.
Workflow-Aktionen und -Hubs
Workflow-Aktionen und Workflow-Hubs erlauben die Integration in produktübergreifende Workflows, z. B. mittels des Workflow-Orchestrators Camunda. Gleichzeitig werden diese aber auch für die Kommunikation zwischen TMBase und TMLeisys verwendet oder für die Anbindung an das Geoinformationssystem TMGIS. Aktuell sind erste Schritte für die KI-Anbindung in Planung. Auch hier wird es entscheidend sein, feingranular und sicher die Anwendungsfunktionalität von außen steuern zu können.
Iterative Entwicklung: Schrittweise zum optimalen System
Der iterative Ansatz war und ist für den Projekterfolg sehr wichtig. Obwohl viele architektonische Grundsätze von Beginn an klar waren und sein mussten, erfolgte die Implementierung schrittweise. So wurden die Oberflächen mittels Form(ular)-Elementen beschrieben, als sie noch durch clientseitigen Code und nicht durch entsprechende serverseitige Infrastruktur erzeugt wurden.
Ein zentraler Fokus lag auf der Stabilität von Schnittstellen und APIs. Die Implementierung durfte sich weitgehend auf das jeweils Notwendige beschränken. Anfangs war der Aufwand aufgrund der parallelen Framework-Entwicklung höher, als es mit Fertig-Frameworks der Fall gewesen wäre. Aber bei der Umsetzung der zunehmend komplexer werdenden Module, zeigten sich rasch die Vorteile und wir wurden im weiteren Projektverlauf immer schneller. Einfache Module zur Datenpflege erfordern kaum Programmierung und sind in wenigen Stunden fertig. Aber auch komplexe Module profitieren von der einheitlichen Bedienung, von Erweiterungen und Performance-Verbesserungen im Framework.
Der ultimative Tipp für den Wissenstransfer: Software-Architektur-Wanderungen
Die Entwicklung einer solch komplexen Individualsoftware gelingt nicht im Alleingang. Entscheidend ist der kontinuierliche Austausch zwischen Entwicklerinnen, Entwicklern, Netzbetreibern und IT-Verantwortlichen. Es galt, sie alle auf ihrem aktuellen Kenntnisstand abzuholen und in einem von Vertrauen getragenen Prozess mit den neuen Techniken vertraut zu machen.
Dafür haben wir „Software-Architektur-Wanderungen“ etabliert. Dabei standen nicht nur frische Luft und Bewegung im Fokus, sondern vor allem der offene Austausch über technische Themen. Diese Wanderungen, kombiniert mit Fachvorträgen und Diskussionen, schufen eine ideale Lernumgebung. Je nach Interesse und Fitness führten sie über Strecken von 13 bis 31 Kilometern – mit einem wohlverdienten kulinarischen Abschluss.
Das Konzept hat sich bewährt: Beim Onboarding neuer Kolleginnen und Kollegen nutzen wir die Wanderungen auch heute noch.
Erfolgsfaktor Teamarbeit: Zusammenarbeit als Schlüssel zur Stabilität
Neben dem intensiven fachlichen Austausch innerhalb eines Kernteams, das als Multiplikator innerhalb der Entwicklergruppe dient, ist auch die Rückendeckung seitens der Geschäftsführung entscheidend. Sowohl bei fachlichen wie auch gelegentlichen zwischenmenschlichen Herausforderungen müssen diese gemeinsam gelöst werden, bevor sie zu Projektrisiken werden. Fachliche Expertise ist ebenso gefragt wie ein gutes Gespür für zwischenmenschliche Dynamiken.
Aufgrund der langjährigen Zusammenarbeit mit den Endkunden lassen sich viele Themen auf dem „kleinen Dienstweg“ klären, Erwartungsmanagement betreiben und somit Missverständnisse und Konflikte weitgehend vermeiden. Unsere Ansprechpartner auf Kundenseite sind längst mehr als nur Geschäftspartner – sie sind Teil des Teams.
Diese Nähe trägt durch ein wechselseitiges Geben und Nehmen zum Projekterfolg maßgeblich bei.
An dieser Stelle ist Agilität keine hohle Phrase mehr. Wie an vielen Stellen gehen wir auch im Entwicklungsprozess pragmatischer vor als der Name „Scrum“ vermuten lässt.
Ein weiterer Erfolgsfaktor ist eine durchdachte Tool-Landschaft: Microsoft Visual Studio als Entwicklungsumgebung, Bitbucket für das Quellcode-Management und die Verwaltung der Pull Requests, Redmine als Ticket-System ermöglichen eine reibungslose Zusammenarbeit. Strukturierte Release-Prozesse tragen zusätzlich zur Stabilität bei: Je ein Release-Manager verantwortet die Produkte TMBase und TMLeisys und koordiniert die aktuell im zweiwöchigen Rhythmus durchgeführten Test- und Release-Phasen. Hotfixes kommen zwar noch vor, sind aber durch den von vier auf zwei Wochen verkürzten Release-Zyklus seltener geworden.
Fazit: Maßgeschneiderte IT-Lösungen als Schlüssel zum Erfolg
Netzbetreiber brauchen Software, die nicht nur funktional, sondern auch flexibel, skalierbar und zukunftssicher ist. Die TMSuite zeigt, dass eine durchdachte Kombination aus technologischer Innovation, enger Kundenkommunikation und iterativer Entwicklung den Unterschied macht. Standardsoftware kann vieles – aber nicht alles. Wenn Netzbetreiber wirklich effiziente Lösungen wollen, führt an echter Individualsoftware kein Weg vorbei.
* Pflicht für alle Anfragen zu unseren Angeboten.
Weiterführende Links




