Reichl IT Services
Unsere Strategien
Deutsch
English
© in 1999 by Reichl IT Services, Germany. Last modifikation: 04.03.99

Software-Engineering-Methodik

Methodische Ansätze bei Design und Entwicklung von Software erlauben eine zielgerichtete Vorgehensweise bei der Problemlösung und tragen einen Großteil zur Qualität der Software bei: Software sollte nicht "irgendwie" entstehen, weil sie so die Erwartungen und Anforderungen des Kunden bestenfalls zufällig trifft. Sie muß nach strengen Regeln und Gesetzmäßigkeiten Schritt für Schritt von Analyse über Spezifikation, Erstellung einer Systemarchitektur und von Prototypen bis hin zur Implementierung, Installation und Einführung in Ihrem Betrieb entwickelt werden. In jedem Schritt muß auch an die Wartung, Pflege und Mehrfachverwendung von Komponenten gedacht werden. So entstehen modulare, klar gegliederte, tragfähige und in der Regel erstaunlich einfache Lösungen auch für komplexe Problemstellungen.

Objektorientierte Software-Entwicklung gehört seit Jahren zum Standard. Sie dient dazu, einzelne Teile (von jeweils kleinem Umfang) der Software in anderen Projekten wiederverwenden zu können und so einen Beitrag zur Investitionssicherung der Softwareentwicklung beizutragen.

Eine neuere Bestrebung, die oft zusammen mit einem der Schlagwörter Object-Oriented Patterns oder Design Patterns genannt wird, hat zum Ziel, das Konzept der Wiederverwendbarkeit auch auf Software-Design anzuwenden. Es gibt auch auf dieser Ebene erprobte tragfähige Konzepte, beispielsweise zur Interprozesskommunikation oder über Komponentenmodelle, die in einer Reihe von Anwendungen benutzt werden können.

Das Drei-Schichten-Modell, welches ein Anwendungssystem in Benutzerschnittstelle, Anwendungskern und Datenverwaltung gliedert, ist ein Beispiel für erfolgreiche Entwurfsmuster. Im Anwendungskern werden die Geschäftsprozesse des Auftraggebers abgebildet, also die spezifizierten Fachfunktionen realisiert. Die auf den Anwendungskern zugreifenden Schichten (oder Zusatzanwendungen) sind bei Bedarf austauschbar: An die Stelle der spezifizierten Benutzerschnittstelle kann - beispielsweise für den Datenimport aus einer bestehenden Altanwendung - ein Batchbetrieb, oder in einer weiteren Ausbaustufe eine Internet-Schnittstelle treten. Die Datenverwaltungsschicht kann etwa bei einer deutlichen Veränderung der Mengengerüste ausgetauscht werden, ohne die Funktionsfähigkeit der restlichen Anwendung zu berühren. Durch diese klare Schichtung bleiben die Anwendungen übersichtlich, weil etwa die Plausibilitätsprüfungen der Eingaben oder auch die Fragen der Datenhaltung vom Anwendungskern getrennt betrachtet werden können. So ist jede Komponente einfach verifizierbar und das Gesamtsystem gut wartbar.

Ein weiterer Ansatz, der sich in manchen Fällen anbietet, ist die Verwendung geeigneter Werkzeuge: Neben CASE-Tools, die sich für einen sehr beschränkten Teil der Design- und Implementierungsphase in manchen Fällen anbieten, können auch Generierungswerkzeuge erhebliche Teile fehlerträchtiger Codierungsarbeit abnehmen und die einheitliche Gestaltung der Zielobjekte sicherstellen: Mittels Design-Vorschriften werden die gewünschten Objekte und Dokumentationen aus Spezifikationen unter Verwendung eines geeigneten Generators automatisch abgeleitet. Das ist vorallem deshalb erfolgreich, weil innerhalb einer Schicht des oben vorgestellten Architekturmodells viele Module einen gleichartigen Aufbau haben. Wir verwenden dazu neben unserem eigenen Produkt Replexe auch auf dem Markt verfügbare Fremderzeugnisse, v.a. wenn diese beim Kunden bereits eingeführt sind.

Reichl IT Services hat praktische Erfahrungen mit diesen Entwicklungsmethoden und ist so in der Lage, die für den jeweiligen Einsatzzweck am besten geeigneten Verfahren auszuwählen und auf Ihre Problemstellung anzupassen.