Events

CQSE Workshop: Copy, Paste und dann ...?

Written by Dr. Michael Reif & Dr. Elmar Jürgens | Nov 9, 2022 10:38:00 am
 

Zusammenfassung

Copy & Paste-Programmierung ist seit Jahrzehnten als Code-Smell verschrien. Trotzdem kommen in fast allen größeren Softwaresystemen viele durch Copy & Paste entstandene Klone vor. In einigen Systemen ist über die Hälfte aller Zeilen dupliziert! Das schafft Probleme in der Weiterentwicklung:

  • Die zu pflegende Codebasis ist unnötig groß.
  • Änderungen müssen mehrfach händisch durchgeführt werden, wobei oft unklar bleibt, ob tatsächlich alle Klone bearbeitet wurden.
  • Inkonsistente Änderungen verursachen unabsehbare Zusatzaufwände.

Clone Detection, also statische Code-Analyse, die Klone automatisiert erkennt, machen wir seit 15 Jahren. Sie ist inzwischen sogar in IDEs enthalten. Allerdings zeigt unsere Erfahrung, dass eine Liste mit 100.000 Klonen niemandem nützt.

Die Herausforderung ist nicht das Finden, sondern der sinnvolle Umgang mit existierenden Klonen: Clone Management. 

Der richtige Umgang mit Klonen hängt dabei von Ihrem Kontext ab:

  • Wie viel Copy & Paste-Programmierung kommt in Ihrem System vor?
  • Wie wirkt sich das auf Ihre Kosten aus?
  • Welche Fehler wurden nicht in allen Klonen behoben?
  • Gibt es "Copy & Paste im Großen", zwischen verschiedenen Anwendungen in Ihrer Unternehmensarchitektur?

Im Workshop stellen Dr. Elmar Jürgens und Dr. Michael Reif Clone Detection und Management-Techniken vor. Sie quantifizieren die Kosten von Klonen, sprechen über ihre Erfahrungen aus 10 Jahren Clone Management bei verschiedenen Kunden und zeigen reale Fallbeispiele live mit unserem Werkzeug Teamscale.

Sprecher

  • Dr. Elmar Jürgens - Hat über Clone Detection promoviert, in hunderten von Teams Clone Detection eingesetzt und aus dem Feedback der Teams lernen dürfen.
  • Dr. Michael Reif - Untersucht täglich Klone in kurzfristigen Software Audits sowie länger laufenden Kundenprojekten. Kennt auch Klone, die nicht ohne weiteres ausgebaut werden können.