dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003 [2026/07/17 10:24] – created nick_didodido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003 [2026/07/30 05:53] (current) nick_dido
Line 5: Line 5:
 ===== Statement ===== ===== Statement =====
  
-[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL deploy the same provider-independent deployment intent to at least two cloud providers by changing only the applicable provider-specific parameters and provider implementation.+[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL provide deployment portability across [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_provider|Cloud Providers]].
  
-===== Source Statement =====+===== Derived From =====
  
-> The system shall support deployment portability across cloud providers.+This requirement derives from:
  
-===== Source =====+  * Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-MC-003
  
-Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-MC-003.+The Original Requirement states:
  
-===== Assessment =====+> //The system shall support deployment portability across cloud providers.//[[dido:02-crusible:99-annexes:annex-b:cr-001|[C1]]]
  
-The source statement identifies a portability objective but does not state an observable portability test.+FR-MC-003:
  
-The following Specification Discipline and Authoring findings apply:+  * Replaces **The system** with the defined system name [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] 
 +  * Changes **shall** to the established uppercase normative form **SHALL** 
 +  * Replaces the weak verb **support** with **provide** 
 +  * Links **Cloud Providers** to the controlling definition
  
-  * **The system** does not use the defined system name +No other substantive normalization is required.
-  * **shall** does not follow the established uppercase normative convention +
-  * **Support** is a weak verb +
-  * **Deployment portability** does not identify what remains unchanged +
-  * **Across cloud providers** does not specify the minimum number of providers needed to demonstrate portability +
-  * The source statement does not require identical provider services or identical implementation details +
-  * The source statement does not prescribe particular cloud providers+
  
-The normalized Statement:+===== Rationale =====
  
-  * Replaces **The system** with [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] +Deployment portability allows deployment intent to be realized through more than one [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_provider|Cloud Provider]] without requiring the deployment intent to be redesigned for each Provider.
-  * Replaces **support** with the direct behavior **deploy** +
-  * Identifies the provider-independent deployment intent that remains unchanged +
-  * Requires deployment to at least two cloud providers +
-  * Limits expected changes to provider-specific parameters and the provider implementation +
-  * Preserves provider-specific realization+
  
-The phrase **at least two** establishes the minimum observable condition needed to verify “across cloud providers.”+Cloud Providers expose different:
  
-===== Rationale =====+  * Resource types 
 +  * Service identifiers 
 +  * Configuration parameters 
 +  * Identity models 
 +  * Network models 
 +  * Storage models 
 +  * Regions 
 +  * Management interfaces 
 +  * Operational constraints
  
-[[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_portability|Cloud Portability]] requires more than storing provider-neutral descriptions. Crucible must use common deployment intent to produce acceptable deployments through more than one cloud provider.+Deployment portability does not require Cloud Providers to expose identical resources, services, interfaces, costs, performance characteristics, or physical implementations.
  
-Portability does not require:+This requirement establishes deployment portability without prescribing:
  
-  * Identical provider resource identifiers +  * A minimum number of tested Cloud Providers 
-  * Identical service names +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] 
-  * Identical provider APIs +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] 
-  * Identical physical infrastructure +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_plugin|Provider Plugins]] 
-  * Identical costs +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contracts]] 
-  * Identical performance +  * Identical Provider-specific realizations 
-  * Availability of every provider-specific service on every provider+  * Particular Cloud Providers 
 +  * Common [[dido:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]]
  
-Portability requires preservation of the applicable deployment intent and acceptance criteria while provider-specific realization details vary.+Separate requirements, architecture specifications, or verification profiles define those subjects.
  
 ===== Applies To ===== ===== Applies To =====
Line 61: Line 62:
  
   * [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]   * [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]
-  * [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_portability|Cloud Portability]] +  * Deployment portability 
-  * Provider-independent deployment intent +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_provider|Cloud Providers]] 
-  * Provider-specific parameters +  * Cloud deployment workflows
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_implementation|Provider Implementations]] +
-  * Cloud providers +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_baseline|Infrastructure Baselines]] +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]] +
-  * Deployment workflows+
  
 ===== Verification ===== ===== Verification =====
  
-  - Verification SHALL confirm that one provider-independent deployment intent is selected for testing +Verification confirms that:
-  - Verification SHALL confirm that [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] deploys the selected intent to at least two cloud providers +
-  - Verification SHALL confirm that each provider deployment uses the applicable provider implementation +
-  - Verification SHALL confirm that differences in deployment input are limited to identified provider-specific parameters +
-  - Verification SHALL confirm that the provider-independent deployment intent remains unchanged +
-  - Verification SHALL confirm that each resulting deployment satisfies the common [[dido:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]]+
  
-Verification may include: +  deployment is selected for portability testing 
- +  - Two or more [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_provider|Cloud Providers]] are selected for testing 
-  * Cross-provider deployment tests +  [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] deploys the selected deployment through each tested Cloud Provider 
-  * Provider implementation tests +  - The resulting deployments preserve the deployment intent selected for the portability test 
-  * Deployment-input comparison +  - Provider-specific differences do not prevent the selected deployment from being realized through each tested Cloud Provider 
-  * Infrastructure Baseline comparison +  - The observed behavior demonstrates deployment portability across Cloud Providers
-  * Provider-parameter comparison +
-  * Deployment-result comparison +
-  * Acceptance testing +
- +
-The verification record SHALL identify: +
- +
-  - The provider-independent deployment intent +
-  - The tested cloud providers +
-  - The provider implementations +
-  - The provider-specific parameters +
-  - The common Acceptance Criteria +
-  - The provider-specific Acceptance Criteria +
-  - The observed deployment results +
-  - The generated [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]] +
- +
-===== Outgoing Traceability ===== +
- +
-This requirement realizes: +
- +
-  [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003|MO-003]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:13-key-value-proposition-requirements:kvp-006|KVP-006 — Enable Cloud Portability]] +
- +
-This requirement relates to: +
- +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-001|FR-MC-001 — Cloud Provider Abstraction]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-002|FR-MC-002 — Provider-Specific Extensions]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-03-deployment-orchestration:start|C.3.3 Deployment Orchestration]] +
-  * [[dido:02-crusible:07-infrastructure-and-deployment:start|7. Infrastructure and Deployment]]+
  
 ===== Referenced By ===== ===== Referenced By =====
  
-The wiki Backlinks function provides the current list of pages that reference ''FR-MC-003''.+The following pages reference this requirement:
  
-Incoming Traceability should be derived dynamically from backlinks.+{{backlinks>.#dido:02-crusible}}
  
-===== ConOps Relationship =====+===== Implementation Status =====
  
-The Crucible Concept of Operations describes provider-independent deployment information combined with provider-specific parameters and provider implementations.+Implemented and Verified
  
-FR-MC-003 establishes the observable cross-provider deployment behavior required for Cloud Portability.+===== Requirement Status =====
  
-===== Delivery Phase =====+<todo>Review and approve FR-MC-003 as a leaf requirement.</todo>
  
-Phase 1+---- 
 +===== Issues =====
  
-===== Implementation Status ===== +<todo>Determine whether Deployment Portability requires a controlled definition in the shared Terms and Definitions corpus.</todo>
- +
-Not Assessed +
- +
-===== Requirement Status =====+
  
-Draft+<todo>Determine whether a separate verification profile should define the minimum number and types of Cloud Providers used to demonstrate deployment portability.</todo>
  
 ---- ----
 ===== Notes for Editors ===== ===== Notes for Editors =====
  
-This requirement page should retain the stable requirement identifier ''FR-MC-003''.+This requirement page retains the stable requirement identifier ''FR-MC-003''.
  
-The Statement should remain limited to deployment of the same provider-independent intent through at least two cloud providers.+This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
  
-Portability should not be interpreted as requiring identical provider-specific realizations.+The Statement preserves the approved source intent by requiring Crucible to provide deployment portability across Cloud Providers. 
 + 
 +Do not add Platform Independent Information, Platform Specific Information, Provider Plugin, Provider Contract, common Acceptance Criteria, identical Provider realization, or a particular minimum number of Cloud Providers to the Statement unless the controlling requirement changes through an approved requirements process. 
 + 
 +Verification may use two or more Cloud Providers because portability across Providers cannot be demonstrated with only one Provider. This verification condition does not add a particular Provider or Provider technology to the normative Statement.
  
 To reference this requirement Statement from another wiki page, insert: To reference this requirement Statement from another wiki page, insert:
Line 152: Line 116:
 {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003#Statement&noheader&nofooter&noeditbtn}} {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003#Statement&noheader&nofooter&noeditbtn}}
 </code> </code>
- 
-Do not rename this page after an external citation unless a redirect or move plan is in place. 
  
 ---- ----
  • dido/02-crusible/99-annexes/annex-c-requirements/03-functional-requirements/03-04-multi-cloud-management/fr-mc-003.1784309050.txt.gz
  • Last modified: 2026/07/17 10:24
  • by nick_dido