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

Both sides previous revision Previous revision
dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-04-multi-cloud-management:fr-mc-003 [2026/07/20 08:25] – ↷ Links adapted because of a move operation 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 [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] to at least two cloud [[dido:99_annexes:annex-b-terms-and-definitions:p:provider|Providers]] by varying only the applicable [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]].+[[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 behavior.+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 that does not identify the required behavior +
-  * **Deployment portability** does not identify which deployment information remains unchanged +
-  * **Across cloud providers** does not identify the minimum number of Providers needed to demonstrate portability +
-  * The source statement does not distinguish [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] from [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] +
-  * The source statement does not require identical Provider services, resource types, interfaces, or physical implementations +
-  * The source statement does not prescribe particular cloud Providers +
- +
-The normalized Statement: +
- +
-  * Replaces **The system** with [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] +
-  * Replaces **support** with the direct behavior **deploy** +
-  * Uses the defined Platform Independent Information concept +
-  * Uses the defined Platform Specific Information concept +
-  * Identifies the information that remains unchanged +
-  * Requires deployment through at least two cloud Providers +
-  * Limits deployment-input variation to the applicable Platform Specific Information +
-  * Preserves Provider-specific realization +
-  * Retains one primary required behavior +
- +
-The phrase **at least two** establishes the minimum observable condition required to demonstrate deployment across more than one cloud Provider. +
- +
-The normalized Statement does not require identical Provider resources, service names, interfaces, prices, performance characteristics, or physical implementations.+
  
 ===== Rationale ===== ===== Rationale =====
  
-[[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_portability|Cloud Portability]] requires Crucible to preserve applicable deployment intent while realizing that intent through different cloud Providers.+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.
  
-[[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] expresses deployment information without depending on the implementation details of a particular Provider.+Cloud Providers expose different:
  
-[[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] supplies the Provider-specific values, mappings, identifiersconstraints, and other details required to realize that information through a particular Provider.+  * Resource types 
 +  * Service identifiers 
 +  * Configuration parameters 
 +  * Identity models 
 +  * Network models 
 +  * Storage models 
 +  * Regions 
 +  * Management interfaces 
 +  * Operational constraints
  
-Platform Specific Information may include:+Deployment portability does not require Cloud Providers to expose identical resources, services, interfaces, costs, performance characteristics, or physical implementations.
  
-  * Provider resource types +This requirement establishes deployment portability without prescribing:
-  * Provider service identifiers +
-  * Provider regions +
-  * Provider account or project identifiers +
-  * Provider network identifiers +
-  * Provider storage classes +
-  * Provider machine types +
-  * Provider authentication parameters +
-  * Provider-specific security parameters +
-  * Provider-specific service configuration+
  
-Cloud Portability does not require:+  * A minimum number of tested Cloud Providers 
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] 
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] 
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_plugin|Provider Plugins]] 
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contracts]] 
 +  * Identical Provider-specific realizations 
 +  * Particular Cloud Providers 
 +  * Common [[dido:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]]
  
-  * Identical Provider resource identifiers +Separate requirements, architecture specifications, or verification profiles define those subjects.
-  * Identical Provider service names +
-  * Identical Provider interfaces +
-  * Identical physical infrastructure +
-  * Identical costs +
-  * Identical performance +
-  * Identical operational constraints +
-  * Availability of every Provider-specific capability through every Provider +
- +
-Cloud Portability requires preservation of the applicable Platform Independent Information while Platform Specific Information varies for each Provider. +
- +
-The applicable [[dido:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]] determine whether each Provider-specific deployment constitutes an acceptable realization of the same Platform Independent Information.+
  
 ===== Applies To ===== ===== Applies To =====
Line 87: 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 
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_provider|Cloud Providers]]
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider|Providers]] +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_plugin|Provider Plugins]] +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contracts]] +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_abstraction|Provider Abstractions]] +
-  * [[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]]+
   * Cloud deployment workflows   * Cloud deployment workflows
  
 ===== Verification ===== ===== Verification =====
  
-  - Verification SHALL confirm that one set of [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] is selected for testing +Verification confirms that:
-  - Verification SHALL confirm that at least two cloud [[dido:99_annexes:annex-b-terms-and-definitions:p:provider|Providers]] are selected for testing +
-  - Verification SHALL confirm that the same Platform Independent Information is used for each tested Provider +
-  - Verification SHALL confirm that differences in deployment input are limited to identified [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]] +
-  - Verification SHALL confirm that [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] deploys the selected Platform Independent Information through each tested Provider +
-  - Verification SHALL confirm that each resulting deployment satisfies the applicable 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 
-  * Platform Independent Information comparison +  - The resulting deployments preserve the deployment intent selected for the portability test 
-  * Platform Specific Information comparison +  - Provider-specific differences do not prevent the selected deployment from being realized through each tested Cloud Provider 
-  * Provider Plugin tests +  - The observed behavior demonstrates deployment portability across Cloud Providers
-  * Provider Contract conformance tests +
-  * Infrastructure Baseline comparison +
-  * Deployment-result comparison +
-  * Acceptance testing +
- +
-The verification record SHALL identify: +
- +
-  - The tested Platform Independent Information +
-  - The tested cloud Providers +
-  - The applicable Platform Specific Information for each Provider +
-  - The applicable [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_plugin|Provider Plugin]] for each Provider +
-  - The applicable [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contract]] +
-  - The common Acceptance Criteria +
-  - Any 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:start|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 [[dido:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]] should be derived dynamically from backlinks rather than maintained as a duplicate manual list. +{{backlinks>.#dido:02-crusible}}
- +
-Backlinks identify incoming references but do not define the semantics of each relationship. Referencing pages should identify whether the relationship represents realization, refinement, verification, dependency, or another defined traceability relationship. +
- +
-===== ConOps Relationship ===== +
- +
-The Crucible Concept of Operations separates [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] from [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]]. +
- +
-FR-MC-003 establishes the observable cross-Provider deployment behavior required for [[dido:99_annexes:annex-b-terms-and-definitions:c:cloud_portability|Cloud Portability]]. +
- +
-The same Platform Independent Information remains applicable to each deployment, while the Platform Specific Information varies according to the selected [[dido:99_annexes:annex-b-terms-and-definitions:p:provider|Provider]]. +
- +
-[[dido:99_annexes:annex-b-terms-and-definitions:p:provider_plugin|Provider Plugins]] and [[dido:99_annexes:annex-b-terms-and-definitions:p:provider_contract|Provider Contracts]] may realize the Provider-specific behavior governed by FR-MC-002. +
- +
-===== Delivery Phase ===== +
- +
-Phase 1+
  
 ===== Implementation Status ===== ===== Implementation Status =====
  
-Not Assessed +Implemented and Verified
- +
-Implementation status requires verification that [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] deploys the same [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_independent_information|Platform Independent Information]] to at least two cloud [[dido:99_annexes:annex-b-terms-and-definitions:p:provider|Providers]] by varying only the applicable [[dido:99_annexes:annex-b-terms-and-definitions:p:platform_specific_information|Platform Specific Information]].+
  
 ===== Requirement Status ===== ===== Requirement Status =====
  
-Draft +<todo>Review and approve FR-MC-003 as a leaf requirement.</todo>
- +
-The source System Requirements Specification identifies Version 1.1 as a draft.+
  
 ---- ----
-===== Notes for Editors =====+===== Issues =====
  
-This requirement page should retain the stable requirement identifier ''FR-MC-003''.+<todo>Determine whether Deployment Portability requires a controlled definition in the shared Terms and Definitions corpus.</todo>
  
-Changes to the Statement SHALL preserve the approved intent of the source requirement.+<todo>Determine whether a separate verification profile should define the minimum number and types of Cloud Providers used to demonstrate deployment portability.</todo>
  
-The Source Statement should preserve the original wording from the controlling System Requirements Specification.+---- 
 +===== Notes for Editors =====
  
-The Statement should remain limited to deploying the same Platform Independent Information to at least two cloud Providers by varying only the applicable Platform Specific Information.+This requirement page retains the stable requirement identifier ''FR-MC-003''.
  
-Cloud Portability should not be interpreted as requiring identical Provider-specific realizations.+This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
  
-Provider Plugin and Provider Contract obligations should remain governed by FR-MC-002 unless the controlling source adds those obligations directly to FR-MC-003.+The Statement preserves the approved source intent by requiring Crucible to provide deployment portability across Cloud Providers.
  
-Verification criteria should test only the behavior stated in the normalized Statement and should not introduce additional normative obligations.+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.
  
-Incoming Traceability should use the wiki Backlinks function rather than manually maintained list.+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 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 202: 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.1784561105.txt.gz
  • Last modified: 2026/07/20 08:25
  • by nick_dido