Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OOP 2021: The Art of Software Reviews

OOP 2021: The Art of Software Reviews

Methodisches Vorgehen bei Software Reviews, beginnend bei den konkreten Zielen, dem Scope sowie den notwendigen Personen.

Anschliessend schauen wir in Breitensuche auf verschiedene Bereiche, wie Code, Architektur, Betrieb, Tests und so weiter.

Fb469a72f1b12726aea391f479dc1b6d?s=128

Dr. Gernot Starke

February 09, 2021
Tweet

Transcript

  1. The Art of Software Reviews Dr. Gernot Starke Photo by

    gustavo centurion on Unsplash
  2. Dr. Gernot Starke INNOQ Fellow üArchitektur-Verbesserer üCoach, Trainer ü arc42,

    aim42 ü iSAQB
  3. Annahme: Sie haben Software…

  4. Room for improvement… Photo by John Hult on Unsplash

  5. ??

  6. Software Reviews Warum – Was – Wer - Wie Agenda

  7. Warum – Was – Wer - Wie Warum Software Reviews?

  8. Reviews vermeiden... lösungsgetriebenen Aktionismus

  9. Behandlung ohne Untersuchung …

  10. Cannabidiol 100mg/Tag

  11. •Stärken+Schwächen als Grundlage für Verbesserung •Neutrale Meinung Extremfall: Juristisch relevante

    Gutachten •neue Ideen Warum – Was – Wer - Wie
  12. Ziele schärfen Photo by Angelina Litvin on Unsplash Warum –

    Was – Wer - Wie
  13. Photo by Angelina Litvin on Unsplash Time-to-Market? IT-Sicherheit? Performance? Zukunfts-

    sicherheit? Erweiterbarkeit? Wer-trägt Schuld? Bestätigung
  14. • steigende Zahl „Prio-1 Fehler“ • Entwicklung wird immer langsamer

    • (Neues) Management benötigt „neutrale“ Einschätzung Warum – Was – Wer - Wie Beispiele
  15. Warum – Was – Wer - Wie Was betrachten wir?

    (scope)
  16. Photo by Michael Dziedzic on Unsplash

  17. *: XY z.B. Warenwirtschaft, online-Shop, Planungssystem, ERP-System, whatever-you-develop unser XY*

    externe Nachbarsysteme 3rd Party Zulieferung („Framework“) Datenquel le Datenquel le Datenquel le Datenquelle Vor- verarbeitung nachgelagerte Verarbeitung mobile App Fremd- firmen Fremd- firmen etc.
  18. Warum – Was – Wer - Wie Scoping ernst nehmen!

  19. Fokus auf höchste Wertschöpfung Photo by Michael Dziedzic on Unsplash

  20. Fokus auf intensivste Nutzung Photo by Martin Adams on Unsplash

  21. https://www.youtube.com/watch?v=xL40UN5p6IY

  22. Tipp: Erweitere Suchraum Photo by Angelina Litvin on Unsplash Warum

    – Was – Wer - Wie
  23. Erweitere Suchraum Photo by William Bossen on Unsplash Beispiel: Rechnungswesen

    Konzern (Metrik basierter) Review untersucht Java-Code: Findet „Clean-Code“ und spricht Lob aus • Realität: Krass schlechte Time-To-Market • 70% des Codes ist XSLT, beim Review „übersehen“
  24. Warum – Was – Wer - Wie Wer reviewt?

  25. + unabhängig + neutral + neue Impulse - längere Einarbeitung

    - Risiko „oberflächlich“ - höhere Kosten + fachliche Erfahrung + im Unternehmen vernetzt + kostengünstig - Risiko „befangen“ - Risiko „betriebsblind“ - kein Benchmarking - „Prophet im eigenen Land“ Warum – Was – Wer - Wie
  26. • Automotive (Zulieferer): • 1 Person extern max. 10 PT)

    (Qualitative Analyse analog ATAM), • 2 Personen intern Warum – Was – Wer - Wie Beispiele Zukunftssicherheit der Architektur „Multimedia-Framework“
  27. • Telco („Billing-Kette“): • 3 externe Dienstleister, jeweils 2-3 Personen,

    gesamt ca. 200 PT • 2-3 Personen intern, 30+ PT • Aufteilung entlang der Prozesskette (u.a. Wirknetz, Pre-/Post-Billing) Warum – Was – Wer - Wie Beispiele Tragfähigkeit der Architektur sowie Integration von Standardprodukten
  28. Warum – Was – Wer - Wie Wie geht das?

  29. * The Police, englische New-Wave-Band, gilt als eine der erfolgreichsten

    Rockbands. Don‘t Stand So Close to Me* #fightCoronaSong, belegte 1980 Platz-1 der britischen Single-Charts.
  30. Alles miterleben: AAA

  31. Access All Areas

  32. Access ALL Areas. Breitensuche Stakeholder Kontext Qualität Architektur Code Laufzeit

    Daten Tests Prozesse Infrastruktur Security .... Analyze
  33. Breitensuche Metriken Struktur Anwendungs- daten Qualität Security Prozesse Code Technologie

    etc.
  34. Breitensuche:

  35. Stakeholder kennen viele Probleme (+ Lösungen).

  36. • (Riesen-)Online-Shop: • Interviews zeigten: • (krasse) Diskrepanzen in Sichtweisen

    Management + Entwicklungsteams • Architekturprobleme, die beim Management nicht bekannt waren Warum – Was – Wer - Wie Beispiele Zukunftsfähigkeit von Architektur und Implementierung
  37. Warum – Was – Wer - Wie Metriken • Kopplung

    / Abhängigkeiten • Code-Komplexität • Performance • … gut
  38. Photo by Ross Findon on Unsplash Not all artifacts are

    equal. Some are more important.
  39. Photo by Ross Findon on Unsplash Häufige Änderungen → häufig

    Fehler
  40. Achte auf Änderungsrate Photo by Ross Findon on Unsplash

  41. Warum – Was – Wer - Wie Metriken • Kopplung

    / Abhängigkeiten • Code-Komplexität • Performance • … • Fehler pro Baustein • Know-How pro Baustein • Änderungshäufigkeit • … gut besser
  42. komplexer Code, der häufig geändert wird. Beachte Hotspots

  43. Warum – Was – Wer - Wie Breitensuche Metriken Struktur

    Anwendungs- daten Qualität (ATAM) Security Prozesse
  44. Warum – Was – Wer - Wie Der Abschluss... Bericht:

    • Management Summary • (priorisierte) Probleme • Maßnahmenvorschläge gut
  45. Tipp: Expect to be wrong Photo by Andrej Lišakov on

    Unsplash Warum – Was – Wer - Wie
  46. Expect to be wrong Photo by William Bossen on Unsplash

    Bleiben Sie ergebnisoffen
  47. Expect to be wrong Photo by William Bossen on Unsplash

    Beispiel: Datenpflege eCommerce • Review findet „Verbesserungspotential“ in entsprechender UI • Realität: Datenpflege per Batch-Import, UI wird (praktisch) nur zur Ansicht verwendet
  48. Expect to be wrong Photo by William Bossen on Unsplash

    Konkret: • Review-Ergebnisse in zwei Iterationen vorstellen • Erste Iteration für Feedback und Korrekturen
  49. Warum – Was – Wer - Wie Der Abschluss... Bericht:

    • Management Summary • (priorisierte) Probleme • Maßnahmenvorschläge 2 Vorträge: • Vorab „in kleiner Runde“ • Feinschliff • Abschluss „in großer Runde“ gut besser
  50. • Spezial-Maschinenbau: • Management fokussiert auf mögliche Problemen • Abschlusspräsentation

    fokussiert auf Stärken der Teams + des Systems Warum – Was – Wer - Wie Beispiele Ziel: „Benchmarking“ Architektur und Entwicklung
  51. Fazit 1. Ziele und Scope klären 2. Stakeholder involvieren 3.

    Schwerpunkte aus Zielen ableiten 4. Breiten- vor Tiefensuche: Mehr als Code!! 5. Ergebnisse in zwei Iterationen präsentieren
  52. Danke. Gernot Starke gernot.starke@innoq.com Twitter: @gernotstarke www.innoq.com