Melden Sie sich hier an, um auf Kommentare und die Whitepaper-Datenbank zugreifen zu können.

Kein Log-In? Dann jetzt kostenlos registrieren.

Falls Sie Ihr Passwort vergessen haben, können Sie es hier per E-Mail anfordern.

Der Zugang zur Reseller Only!-Community ist registrierten Fachhändlern, Systemhäusern und Dienstleistern vorbehalten.

Registrieren Sie sich hier, um Zugang zu diesem Bereich zu beantragen. Die Freigabe Ihres Zugangs erfolgt nach Prüfung Ihrer Anmeldung durch die Redaktion.

Ergänzung der Bottom-Up-Versuche der IS-Abteilungen

Der CASE-Fortschritt verlangt ein ingenieurmäßiges Vorgehen

02.08.1991

*Jürgen Gallmann ist Leiter Produktmarketing bei Ernst & Young in Stuttgart

Noch immer ist Software-Entwicklung in erster Linie Intuition; Trendsetter und Meinungsmacher die im Unternehmen anerkannt sind, bestimmen die Methoden, nach denen beim Systementwurf und auch bei der anschließenden Implementierung vorgegangen wird. Einen Ausweg aus diesem Dilemma sieht Jürgen Gallmann* in einem ingenieurmäßigen Vorgehen bei der Entwicklung von Informationssystemen unter Einbeziehung von leistungsfähigen Front-end- und Back-end-Werkzeugen.

Sinkende MIS-Budgets, wachsende Anforderungen und ein bröckelndes Vertrauen in die Informationstechnologie selbst, bieten keine optimalen Voraussetzungen für die Einführung und Durchsetzung der CASE-Technologie. Daß sich die Überwindung von Durststrecken lohnt, zeigen allerdings eine Reihe erfolgreich abgeschlossener Projekte, die in diesem Rahmen aussichtsreiche Zukunftsperspektiven eröffnen. Andererseits wissen alle CASE-Faszinierten, daß diese Technologie ihren Zenit noch lange nicht erreicht hat und sehen somit gespannt auf die Weiterentwicklung dieses momentan stark diskutierten Teilaspektes des Information Engineerings, wie es von IT-Guru James Martin vor Jahren bezeichnet wurde.

Welche Trends und Entwicklungsschritte zeichnen sich heute für die nächsten Jahre des CASE-unterstützten Information Engineerings ab, beziehungsweise welche heute erkennbaren Erfordernisse finden bereits Umsetzungen durch Strategieabteilungen und Technologie/Methoden-Anbieter?

Front-end-Tools reifer als Back-end-Tools

Viele Unternehmen, die heute bereits Computer-unterstütztes Software-Engineering betreiben, befinden sich hauptsächlich noch in den "Upper-CASE"-Phasen (Analyse/Design) des Software Development Lifecycles (SDLC). Dies liegt sicherlich einerseits daran, daß die sogenannten Front-end-Werkzeuge und die dafür notwendigen Methoden und Techniken eine größeren Reifegrad aufweisen als die technologisch komplexen Back-end-Tools, wie zum Beispiel die Generatoren.

Andererseits kämpfen die CASE-Verfechter in den Unternehmen gegen den Geist der "high sophisticated" Programmier-Freaks an, die der Generierung von Sourcecode aus ein paar "bunten Grafiken" einfach keinen Glauben schenken mögen.

Tatsache ist jedoch, daß die Entwicklung von anforderungsgerechten Informationssystemen kein Selbstzweck der Informationsbereiche ist, sondern die Unterstützung von betriebswirtschaftlichen beziehungsweise technischen Abläufen durch Computertechnologie ist. Das bedeutet, daß eine systematische Analyse unter Einbeziehung der neuen Technologien die Informationsgrundlage zur Erstellung eines Informationssystems darstellt. Diese Erkenntnis ist nicht neu, wird jedoch manchmal vergessen. Oft wird ein anstehendes Problem immer noch mit Schleifen- und Verzweigungs-Verschachtelungen erschlagen, obwohl die Anforderungen noch gar nicht ausdiskutiert wurden.

Knowledge-Engineers werden gefragt sein

Diese Art "Programm-Montierer" scheint aber über kurz oder lang im Rahmen des systematischen Information-Engineerings in Zukunft nur noch eine Randstellung einzunehmen. Wenn sich auch die heutige CASE-Welt noch mit Unzulänglichkeiten der Produkte bei der Umsetzung des logischen Modells in eine physische Implementierung herumschlagen muß, ist der Stand der Generatorentechnologie doch schon so weit, daß brauchbarer Sourcecode generiert werden kann, sofern gewisse Formalisierungs-Vorgehensweisen akkurat eingehalten werden.

Objektorientierte Ansätze und wiederverwendbare Modul-Netzwerke begünstigen diesen Trend und lassen den Traum der Generierung einer Applikation aus formalisierten Logikbausteinen Wirklichkeit werden.

Insofern wird die Zukunft der ingenieurmäßigen Systementwicklung den im KI-Bereich schon fast wieder aussterbenden Begriff des "Knowledge-Engineers" oder vielleicht besser "Wissens-Umsetzer" mehr denn je benötigen. Das Skill-Profil eines derartigen Allrounders schließt vor allen Dingen Kommunikations- und Formalisierungstechniken ein, um relevante Informationen zu erhalten, zu strukturieren und in eine für die Technologie entsprechende Form zu gießen. Vielfältiges Wissen über situativen Methoden- und Techniken-Einsatz sind dafür rudimentäres Handwerkszeug. Die fortschreitende Entwicklung der Realisierungstechnologie und die damit einhergehende Verschiebung der Hauptarbeit im SDLC zu den frühen Phasen, bewirkt somit auch eine nachhaltige Änderung im Berufsbild der dafür notwendigen Akteure.

Anknüpfend an die obigen Ausführungen ist es jedoch für ein Unternehmen, das die Bedeutung von Informationen im Hinblick auf die Erreichung von Unternehmenszielen erkannt hat, nicht genug, Investitionen in CASE- Technologie mit partiellen Qualitäts- und Produktivitätssteigerungen zu rechtfertigen. Um unternehmensweiten Nutzen aus diesen Investitionen zu ziehen, ist es endlich auch erforderlich, Informationssysteme strategisch zu planen, um durch die damit erreichbare Integration Synergie-Effekte zu erzielen. Diese Zielsetzung läßt sich jedoch nur erreichen, wenn sich auch das Management, jedenfalls ansatzweise, mit den "Niederungen" der Informationssystem-Planung beschäftigt und somit den in dieser Form bis dato noch etwas unpopulären Top-Down-Ansatz aus der Taufe hebt. Das erfordert allerdings von den Beteiligten ein Mehr an gegenseitigem Verständnis für die jeweiligen Aufgabenbereiche. Das Zusammenspiel von kritischen Erfolgsfaktoren, Unternehmenszielen, kritischen Annahmen, Informationsbedürfnissen und dergleichen ist eigentlich das, was in den Köpfen der Unternehmensstrategen operatives Alltagsgeschäft darstellt. Tagtäglich sind eine Vielzahl von Entscheidungen zu treffen, die auf Abwägungen von solchen Zusammenhängen beruhen. Kürzere Produkt-Lebenszyklen und steigender Wettbewerbsdruck verlangen nach kreativen Veränderungen beziehungsweise Anpassungen, die eine Umordnung oder Neugestaltung von Informationsflüssen nach sich ziehen .

Zur Erreichung einer zielkonformen Informationslogistik sind Verfahren, Methoden und Werkzeuge notwendig, die es ermöglichen, Informationsflüsse formalisiert zu dokumentieren, Transparenz zu schaffen und aktionsgerechte Änderungen zeitgerecht und adäquat durchzuführen .

Re-Development - ein vernachlässigtes Thema

Gerade bei den Enterprise-CASE-Tools, die eine Entwicklung von Systemen aus gesamtunternehmerischer Sicht schon teilweise mit sehr filigranen Ansätzen verfolgen, ist ein zunehmender Trend in diese Richtung zu verfolgen. Eine breite Durchdringung dieser Idee in den Chefetagen wird allerdings erst erfolgen, wenn die Unternehmen tatsächlich erkannt haben, daß Information ein kritischer Erfolgsfaktor darstellt.

Eine Top-Down-gerichtete Modellierung von Informationsströmen mittels abgestimmter Vorgehensmodelle und integrierter CASE-Umgebung würden sicherlich auch den schon oft abgewürgten Bottom-Up-Versuchen der IS-Abteilungen im Hinblick auf die Überzeugung der Management-Etagen von diesem Ansatz, zu neuem Leben verhelfen!

Ein Bereich, der immer mehr an Bedeutung gewinnen wird, ist das heute von den Forward-Engineering-orientierten CASE-Tools und Vorgehensweisen schmählich vernachlässigte Thema des Re-Development-Engineerings. Zum Verständnis der nachfolgenden Ausführungen zunächst eine Begriffsklärung: Re-Development gliedert sich aus unserer Sicht in drei Teile:

1. Reverse Engineering

2. Re-Systemization

3. Re-Engineering

Unter Reverse Engineering versteht man eine computergestützte Methodik zur Dokumentation der Prozeß- und Datenarchitektur einer bestehenden Applikation. Re-Systemization ist der Prozeß der Umstellung von Plattformen (etwa von IDMS zu DB2) ohne die Anwendung neu zu schreiben und ohne funktionale Änderungen. Als Re-Engineering bezeichnet man den Vorgang der kompletten Umstellung einer Applikation (auch der Trägersysteme/Plattformen) unter dem Gesichtspunkt, die Funktionalität neuen betriebswirtschaftlich/technischen Gegebenheiten anzupassen.

Der Prozeß des Re-Development-Engineerings findet heute bei CASE-Anbietern nur partielle Beachtung. Ein Großteil des Manpower-Aufwandes bei vielen IS-Bereichen geht jedoch zur Zeit in die Bereiche Maintenance, Redesign, Weiterentwicklung Automatisierungsprozesse und Werkzeugunterstützung sind für diese Aufgaben jedoch Mangelware, es sei denn, selbst erstellte Utilities können benutzt werden.

Objektorientierte Ansätze verfolgen

Zukünftig wird es aber auch für die Applikationspflege immer wichtiger werden, vorhandene schlecht oder gar nicht dokumentierte Anwendungen mit Reverse Engineering zu Transparenz zu verhelfen und die erhaltenen Daten- und Prozeßarchitekturen in Forward-Engineering-Umgebungen den aktuellen Anforderungen anzupassen, um daraus anschließend den Sourcecode zu generieren. Viele Unternehmen tragen sich schon seit Jahren mit dem Gedanken, Plattform-Umstellungen vorzunehmen. Vielfach scheiterten die Überlegungen am zu hohen Zeitbudget, das für solche Projekte mit herkömmlichen Techniken/Methoden veranschlagt wurde.

Inzwischen ist bei vielen CASE-Anbietern allerdings ein Trend zu erkennen, sich mehr in Richtung Re-Development-Engineering zu öffnen und somit auch für die lange Zeit unberücksichtigten "Maintenance-Programmierer" neue Anreize in Form von neuen Technologien schafft.

Der Begriff der "Objektorientierung" geistert momentan durch alle Gazetten und scheint zu einem neuen Modewort heranzureifen. Der gesamte Ansatz der Objektorientierung ist aber so neu gar nicht mehr, da er im technischen Umfeld und vor allen Dingen im Bereich der Artificial Intelligence eigentlich geboren wurde und mittlerweile auch auf die kommerzielle Informationsverarbeitung ausstrahlt. Die Idee dieses Ansatzes ist es, sachverhaltsbezogene Informationsobjekte zu definieren, die aus einem Methodenteil (definiert das Verhalten des Objektes = Operationen) und einem Datenteil (beschreibt die lokalen Daten = Zustand) bestehen. Solche Objekte haben ein festes Handlungsrepertoire und sind von anderen abgekapselt, können aber über definierte Kommunikationswege Informationen weitergeben (Inheritance). Der Vorteil dieses Ansatzes im Rahmen des Computergestützten Information-Engineerings ist, daß diese Vorgehensweise der Darstellung der Realität näher kommt als bisherige Verfahren.

Bei OOP fehlt die sattelfeste Methodik

Operationen sind genau einem Objekt zugeordnet und können bei entsprechender Klassifizierung/Referenzierung anderen Objekten notwendige Informationen liefern. Dieser zukunftsweisende Ansatz wird auch mehr und mehr bei der Entwicklung von Vorgehensweisen und CASE-Werkzeugen Einzug finden. Abgesehen von technischen Problemen gibt es momentan jedoch noch keine sattelfeste Methodik und Vorgehensweise, die sich dafür durchgesetzt hat. Außerdem eignet sich der derzeit populäre relationale Ansatz nur bedingt zur Implementierung eines objektorientierten Designs.

Wie schon im ersten Teil des Beitrages angesprochen wird erwartet, daß sich der Aufwand für die Entwicklung eines Anwendungssystems zunehmend in die frühen Phasen des SDLC verschieben wird. Der formalisierten Durchleuchtung von betriebswirtschaftlichen/technischen Abläufen und Informationsobjekten mittels CASE-Technologie kommt zukünftig steigende Bedeutung zu. Dies haben einige Beratungs- und Softwarehäuser zum Anlaß genommen, branchenbezogene Daten- und Prozeß-Modelle zu entwickeln. Diese Modelle spiegeln für einen ausgewählten Bereich in formalisierter Form die generellen Prozeß-Funktionsstrukturen oder Datenobjekte wieder, die in diesem Bereich Verwendung finden. Die Idee dabei ist, daß interessierte Firmen dieses Modell in Form einer Enzyklopädie, zum Beispiel erwerben und auf individuelle Erfordernisse hin anpassen können.

Dies hat den Vorteil, daß man grundlegende Modellierungsaktivitäten nicht mehr durchführen muß und mittels CASE-Technologie daraus ein konkretes Anwendungsdesign ableiten kann, das via Generator in Sourcecode umgesetzt wird. Solche Vorleistungen können den Übergang zum computergestützten Information Engineering enorm beschleunigen und offerieren komfortable Änderungsmechanismen, die aufgrund von Geschäftsfeld-Umorientierungen unzugänglich sind.

Abschließend führt der Weg in die nahe CASE-Zukunft zu einem Punkt, der eigentlich das Rückgrat dieser Architektur darstellt: es geht um den zentralen Informationspool (auch als Repository oder Enzyklopädie bezeichnet), der Drehscheibe, die die notwendigen Daten zugänglich macht und entsprechend verwaltet. Für eine unternehmensweite, integrierte Informationsverwaltung ist ein logisch zentrales Repository in Zukunft von größter Bedeutung. Durch ein oft sehr heterogenes Unternehmensumfeld ist es notwendig, alle für Informationssysteme relevanten Objekte redundanzfrei in einem Speicher verfügbar zu halten, um daraus Produktions- und Entwicklungsprojekte zu bedienen. Das bedeutet aber auch mehr denn je, die konsequente Verfolgung von organisatorischen Maßnahmen, ohne die auch die beste Technologie keinen Erfolg haben wird. Das Repository ist der Informationslieferant zum Beispiel für dedizierte Entwicklung von Informationssystemen, die in das Gesamtnetzwerk der Unternehmens-Informationssysteme integriert werden können. Das Ziel, mit integrierten CASE-Werkzeugen auch integrierte Anwendungssysteme zu entwickeln, läßt sich langfristig nur erreichen, wenn ein zentrales Information-Management für die entsprechenden Synergieeffekte sorgt.

Auch die Kommunikation von unterschiedlichen Werkzeugen einer Software-Produktions-Umgebung läßt sich auf diese Art sicherlich transparenter lösen, als über die von Schuldzuweisungen geprägten Schnittstellenkriege. Es bleibt natürlich abzuwarten inwieweit die in die Repository- Technologie gesetzten Erwartungen überhaupt erfüllt werden können. Der Trend in diese Richtung ist jedoch unverkennbar.

Bei alledem sollte man sich über eines aber noch einmal im klaren sein: jede noch so revolutionäre Technologie wird in der Vergessenheit verschwinden, wenn sie nicht durch menschliche Kreativität und Virtuosität zum Leben erweckt wird.