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

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-005 [2026/07/20 08:58] – ↷ 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-005 [2026/07/30 05:17] (current) nick_dido
Line 5: Line 5:
 ===== Statement ===== ===== Statement =====
  
-[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL preserve each revision of an [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] and the relationship between successive revisions.+[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL maintain the complete version history of each [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]].
  
-===== Source Statement =====+===== Derived From =====
  
-> The system SHALL maintain complete configuration version history.+This requirement derives from:
  
-===== Source =====+  * Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, Configuration Management, FR-CFG-005
  
-Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, Configuration Management, FR-CFG-005.+The Original Requirement states:
  
-===== Assessment =====+> //The system SHALL maintain complete configuration version history.//[[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-005:
  
-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]] 
 +  * Identifies the [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] as the configuration whose version history is maintained
  
-  * **The system** does not use the defined system name +No other substantive normalization is required.
-  * **Maintain** does not identify the specific behavior [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] performs +
-  * **Configuration** does not identify the configuration artifact to which the requirement applies +
-  * **Complete** does not identify the minimum content required for completeness +
-  * **Version history** does not identify whether the history includes revision content, revision identifiers, revision relationships, or other revision metadata +
-  * The source statement does not identify the observable result used to verify preservation of the version history +
- +
-The normalized Statement: +
- +
-  * Replaces **The system** with the defined system name +
-  * Replaces **maintain** with the direct behavior **preserve** +
-  * Identifies the [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] as the controlled artifact +
-  * Requires preservation of every Infrastructure Configuration revision +
-  * Requires preservation of the relationship between successive revisions +
- +
-The normalized Statement interprets **complete configuration version history** as the preserved set of Infrastructure Configuration revisions and the succession relationships that order those revisions. +
- +
-The normalized Statement does not introduce approval, authorship, timestamp, change-rationale, retention-period, rollback, deployment, provenance, or traceability obligations. Separate requirements govern those behaviors when required.+
  
 ===== Rationale ===== ===== Rationale =====
  
-Configuration version history records how an [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] changes over time. +The version history of an [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] records the revisions of that configuration over time.
- +
-Each revision represents a distinguishable state of the Infrastructure Configuration. +
- +
-Preserving the relationship between successive revisions establishes the order in which those states occurred. +
- +
-Without preserved revisions and succession relationships, an organization cannot reliably determine:+
  
-  * Which configuration states existed +Maintaining the complete version history allows an authorized user or process to identify and retrieve earlier and current configuration revisions.
-  * How one configuration state followed another +
-  * Whether a later revision replaced an earlier revision +
-  * Which revision represents a particular historical configuration state+
  
-Configuration version history provides a foundation for separately governed activities such as:+The version history supports separately governed activities such as:
  
   * Revision comparison   * Revision comparison
-  * Prior-state reconstruction+  * Historical configuration retrieval
   * Change review   * Change review
-  * Rollback +  * Configuration restoration 
-  * Configuration drift analysis +  * Configuration audit
-  * Audit+
   * [[dido:99_annexes:annex-b-terms-and-definitions:r:reproducibility|Reproducibility]]   * [[dido:99_annexes:annex-b-terms-and-definitions:r:reproducibility|Reproducibility]]
- 
-This requirement complements ''FR-CFG-002'': 
- 
-  * ''FR-CFG-002'' requires each Infrastructure Configuration to exist as a machine-readable Artifact managed through [[dido:99_annexes:annex-b-terms-and-definitions:v:version_control|Version Control]] 
-  * ''FR-CFG-005'' requires preservation of every configuration revision and the relationships among successive revisions 
  
 ===== Applies To ===== ===== Applies To =====
Line 77: Line 46:
   * [[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]]
   * Infrastructure Configuration revisions   * Infrastructure Configuration revisions
-  * Revision content 
-  * Successive revision relationships 
   * Configuration version history   * Configuration version history
   * [[dido:99_annexes:annex-b-terms-and-definitions:v:version_control|Version Control]]   * [[dido:99_annexes:annex-b-terms-and-definitions:v:version_control|Version Control]]
-  * [[dido:99_annexes:annex-b-terms-and-definitions:v:version_control_system|Version Control Systems]] 
  
 ===== Verification ===== ===== Verification =====
  
-  - Verification SHALL confirm that each tested [[dido:99_annexes:annex-b-terms-and-definitions:i:infrastructure_configuration|Infrastructure Configuration]] revision remains preserved after a succeeding revision is created +Verification confirms that:
-  - Verification SHALL confirm that the content of each tested revision remains distinguishable from the content of every other tested revision +
-  - Verification SHALL confirm that each tested revision identifies the immediately preceding revision when a preceding revision exists +
-  - Verification SHALL confirm that the preserved succession relationships place the tested revisions in their correct revision order +
-  - Verification SHALL confirm that creation of a succeeding revision does not overwrite the content of a preceding revision+
  
-Verification may include: +  - A tested Infrastructure Configuration has two or more revisions 
- +  - [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] retains each tested revision in the configuration version history 
-  * Configuration revision inspection +  - Each tested revision remains distinguishable from the other tested revisions 
-  * Revision content comparison +  - An authorized user or process can identify and retrieve each tested revision 
-  * Successive revision tests +  - Creation of a succeeding revision does not overwrite a preceding revision 
-  * Revision relationship inspection +  - The version history identifies the order of the tested revisions
-  * Revision-order reconstruction +
-  * Revision overwrite tests +
-  * [[dido:99_annexes:annex-b-terms-and-definitions:v:version_control_system|Version Control System]] history inspection +
- +
-The verification record SHALL identify: +
- +
-  - The tested Infrastructure Configuration +
-  - The tested revisions +
-  - The content associated with each tested revision +
-  - The preceding revision associated with each tested revision, when applicable +
-  - The reconstructed revision order +
-  - The revision overwrite test result +
-  - 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-005:start|MO-005 — Reusable and Version-Controlled Infrastructure]] +
-  * [[dido:02-crusible:99-annexes:annex-c-requirements:01-mission-objectives:mo-006:start|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:10-reproducibility-provenance-and-traceability:start|10. Reproducibility, Provenance, and Traceability]]+
  
 ===== Referenced By ===== ===== Referenced By =====
  
-The wiki Backlinks function provides the current list of pages that reference ''FR-CFG-005''.+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 version-controlled configuration inputs within a [[dido:99_annexes:annex-b-terms-and-definitions:c:ci_cd_pipeline|CI/CD Pipeline]] workspace. +
- +
-Preserved configuration revisions allow the workflow to: +
- +
-  * Identify a particular Infrastructure Configuration state +
-  * Distinguish that state from earlier and later revisions +
-  * Determine the preceding revision +
-  * Reconstruct the order of configuration revisions +
-  * Use an identified historical configuration state in a separately governed activity +
- +
-The preserved revision history provides the sequence of Infrastructure Configuration states used to understand how the configuration changed over time. +
- +
-===== 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]] preserves each Infrastructure Configuration revision and the relationship between successive revisions.+
  
 ===== Requirement Status ===== ===== Requirement Status =====
  
-Draft +<todo>Review and approve FR-CFG-005 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-005''.+<todo>Determine whether Configuration Version History 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 revision metadata, retention periods, deletion controls, comparison, or restoration.</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-005''.
  
-Verification criteria should test only the preservation of Infrastructure Configuration revisions and their successive relationships.+This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
  
-Approval status, authorship, timestamps, change rationale, retention periods, deletion controls, comparison, rollback, deployment association, provenance, and traceability 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 maintain the complete version history of each Infrastructure Configuration.
  
-Incoming traceability should use the wiki Backlinks function rather than a manually maintained list.+Do not add approval status, authorship, timestamps, change rationale, retention periods, deletion controls, comparison, restoration, deployment association, 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 193: Line 97:
 {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-005#Statement&noheader&nofooter&noeditbtn}} {{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-005#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-005.1784563114.txt.gz
  • Last modified: 2026/07/20 08:58
  • by nick_dido