Quality Attribute Scenarios
From DaVinci
Scenario 1 [ M, _ ]
- A new version of ATL is introduced. Dependencies in DaVinci Transformation (DVT) have to be clearly identified in a way that adjustments to integrate the new version can be completed in a 2 week effort.
As captured in QAW
- ATL comes out with a new version. Dependencies have to be clearly identified and adjustments have to be done in a 2 week effort.
Scenario 2 [ M, _ ]
- A change in an OSATE interface occurs. Examples of places where changes may occur are cross cutting functionality within components, the semantics of parameters, etc. If this interface is used by DVT, the amount of work to adjust it cannot be greater that a 1 week effort.
As captured in QAW
- A change of an interface in OSATE modifying a cross cutting functionality or the semantics of a parameter occurs. And this interface is used by DVT. The amount of work to adjust DVT cannot be greater than one week of effort.
Scenario 3 [ M, _ ]
- The transformation of an AADL model with 20,000 lines needs to be done in no more than 1 minute. For larger models the execution time has to be linear.
As captured in QAW
- A port group identification of a model with 20,000 lines needs to be done in no more than 1 minute. For larger models the execution time has to be linear.
Scenario 4 [ M, _ ]
- The transformation of an AADL model with 100 lines needs to be done in no more than 1 second.
As captured in QAW
- A port group identification for a very small model with 100 lines needs to be done in no more than 1 second.
Scenario 5 [ H, _ ]
- DVT reads a semantically incorrect AADL model. The model is processed without a crash, and no new errors are introduced. An error list is provided to easily navigate to them.
As captured in QAW
- DVT reads an incorrect model with several errors. The model is processed without a crash and left in a state easy to understand. An error list is provided.
Scenario 6 [ H, _ ]
- When DVT reads a semantically correct AADL model and executes the transformation, the result cannot lose relevant information.
As captured in QAW
- DVT reads a correct model and does the transformation. Then the result cannot lose relevant information.
Scenario 7 [ M, _ ]
- A remote OSATE user finds a problem in DVT. The SEI needs to be able to remotely diagnose the problem by finding the root cause without having to debug or analyze the source AADL model.
As captured in QAW
- A remote user finds a problem in DVT. The SEI needs to be able to diagnose the problem and find the root cause without getting the user model and debugging.
Scenario 8 [ H, _ ]
- A non DaVinci team member that understands a transformation must be able to write that transformation using the DVT infrastructure and the ATL framework in less than 3 weeks.
As captured in QAW
- Non DaVinci team member understanding the transformation to write it by using DVT ATL framework in less than 3 weeks.
Scenario 9 [ M, _ ]
- A non DaVinci team member that understands the transformation is about to write a new transformation similar to a DVT example. The transformation must be implemented twice as fast as without the example.
As captured in QAW
- Non DaVinci team member understanding the transformation is going to write a new transformation similar to a DVT example. The transformation must be done twice as fast as without the example.
Scenario 10 [ M, _ ]
- A new DVT user must easily understand what input is expected in order to execute the transformation.
As captured in QAW
- A new DVT transformation user provides input to a transformation with no errors at any try.
Scenario 11 [ M, _ ]
- Any user of DVT running transformations that require input can run one or more transformations in batch mode without the need to interact after the beginning of the operation.
As captured in QAW
- Any user of DVT running transformations that require input can run one or more transformations in batch mode without interacting after the start.
Scenario 12 [ H, _ ]
- When users start long-running transformations they must be able to cancel the transformation at any time and without causing any inconsistent data.
As captured in QAW
- A user starts a long-running transformation. The user needs to be able to cancel the transformation at any time without inconsistent data.
Scenario 13 [ H, _ ]
- When users start long-running transformations the user interface must not be blocked. DVT must ensure that the user does not alter the model on which the running transformation is working.
As captured in QAW
- A user starts a long-running transformation. The user needs to be able to cancel without blocking the user interface that cannot cause any inconsistencies.
Scenario 14 [ H, _ ]
- Within a session, users must be able to re-run transformations using previously entered input data.
As captured in QAW
- A user wants to re-run across sessions the transformation that requires input that can be done without re-entering the input across sessions.
Scenario 15 [ H, _ ]
- When users start transformations taking more than 1 second, they must get feedback of the progress.
As captured in QAW
- A user starts a long run transformation (longer than 1 second). The user should get feedback of the process progress.
Scenario 16 [ M, _ ]
- When users start transformations taking more than 1 second, they must get feedback on the estimated remaining time with a 20% precision.
As captured in QAW
- A user starts a long run transformation (longer than 1 second). The user should get feedback of the progress and the estimation of the remaining time with a 20% precision.
Scenario 17 [ M, _ ]
- When the DaVinci team is done in the summer of 2006 and the SEI takes over DVT, the SEI must be able to continue DaVinci’s work without needing to contact any team member.
As captured in QAW
- When the team is done in the Summer of 2006, and the SEI takes over the project, the SEI can continue DaVinci’s work without contacting any team member.
Scenario 18 [ H, _ ]
- The user wants to undo the transformation, refactoring or optimization that changed an AADL model. That must be possible within an existing session and without causing any inconsistency in the model.
As captured in QAW
- The user wants to undo the refactoring or optimization that changes the model. That can be done in any case during an existing session without causing any inconsistency.