You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The goal of this epic is to align ownership of concrete assets, processes and responsibilities with the recently defined charters of the .NET Engineering Services and .NET Product Construction teams.
The overall business objective is to clearly define charter for each team and to align ownership of our assets, processes and responsibilities with those charters for both teams so that both the .NET Engineering Services and .NET Product Construction teams could be successful together as group.
Ownership Alignment is concrete and well defined
The goal of this business objective is to create initial clarity about how does each of the team's charters concretely align our assets, processes and other responsibilities. The goal isn't to associate each of those with exactly one charter, but to define an ownership model, which can be either exclusive or shared so that we can work together the most efficient way.
Processes (rollouts, First Responders, FROPs and Operations, Coherency Quarterbacking, Triage and issue management, S360 / SDL, etc.)
Other responsibilities (Budget maintenance, community involvement, management reviews and reporting, etc.)
Ownership Alignment is smooth and doesn't affect our customers
After the new ownership model is designed, it's necessary to implement changes required to align the ownership with each of the team's charter. This will be a non-trivial process as it will require significant knowledge transition between the teams, mainly from Redmond to Prague.
The primary objective is that the Ownership Alignment process must not affect the quality of services and support we provide to our customers.
In order to ensure the above, it's necessary to answer the following questions:
Roadmap
flowchart TB
classDef doneClass fill:#31EC56
classDef inProgressClass fill:#51e2f5
classDef notStartedClass fill:#ddddd
subgraph Legend
DONE:::doneClass
in-progress[IN PROGRESS]:::inProgressClass
not-started[NOT STARTED]:::notStartedClass
end
dnceng-shared[Create dnceng-shared, move shared libreries and publish them from there]:::doneClass
helix-service[ES Create a dnceng-shared -> helix-service Maestro subscription and consume the libraries]:::doneClass
arcade-services[Create a dnceng-shared -> arcade-services Maestro subscription and consume the libraries. Delete the Shared libraries implementation from arcade-services]:::doneClass
dnceng[Create dotnet/dnceng repo and port all of the internal tools from arcade-services. Create dnceng-shared -> dnceng subscription]:::doneClass
dnceng-staging[Succesfully deploy internal tools from dotnet/dnceng to the staging environment]:::doneClass
arcade-services-disable[Disable internal tools rollouts from arcade-services]:::doneClass
dnceng-production[Rollout internal tools from dnceng]:::doneClass
arcade-services-cleanup[Cleanup arcade-services]:::doneClass
arcade-services-rollouts["The Product Construction team starts rolling out arcade-services"]:::doneClass
assess-pme-preparation["Assess the amount of work it would take, and make a plan to migrate Maestro, Maestro++ and the BAR into a Prod Con subscription"]:::inProgressClass
telemetry-cluster["Migrate Telemetry Service outside of the Maestro SF cluster (end of July)"]:::inProgressClass
subgraph PME migration preparation
maestro-subscription[Create new Maestro subscriptions under the Product Construction Service tree]:::notStartedClass
maestro-migrate["Migrate Maestro++ into the new subscription (6 weeks)"]:::notStartedClass
maestro-legacy-migrate["Migrate Legacy Maestro into the new subscription (2 weeks)"]:::notStartedClass
BAR-migrate["Migrate the BuildAssetRegistry database into the new subscription (3 weeks)"]:::notStartedClass
end
issue-management[Migrate product construction issues to arcade-services and create a new workflow]:::doneClass
dnceng-shared-->arcade-services
dnceng-shared-->helix-service
arcade-services-->dnceng
dnceng-->dnceng-staging
dnceng-staging-->arcade-services-disable
arcade-services-disable-->dnceng-production
dnceng-production-->arcade-services-cleanup
arcade-services-cleanup-->arcade-services-rollouts
arcade-services-rollouts-->assess-pme-preparation
assess-pme-preparation-->maestro-subscription
maestro-subscription-->maestro-legacy-migrate
maestro-subscription-->BAR-migrate
maestro-subscription-->maestro-migrate
dnceng-production-->telemetry-cluster
Motivation
The goal of this epic is to align ownership of concrete assets, processes and responsibilities with the recently defined charters of the .NET Engineering Services and .NET Product Construction teams.
The full motivation for this change is described in the .NET Product Construction Charter document.
Business Objectives
The overall business objective is to clearly define charter for each team and to align ownership of our assets, processes and responsibilities with those charters for both teams so that both the .NET Engineering Services and .NET Product Construction teams could be successful together as group.
Ownership Alignment is concrete and well defined
The goal of this business objective is to create initial clarity about how does each of the team's charters concretely align our assets, processes and other responsibilities. The goal isn't to associate each of those with exactly one charter, but to define an ownership model, which can be either exclusive or shared so that we can work together the most efficient way.
Ownership Alignment is smooth and doesn't affect our customers
After the new ownership model is designed, it's necessary to implement changes required to align the ownership with each of the team's charter. This will be a non-trivial process as it will require significant knowledge transition between the teams, mainly from Redmond to Prague.
The primary objective is that the Ownership Alignment process must not affect the quality of services and support we provide to our customers.
In order to ensure the above, it's necessary to answer the following questions:
Roadmap
flowchart TB classDef doneClass fill:#31EC56 classDef inProgressClass fill:#51e2f5 classDef notStartedClass fill:#ddddd subgraph Legend DONE:::doneClass in-progress[IN PROGRESS]:::inProgressClass not-started[NOT STARTED]:::notStartedClass end dnceng-shared[Create dnceng-shared, move shared libreries and publish them from there]:::doneClass helix-service[ES Create a dnceng-shared -> helix-service Maestro subscription and consume the libraries]:::doneClass arcade-services[Create a dnceng-shared -> arcade-services Maestro subscription and consume the libraries. Delete the Shared libraries implementation from arcade-services]:::doneClass dnceng[Create dotnet/dnceng repo and port all of the internal tools from arcade-services. Create dnceng-shared -> dnceng subscription]:::doneClass dnceng-staging[Succesfully deploy internal tools from dotnet/dnceng to the staging environment]:::doneClass arcade-services-disable[Disable internal tools rollouts from arcade-services]:::doneClass dnceng-production[Rollout internal tools from dnceng]:::doneClass arcade-services-cleanup[Cleanup arcade-services]:::doneClass arcade-services-rollouts["The Product Construction team starts rolling out arcade-services"]:::doneClass assess-pme-preparation["Assess the amount of work it would take, and make a plan to migrate Maestro, Maestro++ and the BAR into a Prod Con subscription"]:::inProgressClass telemetry-cluster["Migrate Telemetry Service outside of the Maestro SF cluster (end of July)"]:::inProgressClass subgraph PME migration preparation maestro-subscription[Create new Maestro subscriptions under the Product Construction Service tree]:::notStartedClass maestro-migrate["Migrate Maestro++ into the new subscription (6 weeks)"]:::notStartedClass maestro-legacy-migrate["Migrate Legacy Maestro into the new subscription (2 weeks)"]:::notStartedClass BAR-migrate["Migrate the BuildAssetRegistry database into the new subscription (3 weeks)"]:::notStartedClass end issue-management[Migrate product construction issues to arcade-services and create a new workflow]:::doneClass dnceng-shared-->arcade-services dnceng-shared-->helix-service arcade-services-->dnceng dnceng-->dnceng-staging dnceng-staging-->arcade-services-disable arcade-services-disable-->dnceng-production dnceng-production-->arcade-services-cleanup arcade-services-cleanup-->arcade-services-rollouts arcade-services-rollouts-->assess-pme-preparation assess-pme-preparation-->maestro-subscription maestro-subscription-->maestro-legacy-migrate maestro-subscription-->BAR-migrate maestro-subscription-->maestro-migrate dnceng-production-->telemetry-cluster