20. Agile Development : TDD Essential Practices Build Practices Team Practices Example based test cases Active test writing Sufficient Design Refactoring Automated Unit Testing Fine grained versioning Continuous integration Defined stable increments Pair Programming Shared Coding Guidelines