public:99_annexes:annex-b-terms-and-definitions:s:sequence_step

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:s:sequence_step [2026/09/12 17:42] – removed - external edit (Unknown date) 127.0.0.1public:99_annexes:annex-b-terms-and-definitions:s:sequence_step [2026/09/12 17:43] (current) – ↷ Links adapted because of a move operation nick_dido
Line 1: Line 1:
 +====== Sequence Step ======
  
 +[[public:99_annexes:annex-b-terms-and-definitions:start|Go up to Terms and Definitions]]
 +
 +===== Discussion =====
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] is an element of a [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] that references a [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] and defines occurrence-specific information and permitted progression.
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] is a specialization of [[public:99_annexes:annex-b-terms-and-definitions:s:sequence|Sequence]]. Each [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] identifies one position within the ordering or directed progression established by the Test Sequence.
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] references one [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]], such as a:
 +
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_set|Test Set]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_case|Test Case]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_executable|Test Executable]]
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can identify:
 +
 +  * Its identity
 +  * Its name
 +  * Its description
 +  * Its position within the [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]
 +  * Its referenced [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]]
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]]
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:e:expected_result|Expected Results]]
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:test_item|Test Items]]
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:s:starting_condition|Starting Conditions]]
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:t:timing_condition|Timing Conditions]]
 +  * Its required prior conditions
 +  * Its completion condition
 +  * Its failure condition
 +  * Its [[public:99_annexes:annex-b-terms-and-definitions:t:timeout|Timeout]]
 +  * Its permitted following [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]]
 +  * Its progression conditions
 +  * Its alternative progression
 +  * Its error-handling progression
 +  * Its applicable [[public:99_annexes:annex-b-terms-and-definitions:g:governance_policy|Governance Policies]]
 +  * Its [[public:99_annexes:annex-b-terms-and-definitions:p:provenance|Provenance]]
 +  * Its [[public:99_annexes:annex-b-terms-and-definitions:t:traceability|Traceability]]
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can supply occurrence-specific Test Argument Values to the referenced [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]].
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can also identify one or more permitted following [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]]. Progression can depend on:
 +
 +  * Completion of the current [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]]
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]]
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:v:verdict|Verdict]]
 +  * A measured value
 +  * An observed event
 +  * A state
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:timeout|Timeout]]
 +  * An error
 +  * Another defined progression condition
 +
 +The [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] defines permitted progression. The applicable [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]] identifies the progression that actually occurs during [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]].
 +
 +===== Definition =====
 +
 +//element of a [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] that references a [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] and defines occurrence-specific information and permitted progression//
 +
 +===== Source =====
 +
 +Adapted from:
 +
 +  * [[https://www.omg.org/spec/TestIF/1.0/Beta3/PDF|OMG Test Information Interchange Format (TestIF), Version 1.0 Beta 3, Section 7.3.4, SequenceStep]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:s:sequence|Sequence]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Value]]
 +  * [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]]
 +  * DIDO Reference Implementation Conceptual Model
 +  * DIDO-TE draft Requirements Register
 +
 +OMG TestIF defines SequenceStep as a directed-graph node contained within a TestSequence. The SequenceStep references the SequencedTestObject represented at that position and identifies the SequenceSteps that can follow it.
 +
 +OMG TestIF also permits a SequenceStep to provide ArgumentValues for the input variables of its referenced SequencedTestObject.
 +
 +This definition preserves those characteristics while:
 +
 +  * Defining [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] as an element of a [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]
 +  * Relating [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] to the general concept of [[public:99_annexes:annex-b-terms-and-definitions:s:sequence|Sequence]]
 +  * Separating permitted progression from the [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]] that actually occurs
 +  * Remaining independent of a particular graph-storage or implementation technology
 +
 +===== Note =====
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] differs from a [[public:99_annexes:annex-b-terms-and-definitions:s:sequence|Sequence]]:
 +
 +  * A Sequence defines an ordered or directed arrangement of elements and the progression relationships among them
 +  * A Sequence Step is one element within a Test Sequence
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] differs from a [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]:
 +
 +  * A Test Sequence defines the overall ordering and permitted progression
 +  * A Sequence Step identifies one position and defined occurrence within that progression
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] differs from a [[public:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]]:
 +
 +  * A Test Step specifies a reusable test action or [[public:99_annexes:annex-b-terms-and-definitions:v:validation|Validation]]
 +  * A Sequence Step identifies an occurrence of a Sequenced Test Object within a Test Sequence
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can reference a Test Step, but the Sequence Step and Test Step remain separate TestIF objects.
 +
 +The same Test Step can occur at multiple positions within one [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]]. Each occurrence uses a separate [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]].
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] differs from a [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]]:
 +
 +  * A Sequenced Test Object defines reusable test content
 +  * A Sequence Step identifies how that content participates at one position within a Test Sequence
 +
 +The same [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] can participate in:
 +
 +  * Multiple [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequences]]
 +  * Multiple positions within one Test Sequence
 +  * Multiple branches within one Test Sequence
 +  * Multiple [[public:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Runs]]
 +
 +Each [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can provide different:
 +
 +  * Test Argument Values
 +  * Expected Results
 +  * Starting Conditions
 +  * Timing Conditions
 +  * Progression conditions
 +  * Error-handling progression
 +  * Other occurrence-specific information
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] does not copy or redefine the referenced [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]]. It supplies or references the information needed to use that object at a particular position.
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] differs from an [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]]:
 +
 +  * A Sequence Step defines a potential occurrence and permitted progression within a Test Sequence
 +  * An Execution Path identifies which Sequence Steps occurred and how progression actually proceeded during Test Execution
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] can remain unperformed when:
 +
 +  * [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]] follows another conditional branch
 +  * A preceding Sequence Step fails
 +  * A [[public:99_annexes:annex-b-terms-and-definitions:t:timeout|Timeout]] causes error-handling progression
 +  * Test Execution terminates before reaching the Sequence Step
 +  * An authorized [[public:99_annexes:annex-b-terms-and-definitions:a:actor|Actor]] cancels the Test Run
 +
 +Multiple initial [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]] can define parallel starting paths.
 +
 +Multiple following [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]] can define:
 +
 +  * Parallel progression
 +  * Conditional progression
 +  * Alternative progression
 +  * Error-handling progression
 +
 +The [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] provides sufficient progression information to distinguish parallel progression from conditional or alternative progression.
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:t:test_result|Test Result]] can reference both:
 +
 +  * The [[public:99_annexes:annex-b-terms-and-definitions:s:sequenced_test_object|Sequenced Test Object]] whose performance produced the outcome
 +  * The [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] that identifies the particular occurrence of that Sequenced Test Object
 +
 +This dual reference distinguishes Test Results produced by separate occurrences of the same Sequenced Test Object.
 +
 +===== Example =====
 +
 +A reusable [[public:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]] submits a proposed transaction to a [[public:99_annexes:annex-b-terms-and-definitions:n:node|Node]].
 +
 +A [[public:99_annexes:annex-b-terms-and-definitions:t:test_sequence|Test Sequence]] contains three [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]] that reference the same Test Step:
 +
 +  * Sequence Step ''SS-01'' supplies the [[public:99_annexes:annex-b-terms-and-definitions:e:endpoint|Endpoint]] and identity of Node A
 +  * Sequence Step ''SS-02'' supplies the Endpoint and identity of Node B
 +  * Sequence Step ''SS-03'' supplies the Endpoint and identity of Node C
 +
 +Each [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Step]] supplies occurrence-specific [[public:99_annexes:annex-b-terms-and-definitions:t:test_argument_value|Test Argument Values]] while reusing the same Test Step.
 +
 +During [[public:99_annexes:annex-b-terms-and-definitions:t:test_execution|Test Execution]], the [[public:99_annexes:annex-b-terms-and-definitions:t:test_run|Test Run]] records:
 +
 +  * Whether each Sequence Step occurred
 +  * The Test Argument Values used for each occurrence
 +  * The Starting Conditions applicable to each occurrence
 +  * The Timing Conditions applicable to each occurrence
 +  * The start time and completion time of each occurrence
 +  * The Test Result produced by each occurrence
 +  * The Verdict assigned to each Test Result
 +  * The [[public:99_annexes:annex-b-terms-and-definitions:e:execution_path|Execution Path]] followed
 +  * The supporting [[public:99_annexes:annex-b-terms-and-definitions:e:evidence|Evidence]]
 +
 +Although all three [[public:99_annexes:annex-b-terms-and-definitions:s:sequence_step|Sequence Steps]] reference the same [[public:99_annexes:annex-b-terms-and-definitions:t:test_step|Test Step]], each Test Result remains traceable to the particular Node and Sequence Step that produced it.
 +
 +----
 +
 +<WRAP centeralign>
 +© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.
 +</WRAP>