Call for Papers

ESE-Kongress 2009

Oops, I Did it Again ( Vortrag mit Demo )

Referent: Prof. Dr. Rainer Koschke , Universität Bremen
Vortragsreihe: Software Engineering Management
Zeit: 10. Dezember 14:00

Zielgruppe

Entwicklung, Management, keine speziellen Vorkenntnisse

Themenbereiche

Implementierung, Test & Qualitätssicherung, Wartung, Pflege, Support, Software Engineering Management, Aus Forschung & Lehre

Kurzfassung

Benötigen Programmierer eine Funktionalität, die in ähnlicher Form bereits implementiert ist, kommt es nicht selten vor, dass sie den existierenden Quelltext kopieren und gegebenenfalls anpassen. Dies führt zu so genannten Softwareklonen. Diverse empirische Studien berichten von 20-30 Prozent redundantem Quelltext, in einem extremen Fall gar von 60 Prozent. Klone sind aus einer Reihe von Gründen problematisch. Um die negativen Auswirkungen von Softwareklonen zu begrenzen, muss man aktives Klonmanagement betreiben. Darunter versteht man präventive, kompensative und korrigierende Maßnahmen für Softwareklone. Klone müssen hierzu identifiziert, verfolgt, beurteilt und behandelt werden. In diesem Vortrag wird der heutige Stand der Wissenschaft zu den Gründen, Auswirkungen, Eigenschaften und Entdeckungs- und Behandlungsmöglichkeiten von Softwareklonen dargestellt. Außerdem werden Werkzeuge und Methoden für das Klonmanagement beschrieben.

Nutzen und Besonderheiten

Klone sind problematisch, weil gleiche Änderungen mehrfach gemacht werden müssen. Wenn nicht alle Stellen bekannt sind, kann es zu inkonsistenten Änderungen kommen, die zu Fehlern führen. Außerdem blähen Klone den Quelltext unnötig auf. Im Falle von eingebetteten Systemen führt das zu einem Mehrbedarf an Speicher. Andererseits werden Klone oft auch bewusst als eine Art Programmiermuster eingesetzt. Zum Teil lassen sie sich aufgrund fehlender Unterstützung der Programmiersprache nicht immer vermeiden. Klone müssen also nicht immer notwendigerweise entfernt werden. In jedem Fall muss man sie aber kennen und bei Änderungen berücksichtigen. Durch aktives Klonmanagement ist es möglich, die negativen Auswirkungen von Klonen zu begrenzen. Die Teilnehmer werden hierzu im Vortrag die Techniken und Methoden des Klonmanagements kennen lernen.

Über den Referenten

Prof. Koschke ist Leiter der Arbeitsgruppe Softwaretechnik an der Universität Bremen. Sein Forschungsschwerpunkt ist die Wartung und Evolution existierender Software. Ein wesentlicher Schwerpunkt ist das Management von Software-Klonen (duplizierter Code). Er ist Mitgründer des Bauhaus-Projekts, einer Forschungskooperation zwischen den Universitäten Bremen und Stuttgart und der Firma Axivion GmbH, dessen Ziel die Entwicklung von Methoden und Werkzeugen für die Weiterentwicklung existierender Software ist.