Wiederverwendung von IT-Architekturen
Reverse Engineering
Seminararbeit 2012 19 Seiten
Leseprobe
Inhaltsverzeichnis
Abbildungsverzeichnis
Abkürzungsverzeichnis
1 Einleitung
1.1 Zielsetzung
2 Software-Architektur
2.1 Definition Software-Architektur
2.2 Einordnung Software-Architektur
2.3 Wiederverwendung von Software-Architekturen
3 Software-Reengineering
3.1 Definition Software-Reengineering
3.2 Methoden Software-Reengineering
4 Reverse Engineering
4.1 Vorgehen beim Reverse Engineering
4.2 Prozess des Reverse Engineerings
4.3 Methoden des Reverse Engineerings
4.4 Probleme des Reverse Engineerings
5 Zusammenfassung
5.1 Ausblick
Literaturverzeichnis
Abbildungsverzeichnis
Abbildung 1: Ziele einer Software-Architektur
Abbildung 2: Einordnung Software-Architektur
Abbildung 3: Methoden des Software-Reengineerings
Abbildung 4: Einordnung Reverse Engineering
Abbildung 5: Reverse Engineering
Abbildung 6: Prozess des Reverse Engineerings
Abbildung 7: Prozess Decompiling/Disassembly
Abkürzungsverzeichnis
1 Einleitung
Durch eine immer heterogenere und größer werdende Software-Landschaft und der dadurch verbundenen immer komplexer werdenden Software-Architektur in Unternehmen, sind die Forderungen nach Maßnahmen, wodurch die Kosten und die Risiken der Softwarepflege und –änderung minimiert werden können, nachvollziehbar.[1]
Ein weiteres Problem in Hinsicht auf die Softwarepflege und –änderung stellt das oft durch schlechte Dokumentation oder durch Fluktuation verloren gegangene Know-How bezüglich bestehender Software-Architekturen und –System dar.[2]
Durch die oben genannten Aspekte ist es leicht vorstellbar, dass ohne die nötige Dokumentation und das notwendige Wissen eine Weiterentwicklung und Wartung der vorhandenen Software-Architektur nur sehr schwer möglich ist. Hierbei soll das Software Reengineering bzw. das Reverse Engineering helfen, das verloren gegangene Wissen wieder in die Unternehmung zurückzubringen um dadurch historisch gewachsene Software-Architekturen wieder beherrschbar zu machen.
Aus diesem Grund beschäftigt sich dieses Assignment mit dem Thema Software Reengineering und der Wiederverwendung von Software-Architekturen. Im Speziellen soll hier das Reverse Engineering und dessen Methoden betrachtet werden.
1.1 Zielsetzung
Das Ziel dieses Assignments ist es, einen Überblick über die Methoden des Software Reengineerings zu geben, im speziellen des Reverse Engineerings. Hierbei soll vor allem auf die Wiederverwendung von Software-Architekturen eingegangen werden.
Des Weiteren wird ein kurzer Einblick über die Methoden und Prozesse des Reverse Engineerings gegeben.
2 Software-Architektur
In diesem Kapitel soll als kurze Einführung der Begriff Software-Architektur definiert und eingeordnet werden, um ein grundlegendes Verständnis für dieses Assignment zu erlangen.
Des Weiteren wird eine kurze Motivation gegeben aus welchen Gesichtspunkten Software-Architekturen in Unternehmen von Bedeutung sind.
2.1 Definition Software-Architektur
Im Buch Software Architekturen für verteilte Systeme von Schahram Dustdar wird der Begriff Softwarearchitektur wie folgt definiert:
„Die Softwarearchitektur eines Programms oder eines Softwaresystems ist die Struktur des Systems, welche die Software-Komponenten, das extern sichtbare Verhalten dieser Komponenten und die Beziehung dieser Komponenten umfasst.”[3]
Für dieses Assignment wurde diese Definition gewählt, da diese kurz und prägnant auf den Punkt bringt, dass eine Softwarearchitektur die einzelnen Softwarekomponenten beinhaltet und durch Kenntnis der Beziehung der einzelnen Komponenten die eigentliche Softwarearchitektur eines Unternehmens entsteht.
Genau diese Kenntnis der Funktionsweise und Beziehung der einzelnen Softwarekomponenten sind oft nicht oder in einem geringen Maße vorhanden und stellen damit die Grundlage für die Notwendigkeit des Software Reengineerings dar.
In Abbildung 1 sind die vier Hauptfaktoren zu sehen, warum in mittelständischen- und Großunternehmen immer mehr versucht wird über Architekturen nachzudenken. Durch eine Kenntnis der Architektur in einem Unternehmen lassen sich Folgeprojekte oft kostengünstiger und mit einem geringeren Risiko durchführen. Außerdem kann die weiterentwickelte Software durch die Festlegung einer Architektur oft Skalierbarer, Performanter und Wartbarer gestaltet werden. [4]
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1: Ziele einer Software-Architektur [5]
[...]
[1] Vgl. Kopacek, P. et al., 2004, S. 134
[2] Vgl. Reussner, R. et al.,2009, S. 226
[3] Dustdar, S. et al., 2003, S. 43
[4] Vgl. Dustdar, S. et al., 2003, S. 43
[5] Eigene Darstellung in Anlehnung an Dustdar, S. et al., 2003, S. 43
Details
- Seiten
- 19
- Jahr
- 2012
- ISBN (eBook)
- 9783656334729
- ISBN (Buch)
- 9783656335139
- Dateigröße
- 1.2 MB
- Sprache
- Deutsch
- Katalognummer
- v205442
- Institution / Hochschule
- AKAD University, ehem. AKAD Fachhochschule Stuttgart – Wirtschaftsinformatik
- Note
- 1,7
- Schlagworte
- Reverse Engineering AKAD MIP03 Wiederverwendung von IT-Architekturen IT-Architekture Wiederverwendung Software Architektur Methoden