In a Continuous Improvement (CI) model, systems are never transitioned out of active development, but rather, they are continuously improved and maintained over their lifetimes. By embracing a CI model, we can ensure that our system investments do not depreciate and become antiquated through stagnation and a lack of modernization.
1. Continuous Improvement Planning
Over the product life, the Product Owner and team use structured techniques to log defects, capture user satisfaction, review system requirements and evaluate the suitability of existing and emerging technologies to continue to meet user needs. Relevant key performance indicators are monitored to determine when new features are required to remain current with user needs.
Identified development work feeds back into team backlogs for execution in future iterations. In addition, if consultations with the Office of Environmental Information (OEI) at the beginning of the project did not uncover appropriate Cloud hosting options, the team should check back to determine whether viable Cloud hosting options have become available. Major enhancements and significant architecture changes that exceed Agency, group or team thresholds may require returning to the Discovery Phase.
Deliverables
- Release backlog updates: Defects should be logged and placed in the program backlog for future prioritization and resolution.
- Capture user satisfaction
- Review system requirements: Frequently review system requirements against end user requirements to confirm continued delivery of business value.
- Evaluate the suitability of existing and emerging technologies to continue to meet user needs: Frequently review existing and emerging technologies to avoid system stagnation, to improve system scalability and performance and to provide an improved end user experience.
2. Iterative, Continuous Improvement Development
Teams develop systems within fast-paced, incremental iterations. Each iteration results in tested, working and deployable system functionality that provides tangible value to the user. User stories contain all documentation and acceptance criteria necessary for each item delivered within an increment. Teams focus on small, frequent releases of working software so that stakeholder feedback can be gathered and validated against planned future functionality.
Deliverables
- Release backlog updates: The repository for all upcoming work planned for a given release should be updated with each iteration.
- Iteration backlogs: The repository for all upcoming work planned for a given iteration.
- Team process agreement updates: Process agreements should be updated regularly as the team focuses on continuous improvement.
- Definition of done updates: The team’s definition of done should be revisited and refined regularly as requirements change and the team focuses on continuous improvement.
- Working software: Developed, tested code that can be released as-is and provide immediate value to end users.