The document describes a pluggable approach to project documentation that can be adapted for different project sizes, development processes, and phases including envisioning and iterative development. Key aspects that can be customized include workflow plug-ins for different phases, process paradigm plug-ins for iterative or waterfall approaches, and process visibility plug-ins for varying levels of documentation. The goal is to provide documentation that meets the needs of any given agile project.
2. • Agile Manifesto
• Agile Modeling (AM)
• Agile Model Driven Development (AMDD)
• Agile Unified Process (AUP)
3.
4.
5. • Pluggable approach to project documentation
• Adaptable documentation, according to the
characteristics imposed by any given project
– Project size / Level of detail
• High abstraction level: Fewer artifacts
• Low abstraction level: More artifacts
– Development process paradigm
• Iterative & Incremental
• Waterfall
6. Project Documentation
Envisioning Development
Essential Envisioning Extended Envisioning Iterative Development
[WF1] Initial Business [WF1] Extended [WF1] Iteration Planning +
Definitions Requirements Envisioning Modeling
[WF2] Initial Process [WF2] Initial Risk
[WF2] Model Storming
Definitions Assessment
[WF3] Initial Requirements [WF3] Initial Management [WF3] TDD + CI +
Envisioning Definitions Refactoring
[WF4] Initial Architectural
[WF4] Iteration Tracking
Envisioning
Process phase plug-in Process paradigm plug-in [WF5] Iteration Closing
Process visibility plug-in Workflow plug-in
7. • Process Phases
– Two phase organization
– Agnostic towards any specific methodology
– Agnostic towards any process paradigm
– Process phase plug-ins
• Envisioning
• Development
8. • Process Phases Envisioning
– Kickoff stage
– Team and other stakeholders focus on initial
project planning
– Process visibility plug-ins
• Essential
• Extended
9. • Process Phases Envisioning Essential
– Drives the team in order to…
• Make initial business decisions
• Set up basic process variables
• Select initial product requirements
• Design high-level product architecture
11. • Process Phases Envisioning Essential
– Workflow plug-ins
• WF1: Initial Business Definitions • WF3: Initial Requirements Envisioning
– Business Background – Product Vision
– Business Cases – Product Actors
• WF2: Initial Process Definitions – Product Backlog
– Definition of Done – Product Release Plan
– Assignment of Roles – Product UI Flow Model
– Agenda of Rituals – Product Glossary
• WF4: Initial Architectural Envisioning
– Domain Model
– Analysis Model
– Design Model
– Deployment Model
– Implementation Model
– Change Cases
12. • Process Phases Envisioning Extended
– Drives the team in order to…
• Assess project risks
• Analyze product requirements further
• Define project management variables
15. • Process Phases Development
– Team sets out to construct the software
– Process paradigm plug-ins
• Iterative & Incremental
• Waterfall
16. • Process Phases Development Iterative
– Processes addressed by this instance
• UP (Unified Process)
• XP (Extreme Programming)
• Scrum
• Kanban
20. • Additional Documentation
– Applied when needed, according to the project
– Artifacts
• User Documentation
• Support Documentation
• Operation Documentation