Unit Testing Patterns and Anti-Patterns
Introduction to Agile Principles, Practices, and Processes
Refactoring to a SOLID Foundation
Domain Driven Design
Taming Dependency Chaos with Inversion of Control Containers