In February 2017, “Project Management Institute” (PMI) Pulse report was released, Based on that report, An organisation is losing $97 million to failed projects for every $1 billion they invest.
Development life cycle has 7 phases
- Requirement gathering
The above cycle will repeat until the desired business metric is achieved. Below detail out the deliverables as part of each & every milestone. Few new terms are
Four In A Box (4IAB) — Committee constitute of Technical Manager, Program Manager, Product Manager, Technical Architect. Program manager takes the accountability of providing the multiple viewpoint of single project to multiple stakeholders. Technical Architect helps with E2E feature design w.r.t HLD, and enable various teams with their HLD & LLD. Product manager helps in converting customer expectations to business requirements, modelling business metric, helping with scoping & Phasing of business expectations. Technical Manager helps in aligning all the required stakeholders, Coming up with phased rollout approaches, ensuring release quality, long term architecture, Helps in unblocking risks & blockers as and when arises.
During this phase, Product Manager will work with customers & business. The agenda of this discussion is either to rollout the new feature, or enhance the existing feature. This process is owned by Product Manager & Business Analyst. The outcome of this stage is
- High level Requirements
During this phase, group will assess the feasibility analysis, breaking the vision into roadmap & smaller deliverables. One of the important outcome of this is business metric, that can help in deciding the success of the vision. This process is owned by the Product Manager, Business Analyst, Design SPOC & Engineering SPOC. Expectations from this stage is
- Requirement documentation
- Design workflow
- Business Metric
- Phased development & rollout approaches
During this phase, technical teams with understand the expectations, impact & vision. Vision will help them to design the current feature with LTA in mind. This process is owned by the Engineering POC & Product Manager, Design Manager. During this process expectations are to come up with concrete details that are required for implementation & Go Live. Expectations from this stage is
- LLD of each components
- Testing Strategy
- Roll out strategy
- Non functional requirements
During this phase, expectation is to perform the coding in such a way, that can help with fastest delivery timelines and ensuring proper dependency metric. This process is owned by the Engineering POC, Product & Design Manager. Every stakeholder has different deliverables.
- Component level implementation based on LLD
- Completion of unit test, Code review & Component testing
- Review with UX Team if any ux design is involved
- Integration testing with other components
- Dashboard to capture the business metric & NFR
- Write Test Scenario
- Review it with Product & Engineering
- Write Test cases (with Prioritisation)
- Review it with Product & Engineering
- QA Sign off Criteria
- Weekly twice sync up call with all development teams & Product team
- Share summary of projects on Monday EOD
- Dependency Metric
This process is owned by the Engineering POC, Product & Design Manager. Expectation from this process is that the team will validate the feature sanity by executing the test cases, to ensure, what is expected is what is built. Post execution of all P0, P1 & P2 test case execution, and validating any fix if any, Handover the build to Product & Design, such that they can validate the same in parallel. Output from this phase is
- Daily execution summary
- Test execution report
- Enhancements if any
This process is owned by the Engineering POC. Respective teams will take their components to production. Component feature flags will be enabled based on code rollout strategy. Team will perform the whitelisted testing, before enabling it for production. NFR & Dashboards are working as expected. Product team will validate the output against the Business metric and propose the new enhancements if any.
- Alerts setup
QA team to plan for automated feature suite in case it’s not present. Add the Feature test case to the regression suite (Manual / Automated)
This process is owned by the engineering & Product POC. Expectations are to resolve any production issue related to this functionality on priority basis. This cycle will be of 2 weeks, where core team members will be fixing the issue if any. Post that it will be taken care of by production support POC.