A Practical Guide To Feature Driven Development Pdf
| Aspect | FDD | Scrum | Extreme Programming (XP) | |------------------------|--------------------------------------------|------------------------------------------|-------------------------------------------------| | | Features (client-valued functions) | Sprints (time-boxed) | User Stories & Technical Practices | | Team Size | 15-50 developers (scales well) | 5-9 members per team | Best for small, co-located teams (2-10) | | Process Focus | Model-driven, feature-centric | Iterative, role-based (Product Owner, Scrum Master, Team) | Technically focused: TDD, Pair Programming, Refactoring | | Upfront Modeling | Yes (1-2 weeks for overall model) | Minimal (just enough for sprint planning)| Minimal (emergent design through refactoring) | | Architecture | Chief architect defines overall model | Evolving architecture within sprints | Emergent architecture guided by simple design | | Quality Assurance | Formal inspections and QA audits | Sprint reviews and retrospectives | Continuous integration, automated testing, pair reviews | | Best For | Large, complex projects with many stakeholders | Projects with changing requirements and frequent feedback | Projects demanding high technical excellence and rapid iteration |
Once approved, the code is integrated into the main build, verified via continuous integration, and marked as complete. Core Roles in an FDD Ecosystem
Individual developers responsible for writing, testing, and maintaining specific classes or modules.
Because features are small (under 2 weeks), progress is easy to measure, and delivery dates are more reliable. a practical guide to feature driven development pdf
The FDD life cycle consists of five sequential steps. The first three steps establish the project foundation. The final two steps repeat for every feature.
Never allow developers to modify arbitrary pieces of code outside their assigned jurisdiction. If a feature spans multiple classes, the respective Class Owners must coordinate via a temporary Feature Team led by a Chief Programmer.
Action+Result+Objectbold Action plus bold Result plus bold Object Examples of Feature Definitions | Aspect | FDD | Scrum | Extreme
: Dynamic, small groups formed to implement specific features. Inspections : Formal technical reviews to ensure quality.
Development is broken into small, manageable steps.
The Chief Programmer selects a small group of related features to implement next. They assemble a temporary consisting of the Class Owners whose code will be modified to support these features. The FDD life cycle consists of five sequential steps
Do you need a summarizing the 5 processes?
Subject areas are converted into a comprehensive master list of granular features. Process 3: Plan by Feature Features are grouped and assigned to execution packages.
Responsible for the overall visual model and architectural integrity of the system.
A small group (the feature team) designs the specific solution for the task at hand.