Die Tugenden

Die Tugenden

Prinzipielles

1. Schätze Variation (Value Variation (VV))

Werte: Evolvierbarkeit, Kontinuierliche Verbesserung

2. Tue nur das Nötigste (Do Only What´s Neccessary (DOWN))

Werte: Produktionseffizienz, Evolvierbarkeit

Vorsicht vor Optimierungen! (Prinzip des roten Grads)
You Ain´t Gonna Need It (YAGNI) (Prinzip des blauen Grads)
Keep it simple, stupid (KISS) (Prinzip des roten Grads)

3. Isoliere Aspekte (Isolate Aspects (IA))

Werte: Evolvierbarkeit

Don´t Repeat Yourself (DRY) (Prinzip des roten Grads)
Separation of Concerns (SoC) (Prinzip des orangenen Grads)
Single Level of Abstraction (SLA) (Prinzip des orangenen Grads)
Single Responsibility Principle (SRP) (Prinzip des orangenen Grads)
Interface Segregation Principle (ISP) (Prinzip des gelben Grads)
Entwurf und Implementation überlappen nicht (Prinzip des blauen Grads)
Integration Operation Segregation Principle (IOSP) (Prinzip des roten Grads)

4. Minimiere Abhängigkeiten (Minimize Dependencies (MD))

Werte: Evolvierbarkeit
Dependency Inversion Principle
Information Hiding Principle
Law of Demeter
Open Closed Principle
Tell, don´t ask
Interface Segregation Principle (ISP)
Integration Operation Segregation Principle (IOSP) (Prinzip des roten Grads)

5. Halte Versprechen ein (Honor Pledges (HP)

Werte: Evolvierbarkeit

oder auch: Minimize Surprises

Liskov Substitution Principle
Principle of Least Astonishment
Implementation spiegelt Entwurf
Favour Composition over Inheritance (FCoI)

Praktisches

1. Umarme Unsicherheit (Embrace Uncertainty (EU))

Werte: Evolvierbarkeit, Kontinuierliche Verbesserung

Ein Versionskontrollsystem einsetzen
Automatisierte Integrationstests
Automatisierte Unit Tests
Mockups (Testattrappen)
Continuous Integration
Inversion of Control Container

2. Fokussiere (Focus (F))

Werte: Produktionseffizienz

Komponentenorientierung
Test first
Limit WIP // neu

3. Wertschätze Qualität (Value Quality (VQ))

Werte: Produktionseffizienz

Akzeptiere nur hohe Qualität // neu
Automatisierte Unit Tests
Reviews

4. Mach fertig (Get Things Done (GTD))

Werte: Produktionseffizienz

Iterative Entwicklung
Continuous Delivery
Limit WIP

5. Halte Ordnung (Stay Clean (SC))

Werte: Evolvierbarkeit, Korrektheit, Produktionseffizienz

Die Pfadfinderregel beachten
Komplexe Refaktorisierungen
Einfache Refaktorisierungsmuster anwenden
Statische Codeanalyse (Metriken)
Code Coverage Analyse
Source Code Konventionen // ehemals Prinzip

6. Bleib am Ball (Keep Moving (KM))

Werte: Kontinuierliche Verbesserung

Lesen, Lesen, Lesen
Teilnahme an Fachveranstaltungen
Erfahrung weitergeben
Täglich reflektieren
Root Cause Analysis
Messen von Fehlern
Issue Tracking
Regelmäßige Retrospektiven // neu