Nachdem in Teil 1 des Beitrags strategische Trends sowie die Gestaltung der Produktauswahl Thema waren, werden im Folgenden Handlungsfelder und Erfolgsfaktoren für die konkrete Produktintegration in die eigene IT-Landschaft vorgestellt.
Klare Prioritäten für Customizing, Qualität und Termin gleich zu Beginn setzen
Die Einführung und das Customizing von Standardsoftware können sich hinsichtlich verschiedenster Aspekte entweder am Herstellerstandard oder an unternehmensindividuellen Bedürfnissen orientieren. Die Orientierung am Standard erfordert weniger Einführungsaufwand, weniger Anpassungsbedarf bei neuen Produktversionen und bietet bessere Regressmöglichkeiten bei Produktfehlern, etwa Performancedefiziten. Wenn dieser Standard jedoch nicht gut genug passt, führt dies meist zu spürbaren Einführungswiderständen, Akzeptanzproblemen und Produktivitätsverlusten.
Während auf Managementebene meist der Wunsch nach Standardisierung überwiegt, so findet man auf Arbeitsebene eher den Wunsch nach Individualisierung. Da sich ein Standardsoftwarekauf bei umfangreichen Individualisierungen irgendwann ad absurdum führt, sollte die Priorität auf Einhaltung des Herstellerstandards mit wenigen definierten Ausnahmen liegen. Diese Strategie inklusive der Kriterien für zulässige Ausnahmen sollte durch das Management vorab klar kommuniziert und in ihrer Umsetzung kontinuierlich überwacht werden.
Eine weitere Prioritätensetzung ist zwischen Qualität und frühem Einführungstermin notwendig. Mit der Entscheidung für Standardsoftware ist fast immer die Erwartung verbunden, dass mit dem Kauf quasi schon die Einführung geschafft ist. Eine überhastete Einführung wirkt sich aber negativ auf die Qualität aus, was letztendlich auch zu unnötig hohen „total-cost-of-ownership“ über die Zeit führen wird. Die Erwartung an den Einführungszeitpunkt etwas herunterzuschrauben, ist hinsichtlich vieler Aspekte meist die beste Entscheidung. Wurde das richtige Produkt ausgewählt, so ergibt sich gegenüber einer Individualentwicklung immer noch ein deutlicher Zeitgewinn, der aber nicht mit Einführungs- und Betriebsproblemen erkauft wird.
Die konkreten Einführungsaktivitäten bestehen dann im Wesentlichen aus den folgenden Bausteinen:
Bild 2: Bausteine erfolgreicher Produktintegration
Fachliche Systemintegration
Bereits bei der Produktauswahl muss die Unterstützung zentraler Anforderungen und Geschäftsprozesse abgesichert worden sein. Aber auch der beste Auswahlprozess kann nicht alle fachlichen Details berücksichtigen, so dass Inkompatibilitäten zwischen Standardsoftware und Anforderungen nicht vollständig vermeidbar sind. Teilweise werden auch offene Themen (Schnittstelleninkompatibilitäten, Performancerisiken etc.) in der Auswahl identifiziert, können aber durch keines der in Frage kommenden Produkte gelöst werden.
Prinzipielle Lösungsmöglichkeiten sind die Anpassung der Unternehmensprozesse an die Standardsoftware, die Beauftragung von Anpassungen beim Anbieter – sofern dies inhaltlich, zeitlich und finanziell möglich ist – sowie die Entwicklung von Adapterlösungen.
Da jede dieser Möglichkeiten den Einführungszeitplan deutlich verschieben kann, sollten offene fachliche Themen und Risiken möglichst frühzeitig und vollständig identifiziert werden. Die beste Strategie ist es, zunächst eine Problem- und Risikosuche in der Breite durchzuführen, die dann abhängig vom Ergebnis arbeitsteilig detailliert werden kann. Auf dieser Basis ist dann ein Umsetzungsplan zu entwickeln, mit dem die fachlichen Integrationsaufgaben schrittweise abgearbeitet werden können.
Technische Systemintegration
Obwohl die technische Architektur durch die Standardsoftware gegeben ist, sind in der Regel doch einige technische Grundlagenentscheidungen hinsichtlich der unternehmensspezifischen Integration in die eigene IT-Landschaft notwendig:
-
Auswahl und Sizing der technischen Plattform und Systemsoftware (DBMS etc.)
-
Technische Form der Anbindung der Schnittstellen (SOAP, REST etc.)
-
Analyse und Umsetzung von IT-Security-Anforderungen
-
Anbindung an die Benutzer- und Berechtigungssysteme des Unternehmens
-
Konfiguration der Netzinfrastruktur (Firewalls, Load Balancer etc.)
-
Anwendungsmonitoring, Betriebstelemetrie etc.
Wesentliche Akteure sollten hier die eigenen technischen Architekten sowie technisch qualifiziertes Personal des Standardsoftwareanbieters sein. Wichtige und komplexe Entscheidungen sollten zudem einem systematischen Architektur-Bewertungsprozess unterzogen werden.
Konfiguration und Customizing
Leistungsfähige Standardsoftware bietet nicht nur, sondern erfordert auch zahlreiche Stammdaten- und Konfigurationseinstellungen für Online- und ggf. auch Batch-Funktionalitäten. Diese Einstellungen können sowohl Einfluss auf die korrekte Funktionsfähigkeit als auch auf die Performance haben.
Installations-, Test- und Produktivsetzungsprozesse müssen dabei sicherstellen, dass die erforderlichen Customizing-Einstellungen über alle Umgebungsstufen – ggf. mit stufenspezifischen Anpassungen – konsistent umgesetzt werden.
Reichen die Customizing-Möglichkeiten nicht aus, oder sind Anpassungen an externen Schnittstellen notwendig, so sind bei vielen Einführungen zusätzlich Individualkomponenten zu programmieren. Für einen in der Regel kleinen Realisierungsumfang sind dann zusätzlich Methoden und Aktivitäten für eine Individualentwicklung (Softwaredesign, Programmierung, Unit-Tests etc.) erforderlich.
Migration von Daten und Rechten
Bei den meisten Standardsoftwareeinführungen wird eine bestehende Software abgelöst. Damit stellen sich mit der Migration von Daten und Benutzerrechten zwei Aufgaben, deren Komplexität, Aufwand und Risikopotenzial immer wieder unterschätzt werden.
Schwierigkeiten bei der Migration von Daten entstehen oft durch eine schlechte Datenqualität im Altsystem oder durch Daten, die das Neusystem benötigt, aber das Altsystem entweder gar nicht oder im falschen Datentyp bereitstellt.
Im Bereich der Migration der Benutzerdaten und -rechte liegen die Herausforderungen meist in unterschiedlich strukturierten Rollen- und Rechtemodellen bzw. in komplett unterschiedlichen technischen Lösungsansätzen (LDAP, MS-Active-Directory-Services etc.).
Migrationsaktivitäten unterliegen zudem erhöhten revisionsrechtlichen Test-, Dokumentations- und Aufbewahrungspflichten. Da der Erfolg der ganzen Einführung durch eine qualitativ schlechte Migration in Frage gestellt werden kann, muss das Thema Daten- und Rechtemigration von Beginn an mit hoher Priorität angegangen werden.
Bereitstellung, Installation und Deployment vollständig automatisieren
Während früher Standardsoftwarereleases eher in Jahresabständen geliefert wurden, so geht der Trend heute zu deutlich kürzeren Update-Zyklen. Dies erfordert die
-
Online-Bereitstellung neuer Versionen inklusive ergänzender Dokumentationen durch den Anbieter.
-
Automatisierung sämtlicher Installations- und Deploymentaktivitäten über alle Umgebungsstufen.
-
Implementierung von „Smoketests“, um den Erfolg von Installationen automatisiert abzusichern.
Test und Qualitätssicherung bei Standardsoftware
Die Erwartung an ein Kaufprodukt ist, dass dieses vor Auslieferung sorgfältig getestet wurde. Die Erfahrung lehrt jedoch, dass man bereits bei der Produktauswahl die Qualitätssicherungsmaßnahmen des Anbieters kritisch hinterfragen sollte. Mindeststandards – etwa fachliche Regressionstests sowie Performancetests vor jeder Auslieferung – sind vertraglich abzusichern.
Zusätzlich sind aber auch folgende eigene Tests notwendig:
-
funktionale Tests, mit denen stichprobenartig überprüft wird, ob Kernfunktionalitäten des Produkts tatsächlich vorhanden und die konkreten Customizing-Einstellungen wirksam sind,
-
Systemintegrationstests, um die Schnittstellenkompatibilität abzusichern,
-
Last- und Performancetests auf einer produktionsnahen Umgebung,
-
Intrusion-Detection- und Security-Tests sowie
-
Tests für individuell entwickelte Komponenten.
Im Hinblick auf gute Testabdeckung, Regressionstestfähigkeit, Reproduzierbarkeit und erforderlichen Personalaufwand sind diese Tests vollständig zu automatisieren.
Die optimale Gestaltung von Einführungsmethodik und Roll-out sowie Aspekte strategischer Zukunftsfähigkeit werden im abschließenden dritten Teil des Beitrags beschrieben.
Diese Serie besteht aus drei Teilen:
Einführung komplexer Standardsoftware (Teil 1/3) – Softwaretrends, Strategie und Produktauswahl