Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-001 [2026/07/16 08:02] – created nick_dido | dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-01-configuration-management:fr-cfg-001 [2026/07/30 05:18] (current) – [Delivery Phase] nick_dido | ||
|---|---|---|---|
| Line 5: | Line 5: | ||
| ===== Statement ===== | ===== Statement ===== | ||
| - | [[dido: | + | [[dido: |
| - | ===== Source Statement | + | ===== Derived From ===== |
| - | > The system SHALL define infrastructure through declarative configuration. | + | This requirement derives from: |
| - | ===== Source ===== | + | * Crucible System Requirements Specification, |
| - | Crucible System Requirements Specification, | + | The Original Requirement states: |
| - | ===== Assessment ===== | + | > //The system SHALL define infrastructure through declarative configuration.// |
| - | The source statement expresses | + | FR-CFG-001 replaces **The system** with the defined system name [[dido: |
| - | The following Specification Discipline and Authoring findings apply: | + | No other substantive normalization is required. |
| - | + | ||
| - | * **The system** does not use the defined system name | + | |
| - | * **Define infrastructure** does not identify the infrastructure representation, | + | |
| - | * **Infrastructure** does not identify whether the requirement applies to an Infrastructure Environment, | + | |
| - | * **Declarative configuration** does not identify the minimum information required to describe the desired state | + | |
| - | * The source statement does not distinguish desired state from execution sequence | + | |
| - | * The source statement does not identify how the declarative configuration references applicable Baselines | + | |
| - | * The source statement does not define the validation criteria applied to the configuration | + | |
| - | * The source statement does not identify the records required to preserve configuration Provenance and Traceability | + | |
| - | + | ||
| - | The normalized Statement identifies the managed Infrastructure Environment, | + | |
| ===== Rationale ===== | ===== Rationale ===== | ||
| - | Declarative configuration describes the required state of an Infrastructure Environment rather than a sequence of manual or procedural actions. | + | [[dido: |
| - | + | ||
| - | A declarative representation allows | + | |
| - | + | ||
| - | The declarative configuration identifies: | + | |
| - | + | ||
| - | * Required infrastructure resources | + | |
| - | * Required configuration values | + | |
| - | * Relationships among resources | + | |
| - | * Applicable | + | |
| - | * Required inputs and parameters | + | |
| - | * Applicable constraints | + | |
| - | * Applicable acceptance criteria | + | |
| - | + | ||
| - | Separating desired state from execution sequence allows provider implementations and deployment tools to determine how to realize | + | |
| - | + | ||
| - | Controlled declarative configuration also supports: | + | |
| - | * Configuration comparison | + | This separation allows infrastructure |
| - | * Change review | + | |
| - | * Configuration validation | + | |
| - | * Configuration reuse | + | |
| - | * Drift detection | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| ===== Applies To ===== | ===== Applies To ===== | ||
| Line 66: | Line 32: | ||
| * [[dido: | * [[dido: | ||
| - | | + | * [[dido: |
| - | * [[dido: | + | * [[dido: |
| - | | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * Controlled inputs | + | |
| - | * Infrastructure resources | + | |
| - | * Configuration | + | |
| - | * Resource relationships | + | |
| - | * Configuration constraints | + | |
| - | * Acceptance criteria | + | |
| - | * Configuration validation | + | |
| - | * Configuration comparison | + | |
| - | * Configuration change records | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| ===== Verification ===== | ===== Verification ===== | ||
| - | - Verification | + | Verification |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the required infrastructure resources | + | |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the required configuration values | + | |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the required relationships among infrastructure resources | + | |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the applicable Baseline identifiers and revisions | + | |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the applicable controlled inputs and parameters | + | |
| - | - Verification SHALL confirm that each tested declarative configuration identifies the applicable constraints and acceptance criteria | + | |
| - | - Verification SHALL confirm that the declarative configuration expresses desired state without prescribing the execution sequence used to create the environment | + | |
| - | - Verification SHALL confirm that Crucible validates the declarative configuration before applying it | + | |
| - | - Verification SHALL confirm that Crucible rejects a declarative configuration that omits required information or violates an applicable constraint | + | |
| - | - Verification SHALL confirm that equivalent declarative configurations and controlled inputs produce Infrastructure Environments that satisfy the same acceptance criteria | + | |
| - | - Verification SHALL confirm that changes to a declarative configuration remain distinguishable from the previously approved configuration | + | |
| - | - Verification SHALL confirm that configuration and deployment records preserve the applicable Provenance, Evidence, and Traceability | + | |
| - | Verification may include: | + | |
| - | + | - The tested Declarative Configuration identifies | |
| - | * Configuration schema validation | + | - The tested Declarative Configuration expresses the required |
| - | * Required-field validation | + | |
| - | * Resource relationship validation | + | |
| - | * Baseline reference validation | + | |
| - | * Constraint validation | + | |
| - | * Invalid configuration tests | + | |
| - | * Missing input tests | + | |
| - | * Configuration comparison | + | |
| - | * Repeated deployment tests | + | |
| - | * Cross-platform deployment tests | + | |
| - | * Desired-state comparison | + | |
| - | * Configuration drift tests | + | |
| - | * End-to-end [[dido: | + | |
| - | + | ||
| - | The verification record SHALL identify: | + | |
| - | + | ||
| - | - The tested declarative configuration | + | |
| - | - The applicable Infrastructure Environment | + | |
| - | - The required infrastructure resources | + | |
| - | - The required configuration values | + | |
| - | - The resource relationships | + | |
| - | - The applicable Baseline identifiers and revisions | + | |
| - | - The controlled inputs and parameters | + | |
| - | - The applicable constraints | + | |
| - | - The applicable acceptance criteria | + | |
| - | - The validation results | + | |
| - | - The resulting Infrastructure Environment | + | |
| - | - The observed results | + | |
| - | - The generated | + | |
| - | + | ||
| - | ===== Outgoing Traceability ===== | + | |
| - | + | ||
| - | This requirement refines: | + | |
| - | + | ||
| - | * [[dido:02-crusible: | + | |
| - | * [[dido:02-crusible:99-annexes:annex-c-requirements: | + | |
| - | | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | + | ||
| - | This requirement operates within | + | |
| - | + | ||
| - | | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | + | ||
| - | This requirement also relates to: | + | |
| - | + | ||
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| - | * [[dido: | + | |
| ===== Referenced By ===== | ===== Referenced By ===== | ||
| - | The wiki Backlinks function provides the current list of pages that reference | + | The following |
| - | Incoming traceability should be derived dynamically from backlinks | + | {{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, | + | |
| - | + | ||
| - | ===== ConOps Relationship ===== | + | |
| - | + | ||
| - | The Crucible Concept of Operations describes Phase 1 as a command-line utility invoked through [[dido:99_annexes: | + | |
| - | + | ||
| - | The Phase 1 workflow uses controlled and versioned configuration inputs to: | + | |
| - | + | ||
| - | * Select applicable Baselines | + | |
| - | * Compose required configuration information | + | |
| - | * Build [[dido: | + | |
| - | * Prepare infrastructure deployment inputs | + | |
| - | * Perform [[dido: | + | |
| - | * Validate resulting environments | + | |
| - | * Record deployment results and Evidence | + | |
| - | + | ||
| - | Declarative configuration provides the desired-state input used by these activities while allowing provider implementations and external deployment tools to determine the execution sequence required for each target platform. | + | |
| ===== Delivery Phase ===== | ===== Delivery Phase ===== | ||
| - | Phase 1 and subsequent phases | + | Implemented |
| ===== Implementation Status ===== | ===== Implementation Status ===== | ||
| - | Not Assessed | + | < |
| - | + | ||
| - | Implementation status requires verification that Crucible can validate and apply declarative configuration that identifies | + | |
| ===== Requirement Status ===== | ===== Requirement Status ===== | ||
| - | Draft | + | < |
| - | The source System Requirements Specification identifies Version 1.1 as a draft. | + | ---- |
| + | ===== Issues ===== | ||
| + | |||
| + | < | ||
| ---- | ---- | ||
| ===== Notes for Editors ===== | ===== Notes for Editors ===== | ||
| - | This requirement page should retain | + | This requirement page retains |
| - | Changes to the Statement SHALL preserve the approved intent of the source | + | This page is a leaf requirement |
| - | Material changes should receive review | + | The Statement preserves the approved source intent |
| - | The Source | + | Do not add desired-state representation, |
| - | + | ||
| - | Incoming traceability should use the wiki Backlinks function rather than a manually maintained list. | + | |
| To reference this requirement Statement from another wiki page, insert: | To reference this requirement Statement from another wiki page, insert: | ||
| Line 216: | Line 82: | ||
| {{section> | {{section> | ||
| </ | </ | ||
| - | |||
| - | Do not rename this page after an external citation unless a redirect or move plan is in place. | ||
| ---- | ---- | ||