SlideShare ist ein Scribd-Unternehmen logo
1 von 33
Entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Weiter-
entwicklung
Stabilisierung
Optimierung
Sanierung
Stabilisierung
Stabilisierung
Optimierung
t in Jahren
Zeit
Wartbarkeit
Wartungskosten
Antoine de Saint Exupéry
•Zieldefinition
•Rahmenbedingungen
•Vision
Vorbesprechung
•Befragen
•Messen
•Vergleichen
Analyse
•Problemstellen aufzeigen
•Risiken bewerten
•Lösungen aufzeigen
•Aufgaben priorisieren
Handlungsempfehlung
•Zusammenfassung in Kurzform
•Detaillierte Begründung in
Schriftform
Ergebnispräsentation
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Ist
Daten
Soll
Datenhaltung
Userinterface
Back-End
Vermittlungsschicht
Datenhaltung
•
•
•
•
•
 ✘
Geschäftslogik
aufrufen
Konvertiere Daten
aus Client Model in
Domain Model
Konvertiere Daten
aus Domain Model in
Client Model
Bereite Daten für
Transport zum Client
auf
Gib Ergebnis an
Client weiter
Ermittle Daten
anhand der
Nutzereingabe
Gib Daten an Client
weiter
Berechtigung prüfen
Berechnung
Berechtigung prüfen
Daten in gloablen
Kontext übertragen
•
•
•
•
•
•
•
•
•
•
•
•
•
Method’s CC % of coverage required to be below CRAPpy threshold
0 – 5 0%
10 42%
15 57%
20 71%
25 80%
30 100%
31+ No amount of testing will keep methods this complex
out of CRAP territory.
•
•
•
•
Publications =
repository.GetPublications().Select(x => new
PublicationViewModel(x)).ToList();
!=
Publications =
repository.GetPublications().Select(x => new
PublicationViewModel(x));
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte
Der Healthcheck für Softwareprojekte

Weitere ähnliche Inhalte

Ähnlich wie Der Healthcheck für Softwareprojekte

Media Portal Hosting->Cloud Move
Media Portal Hosting->Cloud MoveMedia Portal Hosting->Cloud Move
Media Portal Hosting->Cloud MoveTom Peruzzi
 
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...Rainer Kolm
 
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...IBsolution GmbH
 
worldiety GmbH - Datenanalyse
worldiety GmbH - Datenanalyse worldiety GmbH - Datenanalyse
worldiety GmbH - Datenanalyse worldiety GmbH
 
Kritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit BisonKritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit BisonDynatrace
 
Mit agilen Prinzipien große Integrationstests einfach managen
Mit agilen Prinzipien große Integrationstests einfach managenMit agilen Prinzipien große Integrationstests einfach managen
Mit agilen Prinzipien große Integrationstests einfach managenChristoph Schmiedinger
 
Bi testing media_factory_0.10
Bi testing media_factory_0.10Bi testing media_factory_0.10
Bi testing media_factory_0.10inovex GmbH
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'scamunda services GmbH
 
ECR Supply Planner in SAP
ECR Supply Planner in SAPECR Supply Planner in SAP
ECR Supply Planner in SAPSERKEM GmbH
 
Celonis Process Mining - wzk partner
Celonis Process Mining - wzk partnerCelonis Process Mining - wzk partner
Celonis Process Mining - wzk partnerHolger Kock
 
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQM
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQMTechnisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQM
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQMIBsolution GmbH
 
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...Spark Summit
 
Potenziale erkennen & Innovationen erfolgreich nutzen
Potenziale erkennen & Innovationen erfolgreich nutzenPotenziale erkennen & Innovationen erfolgreich nutzen
Potenziale erkennen & Innovationen erfolgreich nutzenPrecisely
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktopxKinAnx
 
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human InferenceDataValueTalk
 
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerce
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerceOperational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerce
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerceOlaf Grueger
 
Qtobe sla management_de_web (2)
Qtobe sla management_de_web (2)Qtobe sla management_de_web (2)
Qtobe sla management_de_web (2)Q to be®
 

Ähnlich wie Der Healthcheck für Softwareprojekte (20)

FABIS Referenzen bei Vertriebssoftware und Abrechnungssystemen
FABIS Referenzen bei Vertriebssoftware und AbrechnungssystemenFABIS Referenzen bei Vertriebssoftware und Abrechnungssystemen
FABIS Referenzen bei Vertriebssoftware und Abrechnungssystemen
 
Media Portal Hosting->Cloud Move
Media Portal Hosting->Cloud MoveMedia Portal Hosting->Cloud Move
Media Portal Hosting->Cloud Move
 
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...
Das Service Excellence Cockpit als Instrument zur Planung und Steuerung des K...
 
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...
Stay Clean - Wie Sie Ihre hohe Datenqualität nach der S/4HANA Migration beibe...
 
worldiety GmbH - Datenanalyse
worldiety GmbH - Datenanalyse worldiety GmbH - Datenanalyse
worldiety GmbH - Datenanalyse
 
Kritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit BisonKritische app performance erfolgreich optimieren mit Bison
Kritische app performance erfolgreich optimieren mit Bison
 
Mit agilen Prinzipien große Integrationstests einfach managen
Mit agilen Prinzipien große Integrationstests einfach managenMit agilen Prinzipien große Integrationstests einfach managen
Mit agilen Prinzipien große Integrationstests einfach managen
 
Bi testing media_factory_0.10
Bi testing media_factory_0.10Bi testing media_factory_0.10
Bi testing media_factory_0.10
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
 
ECR Supply Planner in SAP
ECR Supply Planner in SAPECR Supply Planner in SAP
ECR Supply Planner in SAP
 
Celonis Process Mining - wzk partner
Celonis Process Mining - wzk partnerCelonis Process Mining - wzk partner
Celonis Process Mining - wzk partner
 
Crossing The Chasm
Crossing The ChasmCrossing The Chasm
Crossing The Chasm
 
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQM
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQMTechnisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQM
Technisches Umsetzung von Datenqualitätsmaßnahmen mittels SAP MDG-DQM
 
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
Clickstream Analysis with Spark—Understanding Visitors in Realtime by Josef A...
 
Potenziale erkennen & Innovationen erfolgreich nutzen
Potenziale erkennen & Innovationen erfolgreich nutzenPotenziale erkennen & Innovationen erfolgreich nutzen
Potenziale erkennen & Innovationen erfolgreich nutzen
 
Presentation bp7 - citrix xen desktop
Presentation   bp7 - citrix xen desktopPresentation   bp7 - citrix xen desktop
Presentation bp7 - citrix xen desktop
 
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
‘Fehler vorprogrammiert’ Paul Tours, Senior Consultant/Human Inference
 
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerce
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerceOperational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerce
Operational Excellence im eCommerce ist unsexy? Olaf Grüger, Go eCommerce
 
2010 09 30 15-00 thomas eberhart
2010 09 30 15-00 thomas eberhart2010 09 30 15-00 thomas eberhart
2010 09 30 15-00 thomas eberhart
 
Qtobe sla management_de_web (2)
Qtobe sla management_de_web (2)Qtobe sla management_de_web (2)
Qtobe sla management_de_web (2)
 

Mehr von Hendrik Lösch

Why (most) softwareprojects fail silently
Why (most) softwareprojects fail silentlyWhy (most) softwareprojects fail silently
Why (most) softwareprojects fail silentlyHendrik Lösch
 
We (don't) need a software architect!?!
We (don't) need a software architect!?!We (don't) need a software architect!?!
We (don't) need a software architect!?!Hendrik Lösch
 
Restrukturierung einer industriellen Großapplikation
Restrukturierung einer industriellen GroßapplikationRestrukturierung einer industriellen Großapplikation
Restrukturierung einer industriellen GroßapplikationHendrik Lösch
 
Vom Monolith zum Modulith
Vom Monolith zum ModulithVom Monolith zum Modulith
Vom Monolith zum ModulithHendrik Lösch
 
Der Software auf den Zahn gefühlt - Einstieg in die Architekturbewertung
Der Software auf den Zahn gefühlt - Einstieg in die ArchitekturbewertungDer Software auf den Zahn gefühlt - Einstieg in die Architekturbewertung
Der Software auf den Zahn gefühlt - Einstieg in die ArchitekturbewertungHendrik Lösch
 
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als SoftwarearchitektHendrik Lösch
 
Software ist was du draus machst!
Software ist was du draus machst!Software ist was du draus machst!
Software ist was du draus machst!Hendrik Lösch
 
Einstieg in das Vueniverse
Einstieg in das VueniverseEinstieg in das Vueniverse
Einstieg in das VueniverseHendrik Lösch
 
Survivalkit für Codehausmeister
Survivalkit für CodehausmeisterSurvivalkit für Codehausmeister
Survivalkit für CodehausmeisterHendrik Lösch
 
Confessions of a Codehausmeister
Confessions of a CodehausmeisterConfessions of a Codehausmeister
Confessions of a CodehausmeisterHendrik Lösch
 
WPF Dos n Don'ts - der WPF Rundumschlag
WPF Dos n Don'ts - der WPF RundumschlagWPF Dos n Don'ts - der WPF Rundumschlag
WPF Dos n Don'ts - der WPF RundumschlagHendrik Lösch
 
Clean mit visual studio
Clean mit visual studioClean mit visual studio
Clean mit visual studioHendrik Lösch
 
Advanced Refactoring Patterns
Advanced Refactoring PatternsAdvanced Refactoring Patterns
Advanced Refactoring PatternsHendrik Lösch
 
Advanced Refactoring Patterns - Dev Day 2018
Advanced Refactoring Patterns - Dev Day 2018Advanced Refactoring Patterns - Dev Day 2018
Advanced Refactoring Patterns - Dev Day 2018Hendrik Lösch
 

Mehr von Hendrik Lösch (20)

Why (most) softwareprojects fail silently
Why (most) softwareprojects fail silentlyWhy (most) softwareprojects fail silently
Why (most) softwareprojects fail silently
 
We (don't) need a software architect!?!
We (don't) need a software architect!?!We (don't) need a software architect!?!
We (don't) need a software architect!?!
 
Restrukturierung einer industriellen Großapplikation
Restrukturierung einer industriellen GroßapplikationRestrukturierung einer industriellen Großapplikation
Restrukturierung einer industriellen Großapplikation
 
Vom Monolith zum Modulith
Vom Monolith zum ModulithVom Monolith zum Modulith
Vom Monolith zum Modulith
 
Der Software auf den Zahn gefühlt - Einstieg in die Architekturbewertung
Der Software auf den Zahn gefühlt - Einstieg in die ArchitekturbewertungDer Software auf den Zahn gefühlt - Einstieg in die Architekturbewertung
Der Software auf den Zahn gefühlt - Einstieg in die Architekturbewertung
 
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt
„Wie reden Sie denn mit mir?!?“ – Stakeholder überzeugen als Softwarearchitekt
 
Software ist was du draus machst!
Software ist was du draus machst!Software ist was du draus machst!
Software ist was du draus machst!
 
Modular mit .NET
Modular mit .NETModular mit .NET
Modular mit .NET
 
.NET zu .NET Core
.NET zu .NET Core.NET zu .NET Core
.NET zu .NET Core
 
Workshop Vue js
Workshop Vue jsWorkshop Vue js
Workshop Vue js
 
Migrationsstrategien
MigrationsstrategienMigrationsstrategien
Migrationsstrategien
 
Einstieg in das Vueniverse
Einstieg in das VueniverseEinstieg in das Vueniverse
Einstieg in das Vueniverse
 
Survivalkit für Codehausmeister
Survivalkit für CodehausmeisterSurvivalkit für Codehausmeister
Survivalkit für Codehausmeister
 
Confessions of a Codehausmeister
Confessions of a CodehausmeisterConfessions of a Codehausmeister
Confessions of a Codehausmeister
 
Hey, wie geht es dir?
Hey, wie geht es dir?Hey, wie geht es dir?
Hey, wie geht es dir?
 
WPF Dos n Don'ts - der WPF Rundumschlag
WPF Dos n Don'ts - der WPF RundumschlagWPF Dos n Don'ts - der WPF Rundumschlag
WPF Dos n Don'ts - der WPF Rundumschlag
 
Clean mit visual studio
Clean mit visual studioClean mit visual studio
Clean mit visual studio
 
Advanced Refactoring Patterns
Advanced Refactoring PatternsAdvanced Refactoring Patterns
Advanced Refactoring Patterns
 
Codesmells
CodesmellsCodesmells
Codesmells
 
Advanced Refactoring Patterns - Dev Day 2018
Advanced Refactoring Patterns - Dev Day 2018Advanced Refactoring Patterns - Dev Day 2018
Advanced Refactoring Patterns - Dev Day 2018
 

Kürzlich hochgeladen

Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...DNUG e.V.
 
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudFrom Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudOPEN KNOWLEDGE GmbH
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Markus Unterauer
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...OPEN KNOWLEDGE GmbH
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationOPEN KNOWLEDGE GmbH
 
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...DNUG e.V.
 

Kürzlich hochgeladen (6)

Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudFrom Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
 
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 

Der Healthcheck für Softwareprojekte

Hinweis der Redaktion

  1. Features bieten dem Kunden sichtbare Mehrwerte, daher müssen sie nicht verteidigt werden. Wartungs- und Reparaturarbeiten sind unsichtbar und daher schwer für Außenstehende zu bewerten.
  2. Irgend wann kommt man an den Punkt, da größere Umbauarbeiten notwendig sind. Für diese braucht man einen Plan da sie sonst mehr Schaden anrichten. Für einen Plan braucht man eine Bestimmung des Ist-Zustandes -> Healthcheck.
  3. Vorbesprechung: Diese Dinge sollten im Vorfeld festgestellt werden und nicht erst während man den Healthcheck bereits durchführt. Wer steht zur Verfügung? Welche Technologien, Sprachen, Frameworks werden im Projekt eingesetzt? Welches System wird betrachtet und welche anderen Systeme gibt es noch, die mit diesem System interagieren? Welche Aspekte werden explizit nicht betrachtet? Gibt es bestimmte Arbeitsabläufe die von der Software abgedeckt werden? Lässt sich schon eine Aussage darüber treffen „wie groß“ das Projekt ist. Soll die Software auf technische Schwächen (Speicherlecks, …) oder strukturelle Schwächen (Architektur) untersucht werden?
  4. Kontextsichten zeigen den Zusammenhang des Systems mit seiner Umgebung aus einer Vogelperspektive. Hier zeigen Sie die Schnittstellen zu Nachbarsystemen, die Interaktionen mit wichtigen Stakeholdern sowie die wesentlichen Teile der umgebenden Infrastruktur. Diese Sicht können Sie als „Vision“ etwas abstrakter betrachten als die übrigen Sichten10. Bausteinsichten – Wie ist das System intern aufgebaut? Bausteinsichten zeigen die statischen Strukturen der Architekturbausteine des Systems, Subsysteme, Komponenten und deren Schnittstellen. Sie können (und sollten!) die Bausteinsichten top-down entwickeln, ausgehend von einer Kontextsicht. Die letzte mögliche Verfeinerungsstufe der (Baustein-)Zerlegung bildet der Quellcode. Bausteinsichten unterstützen Projektleiter und Auftraggeber bei der Projektüberwachung, dienen der Zuteilung von Arbeitspaketen (in Form von Architekturbausteinen) an Teams und Mitarbeiter und fungiert darüber hinaus als Referenz für Software-Entwickler. Laufzeitsichten – Wie läuft das System ab? Die Laufzeitsichten beschreiben, welche Bausteine des Systems zur Laufzeit existieren und wie sie zusammenwirken. Im Gegensatz zu der statischen Betrachtungsweise bei den Bausteinsichten beschreiben Sie hier dynamische Strukturen. Verteilungssichten (Infrastruktursichten) – In welcher Umgebung läuft das System ab? Diese Sichten beschreiben die Hardwarekomponenten, auf denen das System abläuft. Sie dokumentiert Rechner, Prozessoren, Netztopologien und -protokolle sowie sonstige Bestandteile der physischen Systemumgebung. Die Infrastruktursicht zeigt das System aus Betreibersicht.
  5. Top 10 der komplexesten Klassen aufstellen -> dort gibt es höchst wahrscheinlich noch weitere Fehler
  6. Es darf nicht vergessen werden was man erreichen will. Daher unbedingt vorher das Ziel klären, dann die Analyse durchführen, daraus priorisierte Aktionen ableiten und danach in die Umsetzung gehen. Erst mit der Umsetzung wird etwas geändert und somit können damit auch Probleme entstehen.
  7. Argumente müssen begründet werden. Man sollte nach Möglichkeit nicht als Gefahr auftreten. Es gibt häufig Menschen die von der aktuellen Situation profitieren. Bewertungen werden evtl. instrumentalisiert und können über die berufliche Zukunft einzelner Personen entscheiden.
  8. Ausreichend Zeit einplanen (meist etwa 5 bis 10 Tage für Systeme die man nicht kennt). Es sollten am besten zwei, aber nicht mehr als drei Personen sein die die Bewertung durchführen. Am besten mit verschiedenen Personengruppen sprechen die am Projekt beteiligt sind, dazu zählen auch Nutzer und Tester.
  9. Zwei verschiedene Ergebnisdokumentationen: Eine Zusammenfassung als Powerpoint die die wichtigsten Punkte herausarbeitet. Eine Ausführliche Dokumentation als Word oder Wikieintrag.
  10. Metriken deuten auf eine Tendenz hin. Ergebnisse kann man nur mit entsprechender Erfahrung heraus lesen und in dem man sie in ein Verhältnis zu einander stellt.
  11. Es ist wichtiger das eine Sache funktioniert. Es ist nicht so wichtig, dass das neuste Framework oder Pattern verwendet wird. Wir sollten Dinge ohnehin so lassen wie sie sind, wenn die (zukünftigen) Anforderungen eine Änderung nicht direkt erzwingen.
  12. Fachlicher Druck, wenn der Auftraggeber auf die Projektbeteiligten Druck ausübt, neue Fachlichkeiten schnell und bevor technische Aufräumarbeiten abgeschlossen sind, geliefert zu bekommen. Ungenügende qualitätssichernde Prozesse, wenn es in einem Projekt keine qualitätssichernden Prozesse gibt (oder diese nicht gelebt werden), welche die Technische Schuld laufend messen und Verbesserungsmaßnahmen einleiten. Ungenügendes technisches Wissen, um technische Entscheidungen treffen zu können, welche die Technische Schuld nicht erhöhen und im Optimalfall reduzieren. Ungenügende Kommunikation der gewählten technischen Lösungen und ihrer Hintergründe. Die Kommunikation kann auf vielerlei Arten erfolgen, beispielsweise durch selbsterklärenden Code, Dokumentation, Diagramme, Videos etc. Parallele Entwicklung in eigenen Branches (beispielsweise Featurebranches) führt zu erhöhten Zusammenführungsaufwänden und somit Technischer Schuld. Hintangestelltes Refactoring, wenn in Codeteilen, welche verbesserungswürdig sind, weiter Fachlichkeiten umgesetzt werden, ohne davor die Verbesserungen umzusetzen. Je mehr diese notwendigen Refactorings verzögert werden, desto aufwändiger werden sie bzw. die Umsetzung von Fachlichkeiten.