The virtues

Principles

1. estimates variation (Value Variation (VV))

Values: Changeability, Continuous improvement

2. do only what's necessary (DOWN)

Values: production efficiency, changeability

Beware of optimizations! (Principle of the red degrees)
You Ain't Gonna Need It (YAGNI) (Principle of the blue grade)
Keep it simple, stupid (KISS) (principle of the red degrees)

3. isolate aspects (IA)

Values: Changeability

Don't Repeat Yourself (DRY) (principle of the red degrees)
Separation of Concerns (SoC) (principle of orange grade)
Single Level of Abstraction (SLA) (principle of orange grade)
Single Responsibility Principle (SRP) (principle of orange grade)
Interface Segregation Principle (ISP) (principle of yellow grade)
Design and implementation do not overlap (principle of blue grade)
Integration Operation Segregation Principle (IOSP) (principle of red degrees)

4. minimize dependencies (Minimize Dependencies (MD))

Values: Changeability
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) (principle of red degrees)

5. keep promises (Honor Pledges (HP))

Values: Changeability

or also: Minimize Surprises

Liskov Substitution Principle
Principle of Least Astonishment
Implementation mirrors design
Favour Composition over Inheritance (FCoI)

Practical

1. embrace uncertainty (Embrace Uncertainty (EU))

Values: Changeability, Continuous improvement

Use a version control system
Automated integration tests
Automated unit tests
Mockups (test dummies)
Continuous Integration
Inversion of Control Container

2. focus (Focus (F))

Values: Production efficiency

Component orientation
Test first
Limit WIP // new

3. value quality (VQ)

Values: Production efficiency

Accept only high quality // new
Automated unit tests
Reviews

4. get things done (GTD)

Values: Production efficiency

Iterative development
Continuous Delivery
Limit WIP

5. stay clean (SC)

Values: Changeability, correctness, production efficiency

Observe the scout rule
Complex refactoring
Apply simple refactoring patterns
Static code analysis (metrics)
Code Coverage Analysis
Source code conventions // formerly principle

6. keep the ball rolling (Keep Moving (KM))

Values: Continuous improvement

Read, read, read
Participation in specialist events
Passing on experience
Reflect daily
Root Cause Analysis
Measuring errors
Issue Tracking
Regular retrospectives // new

en_USEnglish