Feature-Driven Development (FDD) combines the speed and flexibility of agile methods with model-driven techniques that scale to the largest projects. This definitive book, A Practical Guide to Feature-Driven Development, shows FDD at work in real-world projects as it presents start-to-finish guidance on adapting FDD to the reader's needs. It offers in-depth coverage of all five FDD stages: modeling, feature lists, planning, design, and software construction.
|Edition description:||New Edition|
|Product dimensions:||6.90(w) x 9.00(h) x 0.70(d)|
Table of Contents
I. FEATURE-DRIVEN DEVELOPMENT—CONCEPTS.
1. Process Pride: The Pain and Relief.
Process Pride. The Search. Communication, Communication, and Communication. Complexity. Quality. Process Pain and Relief. Summary.
2. Feature-Driven Development—Projects and People.
The Big Three. Process and People. The Roles People Play in FDD. Summary.
3. Feature-Driven Development—Practices.
Integrating Best Practices. Domain Object Modeling. Developing by Feature. Class (Code) Ownership. Feature Teams. Inspections. Regular Build Schedule. Configuration Management. Reporting/Visibility of Results. Summary.
4. Feature-Driven Development—Processes.
The Scope of Feature-Driven Development (FDD). FDD in Four Sentences. FDD in a Nutshell. FDD in Detail. Summary.
5. Feature-Driven Development—Progress.
Time: A Scarce Resource. Estimating Progress. Track by Feature. Reporting to the Development Team. Reporting to the Chief Programmers and Project Manager. Reporting to Sponsors and Upper Management. Chief Programmer Plans. Feature Kills. Summary.
6. Feature-Driven Development—Packages.
Chief Programmer Work Packages. When You Have to Produce a Mountain of Paper. Summary.
II. FEATURE-DRIVEN DEVELOPMENT—THE FIVE PROCESSES IN PRACTICE.
7. Develop an Overall Object Model.
The Form the Modeling Team Task. The Conduct a Domain Walkthrough Task. The Study Documents Task. The Develop Small Group Models Task. The Develop a Team Model Task. The Refine the Overall Object Model Task. The Write Model Notes Task. Verification. Exit Criteria.
8. Feature-Driven Development—Build a Features List.
The Form the Features List Team Task. The Build the Features List Task. Verification. Exit Criteria.
9. Feature-Driven Development—Planning Feature Development.
The Form the Planning Team Task. The Determine the Development Sequence Task. The Assign Feature Sets to Chief Programmers Task. The Assign Classes to Developers Task. Verification. Exit Criteria.
10. Feature-Driven Development—Designing by Feature.
The Form a Feature Team Task. The Conduct a Domain Walkthrough Task. The Study the Referenced Documents Task. The Develop the Sequence Diagram(s) Task. The Refine the Object Model Task. The Write Class and Method Prologue Task. Verification: Design Inspection. Exit Criteria.
11. Feature-Driven Development—Build by Feature.
The Implement Classes and Methods Task. The Conduct a Code Inspection Task. The Unit Test Task. The Promote to the Build Task. Verification. Exit Criteria.
III. FEATURE-DRIVEN DEVELOPMENT—ADDITIONAL TOPICS.
12. Feature-Driven Development—Technical Architecture.
Technical Architecture. Technical Architecture in an FDD Project. The PD Layer. The SI Layer. The UI Layer. The DM Layer. Layers and the Build. Reducing Dependencies between Components.
13. Feature-Driven Development—Testing: Failures, Faults, and Fixes.
Kinds of Testing. Failures, Faults, and Fixes. FDD and Unit Testing. FDD and Integration Testing. FDD and System Testing. Customer/User Acceptance Testing. Finding Failures. Reporting Failures. Diagnosing Defects. Fixing Faults. The Defect Board. Summary.
14. Feature-Driven Development—Other Surroundings.
Requirements Change Management. User Documentation. Data Loading and Conversion. Deployment. Summary.
15. Feature-Driven Development—“All Change”.
People and Change. Technology and Change. Process and Change. Last Words.