Previous Next V-Model Official Homepage by IABG  
RE Homepage  
RE 2.2: Remodularisierung / Restrukturierung  

  RE2.2 - Remodularization/Restructuring

Inhalt  
  • Produktfluß
  • Abwicklung
  • Produktfluß

    von Produkt nach
    Aktivität Zustand Kapitel Titel Aktivität Zustand
    Extern (1) - Alle vorhandener Quellcode - -
    RE1.5 akzeptiert Alle Anwenderbedarf - -
    - - Alle Implementierungsdokumente: SW-Modul RE2.3 in Bearb.
    - - Alle SW-Modul
    - - Alle Implementierungsdokumente: Datenbank
    - - Alle Datenbank

    Abwicklung

    In dieser Aktivität wird auf der Grundlage des Teilprodukts Anwenderbedarf.Lösungsvorschläge angestrebt, den modularen Aufbau der zu bearbeitenden Software unter Beachtung von Modularisierungsprinzipien wie Abgeschlossenheit, Geheimnisprinzip, Datenabstraktion, Kapselung, Schnittstellenspezifikation, Schnittstellenminimalität, Überschaubarkeit und Testbarkeit zu verbessern.

    Es muß allerdings berücksichtigt werden, daß es bei den derzeitigen technischen Möglichkeiten in der Praxis häufig so sein wird, daß sich Remodularisierung darauf beschränken muß, SW-Module, die auf der Grundlage des Kriteriums "Anzahl der Anweisungen" als zu groß beurteilt wurden, auf mehrere SW-Module aufzuteilen. Ausgangspunkt für die Zerlegung kann der Steuerflußgraph sein, anhand dessen größere zusammenhängende Strukturen ermittelt und in eigene SW-Module umgewandelt werden. Verzweigungen zwischen diesen neuen SW-Modulen werden im Quellcode durch Aufrufanweisungen ersetzt. Bei der Aufteilung von SW-Modulen muß darauf geachtet werden, daß alle SW-Module nur solche Daten enthalten, die sie tatsächlich verwenden (Geheimnisprinzip).

    Mit einer so verstandenen Remodularisierung ist immer auch eine Restrukturierung verbunden. Zur Restrukturierung gehören jedoch zusätzlich auch solche Maßnahmen, die unabhängig von den Änderungen am modularen Aufbau zur Verbesserung der Ablauf- und Datenstrukturen beitragen und damit die Verständlichkeit des Quellcodes verbessern.

    Die Ablaufstrukturen können z. B. unter Beachtung der Prinzipien der Strukturierten Programmierung verbessert werden, d. h. es wird die ausschließliche Verwendung der Steuerstrukturen Sequenz, Selektion, Iteration und Prozeduraufruf angestrebt. Insbesondere sollten, so weit sinnvoll und möglich, goto-Anweisungen im Quellcode durch strukturierte Steueranweisungen ersetzt werden. Zu einer Reihe einfacher restrukturierender Maßnahmen gehören die Verlagerung bzw. Duplizierung von Codeblöcken, das grundsätzliche Hinzufügen von else-Klauseln, die Umstrukturierung von if-Anweisungen, die Verdeutlichung von Programmschleifen und die Vermeidung von Label-Variablen.

    Die vorhandenen Datenobjekte können beispielsweise verbessert werden, indem Inkonsistenzen und Redundanzen aufgelöst werden. Inkonsistent sind z. B. Datenobjekte, die den gleichen Namen, jedoch unterschiedliche Aufgaben haben (Homonyme). Redundant sind Datenobjekte, die unterschiedliche Namen, jedoch die gleiche Aufgabe haben (Synonyme; Alias-Namen). Indizien für Synonyme können gleiche Formate und gleiche Wertebereiche von Objekten mit unterschiedlichen Namen sein. Homonyme lassen sich ermitteln, indem die Merkmale der gleichlautenden Datenobjekte miteinander verglichen werden. Haben beispielsweise gleichlautende Datenobjekte unterschiedliche Formate und unterschiedliche Wertebereiche, dann handelt es sich wahrscheinlich um Homonyme. Die Auflösung von Homonymen und Synonymen darf nicht mechanisch erfolgen. Es müssen vielmehr genaue Untersuchungen durchgeführt werden, die jeden Irrtum ausschließen. Bei der Vergabe von neuen Bezeichnungen für homonyme und synonyme Objekte muß darauf geachtet werden, daß die neuen Namen fachlich orientiert sind, so daß vom Namen des Objekts auf dessen fachliche Aufgabe oder den von ihm repräsentierten Typ geschlossen werden kann. Da zu diesem Zeitpunkt noch kein fachliches Verständnis der zu bearbeitenden Software erworben wurde, kann die Vergabe neuer Bezeichner erst im Zusammenhang mit der Rekommentierung (Aktivität RE 5.2: Rekommentierung) erfolgen.

    Die Ergebnisse dieser Aktivität werden in den Produkten Implementierungsdokumente: SW-Modul and Implementierungsdokumente: Datenbank.


    Hinweise

    (1) Auftraggeber

    Previous Next GDPA Online Last Updated 01.Jan.2002 Updated by Webmaster Last Revised 01.Jan.2002 Revised by Webmaster