18649 - Requirements to Constraints Traceability


18649 Fall 2015
Group 12 - Tom Eliot (tke), Shepard Emerson (semerson), Daniel Gorziglia (dgorzigl), Daniel Haddox (dhaddox)

This table maintains traceability between the requirements behaviors and the constraints given for each module.

You must provide a row in this table for every behavioral requirement in the elevator control system, Sections 5 through 11. This will obviously involve adding rows to the table below. You do not need to create table rows for the environmental objects, Sections 1 through 4.  There constraints are already given in the columns.

If you modify the given behaviors for the DoorControl, CarPositionControl and Dispatcher, this traceability table should reflect what you hand in. So that might involve changing some of the given answers in the table. In other words, we want the table you hand in to reflect your project which will almost certainly involve you changing what we've given below. We've just seeded it with some answers that happen to match the examples we've provided in the assignment to get you going.

Be sure to include the name of each team member who did the traceability for each object.


  
Behavioral Requirements/Constraints 5.1 Doors closed when not at floor
5.2 Door reversal -> doors open
5.3 Doors keep moving
5.4 Identical commands
5.5 Overweight -> doors open
DoorControl - Completed by (Shepard Emerson, semerson)
5.6.1 atFloor + stopped + desiredfloor --> open door X ~ X X ~
5.6.2 atFloor + stopped + desiredfloor --> set countdown ~ ~ ~ ~ ~
5.7.1 mDoorOpened is true -> command door to stop ~ ~ X X ~
5.7.2 mDoorOpened is true -> decrement countdown ~ ~ ~ ~ ~
5.8 mDoorClosed is true --> stop door + set DoorHasReversed = false ~ ~ X X ~
5.9 countdown expired + doorReversed is false --> close door ~ ~ X X ~
5.10 countdown expired + doorReversed is true --> nudge door ~ ~ X X ~
5.11 mDoorReversal is true -> open door + set DoorHasReversed = true ~ X ~ ~ ~
5.12 Overweight --> open door ~ ~ ~ ~ X
5.13 Dwell shall be set to appropiate value ~ ~ ~ ~ ~
5.14 mDoorMotor = DoorMotor ~ ~ ~ ~ ~
Behavioral Requirements/Constraints 6.1 Any door not shut -> Stop
6.2 Any door motor open -> Stop
6.3, 6.3.1  Adjacent value
6.4 EmergencyBrake -> Stop
6.5 Overweight -> Stop
DriveControl - Completed by (Daniel Haddox, dhaddox)
6.6 mDriveSpeed = DriveSpeed ~ ~ ~ ~ ~
6.7 mDrive = Drive ~ ~ ~ ~ ~
6.8 mEmergencyBrake -> Stop ~ ~ ~ x ~
6.9 Leveling ~ ~ x ~ ~
6.10 level -> stop ~ ~ x ~ ~
6.11 slow -> level ~ ~ x ~ ~
6.12 fast -> slow ~ ~ x ~ ~
6.13 stop -> level ~ ~ x ~ x
6.14 level -> slow x x x ~ x
6.15 slow -> fast ~ ~ x ~ ~
Behavioral Requirements/Constraints 7.1 Both lanterns not on at same time
LanternControl - Completed by (Daniel Gorziglia, dgorzigl)
7.2 mDoorClosed is true -> carLantern is off ~ ~ ~ ~ ~
mDoorClosed is false and DesiredDirection not stop -> carLantern is on X ~ ~ ~ ~
Behavioral Requirements/Constraints 10.1 One position at a time 10.2 Any doors open -> Display floor 10.3 Reflect actual floor, direction
CarPositionControl - Completed by (Daniel Gorziglia, dgorzigl)
10.4 DriveSpeed > Level -> CPI = nextFloor x ~ x ~ ~
10.5 DriveSpeed <= Level -> CPI = mAtFloor x x ~ ~ ~
10.6 mCPI = CPI ~ ~ ~ ~ ~
Behavioral Requirements/Constraints 11.1 Target valid 11.2 Can't go up from MaxFloor 11.3 Can't go Down from MinFloor
Dispatcher - Completed by (Tom Eliot, tke)
11.4 CurrentDirection none and calls in direction d -> CurrentDirection set to d ~ x x ~ ~
11.5 CurrentDirection d and no calls in direction d -> CurrentDirection set to none ~ x x ~ ~
11.6 Hallway none, CurrentDirection not none, call in CurrentDirection agreeing with CurrentDirection -> target set to nearest call in CurrentDirection x ~ ~ ~ ~
11.7 Hallway none, CurrentDirection not none, call in CurrentDirection in opposite direction as CurrentDirection -> target set to furthest call in CurrentDirection x ~ ~ ~ ~
11.8 CurrentDirection not none and call in CurrentDirection agreeing with CurrentDirection -> DesiredDirection set to CurrentDirection ~ x x ~ ~
11.9 CurrentDirection not none, no CarCalls in CurrentDirection and either HallCall for opposite of CurrentDirection in CurrentDirection or CarCall in opposite of CurrentDirection -> DesiredDirection set to opposite of CurrentDirection ~ x x ~ ~
11.10 Target equal to CurrentFloor and call at CurrentFloor agreeing with DesiredDirection -> set hallway to hallway(s) at which call is true ~ ~ ~ ~ ~
11.11 Hallway not equal to none -> CurrentDirection set to none ~ ~ ~ ~ ~
11.12 Any door open -> CountDown set to delaytime ~ ~ ~ ~ ~
11.13 All doors closed -> CountDown decremented ~ ~ ~ ~ ~
11.14 CountDown equal to zero -> CurrentDirection set to DesiredDirection ~ ~ ~ ~ ~
11.15 Set mDesiredDwell ~ ~ ~ ~ ~
11.15 Set mDesiredFloor ~ ~ ~ ~ ~