Skip to content

Instantly share code, notes, and snippets.

@feststelltaste
Last active June 25, 2024 14:36
Show Gist options
  • Save feststelltaste/a80f71827f8e1d16a4e052ebd247eac8 to your computer and use it in GitHub Desktop.
Save feststelltaste/a80f71827f8e1d16a4e052ebd247eac8 to your computer and use it in GitHub Desktop.
Tool-gestützte Analysen von PetClinic

Tool-gestützte Code-Analysen von PetClinic

Code-Analyse mit CodeCharta

Tool-Infos

Bitte Analyse-Datei downloaden und in CodeCharta über Ordner-Symbol (links oben) laden.

Eure Auftrag

Findet heraus, ob in der Anwendung Kopfmonopole vorherrschen, indem ihr die Code-Basis visualisiert und die Anzahl der Autoren darstellt.

Aufgaben

  1. Zum Warmwerden: Welche drei Quellcodedateien sind am größten?
  2. Für welche drei Dateien oder sogar Module gibt es potenziell am wenigsten Entwickler, die Code geändert haben (aka "wo sind Kopfmonopole")?
  3. Was ist euere Einschätzung und Empfehlung für die nächsten Schritte?

Schreibt eure Erkenntnise auf Sticky Notes, um sie später mit anderen Teilnehmenden zu teilen!

Code-Analyse mit CodeScene

Tool-Infos

Euer Auftrag

Findet heraus, ob in der Anwendung besonders komplexer Code vorhanden ist, der zudem auch noch häufig geändert wird. Entdeckt zudem versteckte Code-Abhängigkeiten!

Aufgaben

  • Zum Warmwerden: Welche Quellcode-Dateien sind Code-Hotspots? (Geht für zu Code -> Hotspots).
  • Welche Quellcode-Dateien werden größtenteils immer miteinander geändert (und stellen damit potenziell eine versteckte Code-Abhängigkeit dar)? (Geht dafür zu Code -> Change Coupling)
  • Was ist euere Einschätzung und Empfehlung für die nächsten Schritte?

Schreibt eure Erkenntnise auf Sticky Notes, um sie später mit anderen Teilnehmenden zu teilen!

Code-Nutzungsanalyse mit Jupyter Notebook, Python und Pandas

Tool-Infos

Euer Auftrag

In einer produktions-nahen Installation wurde für die Software mit Hilfe des Code-Coverage-Tools "jacoco" ein Bericht über die durchlaufenen Code-Zeilen bei der Nutzung durch simulierte User erstellt. Ihr habt den dazugehörigen Datensatz und sollt darauf aufbauend herausfinden, welche Teile der Anwendung für eure Use-Cases nicht verwendet werden, um diese später zu entfernen. Dazu wurde euch ein Analyse-Notebook gegeben, welches aber leider etwas rudimentär dokumentiert wurde (daher habt ihr hier auch etwas "Softwarearchäologie" vorzunehmen)

Aufgaben

  1. Führt zuerst einzelnen Schritte durch (über Pfeil links oder über Ausführung mittels Strg+Enter in Zelle)
  2. Dokumentiert (kurz) nach, was in den einzelnen Schritten der Analyse passiert.
  3. Was ist euere Einschätzung und Empfehlung für die nächsten Schritte?

Schreibt eure Erkenntnise auf Sticky Notes, um sie später mit anderen Teilnehmenden zu teilen!

Optionionale Info

Source Code: https://github.com/feststelltaste/spring-petclinic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment