dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004 [2026/07/20 08:43] – ↷ Links adapted because of a move operation nick_didodido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004 [2026/07/30 05:16] (current) nick_dido
Line 5: Line 5:
 ===== Statement ===== ===== Statement =====
  
-[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL produce a resolved [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] by combining configuration values inherited from an identified parent Infrastructure Configuration with explicit overrides defined by the child Infrastructure Configuration.+[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL derive an [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] from an identified parent Infrastructure Configuration.
  
-===== Source Statement =====+===== Derived From =====
  
-> The system SHALL support environment inheritance models.+This requirement derives from:
  
-===== Source =====+  * Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, Configuration Management, FR-CFG-004
  
-Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, Configuration Management, FR-CFG-004.+The Original Requirement states:
  
-===== Assessment =====+> //The system SHALL support environment inheritance models.//[[dido:02-crusible:99-annexes:annex-b:cr-001|[C1]]]
  
-The source statement expresses the approved functional intent but does not provide all information required for deterministic verification.+FR-CFG-004:
  
-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]] 
- +  * Replaces the weak phrase **support environment inheritance models** with the observable behavior **derive** 
-  * **The system** does not use the defined system name +  * Identifies an Infrastructure Configuration as the subject of inheritance 
-  * **Support** is a weak verb that does not identify the behavior [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] performs +  * Identifies a parent Infrastructure Configuration as the source of inherited configuration content
-  * **Environment inheritance model** does not identify the configuration artifacts that participate in inheritance +
-  * The source statement does not distinguish a parent Infrastructure Configuration from a child Infrastructure Configuration +
-  * The source statement does not identify the result produced by resolving inherited values and child overrides +
-  * The source statement does not identify how an explicit child override affects an inherited value +
-  * The source statement does not identify how a value without an explicit override is resolved +
-  * The source statement does not identify the observable result used to verify inheritance +
- +
-The normalized Statement: +
- +
-  * Replaces **The system** with the defined system name +
-  * Replaces **support** with the direct behavior **produce** +
-  * Identifies the parent and child [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configurations]] +
-  * Identifies the resolved Infrastructure Configuration as the required result +
-  * Defines how inherited values and explicit child overrides contribute to the resolved result +
- +
-The normalized Statement does not introduce configuration validation, approval, deployment, revision-history, provenance, traceability, or multiple-parent inheritance obligations. Separate requirements govern those behaviors when required.+
  
 ===== Rationale ===== ===== Rationale =====
  
-Environment inheritance allows related [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_environment|Infrastructure Environments]] to share common configuration without duplicating the complete configuration for each environment. +Environment inheritance allows related [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_environment|Infrastructure Environments]] to share common configuration content.
- +
-A parent [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] defines values that apply to one or more child configurations. +
- +
-A child Infrastructure Configuration identifies its parent and defines the differences required for its target environment. +
- +
-For each configuration value: +
- +
-  * The resolved Infrastructure Configuration retains the inherited value when the child does not define an explicit override +
-  * The resolved Infrastructure Configuration uses the child value when the child defines an explicit override +
-  * The resolved Infrastructure Configuration includes values introduced by the child +
- +
-For example, development, test, staging, and production environments may inherit common infrastructure structure while defining different values for: +
- +
-  * Resource capacity +
-  * Scaling limits +
-  * Network addresses +
-  * Environment identifiers +
-  * Deployment regions +
-  * Access restrictions +
-  * Retention periods+
  
-Environment inheritance contributes to:+A derived Infrastructure Configuration uses configuration content from an identified parent Infrastructure Configuration rather than duplicating the complete configuration.
  
-  * Reduced configuration duplication +This approach reduces configuration duplication and promotes consistency among related Infrastructure Environments.
-  * Consistent configuration across related environments +
-  * Controlled environment-specific variation +
-  * Explicit configuration overrides +
-  * Configuration reuse +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:r:reproducibility|Reproducibility]]+
  
 ===== Applies To ===== ===== Applies To =====
Line 80: Line 39:
   * [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configurations]]   * [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configurations]]
   * Parent Infrastructure Configurations   * Parent Infrastructure Configurations
-  * Child Infrastructure Configurations +  * Derived Infrastructure Configurations
-  * Resolved Infrastructure Configurations +
-  * Inherited configuration values +
-  * Explicit child overrides +
-  * Child-defined configuration values+
   * [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_environment|Infrastructure Environments]]   * [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_environment|Infrastructure Environments]]
  
 ===== Verification ===== ===== Verification =====
  
-  - Verification SHALL confirm that each tested child [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] identifies its parent Infrastructure Configuration +Verification confirms that:
-  - Verification SHALL confirm that [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] produces a resolved Infrastructure Configuration from the identified parent and child configurations +
-  - Verification SHALL confirm that the resolved Infrastructure Configuration contains values inherited from the identified parent +
-  - Verification SHALL confirm that an explicit child override replaces the corresponding inherited value in the resolved Infrastructure Configuration +
-  - Verification SHALL confirm that a value without an explicit child override retains the value inherited from the parent Infrastructure Configuration +
-  - Verification SHALL confirm that a value introduced by the child Infrastructure Configuration appears in the resolved Infrastructure Configuration+
  
-Verification may include: +  A tested Infrastructure Configuration identifies a parent Infrastructure Configuration 
- +  - [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] derives the tested Infrastructure Configuration from the identified parent Infrastructure Configuration 
-  * Parent Infrastructure Configuration inspection +  - The derived Infrastructure Configuration contains configuration content obtained from the identified parent Infrastructure Configuration 
-  * Child Infrastructure Configuration inspection +  - The relationship between the derived Infrastructure Configuration and its identified parent can be determined
-  * Inheritance relationship inspection +
-  * Inherited-value comparison +
-  * Explicit override tests +
-  * Child-introduced value tests +
-  * Resolved Infrastructure Configuration inspection +
- +
-The verification record SHALL identify: +
- +
-  - The tested parent Infrastructure Configuration +
-  - The tested child Infrastructure Configuration +
-  - The inherited configuration values +
-  - The explicit child overrides +
-  - The values introduced by the child Infrastructure Configuration +
-  - The resulting resolved Infrastructure Configuration +
-  - The observed results +
-  - The generated [[dido:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]] +
- +
-===== Outgoing Traceability ===== +
- +
-This requirement refines: +
- +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-001:start|MO-001 — Repeatable, Compliant, and Secure Infrastructure Environments]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-002:start|MO-002 — Reduced Platform Deployment Timelines]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-003:start|MO-003 — Platform Independent Deployment]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-005:start|MO-005 — Reusable and Version-Controlled Infrastructure]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-006|MO-006 — Infrastructure Lifecycle Management]] +
- +
-This requirement operates within the conditions established by: +
- +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:02-operational-requirements:or-001|OR-001 — Operational Roles]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:02-operational-requirements:or-002|OR-002 — Deployment Environments]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:02-operational-requirements:or-003|OR-003 — Classified and Unclassified Environments]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:02-operational-requirements:or-004|OR-004 — Concurrent Environment Management]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:02-operational-requirements:or-005|OR-005 — Distributed Environment Management]] +
- +
-This requirement also relates to: +
- +
-  * [[dido:02-crusible:05-descriptions-composition-and-baselines:start|5. Descriptions, Composition, and Baselines]] +
-  * [[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-CFG-004''.+The following pages reference this requirement:
  
-Incoming 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 describes the use of reusable configuration content within a [[dido:99_annexes:annex-b-terms-and-definitions:c:ci_cd_pipeline|CI/CD Pipeline]] workspace. +
- +
-Environment inheritance allows the workflow to: +
- +
-  * Retrieve a parent Infrastructure Configuration +
-  * Retrieve a child Infrastructure Configuration +
-  * Inherit common configuration values from the parent +
-  * Apply explicit overrides defined by the child +
-  * Include values introduced by the child +
-  * Produce a resolved Infrastructure Configuration +
- +
-This model reduces duplicated configuration while preserving explicit differences among related environments. +
- +
-===== Delivery Phase ===== +
- +
-Phase 1 and subsequent phases+
  
 ===== 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]] produces a resolved Infrastructure Configuration by combining values inherited from an identified parent Infrastructure Configuration with explicit overrides defined by the child Infrastructure Configuration.+
  
 ===== Requirement Status ===== ===== Requirement Status =====
  
-Draft +<todo>Review and approve FR-CFG-004 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-CFG-004''.+<todo>Determine whether Environment Inheritance 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 separate requirements define overrides, inheritance depth, conflict resolution, or inheritance from multiple parent Infrastructure Configurations.</todo>
  
-Material changes should receive review and should update the related outbound traceability, verification criteria, and source records.+---- 
 +===== Notes for Editors =====
  
-The Source Statement should preserve the original wording from the controlling System Requirements Specification.+This requirement page retains the stable requirement identifier ''FR-CFG-004''.
  
-Verification criteria should test only production of the resolved Infrastructure Configuration from inherited values and explicit child overrides.+This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
  
-Validation, approval, deployment, revision history, provenance, traceability, conflict handling, inheritance depth, and multiple-parent inheritance should not be introduced as normative behavior on this page unless the Statement changes through an approved requirements process.+The Statement preserves the approved source intent by requiring Crucible to derive an Infrastructure Configuration from an identified parent Infrastructure Configuration.
  
-Incoming traceability should use the wiki Backlinks function rather than a manually maintained list.+Do not add explicit override behavior, conflict resolution, inheritance depth, multiple-parent inheritance, validation, approval, deployment, revision history, provenance, or traceability obligations to the Statement unless the controlling requirement changes through an approved requirements process.
  
 To reference this requirement Statement from another wiki page, insert: To reference this requirement Statement from another wiki page, insert:
Line 201: Line 88:
 {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004#Statement&noheader&nofooter&noeditbtn}} {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-004#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-01-configuration-management/fr-cfg-004.1784562196.txt.gz
  • Last modified: 2026/07/20 08:43
  • by nick_dido