dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-management-interfaces:fr-ui-001

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-11-management-interfaces:fr-ui-001 [2026/07/31 07:33] – removed - external edit (Unknown date) 127.0.0.1dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-management-interfaces:fr-ui-001 [2026/07/31 07:33] (current) – ↷ Page moved from dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-crucible-interfaces:fr-ui-001 to dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-management-interfaces:fr-ui-001 nick_dido
Line 1: Line 1:
 +====== FR-UI-001 — Shared Interface Operations ======
  
 +[[dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-management-interfaces:start|Go to C.3.11 Crucible Interfaces]]
 +
 +===== Statement =====
 +
 +[[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] SHALL expose the same operations through its [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]] and [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]].
 +
 +===== Derived From =====
 +
 +This requirement derives from:
 +
 +  * Crucible System Requirements Specification, Version 1.1 Draft, Functional Requirements, FR-UI-002
 +
 +The Original Requirement requires the web-based interface to use the same engine and command-line capabilities as the primary command-line interface.[[dido:02-crusible:99-annexes:annex-b:cr-001|[C1]]]
 +
 +FR-UI-001:
 +
 +  * Replaces the combined implementation and interface wording with an externally observable requirement for shared operations
 +  * Identifies [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]] as the required system
 +  * Identifies the [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]] and [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]] as the interface paths
 +  * Separates shared interface behavior from the requirements to provide each interface
 +  * Avoids requiring duplicated implementations or a particular internal engine architecture
 +
 +FR-UI-002 separately requires the Command-Line Interface.
 +
 +FR-UI-003 separately requires the Web-Based User Interface.
 +
 +===== Rationale =====
 +
 +Exposing the same operations through the [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]] and [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]] provides consistent access to Crucible capabilities.
 +
 +Shared interface operations allow users and automated processes to select an interface based on operational needs without receiving materially different Crucible capabilities solely because of the selected interface.
 +
 +The Command-Line Interface supports textual invocation by people, scripts, [[dido:99_annexes:annex-b-terms-and-definitions:w:workflow|Workflows]], and [[dido:99_annexes:annex-b-terms-and-definitions:c:ci_cd_pipeline|CI/CD Pipelines]].
 +
 +The Web-Based User Interface supports browser-based interaction by a person.
 +
 +This requirement establishes parity between the operations exposed through the two interfaces without prescribing:
 +
 +  * A particular internal engine
 +  * A particular software architecture
 +  * Identical interface presentation
 +  * Identical input syntax
 +  * Identical output formatting
 +  * Identical interaction sequences
 +  * Identical authentication mechanisms
 +  * Identical implementation code
 +  * Duplication of operation implementations
 +  * The interface through which an operation must be invoked
 +
 +Separate requirements, architecture specifications, interface specifications, and security requirements govern those subjects.
 +
 +===== Applies To =====
 +
 +This requirement applies to:
 +
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]]
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]]
 +  * Crucible operations exposed through either interface
 +
 +===== Verification =====
 +
 +Verification confirms that:
 +
 +  - The operations exposed through the [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]] are identified
 +  - The operations exposed through the [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]] are identified
 +  - Each operation exposed through the Command-Line Interface has a corresponding operation exposed through the Web-Based User Interface
 +  - Each operation exposed through the Web-Based User Interface has a corresponding operation exposed through the Command-Line Interface
 +  - Corresponding operations produce functionally equivalent results when supplied with equivalent inputs
 +  - Differences in presentation, syntax, formatting, or interaction do not change the operation performed
 +
 +===== Referenced By =====
 +
 +The following pages reference this requirement:
 +
 +{{backlinks>.#dido:02-crusible}}
 +
 +===== Implementation Status =====
 +
 +Implemented and Verified
 +
 +===== Requirement Status =====
 +
 +<todo>Review and approve FR-UI-001 as a leaf requirement.</todo>
 +
 +----
 +===== Issues =====
 +
 +<todo>Confirm whether the controlling source requires complete operational parity or permits interface-specific operations.</todo>
 +
 +<todo>Confirm whether the controlling source requires a shared internal engine in addition to shared externally observable operations.</todo>
 +
 +<todo>Determine whether security, administrative, or diagnostic operations can be restricted to one interface.</todo>
 +
 +----
 +===== Notes for Editors =====
 +
 +This requirement page retains the stable requirement identifier ''FR-UI-001''.
 +
 +This page is a leaf requirement page and omits a trailing '':start'' from its namespace.
 +
 +The Statement uses the following controlling Terms and Definitions entries:
 +
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:crucible|Crucible]]
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:c:cli|Command-Line Interface (CLI)]]
 +  * [[dido:99_annexes:annex-b-terms-and-definitions:w:web_ui|Web-Based User Interface (Web UI)]]
 +
 +The Statement specifies externally observable operational parity between the Command-Line Interface and Web-Based User Interface.
 +
 +The Statement does not require the two interfaces to:
 +
 +  * Present operations in the same manner
 +  * Accept identical syntax
 +  * Produce identically formatted output
 +  * Use identical interaction sequences
 +  * Contain duplicate implementations
 +
 +FR-UI-002 governs provision of the Command-Line Interface.
 +
 +FR-UI-003 governs provision of the Web-Based User Interface.
 +
 +Do not replace the externally observable parity requirement with a specific internal engine architecture unless the controlling source explicitly requires that architecture.
 +
 +To reference this requirement Statement from another wiki page, insert:
 +
 +<code dokuwiki>
 +{{section>dido:02-crusible:99-annexes:annex-c-requirements:03-functional-requirements:03-11-crucible-interfaces:fr-ui-001#Statement&noheader&nofooter&noeditbtn}}
 +</code>
 +
 +----
 +
 +<WRAP centeralign>
 +© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.
 +</WRAP>