WMF product development process

Overview
This guide for product development centers on tasks and potential stakeholders involved and is proposed to create a set of suggested steps to follow for a successful product organization. The core philosophy is to provide checks for our community and internal dependencies across the WMF that our product teams can use for guidance as they proceed. This was evolved from an earlier draft review that incorporated feedback from multiple processes and expectations. This also was evolved with the respect to a more detailed draft WMF engineering development process being developed across teams.

This is a general guideline or potential checklist which is very high level. Each team may have its own mix of responsibilities or stakeholders, and some phases may not apply. Community involvement or interaction is expected throughout and ideally through established team feedback mechanisms or community liaisons.

Concept
New feature proposals and submissions for current problems or new ideas. These items could involve or be generated from areas like general discovery or ideation, research, technical debt and/or strategy. Submissions could come from anyone but generally are from our Community members, Community Liaisons, internal Product Audiences, Design Research, Research, Partnerships and Communications.

Plan
Planning and prioritization involve defining the inputs (people, forecasting, resources), outputs (tasks), outcomes (metrics), defining milestones, dependencies and maintenance tasks. These tasks are generally driven by Product Managers, Engineering and User Experience and may include participation, validation or checkins with Communications, Team Practices, Security, Community Liaisons, API/Services, Release Engineering and Legal teams.

Design
Validation of solutions proposed and testing of prototypes for those proposals. Testing via labs, prototyping, a/b tests, surveys, flow analysis, user sessions, and community validation of ideas proposed. The tasks typically involve User Experience, Design Research, Research, Architecture and Operations, Data Analysts and Community Liaisons.

Build
Backend and front-end development takes place and carry the selected concept forward to implementation. Quality and performance are important checks. If any issues or bugs are found the feature may roll back to Design depending on the severity of issues found. The tasks are generally driven by Product Managers, Engineering and User Experience and could include participation, validation or checkins with Operations, Team Practices, API and Services, Performance and Architecture. Bugs and feedback in this round can send features back to the design phase.

Release
Reviews by dependent stakeholders from the concept stage to validate concept completion. Community review and initial feedback on the development may influence release & rollout timing. Teams will be analyzing performance and adoption. If any issues or bugs are found the feature may roll back a stage or two depending on the severity of issues found. Announcements or events may also be created around releases. These tasks could apply to alpha, beta and production level feature releases. The tasks are generally driven by Product Managers, Communications, Community Liaisons, Release Engineering and could include participation, validation or checkins with Operations, Legal, and Security. Bugs and feedback in this round can send features back to the build phase.

Maintain
After a feature is released ongoing maintenance is measured through feedback loops and analysis, retrospectives, metrics and impact reviews and identification of improvements. Community review and feedback on real usage and interaction is measured and teas will be analyzing performance and adoption. Improvements or new features restart the process and planning and milestones will be created. The tasks generally driven by Product Managers, Performance, Data Analysts, Design Research, Research, Community Liaisons and Security. Any iterations to the product will result in the process restarting.