Was ist ein Basisdienst
In der IT wird oft aus wirtschaftlichen Gründen eine Wiederverwendung propagiert. Wiederverwendung gibt es auf verschiedenen Abstraktionsebenen: Code-Fragmente, ganze Softwareprogramme, Basisdienste. Im Rahmen von Kundenprozessen und einer Ende-zu-Ende Verantwortung für ganze Kundenprozesse erhält diese Wiederverwendung von Basisdiensten innerhalb eines Kundenprozesses neue Relevanz.
Ich fokussiere mich hier auf Basisdienste, die von mehreren Kundengruppen in den jeweiligen Kundenprozessen genutzt werden.
Was ist ein Basisdienst ?
Ein Basisdienst in einer Plattform ist ein essenzieller Service, der eine grundlegende Funktionalität bereitstellt, die von mehreren Kundenkreisen genutzt wird. Diese Dienste sind typischerweise Teil der Architektur einer Plattform und bieten grundlegende Funktionen oder Ressourcen, die von anderen Diensten oder Anwendungen genutzt werden können, um spezifische Aufgaben zu erfüllen. Ein Basisdienst zeichnet sich durch seine breite Anwendbarkeit in mehreren Prozessen, seine Unterstützung für verschiedene Nutzungszenarien aus. Typische Beispiele für Basisdienste sind Authentifizierungsdienste, Stammdatenverwaltung oder Kommunikationsdienste. Ein Basisdienst sollte flexibel einsetzbar aber stabil in seinem Funktionsumfang sein.
Vor- und Nachteile
Basisdienste, der in mehreren Prozessen verwendet wird, reduziert die Aufwände für eine Neuerstellung, unterstützt Standardisierung und erhöht die Qualität. Andererseits erhöht er die Abhängigkeiten von diesem Basisdienst. Da Basisdienste nur eine optimierte und stabile Funktionalität bereitstellen, schränken sie zusätzlich die Flexibilität von den Bereichen ein, die den Basisdienst mit erweiterte Funktionalität nutzen möchten, aber durch die Kriterien an einen Basisdienst Funktionseinschränkungen hinnehmen müssen.
Wann ist ein Basisdienst sinnvoll ?
Im Sinne einer ganzheitlichen Verantwortung für Kundenprozesse ist es erforderlich, dass die Anzahl der Schnittstellen eines Kundenprozesses zu anderen Einheiten und damit auch zu Basisdiensten minimal gehalten wird und immer wieder der Prüfung auf Notwendigkeit unterzogen wird.
Damit die Entscheidung für einen Basisdienst und dessen Funktionsumfang objektiv getroffen werden kann, erfordert es Kriterien, die regelmäßig zu evaluieren sind.
Kriterien an einen Basisdienst
Wenn die Entscheidung für einen Basisdienst gefallen ist, gibt es besondere Qualitätskriterien, die dieser erfüllen muß, denn wenn zum Beispiel ein Basisdienst so programmiert ist, dass die verschiedenen Kundengruppen und Nutzergruppen individuell angepasst werden müssen, kann dies tatsächlich die Wiederverwendbarkeit des Dienstes beeinträchtigen und ihn weniger zu einem Basisdienst machen.
- Wiederverwendbarkeit in verschiedenen Kundenprozessen: Dies kann anhand der Anzahl der nutzenden Prozesse gemessen werden, die den Basisdienst verwenden, zB anhand eines Prozessmanagements. Ohne ausreichende Wiederverwendung muss man einen Basisdienst zu einem regulären Dienst umkategorisieren.
- Wirtschaftlichkeit: Der Basisdienst muß seine Wirtschaftlichkeit begründen können. Dazu sind nicht nur die Einsparungen bei den Entwicklungssaufwendungen durch die Wiederverwendung sondern Einschränkungen in der Flexibilität, sowie Mehraufwände durch die erhöhten Qualitätskriterien mit zu berücksichtigen
- Stabilität und Zuverlässigkeit: Ein Basisdienst muss stabil und zuverlässig sein, da von ihm andere Diensten oder Anwendungen abhängig sind. Ausfälle oder Störungen in einem Basisdienst können sich auf das gesamte System auswirken. Indikatoren für dieses besondere Qualitätskriterien sind Verfügbarkeit, Leistung, Fehler- und Ausfalltoleranz
- Nutzung und Akzeptanz: Die wird durch Überwachung der Anzahl der Benutzer, der Häufigkeit der Nutzung und des Feedbacks der Benutzer bewertet werden.
- Konfigurierbarkeit: Dies ermöglicht es individuelle Anforderungen von Kundengruppen im Basisdienst zu berücksichtigen. Hierbei ist sicherzustellen, dass der Umfang der Konfigurierbarkeit nicht den Gedanken des Basisdienstes unterwandert und nicht unter dem Mantel des Basisdienstes drei einzelne vollwertige Individualprogrammierungen stehen. Als Indikator kann der Umfang der Aufwände für individuelle Kundengruppen im Basisdienst dienen.
Messung der Kriterien
Durch die regelmäßige Überwachung und Messung dieser Kennzahlen können Organisationen die Leistung und Qualität ihrer Basisdienste bewerten und sicherstellen, dass sie den Anforderungen und Erwartungen der Benutzer entsprechen.
Zur Messung dieser Kriterien können auch qualitative Ansätze wie Umfragen, Interviews oder Fallstudien eingesetzt werden, um Einblicke in die Wiederverwendbarkeit, vielseitige Anwendbarkeit und Unterstützung verschiedener Nutzergruppen zu gewinnen. Diese Ansätze können helfen, das Ausmaß zu verstehen, in dem der Basisdienst die Bedürfnisse und Anforderungen verschiedener Benutzer und Anwendungsfälle erfüllt.
Empfehlung
Um die systematische Nutzung von Basisdiensten sicherzustellen gibt es verschiedene Ansätze:
- Abstraktionsebenen einführen: Dadurch steigt die Vergleichbarkeit von Diensten im Kontext der Wiederverwendung.
- Konfigurierbarkeit: Der Basisdienst kann so gestaltet werden, dass er durch Konfigurationsparameter an die Anforderungen verschiedener Nutzergruppen angepasst werden kann. Auf diese Weise kann ein einzelner Dienst flexibel genug sein, um eine Vielzahl von Anwendungsfällen zu unterstützen.
- Modularität fördern: Durch die Modularisierung des Basisdienstes können bestimmte Funktionalitäten separat entwickelt. Auf diese Weise können spezifische Anpassungen für verschiedene Kundengruppen in separaten Modulen implementiert werden, ohne die Gesamtwiederverwendbarkeit des Dienstes zu beeinträchtigen. Dies kann auch dabei helfen, einen Basisdienst in einzelne spezifische Dienste aufzuteilen, wenn die Konfigurierbarkeit überhand genommen hat.
- Etablieren einer Governance: Bei Anforderungen an den Basisdienst sind die Kriterien an Basisdienste anzuwenden. Bei der Einhaltung der Governance helfen Architektur-Assessments spezifisch zu Evaluierung der Anforderungen an Basisdienste.
Durch die Anwendung dieser Ansätze kann ein Basisdienst so gestaltet werden, dass er flexibel und wiederverwendbar ist, ohne die individuellen Anforderungen verschiedener Kundengruppen zu vernachlässigen. Dies ermöglicht es, die Vorteile eines Basisdienstes zu erhalten, während gleichzeitig die Bedürfnisse verschiedener Nutzergruppen berücksichtigt werden.