Documente Academic
Documente Profesional
Documente Cultură
Practice
Domain object modeling Developing by feature Class (code) ownership Feature teams Inspections Regular build schedule Configuration management Reporting/visibility of results
Planning game Small releases Metaphor Simple design Tests Refactoring Pair programming Continuous integration Collective ownership On-site customer 40-hour weeks Open workspace Just rules Requirements Acceptance Tests
Active user involvement Empowered teams Frequent delivery Fitness (simplicity) Iterations and increments Reversible changes Baselined requirements Integrated testing Stakeholder collaboration
Product backlog Burndown chart Sprint backlog Iterations and increments Self managed teams Daily scrums
Exploratory 360 Early victory Walking skeleton Incremental re-architecture Information radiators Methodology shaping Reflection workshop Blitz planning Delphi estimation Daily stand-ups Agile interaction design Process miniature Side-by-side programming Burn charts
Project Cycle
Process
Feasibility Study
Iteration (1)
Form the Modeling Team Conduct a Domain Walkthrough Study Documents Develop Small Group Models Develop a Team Model Refine the Overall Object Model Write Model Notes Internal and External Assessment
Build a Features List
Architectural Spike
System Metaphor
Release (1)
Business Study
Feasibility Report Feasibility Prototype (optional) Outline Plan Risk Log Business Area Definition Prioritized Requirements List Development Plan System Architecture Definition Updated Risk Log
Form the Features List Team Build the Features List Internal and External Assessment
Plan by Feature
Form the Planning Team Determine Development Sequence Assign Features to Chief Coders Assign Classes to Developers Self Assessment
Iteration (1)
Design by Feature Form a Feature Team Conduct Domain Walkthrough Study Referenced
Release Planning Release Plan Iteration (1) Iteration Planning Iteration Plan Daily Standup Collective Code Ownership Create Unit Tests Unit Tests Pair Programming Move People Around Refactor Mercilessly Continuous Integration Acceptance Testing Iteration (2) Iteration Planning Iteration Plan Daily Standup Collective Code Ownership Create Unit Tests Unit Tests Pair Programming Move People Around Refactor Mercilessly Continuous Integration Acceptance Testing Iteration (n) Iteration Planning
Sprint Planning Meeting Product Backlog Sprint Backlog Sprint Daily Scrum Shippable Code Sprint Review Meeting Shippable Code Sprint Retrospective Meeting
Iteration (2)
Chartering Perform the Exploratory 360 Shape the Methodology Build the Initial Project Plan Reflection on Chartering
Delivery Cycle
Recalibrating the Release Plan Iterations Delivery to Real User Reflection on Delivery
Iteration Cycle
Functional Model Functional Prototype (1) Functional Prototype Functional Prototype Records Functional Prototype (2) Functional Prototype Functional Prototype Records Functional Prototype (n) Functional Prototype Functional Prototype Records Non-functional Requirements List Functional Model Review Records Implementation Plan Timebox Plans Updated Risk Log Timebox Plans Design Prototype (1) Design Prototype Design Prototype Records Design Prototype (2) Design Prototype
Iteration (n)
Sprint Planning Meeting Product Backlog Sprint Backlog Sprint Daily Scrum Shippable Code Sprint Review Meeting Shippable Code Sprint Retrospective Meeting Sprint Planning Meeting Product Backlog Sprint Backlog Sprint Daily Scrum Shippable Code Sprint Review Meeting Shippable Code Sprint Retrospective Meeting
Feature
FDD
Extreme Programming
DSDM
Scrum
Crystal
Documents Iteration Plan Develop Sequence Daily Standup Diagrams Collective Code Ownership Refine the Object Model Create Unit Tests Write Class/Method Unit Tests Prologue Pair Programming Design Inspection Move People Around Build by Feature Refactor Mercilessly Implement Continuous Integration Classes/Methods Acceptance Testing Conduct Code Inspection Release (2) Iteration (1) Unit Test Iteration (2) Promote to the Build Iteration (2) Iteration (n) Release (n) Design by Feature Iteration (1) Form a Feature Team Iteration (2) Conduct Domain Iteration (n) Walkthrough Study Referenced Documents Develop Sequence Diagrams Refine the Object Model Write Class/Method Prologue Design Inspection Build by Feature Implement Classes/Methods Conduct Code Inspection Unit Test Promote to the Build
Iteration (n)
Design Prototype Records Design Prototype (n) Design Prototype Design Prototype Records Tested System Test Records
Implementation
User Documentation Trained User Population Delivered System Increment Review Document
Design by Feature Form a Feature Team Conduct Domain Walkthrough Study Referenced Documents Develop Sequence Diagrams Refine the Object Model Write Class/Method Prologue Design Inspection Build by Feature Implement Classes/Methods Conduct Code Inspection Unit Test Promote to the Build
Feature
FDD
Extreme Programming
DSDM
Scrum
Crystal
Deliverables
Assigned classes Assigned features Class/method prologue Classes/methods Code inspection results Design inspection results Development sequence Document study results Domain walkthrough results Feature team Features list Features list team Internal and external assessment Model notes Object model Planning team Promoted builds Refined object model Self assessments Sequence diagrams Small group models Team model Unit tests Unit tests results
Acceptance tests Acceptance tests results Daily standup results Integrated code Iteration plan Personnel rotation results Refactored code Release plan Requirements System metaphor Unit test results Unit tests
Business area definition Delivered system Design prototype Design prototype records Development plan Feasibility prototype Feasibility report Functional model Functional model review records Functional prototype Functional prototype records Implementation plan Increment review document Non-functional requirements list Outline plan Prioritized requirements list Risk log System architecture definition Test records Tested system Timebox plans Trained user population User documentation
Daily scrum results Product backlog Retrospective meeting results Review meeting results Shippable code Sprint backlog
Mission statement Tradeoff priorities Team structure and conventions Reflection workshop results Project map Release plan Project status Risk list Iteration plan and iteration status Viewing schedule Actor-goal list Requirements file Use cases User role model Screen drafts System architecture Source code Delivery package Common domain model Design sketches and notes Tests Bug report User help text User manual and training manual