Core Platform Team/PET Work Processes/PET Initiative Check Process

From mediawiki.org

An initiative is a Core Platform Team project that spans multiple sprints and works towards achieving the aligned goals of the Team. Typically, the scope is a project that spans no more than four months and is worked by a subset of the members of the Team.

An initiative may be a product initiative or an infrastructure initiative:

  • A product initiative is one in which a product or set of features is delivered to satisfy the needs of an external (to the Team) customer. It is user facing, adds features or changes behavior, and must have the involvement of a product manager.
  • An infrastructure initiative is one in which changes are made to the software the Team maintains or the environment in which the Team develops and maintains it, ultimately improving future products and reducing cost and risk. This could include improvements to scalability, maintainability, testability, understandability, and/or performance. Infrastructure initiatives may not include any user-facing features or significant visible modifications to user-discernible behavior.

Phase 0: New Initiative[edit]

  • Any member of the Core Platform Team may propose an initiative.
  • The first step is for the proposer of the initiative to draft an initial OKR to demonstrate the goal of the initiative and the impacts that it will have. This will help also to understand the work in the context of team and org objectives.
  • The second step is to attend a Core Platform Team Planning Meeting to declare the desire to begin planning the new initiative.
  • If the Core Platform Team agrees that the initiative is aligned with the Core Platform Team Product Development Principles, the initiative may move forward to Phase 1.
  • If the initiative proposer is not immediately available to move to Phase 1, the initiative may be placed in a prioritized queue to be picked up later.

Phase 1: Inception[edit]

  • Typically, the proposer of the initiative would pair with at least one other team member in the inception phase.
  • Product initiatives must be proposed by a product manager.
  • Prior to entering this phase, the initiative proposer should have done some preliminary research into the viability of the idea and, for product initiatives, the market for the product. This research should be made available to those reviewing the initiative in the later stages of this process.
  • In this phase, the initiative proposer will create a vision table, which is a concise overview of the vision and strategy of the initiative. The vision appears at the top of the table, and the strategy appears in the columns at the bottom of the table. The contents of the vision table should be supported by the preliminary research.
  • A template for the vision tables is here.

Product Initiative Vision Table[edit]

Vision:
  •  
  •  
  •  
Target Group(s):
  •  
  •  
  •  
Needs:
  •  
  •  
  •  
Product:
  •  
  •  
  •  
Aligned Goals:
  •  
  •  
  •  
  • Fill in 2 or 3 bullet points or sentences per box:
    • Vision: What is the purpose of the product being developed for this initiative, and what improvements it will bring? Limit the scope to the initiative here rather than expanding to a larger vision. If this initiative vision ties into a larger team, departmental, or Foundation vision, roadmap, goal, or OKR, mention that briefly here.
    • Target Group(s): Who will benefit from or use the product? This must include a Launch Partner (internal or external) to make sure the product has a user for testing and iteration when deployed.
    • Needs: What problems will the product solve? What user needs will it satisfy? This should ideally be supported by prior user research or external requests for the capability.
    • Product: What specifically will the product be? What will be its headline features? What is the minimum viable product (MVP)? This section should be specific enough to motivate others on the team to feel confident supporting the product.
    • Aligned Goals: How does this product fit in with the team, department, and/or Foundation goals?

Infrastructure Initiative Vision Table[edit]

Vision:
  •  
  •  
  •  
Stakeholder(s):
  •  
  •  
  •  
Problem:
  •  
  •  
  •  
Solution:
  •  
  •  
  •  
Aligned Goals:
  •  
  •  
  •  
  • Fill in 2 or 3 bullet points or sentences per box:
    • Vision: What is the purpose of the project and what improvements it will bring? Limit the scope to the initiative here rather than expanding to a larger vision. If this initiative vision ties into a larger team, departmental, or Foundation vision, roadmap, goal, or OKR, mention that briefly here.
    • Stakeholder(s): Who will be affected by and benefit from this work? Most of the time, this would be other teams at WMF, but it could be the Core Platform Team itself as well.
    • Problem: What problem will the project solve?
    • Solution: How will it solve it? This should be specific enough to motivate others on the team to feel confident supporting the project.
    • Aligned Goals: How does this project fit in with the team, department, and/or Foundation goals?

Phase 2: Socialization[edit]

  • Once the initial vision is defined, input from the Team must be gathered to improve the vision, further refine it, and validate the feasibility of the project.
  • The initiative proposer should schedule a facilitated brainstorming meeting, inviting the full Team to discuss the initiative. A facilitator will ensure that no voices dominate the conversation and that quiet voices are empowered to contribute.
  • In addition, the initiative must be circulated to the full Team electronically, giving a deadline for receiving feedback.
  • For infrastructure initiatives, the initiative should be discussed at a Technical Planning meeting.
  • While feedback will be accepted from the full Team, input will be prioritized from individuals who commit to becoming involved in the implementation of the initiative.
  • At the completion of the socialization phase, the initiative proposer will updated the vision table.

Phase 3: Recruitment[edit]

  • Initiative team members can join the initiative team during the first two phases. If the initiative team is not yet fully staffed at this point, there will be a recruitment phase to get the commitment of additional team members.
  • The composition of an initiative team will be as follows:
    • For product initiatives: one product manager
    • One tech lead or architect
    • One engineering manager
    • At least two engineers, including the tech lead
    • Other staffing will depend upon the scope and content of the initiative.
  • Choose one team member to be the initiative lead. This team member will be the focal point for questions about the initiative. This team member may also serve in one of the other roles.
  • By the completion of the recruitment phase, sufficient team members should have committed to the initiative to be able to staff it.
  • Actual staffing of the initiative, if approved, will be determined by availability of staff when the initiative is scheduled. Recruitment at this phase is to demonstrate support for the idea and availability of technical expertise.

Phase 4: Decision[edit]

  • The initiative team must present the initiative vision to the Core Platform Team at the Core Platform Team Planning Meeting.
  • The Core Platform Team will validate that the initiative still aligns with the Core Platform Team Product Development Principles and that the resourcing of the initiative is appropriate and feasible.
  • If the Core Platform Team agrees to move forward on the initiative:
  • There must be 2 weeks minimum lead time for team coordination from the time that the Core Platform Team agrees to move forward with the vision until sprint work can start. In that time, the initiative lead will create Phabricator tasks for the initiative, including creation of epics and user stories.