Software-Reengineering

Modul - Informatik: Aufbau Praktische Informatik

Software-Reengineering besch?ftigt sich mit Wiedergewinnung verlorener Informationen über existierende Software-Systeme (Reverse Engineering), Restrukturierung der Beschreibung des Systems (Restructuring) und der nachfolgenden Implementierung der ?nderungen (Alteration). Reengineering hat dabei nicht nur mit alter Software zu tun; gerade neuere objekt-orientierte Systeme erfordern oft schon bald eine Restrukturierung, weshalb sich ein guter Teil der Vorlesung speziell objekt-orientierter Software widmet (Restrukturierung von Klassenhierarchien, automatisches Refactoring). Auch im Kontext neuerer Ans?tze des Software-Engineerings zur Entwicklung ?hnlicher Produkte als Produktlinie findet Reengineering Einsatz.

Die Vorlesung "Software-Reengineering" besch?ftigt sich mit der Methodik des systematischen lnformationengewinns über existierende Programme, die formale Repr?sentation von Programmen sowie mit Methoden für semantikerhaltende Transformationen von Programmen. Die in der Vorlesung dargestellte formale Begriffsanalyse bildet eine mathematisch fundierte Methode zur Analyse verschiedener Relationen in Programmen, die auch in anderen Gebieten der Informatik eingesetzt werden kann.

Die ?bungen dienen - neben der Wiederholung und praktischen Vertiefung des Vorlesungsinhalts - auch der Vorstellung existierender Reengineering-Werkzeuge.

Lernergebnisse

Die Studierenden verfügen über folgende Fachkompetenzen:

  • auf welchen Ebenen man Code analysieren kann,
  • wie man Schwachstellen des Codes auffindet,
  • wie man duplizierten Code automatisch aufspürt,
  • wie man Abh?ngigkeiten zwischen Anweisungen nachverfolgen kann
  • wie man Code-Muster findet,
  • wie man den Code automatisch transformieren kann,
  • wie man die Stellen im Code findet, die eine bestimmte Funktionalit?t implementieren,
  • wie man Vererbungshierarchien restrukturieren kann,
  • wie man Software visualisieren kann,
  • wie man Software-Architekturen rekonstruiert
  • wie man Reengineering-Projekte organisiert.

Inhalte

  • allgemeiner ?berblick über das Thema sowie Beziehung des Reengineerings zu verwandten Gebieten der Software-Wartung,
    Wrapping, etc.

  • Zwischendarstellungen für Programmanalysen (abstrakte Syntaxb?ume, Program Dependency Graph, Static Single Assignment
    Form), Datenfluss-/Kontrollflussanalysen

  • Software-Metriken

  • Software-Architekturrekonstruktion: Reflexionsmethode, Software-Clustering, Symphony

  • Program Slicing

  • Klonerkennung

  • Mustersuche

  • automatische Code-Transformationen und Refactoring

  • Begriffsanalyse

  • Merkmaisuche

  • Analyse und Restrukturierung von Vererbungshierarchien

  • Software Visualisierung

  • Planung und Durchführung von Reengineering-Projekten, Prozessmodelle des Reengineerings

In Kürze

Inhalt:
Wiedergewinnung verlorener Informationen über existierende Software-Systeme (Reverse Engineering), Restrukturierung der Beschreibung des Systems (Restructuring) und der nachfolgenden Implementierung der ?nderungen (Alteration)

Niveau: Master-Modul 

Veranstaltungsform:
Vorlesung und ?bung

Semester: Wintersemester

Umfang: 6 CP

Modulverantwortung

Prof. Dr. R. Koschke

Zielgruppe

  • Fachkr?fte aus den Arbeitsfeldern Informationstechnik und Medien

Zugangsvoraussetzungen

  • einschl?giger Bachelor-Abschluss

  • eine mindestens einj?hrige Berufspraxis

  • Nutzen Sie unsere Beratungsangebote und erfahren Sie 澳门皇冠_皇冠足球比分-劲爆体育 über die Zugangsvoraussetzungen zu den Mastermodulen.

  • Nachweis von fachspezifischen Grundlagenkenntnissen

Veranstaltungsdetails

Veranstaltungsform:
Vorlesung und ?bung

Veranstaltungszeiten:
im Wintersemester -
Termine folgen

Prüfungen & Abschluss

Prüfung:

  • i.d.R. Bearbeitung von ?bungsaufgaben und Fachgespr?ch oder mündliche Prüfung

Abschluss:

  • Modulzertifikat

Umfang

Dauer: 1 Semester

Arbeitsaufwand:
56 Std. Pr?senzveranstaltungen 
+ 124 Std. angeleitetes Selbststudium

(entspricht 6 CP)

Teilnahmeentgelt

450 Euro (= 75 Euro pro CP)

Mitglieder des Alumni-Vereins der Universit?t Bremen erhalten 5 % Rabatt.

Bewerbung

Eine Bewerbung ist zum jetzigen Zeitpunkt leider nicht m?glich.

Bewerbungszeitraum:
1. August - 15. September

Information & Beratung:

Sie interessieren sich für unser Angebot im Bereich "Informatik, Digitale Medien, Digitalisierung"? Wir beraten Sie gern:

J?rg Kastens

Telefon: 0421 - 218 61 617
eMail: jkastensprotect me ?!uni-bremenprotect me ?!.de