Test Cases for Wright Flyer Requirements

advertisement
Test Cases for Wright Flyer Requirements
R1
The simulation user can specify the conditions under which the simulation will automatically end.
R1.1
The simulation user can specify that the simulation will end when any plane crashes or
lands
Initial State of system: The plane is initially in flight.
Stimulus Given: Make a randomly chosen flyer land.
Response Expected: End of Simulation.
Note: This trace message should be passed to the ITP.
Initial State of system: The plane is initially in flight.
Stimulus Given: Make a randomly chosen flyer crash.
Response Expected: End of Simulation.
Note: This trace message should be passed to the ITP.
R1.2
The simulation user can specify that the simulation will end when all planes have crashed
or landed.
Initial State of the system: The plane is initially in flight.
Stimulus Given: Make all flyers land
Response Expected: End of Simulation.
Note: This trace message should be passed to the ITP.
Initial State of the system: The plane is initially in flight.
Stimulus Given: Make all flyers crash
Response Expected: End of Simulation.
Note: This trace message should be passed to the ITP.
R1.3
The simulation user can specify that the simulation will end when any plane crashes, or
when all planes have landed.
This requirement has already been taken care of in the above test cases.
R2
The user can define the terrain in which the simulation takes place.
R2.1
R2.1.1
The simulation user can select a randomized terrain.
The simulation user can define a minimum and maximum elevation for the
randomized terrain.
Initial State of the system: No values have been assigned for max/min elevation for the
randomized terrain.
Stimulus given: Provide valid values for max/min elevation.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No values have been assigned for max/min elevation for the
randomized terrain.
Stimulus given: Provide incorrect values for max/min elevation, i.e. say, the min value is
greater than the max value.
Response Expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R2.2
The simulation user can select a predefined terrain, stored in a terrain description file.
Initial State of the system: No terrain pattern has been selected so far
Stimulus given: Prompt environment script to select a valid terrain description file.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No terrain pattern has been selected so far
Stimulus given: Prompt environment script to select an invalid terrain description file.
Response Expected: The user is informed that the file is invalid and the simulation does
not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No terrain pattern has been selected so far.
Stimulus given: Prompt environment script to select a terrain description file that does
not exist.
Response Expected: The user is informed that the file does not exist and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R3
The terrain includes features.
R3.1
The simulation user can select randomized features.
R3.2
The simulation user can select predefined features, stored in a feature description file.
Initial State of the system: No features have been selected so far
Stimulus given: Prompt environment script to select a valid feature description file.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No features have been selected so far
Stimulus given: Prompt environment script to select an invalid feature description file.
Response Expected: The user is informed that the file is invalid and the simulation does
not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No features have been selected so far.
Stimulus given: Prompt environment script to select a feature description file that does
not exist.
Response Expected: The user is informed that the file does not exist and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R4
The simulation user can define the wind in the environment where the simulation takes place.
R4.1
R4.1.1
The simulation user can select a randomized wind range.
The simulation user can define a minimum and maximum speed for the
randomized wind range.
Initial State of the system: No values have been assigned for max/min speed of wind.
Stimulus given: Provide valid values for max/min elevation.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No values have been assigned for max/min speed of wind.
Stimulus given: Provide incorrect values for max/min elevation i.e. say, the min value is
greater than the max value.
Response Expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R4.1.2
The simulation user can define minimum and maximum values for each
component of the wind’s orientation.
Initial State of the system: No max/min values have been assigned for each component
of the wind’s orientation.
Stimulus given: Provide valid max/min values for each component of the wind’s
orientation
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No max/min values have been assigned for each component
of the wind’s orientation.
Stimulus given: Provide invalid max/min values for each component of the wind’s
orientation, i.e. say, the min value is greater than the max value.
Response Expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R4.2
The simulation user can select a predefined wind, stored in a wind description file.
Initial State of the system: No wind pattern has been selected so far
Stimulus given: Prompt environment script to select a valid wind description file.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No wind pattern has been selected so far
Stimulus given: Prompt environment script to select an invalid wind description file.
Response Expected: The user is informed that the file is invalid and the simulation does
not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No wind pattern has been selected so far.
Stimulus given: Prompt environment script to select a wind description file that does not
exist.
Response Expected: The user is informed that the file does not exist and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R4.2.1
The wind description file can minimally describe different randomized wind
ranges for each region of the terrain.
Cannot provide test cases due to the broad description of these requirements. The
Environments and Scripts group is responsible for checking these requirements and
making they work correctly within the simulation.
R4.2.2
The wind description file can minimally describe different randomized wind
ranges as a function of time.
Cannot provide test cases due to the broad description of these requirements. The
Environments and Scripts group is responsible for checking these requirements and
making they work correctly within the simulation.
R5
The simulation user can define the temperature where the simulation takes place.
R5.1
R5.1.1
The simulation user can select a randomized temperature range.
The simulation user can define a minimum and maximum temperature.
Initial State of the system: No max/min values have been assigned for temperature.
Stimulus given: Provide valid max/min values for temperature.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No max/min values have been assigned for temperature.
Stimulus given: Provide invalid max/min values for temperature, i.e. say, the min value
is greater than the max value.
Response Expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R5.2
The simulation user can select a predefined temperature, stored in a temperature
description file.
Initial State of the system: No temperature pattern has been selected so far
Stimulus given: Prompt environment script to select a valid temperature description file.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No temperature pattern has been selected so far
Stimulus given: Prompt environment script to select an invalid temperature description
file.
Response Expected: The user is informed that the file is invalid and the simulation does
not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No temperature pattern has been selected so far.
Stimulus given: Prompt environment script to select a temperature description file that
does not exist.
Response Expected: The user is informed that the file does not exist and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R6
The simulation user can define the atmospheric pressure where the simulation takes place.
R6.1
R6.1.1
The simulation user can select a randomized atmospheric pressure range.
The simulation user can define a minimum and maximum atmospheric pressure.
Initial State of the system: No max/min values have been assigned for atmospheric
pressure.
Stimulus given: Provide valid max/min values for atmospheric pressure.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No max/min values have been assigned for atmospheric
pressure.
Stimulus given: Provide invalid max/min values for atmospheric pressure, i.e. say, the
min value is greater than the max value.
Response Expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R6.2
The simulation user can select a predefined atmospheric pressure, stored in an
atmospheric pressure description file.
Initial State of the system: No atmospheric pressure pattern has been selected so far
Stimulus given: Prompt environment script to select a valid atmospheric pressure
description file.
Response Expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No atmospheric pressure pattern has been selected so far
Stimulus given: Prompt environment script to select an invalid atmospheric pressure
description file.
Response Expected: The user is informed that the file is invalid and the simulation does
not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of the system: No atmospheric pressure pattern has been selected so far.
Stimulus given: Prompt environment script to select an atmospheric pressure description
file that does not exist.
Response Expected: The user is informed that the file does not exist and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R7
The simulation pilot can specify the initial conditions of each plane.
R7.1
The simulation pilot can define the initial position (x, y, z) and orientation (, , ) of
each plane.
Initial State of System: Initial position of plane is not defined.
Stimulus given: Prompt pilot script to provision valid values for the initial position in
terms of (x,y,z).
Response expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of System: Initial orientation of plane is not defined.
Stimulus given: Prompt pilot script to provision valid values for the initial orientation in
terms of (,,) of the plane.
Response expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of System: Initial position of plane is not defined.
Stimulus given: Prompt pilot script to provision invalid values for the initial position of
the plane, i.e. provide co-ordinates that don’t lie within the flying space of the flyer
federate.
Response expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of System: Initial orientation of plane is not defined.
Stimulus given: Prompt pilot script to provision invalid values for the initial orientation
of the plane, i.e. provide values that are incorrect.
Response expected: The user is informed that the values are invalid and the simulation
does not execute.
Note: This test case will have to be handled individually by the group responsible for this
test.
R7.2
The simulation pilot can define the initial velocity (vx, vy, vz, , , ) of each plane.
Initial State of System: Initial velocity of plane is not defined.
Stimulus given: Prompt pilot script to provision valid values for the initial velocity in
terms of (vx,vy,vz,w,w,w).
Response expected: Complied
Note: This test case will have to be handled individually by the group responsible for this
test.
Initial State of System: Initial velocity of plane is not defined.
Stimulus given: Prompt pilot script to provision invalid values for the initial velocity in
terms of (vx,vy,vz,w,w,w), i.e. say the velocity is too slow for the plane to stay in the
air.
Response expected: The plane should crash and a trace message should be send to the
ITP.
Initial State of System: Initial velocity of plane is not defined.
Stimulus given: Prompt pilot script to provision invalid values for the initial velocity in
terms of (vx,vy,vz,w,w,w), i.e. say the velocity is too fast for the Wright Flyer.
Response expected: The simulation may either fail to execute, prompting the user as to
why, or the simulation may execute and immediately crash.
Note: This test case will have to be handled individually by the group responsible for this
test.
R8
The simulation execution begins once the simulation definition has been done and all the
parameters necessary to set up the execution are available. The simulation user starts the
execution.
Initial State of System: The simulation definition is complete, but simulation execution
has not been initiated.
Stimulus given: Initiate simulation execution
Response Expected: Complied. Send trace message to the ITP regarding this test case.
R9
The simulation can be exited from using simulation user control at any time.
Initial State of System: The simulation is currently in execution stage
Stimulus given: Simulation user terminates the simulation.
Response Expected: No states are saved and the simulation is terminated…. Trace
message to be send to the ITP.
R10
The simulation can be paused and continued by the simulation pilot or simulation user.
Initial State of System: The simulation is currently in execution stage
Stimulus given: Simulation user pauses simulation.
Response Expected: The state of the federates are saved, no events occur till the
simulation user enters command to resume simulation. Trace message send to the ITP.
Initial State of System: The simulation is currently paused.
Stimulus given: Resume simulation.
Response Expected: Complied. Report to ITP via trace message.
R11
The simulation pilot or simulation user can select different types of simulated pilots.
R11.1
It can be a man in the loop pilot, where it is replicates the control signals that are obtained
from the human pilot at an external input device.
R11.2
The simulation does not preclude other types of simulated pilots.
Cannot present test case for these requirements due to the broadness of their scope. The
group responsible for the pilot should test these requirements separately.
R12
The simulated pilot controls the cockpit control mechanisms - the canard control and the hip
saddle.
Cannot present test case for these requirements due to the broadness of their scope. The
group responsible for the pilot should test these requirements separately.
R13
Each plane in the simulation has 2 wings, whose specifications have to be defined.
R13.1
The wings simulate drag and lift.
R13.2
The wings simulation can be made to use wind tunnel data.
Cannot present test case for these requirements due to the broadness of their scope. The
Wing/Canard/Rudder group should test these requirements separately.
R14
Each plane has one rudder.
R14.1
The rudder controls the yaw of the plane.
R14.2
The rudder simulation can be made to use wind tunnel data.
Cannot present test case for these requirements due to the broadness of their scope. The
Wing/Canard/Rudder group should test these requirements separately.
R15
Each plane has 2 canards, whose specifications have to be defined.
R15.1
The canards control the pitch of the flyer.
R15.2
The canards simulation can be made to use wind tunnel data.
Cannot present test case for these requirements due to the broadness of their scope. The
Wing/Canard/Rudder group should test these requirements separately.
R16
Each plane has an engine.
R16.1
The engine can have a constant force vector as an output to other components of the
plane.
R16.2
The engine weight depends on the amount of fuel.
R16.3
When the engine runs out of fuel, it stops producing thrust.
Cannot present test case for these requirements due to the broadness of their scope. The
Control group should test these requirements separately.
R17
The pilot uses the hip saddle in order to control the orientation of the wing and rudder.
Cannot present test case for these requirements due to the broadness of their scope. The
Pilot/Environments/Scripts group should test these requirements separately.
R18
The plane interacts with the simulated pilot via the rudder control and hip saddle in order to get
control input.
Cannot present test case for these requirements due to the broadness of their scope. The
UI, Control, Wing/Canard/Rudder and Pilot/Environments/Scripts group should test these
requirements separately.
R19
There are at-least 4 different kinds of views that can be defined.
R19.1
Pilot view - This is the front view as seen by the pilot flying the plane.
R19.2
Wingman View - This is a view of a particular plane from a position relative to that
plane.
R19.3
Spot view - It is a view of a particular plane from a fixed position
R19.4
Constant view- A view from a constant perspective to a constant point in space.
R19.5
Each view has a zoom control associated with it, by which the scope of the view can be
controlled.
These are just definitions. The test cases follow in the following section.
R20
Views can be added and removed during execution. Additionally it is also possible to change the
parameters that define the view. For instance, the simulation user could change the position
parameters of the wingman view thereby giving the user a different view of the plane.
Initial State of simulation: No views are turned on
Stimulus given: Turn on Pilot View
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: No views are turned on
Stimulus given: Turn on Wingman View
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: No views are turned on
Stimulus given: Turn on Spot View
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: No views are turned on
Stimulus given: Turn on Constant View
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: The Pilot View is turned on. Everything else is off.
Stimulus given: Zoom in, i.e. take a smaller block of the view and enhance the block to
see more detailed information.
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: The Spot View is turned on. Everything else is off.
Stimulus given: Zoom in, i.e. take a smaller block of the view and enhance the block to
see more detailed information.
Response Expected: Complied.
Note: To be handled separately by the UI group.
Initial State of simulation: The Constant view is turned on.
Stimulus given: Turn on the Pilot and Wingman view.
Response Expected: Complied.
Note: To be handled separately by the UI group.
R21
During simulation scenario definition, the simulation pilot or simulation user can select whether to
record data for later control playback.
R21.1
Upon completion of the flight, the simulation pilot or simulation user can select whether
to save the recorded data.
Initial State of Simulation: The flight simulation has ended.
Stimulus Given: Choose to save recorded flight data
Response Expected: Complied
Note: To be handled separately by the UI group.
R22
During simulation scenario definition, the simulation user can decide to use control playback.
R22.1
Upon loading the control playback file, the simulation user is presented the simulation
scenario-definition-user-interface.
R22.1.1
All values are as they were when the original simulation scenario was defined,
with the exception of random items.
R22.1.1.1
For items that were random during recording, the simulation user can
choose to:
R22.1.1.1.1
Use the recorded data until they are exhausted.
R22.1.1.1.2
Use the recorded data until the simulation user takes control.
R22.1.1.1.3
Do not use the recorded data.
R22.1.1.2
The simulation user can choose any of the standard methods to produce
data after the recorded data are no longer in use.
R22.1.2
R22.2
R23
The simulation user can vary any of the configurable items.
The simulation user can opt to playback control on each plane in the simulation scenario
on a plane-by-plane basis.
With control playback, during simulation scenario execution, the simulation executes
automatically until the simulation user takes control, until the recorded data are exhausted, or until
the simulation exit conditions are met.
R23.1
The simulation executes according to the parameters defined in the simulation scenario
definition.
R23.2
If the simulation user has not taken control before the recorded data run out, the
simulation is paused until the simulation user or simulation user explicitly continues the
simulation.
R23.3
After the simulation pilot has taken control, control may not be returned to the system.
R24
With control playback, during simulation execution, the simulation user can manipulate views in
the user interface as during regular simulation scenario execution.
Once the simulation user or simulation pilot has wrested or been given control, the
simulation execution proceeds just as any other simulation would. Thus, all requirements
applying to simulation scenario execution apply to the case of regaining control after
control playback.
R25
After the simulation user or simulation pilot has taken control, the simulation executes exactly as a
normal simulation execution.
Cannot come up with test cases for these requirements. UI group will have to test these
requirements from their User Interface directly and make sure that all functionality
available on the UI complies with the requirements. None of the above requirements are
specific to an extent for which test cases can be written
Performance Requirements
We cannot really test to check whether the UI communicates actions and reactions within
.01 seconds. It is quite possible that multiple federated might be executing concurrently
which might have a slowing down effect for the overall simulation.
R26
The simulation has to work under the HLA environment and must follow all HLA rules as defined
below:

Federations shall have an HLA Federation Object Model (FOM), documented in accordance with the
HLA Object Model Template.

In a federation, all object representation shall be in the federates, not in the runtime infrastructure
(RTI).

During a federation execution, all exchange of FOM data among federates shall occur via the RTI.

During a federation execution, federates shall interact with the RTI in accordance with the HLA
interface specification.

During a federation execution, an attribute of an instance of an object shall be owned by only one
federate at any given time.

Federates shall have an HLA Simulation Object Model (SOM), documented in accordance with the
HLA OMT.

Federates shall be able to update and/or reflect any attributes of objects in their SOM and send and/or
receive

SOM object interactions externally, as specified in their SOM.

Federates shall be able to transfer and/or accept ownership of attributes dynamically during a
federation execution, as specified in their SOM.

Federates shall be able to vary the conditions (e.g., thresholds) under which they provide updates of
attributes of objects, as specified in their SOM.

Federates shall be able to manage local time in a way which will allow them to coordinate data
exchange with other members of a federation.
R27
The interaction between simulated objects, also called federates is achieved through the HLA RTI.
R28
The simulation has to run under the Windows NT environment.
We will not be testing these requirements during this iteration of the project (this
semester), due to the amount of overhead involved.
R29
The system is capable of completing simulation scenario definition and execution no less than
90% of the time.
R30
When the system fails, it fails gracefully as described below.
R30.1
The system never causes an unhandled exception.
R30.2
If the system encounters an internal error, the system produces a diagnostic error message
before exiting.
Upon running our test cases, if we find that successful completion rate of all test cases
run, is over 90%, then that is a good yardstick to use in order to measure system
reliability.
R31
The source code adheres to the coding standards defined in the Software Quality Assurance Plan.
R32
The implementation is documented according to the standards defined in the Software Quality
Assurance Plan.
Can’t really write a test case for this.
Download