Robuste Systemevolution durch automatische Unterstützung

Boris Stumm
2005 Workshop Grundlagen von Datenbanken  
Unternehmen integrieren ihre Systeme immer stärker miteinander, um den größtmöglichen Nutzen aus den Informationen zu ziehen. Resultat sind hochkomplexe, verteilte Informationssysteme mit einer Vielzahl von Abhängigkeiten zwischen den beteiligten Einzelsystemen. Informationslandschaften unterliegen ständig verschiedenen Formen von Veränderung durch Umstrukturierungen, Neuanschaffungen usw. Während das bei einzelnen Systemen unproblematisch ist, können sich lokale Änderungen in einer
more » ... Informationslandschaft auf andere Systeme auswirken. Das reicht vom Totalausfall über Datenkorruption bis hin zu subtilen Fehlern, die möglicherweise erst viel später entdeckt werden. Diese negativen Auswirkungen müssen daher auf ein Minimum (sowohl an Zahl als auch an Dauer) reduziert werden. Das ist auf organisatorischer Ebene alleine (z. B. neue Geschäftsprozesse zur Koordination der Verantwortlichen) nicht zu bewältigen. In dieser Arbeit stellen wir einen Ansatz vor, der Entwickler und Systemverwalter einerseits bei Planung und Durchführung von Änderungen unterstützt, und andererseits das Gesamtsystem robust macht gegen ungeplante lokale Systemänderungen. Einleitung Die heutige Systemlandschaft ist geprägt von zunehmender Komplexität und Heterogenität. Durch Neuanschaffungen und Firmenzusammenschlüsse kommen immer neue Systeme hinzu. Verschiedene Systeme werden integriert, um die vorhandenen Informationen besser verarbeiten zu können. In einer solchen heterogenen Informationslandschaft werden einzelne Systeme immer wieder verändert und weiterentwickelt, sei es, um Fehler zu beheben, oder um neuen Bedürfnissen gerecht zu werden. Diesen nicht zentral gesteuerten Prozess nennen wir Systemevolution. In der Regel sind nur ein einzelnes oder einige wenige Systeme von einem Evolutionsschritt betroffen; aufgrund von Interdependenzen zwischen den Systemen kann sich eine Änderung jedoch auf weitere Systeme auswirken. Bei einer fehlenden Organisation dieses Prozesses werden die Auswirkungen möglicherweise erst viel später erkannt, was die Problemursachen schwer nachvollziehbar macht. Mit einer Änderung bezeichnen wir prinzipiell alle Vorgänge in einem System, die sich auf andere Systeme funktional auswirken. Das betrifft Schemaänderungen (Schemaevolution), Konfigurationseinstellungen, Netzwerkverbindung, Qualitätszusagen usw. Diese Problematik verschärft sich mit der zunehmenden Komplexität und Heterogenität von integrierten Informationssystemen, deshalb wird eine automatisierte Unterstützung des Evolutionsprozesses erforderlich. Wir möchten in dieser Arbeit einen Überblick über unseren Ansatz geben. Er soll ein Integrationssystem robust machen gegen Probleme, die durch lokale Änderungen hervorgerufen werden. Dazu definieren wir einen Prozess und stellen automatisierte Analysewerkzeuge bereit, die auch bei nicht optimalem Prozessablauf Probleme erkennen können. Die Arbeit ist wie folgt aufgebaut. In Abschnitt 2 grenzen wir die Probleme der Systemevolution in einer heterogenen Umgebung ein und stellen Soll-und Ist-Zustand in verteilten Informationsystemen gegenüber. Unser Ansatz, mit dem wir die Probleme angehen wollen, wird in Abschnitt 3 näher ausgeführt. Eine Abgrenzung zu verwandten und komplementären Arbeiten sowie ein Fazit geben wir in Abschnitt 4.
dblp:conf/gvd/Stumm05 fatcat:z7lx52gisrefndrpd3nyhzf6si