public:99_annexes:annex-b-terms-and-definitions:e:exception_handling

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
public:99_annexes:annex-b-terms-and-definitions:e:exception_handling [2026/09/12 17:42] – removed - external edit (Unknown date) 127.0.0.1public:99_annexes:annex-b-terms-and-definitions:e:exception_handling [2026/09/12 17:43] (current) – ↷ Links adapted because of a move operation nick_dido
Line 1: Line 1:
 +====== Exception Handling ======
  
 +[[public:99_annexes:annex-b-terms-and-definitions:start|Go up to Terms and Definitions]]
 +
 +===== Discussion =====
 +
 +Exception Handling identifies the defined processing performed in response to a detected [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution_exception|Test Execution Exception]].
 +
 +Exception Handling can require DIDO-TE to:
 +
 +  * Record the Test Execution Exception
 +  * Classify the Test Execution Exception
 +  * Continue [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]]
 +  * Retry an operation
 +  * Repeat a [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]]
 +  * Skip a permitted Sequence Step
 +  * Select an alternative [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]]
 +  * Restore a defined state
 +  * Perform a compensating operation
 +  * Isolate an affected [[public:99_annexes:annex-b-terms-and-definitions:n:node|Node]]
 +  * Replace an affected [[public:99_annexes:annex-b-terms-and-definitions:o:operational_resource|Operational Resource]]
 +  * Pause the [[public:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]]
 +  * Resume the Test Run
 +  * Cancel the Test Run
 +  * Terminate the Test Run
 +  * Notify an authorized [[public:99_annexes:annex-b-terms-and-definitions:a:actor|Actor]]
 +  * Request an authorized Actor decision
 +  * Generate a [[public:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]]
 +  * Assign or request a [[public:99_annexes:annex-b-terms-and-definitions:v:verdict|Verdict]]
 +  * Preserve [[public:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]]
 +
 +Exception Handling can identify:
 +
 +  * Its identity
 +  * Its name
 +  * Its description
 +  * Its applicable Test Execution Exception types
 +  * Its applicable exception severity
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:test_run_state|Test Run States]]
 +  * Its entry conditions
 +  * Its handling operations
 +  * Its permitted retries
 +  * Its retry interval
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:timeout|Timeouts]]
 +  * Its permitted Execution Paths
 +  * Its recovery conditions
 +  * Its escalation conditions
 +  * Its completion condition
 +  * Its failure condition
 +  * Its resulting Test Run State
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:test_run_termination_reason|Test Run Termination Reason]]
 +  * Its applicable notification requirements
 +  * Its applicable authorization requirements
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:g:governance_policy|Governance Policies]]
 +  * Its required Evidence
 +  * Its [[public:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]]
 +  * Its [[public:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]]
 +
 +Exception Handling can be defined by:
 +
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:test_definition|Test Definition]]
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]
 +  * A Sequence Step
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:test_executable|Test Executable]]
 +  * A Governance Policy
 +  * The applicable [[public:99_annexes:annex-b-terms-and-definitions:a:acceptance_criteria|Acceptance Criteria]]
 +  * Another controlling specification
 +
 +When more than one Exception Handling definition applies, the applicable Governance Policies or Acceptance Criteria determine precedence and conflict resolution.
 +
 +===== Definition =====
 +
 +//defined processing performed in response to a detected [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution_exception|Test Execution Exception]]//
 +
 +===== Source =====
 +
 +Adapted from:
 +
 +  * [[https://www.omg.org/spec/TestIF/1.0/PDF|OMG Test Information Interchange Format (TestIF), Version 1.0]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_run_state|Test Run State]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_run_termination_reason|Test Run Termination Reason]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution_exception|Test Execution Exception]]
 +  * DIDO Reference Implementation Conceptual Model
 +  * DIDO-TE draft Requirements Register
 +
 +OMG TestIF defines information used to describe Test Sequences, Test Steps, Test Executables, Test Runs, and Test Results.
 +
 +OMG TestIF does not define Exception Handling as a separate TestIF model element. This definition introduces Exception Handling to specify how DIDO-TE responds to Test Execution Exceptions and how those responses affect Test Execution, Test Run States, Test Results, Evidence, Provenance, and Traceability.
 +
 +===== Note =====
 +
 +Exception Handling differs from a Test Execution Exception:
 +
 +  * A Test Execution Exception identifies an event or condition affecting Test Execution
 +  * Exception Handling identifies the defined response to the Test Execution Exception
 +
 +Exception Handling differs from a Test Run Termination Reason:
 +
 +  * Exception Handling specifies the processing performed in response to a Test Execution Exception
 +  * A Test Run Termination Reason identifies why a Test Run entered the Terminated Test Run State
 +
 +Exception Handling does not necessarily terminate Test Execution.
 +
 +Successful Exception Handling can:
 +
 +  * Resolve the Test Execution Exception
 +  * Restore the required state
 +  * Permit Test Execution to continue
 +  * Preserve the current Test Run State
 +  * Return a paused Test Run to the Running state
 +
 +Unsuccessful Exception Handling can cause a Test Run to:
 +
 +  * Remain Paused
 +  * Enter the Terminated Test Run State
 +  * Become an [[public:99_annexes:annex-b-terms-and-definitions:i:incomplete_test_run|Incomplete Test Run]]
 +
 +Automated Exception Handling does not require human intervention.
 +
 +Exception Handling requiring an authorized Actor decision is not fully automated during the period in which Test Execution waits for that decision.
 +
 +A human notification does not by itself constitute human intervention. A human response affecting Test Execution constitutes human intervention.
 +
 +Exception Handling can preserve Test Results produced before, during, or after the Test Execution Exception.
 +
 +The applicable Acceptance Criteria determine whether Test Results affected by a Test Execution Exception can be used for:
 +
 +  * Analysis
 +  * Diagnosis
 +  * Comparison
 +  * Regression analysis
 +  * [[public:99_annexes:annex-b-terms-and-definitions:b:baseline|Baseline]] establishment
 +  * [[public:99_annexes:annex-b-terms-and-definitions:v:validation|Validation]]
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:v:validation_decision|Validation Decision]]
 +
 +Exception Handling should identify bounded retry behavior. An unlimited retry instruction does not provide an objectively verifiable completion or termination condition.
 +
 +When Exception Handling permits multiple responses, it should identify the conditions governing selection of each response.
 +
 +Exception Handling should preserve Traceability among:
 +
 +  * The detected Test Execution Exception
 +  * The controlling Exception Handling definition
 +  * The processing performed
 +  * The affected Test Run
 +  * The preceding and resulting Test Run States
 +  * The applicable Test Run Termination Reason
 +  * The resulting Test Results
 +  * The supporting Evidence
 +
 +===== Example =====
 +
 +A Test Execution Exception occurs when an Execution Facility becomes temporarily unavailable during a Sequence Step.
 +
 +The applicable Exception Handling requires DIDO-TE to:
 +
 +  * Record the Test Execution Exception
 +  * Pause the Test Run
 +  * Attempt to restore the Execution Facility
 +  * Retry restoration no more than three times
 +  * Wait ten seconds between retry attempts
 +  * Resume the Test Run when the Execution Facility becomes available
 +  * Terminate the Test Run when the third retry fails
 +  * Notify the applicable Actor
 +  * Preserve the supporting Evidence
 +
 +The Execution Facility becomes available during the second retry.
 +
 +DIDO-TE:
 +
 +  * Changes the Test Run State from **Running** to **Paused**
 +  * Restores the Execution Facility
 +  * Changes the Test Run State from **Paused** to **Running**
 +  * Repeats the affected Sequence Step
 +  * Continues Test Execution
 +  * Records the Exception Handling performed
 +  * Preserves Evidence, Provenance, and Traceability
 +
 +Because the Exception Handling succeeds, the Test Run does not enter the Terminated Test Run State and does not receive a Test Run Termination Reason.
 +
 +----
 +
 +<WRAP centeralign>
 +© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.
 +</WRAP>