Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improvements to the "create a release plan" experience to ensure process adherence, automate decision-making, and enhance data integrity #6262

Open
5 of 9 tasks
Tracked by #6264 ...
ladonnaq opened this issue May 30, 2023 · 7 comments
Assignees
Labels
Central-EngSys This issue is owned by the Engineering System team. Engagement Experience Epic

Comments

@ladonnaq
Copy link
Member

ladonnaq commented May 30, 2023

This requirement is a pre-requisite to automating attestation & approval of the APEX S360/Cloud Lifecycle KPIs. Also, important to improving data integrity (gaps in data, validating correctness) and process adherence.

Related epic to address actions for completing APEX requirement and all release plans (not just APEX) - #9080

Requirement:

Improve user experience, release plan metadata, and process adherence:

  • The MVP release plan feature was designed for the creating release plans for APEX release scenarios, not non-APEX release scenarios. Brownfield Services find the UI to be confusing. The UI ask for the "Product's Lifecycle" but does not ask for what they are releasing (new API version only, new Beta SDK versions, new Stable SDK versions). This is causing confusing and leading teams to create incorrect release plans, which means they are not following the correct process & requirements for their scenario.
  • For example, the Azure Container Service (ACS) Service and Offering are Brownfield and have existing REST APIs & SDKs for management plane only. They are adding new initial REST APIs & SDKs for data plane, so this scenario is akin to Greenfield and they are required to follow the Greenfield Service & Product process & requirements. Because the Azure Container Service offering (Product) is GA, they selected the Product's target lifecycle phase as GA. Today that means they created a GA release plan. Mike alerted us when the ACS team showed up to review an initial stable API with the Stewardship Board.

Automate tasks, decision-making, & adherence to process for specific scenario:

Create a release plan workflow
image

APEX sub-process workflow
image

UI changes

Image

Image

Conditional logic related to UI
Product/APEX Details

  1. After product is selected, check the value of the isAPEX field in the epic type = product to determine if the product is in scope for APEX.
    1a. If isAPEX =no, then do not display the questions for isAPEX, isExtension, and the APEX lifecycle milestone drop-down box. Update the isAPEX ADO field in the release plan value to "no". Proceed to step 5.
    1b. If isAPEX = yes, then proceed to step 2.
  2. Display the first APEX question "Will this release plan be used to complete requirements for Azure Product Excellence (APEX)?" yes/no
    2a. If answer is "yes" update the isAPEX ADO field in the release plan work item value to be "yes". Proceed to step 3.
    2b. If answer is "no" update the isAPEX ADO field in the release plan work item value to be "no". Proceed to step 5.
  3. Is this release plan to complete an APEX exception? yes/no
    3a. If yes, then update the isExtension ADO field in the release plan work item value to "yes". Proceed to step 4.
    3b. If no, then update the isExtension ADO field in the release plan work item value to "no". Proceed to step 4.
  4. Display drop-down for user to select "Target APEX lifecycle milestone". The Release Plan Target Lifecycle ADO field in the release plan work item value is set to the value selected by the user. Proceed to step 5. ***Note this logic does not permit user to signoff more than one milestone, which is shown in the workflow diagram. Still in discussions with relevant stakeholders as to what scenarios would permit using release plan for signoff of more than one APEX lifecycle milestone.
  5. User selects release plan type from "Release Plan Type" drop-down box.

API Details

  1. Update API Spec Type ADO Field in the API Spec work item with the value selected by user.
  2. Update the TargetAPIVersion field in the API Spec work item with the value input by user.
  3. Update the APIPublishDate field in the API Spec work item with the value selected by the user.
@ladonnaq ladonnaq changed the title Release Planner updates to support non-APEX data plane onboarding for TypeSpec + DPG Create a release plan feature - updates to support non-APEX data plane onboarding for TypeSpec + DPG May 30, 2023
@maririos maririos moved this from New to Backlog in Engagement Experience Jul 11, 2023
@maririos
Copy link
Member

This issue is to unblock most of the Data plane teams to use the Release Planner

@maririos
Copy link
Member

Given how the priority right now is to get the Dashboard feature complete, I am moving this issue to backlog

@ladonnaq
Copy link
Member Author

ladonnaq commented Jan 8, 2024

@maririos Once this issue is resolved - #6638, then hopefully all service partners will be able to find the most closely related product in the drop-down box and create a release plan. So this requirement should be focused on adding a question to confirm if the work is for an upcoming product launch that is in scope for the APEX launch readiness program or is the work for new functionality that is not in scope for APEX. I will modify the description and find some time in Jan 2024 to meet with @JonathanCrd to discuss.

@ladonnaq ladonnaq changed the title Create a release plan feature - updates to support non-APEX data plane onboarding for TypeSpec + DPG Create a release plan feature - updates to support non-APEX release plans Jan 8, 2024
@ladonnaq ladonnaq changed the title Create a release plan feature - updates to support non-APEX release plans Create a release plan feature - updates to support identifying non-APEX release plans Jan 8, 2024
@ladonnaq
Copy link
Member Author

FYI @maririos - I completed these tasks today.

  1. Add picklist custom ADO field to the release plan work item. ADO field name = " isAPEX" with string picklist values of "yes" or "no". (La Donna)

  2. Release Plan type picklist values simplified: Private Preview, Public Preview, and GA. Add to existing picklist values, do not remove any values. (La Donna)

@ladonnaq
Copy link
Member Author

ladonnaq commented Jun 5, 2024

@ckairen @maririos I have added screenshots of suggested changes to UI and data/conditional logic associated with the UI changes.

@maririos
Copy link
Member

maririos commented Jun 7, 2024

@ladonnaq foolow up questions:

  • what are the options for User selects release plan type from "Release Plan Type" drop-down box. ? I don't fully understand this question.
  • The APEX questions seemd to not belong in the Product details section. These seemed to be APEX specific. Maybe we can add another section called APEX details below Product details and have the questions about isApex and isExtension there
  • Trying to see if there is a way to make the question shorter.. will this work? Will this release plan be used for Azure Product Excellence (APEX)?

@maririos maririos changed the title Create a release plan feature - updates to support identifying non-APEX release plans UI - Create a release plan feature - updates to support identifying non-APEX release plans Jun 27, 2024
@ladonnaq ladonnaq changed the title UI - Create a release plan feature - updates to support identifying non-APEX release plans UI - Create a release plan feature - updates to support identifying release scenarios (i.e. APEX vs non-APEX) Jul 2, 2024
@ladonnaq ladonnaq added the Epic label Jul 11, 2024
@ladonnaq
Copy link
Member Author

@ladonnaq foolow up questions:

  • what are the options for User selects release plan type from "Release Plan Type" drop-down box. ? I don't fully understand this question.
  • The APEX questions seemd to not belong in the Product details section. These seemed to be APEX specific. Maybe we can add another section called APEX details below Product details and have the questions about isApex and isExtension there
  • Trying to see if there is a way to make the question shorter.. will this work? Will this release plan be used for Azure Product Excellence (APEX)?
  1. The Release Plan Type will be "API Spec - no SDKs", "Beta SDKs", "Stable SDKs". I have updated the Release Plan Type Field picklist values in ADO. Once engineering has updated the rules/logic, then I will export the Release Plan work items, update the field values, and import.
  2. The APEX question is 100% associated with the product details. Only products are in scope for APEX. The question would only be shown if the product is in scope for APEX. The isAPEX value in the epic-product type is used to determine if the question should be shown.
  3. We could the APEX acronym and then have a tip/help text that explains. "Will this release plan be used for completing APEX?" Then next question: "Which APEX lifecycle milestone?".

@ladonnaq ladonnaq added the Epic label Sep 16, 2024
@ladonnaq ladonnaq changed the title UI - Create a release plan feature - updates to support identifying release scenarios (i.e. APEX vs non-APEX) Create a release plan feature - updates to support identifying release scenarios, improve data integrity, & process adherence Sep 16, 2024
@maririos maririos added the Central-EngSys This issue is owned by the Engineering System team. label Sep 18, 2024
@ladonnaq ladonnaq changed the title Create a release plan feature - updates to support identifying release scenarios, improve data integrity, & process adherence Revised release plan feature - updates to support identifying release scenarios, improve data integrity, process adherence Sep 20, 2024
@ladonnaq ladonnaq changed the title Revised release plan feature - updates to support identifying release scenarios, improve data integrity, process adherence Improve creating a release plan and to ensure process adherence Sep 27, 2024
@ladonnaq ladonnaq changed the title Improve creating a release plan and to ensure process adherence Improve creating a release plan to ensure process adherence Sep 27, 2024
@ladonnaq ladonnaq changed the title Improve creating a release plan to ensure process adherence Improving creating a release plan experience to ensure process adherence Sep 27, 2024
@ladonnaq ladonnaq changed the title Improving creating a release plan experience to ensure process adherence Improvements to the "create a release plan" experience to ensure process adherence, automate decision-making, and enhance data integrity Nov 7, 2024
@maririos maririos moved this from Backlog to In Progress in Engagement Experience Nov 21, 2024
@maririos maririos moved this from In Progress to Backlog in Engagement Experience Dec 3, 2024
@maririos maririos moved this from Backlog to In Progress in Engagement Experience Dec 10, 2024
@ckairen ckairen moved this from 🤔 Triage to 🐝 Dev in Azure SDK EngSys 🚢🎉 Dec 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Central-EngSys This issue is owned by the Engineering System team. Engagement Experience Epic
Projects
Status: In Progress
Development

No branches or pull requests

3 participants