Portrait Of An Agile Development Process
Jake Lawlor gives a great overview and lots of practical details around the implementation of an agile development process.
- What Does It Mean To Run A Project Using An Agile Process?
- Basic Terminology
Agile Patterns and Practices To Choose From When Crafting Your Process
- User Stories and Technical Stories
- Team Velocity
- Unit test
Our Teams Development Process Overview
- Establish Iterations and Release Cycles
- Employ a Planning Game To Identify Stories and Tasks
- Utilize a Daily Standup Meeting to Reinforce Communication
- Use a Planning Board to Communicate Task Activity and Ownership
- Identifying and Procuring the Development Tools to Establish a Refactoring Space
- Establishing an Automated Build, Test, Source Control, Stage and Deploy Process
- Use Paired Programming Where It Makes Sense on Difficult Tasks
- Promote Collaboration and Shared Code Ownership
- Use Automated Regression Testing (Unit Tests) Where It Makes Sense
- Track Team Velocity by Comparing Estimates Vs Actual Task Time
- Follow a Strict Development, Test, Production Environment Deployment Flow
- Use Technical Spikes to Gather Information for Unknowns
- Pay Down Your Projects Technical Debt – Increase Your Velocity!
- Design Solutions Using Object Oriented, N-Tier, Service-based Architecture Practices
- Refactor Mercilessly to Keep Your Code Base Cruft-Free
- Continue to Improve Your Process – Try Something New Every Iteration!
- Testing Release
- Production Release
[via Jake Lawlor's Blog]