0 valutazioniIl 0% ha trovato utile questo documento (0 voti)
32 visualizzazioni38 pagine
System Requirements Specification For an Elevator System Controller In a low-rise building. Specified the floor and direction indicators' behaviour explicitly in the use cases. Added a number of previously missing entities to the conceptual diagram.
System Requirements Specification For an Elevator System Controller In a low-rise building. Specified the floor and direction indicators' behaviour explicitly in the use cases. Added a number of previously missing entities to the conceptual diagram.
System Requirements Specification For an Elevator System Controller In a low-rise building. Specified the floor and direction indicators' behaviour explicitly in the use cases. Added a number of previously missing entities to the conceptual diagram.
November 21, 2005 List of Changes from 2 nd Partial SRS
Section 1 Removed variables (<floor>, <car>, etc.) from definition chart Removed MC from definition chart, since the SRS should not mention MC specifically but rather deal with a generic elevator system for a low-rise building Clearly defined car status terms and roles used in the SRS Renamed the Context Diagram for the Elevator Control System Added a dashed box to indicate the boundary between the elevator system and the users, showed the users in the Context Diagram
Section 2 Moved description of elevator system components from Product Perspective subsection to Product Functions subsection Removed description of components not relevant to SRS (e.g. light on/off switch) Changed description of behaviour for alarm button, emergency stop button
Section 3 Changed system state diagram to reflect concurrency among activities, matched abstraction level with the use cases, avoided flower pattern diagram Added a number of previously missing entities to the conceptual diagram
Section 4 Added a number of previously missing requirements to both the functional requirements table and the non-functional requirements table Rephrased the use cases to use the active voice, and wrote more direct sentences Specified the floor and direction indicators behaviour explicitly in the use cases Dealt with the scheduling subsystem explicitly in the use cases Dealt with some use cases from a user perspective instead of a signal perspective to better specify the overall processes involved Moved the system start-up and system shutdown use cases to the end of the document so that the reader will be better able to understand these processes Dealt with all alternatives and exceptions implied in the use cases Specified the behaviour of components (e.g. door controllers, lifting system motor) on a lower level Removed use case exception dealing with the safety system, as it is outside the elevator system
2. General Description 3 2.1 Product Perspective 3 2.2 Product Features 3 2.3 User Characteristics 3 2.4 General Constraints 4 2.5 Assumptions and Dependencies 4
3. Specific Requirements 5 3.1 Functional Requirements 5 3.1.1 Overall System 5 3.1.1.1 System Sequence Diagrams 5 3.1.1.2 System State Diagram 7 3.1.2 Conceptual Diagram 8 3.1.3 State Diagrams 9 3.1.4 Collaboration Diagram 11 3.1.5 Sequence Diagrams 12 3.2 External Interface Requirements 17 3.2.1 User Interfaces 17 3.2.2 Hardware Interface-Application Program Interface 17 3.2.3 Communications Interface 17
4. Reference Tables and Descriptions 18 4.1 Functional Requirements Table and Traceability Document 18 4.2 Non-functional Requirements Table and Traceability Document 19 4.3 Use Case Descriptions and Use Case Diagrams 20
4.4 Index 30
i Table of Figures
Context Diagram of Elevator System 2 System Sequence Diagram 5 System State Diagram 7 Conceptual Diagram 8 State Diagrams 9 Collaboration Diagram 11 Sequence Diagrams 12 Use Case Diagrams 29
ii 1 Introduction
1.1 Purpose The purpose of this document is to describe the requirements for an elevator control system in a low-rise building. This document shall serve as a contract between the elevator control system manufacturer and the users of the elevator system passengers, operators and maintenance people, and so forth detailing how the elevator control system will behave and how it will operate with other components of the elevator system as a whole.
1.2 Scope This document covers the details of the elevator control system, including the physical components of the system, and the behavioral, functional, and non-functional requirements. This document describes only the external systems and/or environments in which the elevator control system shall work, with enough detail to complete an implementation of the system.
1.3 Acronyms, Abbreviations, Definitions, Notational Conventions Definitions This document uses a few phrases in precise ways to describe the elevator systems behaviour: Floor Request: This is a signal for an elevator to move to a particular floor, either because of an up/down button or a floor button press. User: A user is any passenger wishing to travel from one floor to another Operator: An operator is someone who is authorized to turn the elevator system on and off, and has access to the keys needed to use the key controls in the elevator cars. Repair crew: The repair crew is a group of people who are authorized to repair any part of the elevator system if it should malfunction. It is assumed that once they have finished repairing the system, they will restart the system or return the fixed car to auto mode, as appropriate.
A car in the elevator system may be in one of a small number of states, which will determine that cars behaviour. These states are defined below: Active: When the elevator system is turned on, all cars are put in this state. A car in this state will accept floor requests and act on them as the requests reach the front of the cars destination list. A car is assumed to be in an active state unless otherwise specified. Hold: A car in this state will not accept floor requests sent by up/down button presses. As well, when stopped at a floor, the doors will not open and close as normal. Instead, they will stay open until a floor button is pressed in that car. Stuck: A car in this state will not accept floor requests, and will remain in place until reset by a repair person. This state is used for cars in an exceptional case. Emergency: A car in this state will stop accepting floor requests, travel to the initial floor, open its doors, and remain in place with its doors open until reset by an elevator operator
Notational Conventions The diagrams in this document use standard UML notation (that is, graphs of states and transitions, represented by rounded boxes and arrow-tipped lines, respectively) for most 2 purposes. In the system state diagram, concurrency and branching are represented using the RHAPSODY notation proposed by Harel and Kugler [5]. Context Diagram of Elevator Control System
1.4 References 1. Howstuffworks.com. How Elevators Work. http://science.howstuffworks.com/elevator.htm 2. Karaidjian, Alex. SRS 1, submitted for CS 846, Fall 2005. 3. Kolla, Maheedhar. SRS 1, submitted for CS 846, Fall 2005. 4. Zalagenas, Rick, (Director of Maintenance and Utilities). Conversation on Oct. 18, 2005. 5. Harel, David and Kugler, Hillel. The RHAPSODY Semantics of Statecharts.
1.5 Overview The rest of the document is laid out in the following manner. Section 2 gives a general description of the system, and identifies the assumptions and constraints that are placed upon the system. Section 3 describes the requirements of the system, and explores the relationships between these requirements using conceptual, collaboration, state, and sequence diagrams. Section 4 presents all the functional and non-functional requirements and describes the use cases for the elevator controller system. The final subsection contains an index for the document.
Direction buttons Floor buttons
Elevator Door Controller Lifting System
Floor Indicators Legend
Instruction sent
Information sent Car status key control
Emergency Stop button
Hold Doors button Elevator Control System Position Sensor Direction Indicators User Operator Elevator Car System on/off Elevator Car Doors Doors at each floor
3 2 General Description
2.1 Product Perspective The elevator system exists to help users get from one floor to another in the building. It is particularly useful for those with physical handicaps who may find it difficult or impossible to use the stairs. It is also quite useful for moving large or heavy objects between floors. The elevator control system is an integral part of the elevator system which, as its name suggests, controls the various components of the elevator system to ensure the system functions properly.
2.2 Product Functions The elevator system is composed of a number of components, listed below: The elevator car is moved from floor to floor by means of a motorized lifting system The scheduling system determines which floor to send the car to, based primarily on user requests and, possibly, additional factors such as time of day and usage patterns The position sensor relays the position of each car to the elevator control system [4] The elevator doors open and close to let users in and out of the elevator car. More precisely, the elevator car doors allow access to an elevator car and the floor doors allow access to the elevator shaft from that floor. Both sets of doors are controlled by an elevator door controller, and can usually be thought of as a single unit. Buttons on the wall and inside the elevator cars allow the users to select whether they would like to go up or down, which floor they would like to go to, hold the elevator doors, stop the elevator car, or to sound an alarm bell in the car The floor and direction indicators show where a particular car is and which direction its going in, thus giving the user some feedback The car status key control allows the elevator to be set to Hold, Service or Auto status. These settings are described in detail in section 1.3 The system startup/shutdown controls allow an elevator operator to start up or shut down the entire elevator system [2] The elevator system also contains a safety subsystem that ensures that, in the event of a failure of some kind, the system wont put the users in any danger. The main function of the elevator control system, as implied by the previous section, is to coordinate the various components of the elevator system so that users can get from one floor to another easily and efficiently. The elevator control system manages user input (such as buttons being pressed), co-ordinates system behaviour (such as sending elevator cars from one floor to another) and sends output messages (such as the floor that an elevator car is on) to provide the user with feedback. The control system should be robust enough to be able to handle multiple users getting on and off at multiple floors with conflicting goals (e.g. if, when two users get on an elevator, one wants to go up and the other wants to go down). The control system should also be able to handle emergencies in a manner that does not endanger the users in any way.
2.3 User Characteristics It is assumed that the users (either on their own or through the use of a nearby stick) will be able to press all the buttons in the elevator car and on the wall near the elevator shaft. As well, it is 4 assumed that the users will be able to read the numbers beside the buttons and thus decide which floor they would like to go to. Finally, it is assumed that the users will have the presence of mind in an emergency to use the emergency stop buttons and phone located inside the elevator car to notify the proper people (elevator repair crew, security, fire department, etc.) in the event of an emergency.
2.4 General Constraints The Province of Ontario limits the amount of weight (1587 kg or 3500 lbs) that can be in an elevator car at any one time. This can be used as the basis for an upper bound on the amount of weight that the car needs to support, and also acts as a constraint on the number of users in a car. It should be noted, of course, that this upper bound should not be the same as the legal limit it should be some percentage above that limit, as per engineering guidelines.
Low-rise buildings, as their name implies, have relatively few floors, so this limits the number of floors that need to be considered, and thus the time it will take users to get to their destination. That is, the elevator will never need to travel more than a few floors to get a user to the floor they want, thus providing an upper bound on the cars travel time (except in emergency or other rare cases).
2.5 Assumptions and Dependencies It is assumed that the users will follow the Ontario laws mentioned above, and thus the elevator may be designed with those physical boundaries in mind.
It is also assumed that people will not cause the buttons to stick using some adhesive (e.g. gum) or mechanical device. Thus, if a button is pressed, it will be released quickly.
It is assumed that only service people will be able to use the key controls. These controls allow access to functionality that users should not have any need for.
It is assumed, for normal usage, that the building in which the elevator system is installed will have power with which to run the elevators. However, it should also be noted that in the event of a power failure, the elevators should not drop or become otherwise unsafe; this crucial requirement of the safety system is usually satisfied via mechanical means such as electromagnetic brakes [1]. 3 Specific Requirements
3.1 Functional Requirements
3.1.1 Overall System The functional requirements for the system are that the elevator control system should coordinate and communicate between the various components of the elevator system to ensure that users can get from one floor to another quickly and safely.
5 3.1.1.1 System Sequence Diagrams
Up/Down Button Pressed
User Up/Down Button
Elevator Control System Up/Down button pressed Up/Down signal sent Floor Indicators
Button illuminated Direction Indicators Direction indicator updated Floor indicator updated Button illumination stopped
While the car
has not yet arrived at users floor
Hold Doors Button Pressed User Hold Doors Button Elevator Control System Hold Doors button pressed
Button illuminated While the Hold Doors button is pressed
Hold Doors pressed signal sent Button illumination stopped
6
* The stop signal may also be triggered by the car status key control being turned to service or by an externally-generated fire alarm signal Floor Button Pressed
User Floor Button Elevator Control System Floor button pressed Floor signal sent Floor Indicators
Button illuminated Direction Indicators Direction indicator updated Floor indicator updated Button illumination stopped
While the car has not yet arrived at pressed floor
Emergency Signal
User Stop Button Elevator Control System Stop button pressed* Stop signal sent Floor Indicators
Button illuminated Direction Indicators Direction indicator updated Floor indicator updated Button illumination stopped
While the car has not yet ar rived at initial floor
7 3.1.1.2 System State Diagram
8 3.1.2 Conceptual Diagram
9 3.1.3 State Diagrams
System Status Controller
Turn system on
Turn system off
Signal Processor* Update Status Signal
Door Controller Open Doors Signal
Close Doors Signals
[statusIsService] Status Processor Emergency Processor.Emergency Signal()
System is off System is o n
Start Accepting Signals Not accepting signals Accepting signals Stop Accepting Signals Move Car to Floor Signal Emergency Signal Hold Doors Signal Car Position Signal Doors are closed Doors are open Waiting for status change Processing status change Status Change Signal
[ statusNotService] Car status changed
10 * In the transitions from the Signal Processor to other components (Door Controller, Floor Request Processor, etc.) the names of the components have been omitted from the diagram for the sake of conciseness. Also, one may easily infer the component for each signal from the signal name (e.g. the Hold Doors signal should be sent to the Door Controller). Lifting System Motor Controller
Emergency Processor Door Controller.Close doors() Emergency Motor Controller.Move car(Direction) signal Dir. Indicator.Update Direction (Dir.)
Move Car (Direction) Car is stopped Car is in motion Stop Car Car has not reached its destination Processing car arrival Floor Indicator.Update Position (Floor)
Processing emergency signal Waiting for car arrival message Car is stopped in emergency status Motor Controller.Stop car() Door Controller.Open doors() Status Processor.Update status(Status) Waiting for emergency signal 11
Floor Request Processor
Processing floor request signal Door Controller.Close doors() Motor Controller.Move car(Direction) Dir. Indicator.Update Direction (Dir.) Waiting for car arrival message Car is stopped at the requested floor Motor Controller.Stop car() Door Controller.Open doors() Floor request signal Waiting for floor request signal Floor request signal 12
3.1.5 Sequence Diagrams
13
Use Case 1: Car Dispatch
Scheduling System Floor Indicators Door Controller
Lifting System Motor Controller
Signal Processor
Floor Request Processor
1 . Process Signal (Signal) . Open Doors 11
2 . Move Car to Floor Destination) ( 5 . Move Car (Direction) 10 . Stop Car
3 . Check For Available Car 8 . Update Position ( Floor) Direction Indicator 6 . Update Direction
( Direction) Position Processor . Car At Floor 7 (Floor) . Car 9 Arrival . Car is Available 4
14
Use Case 4: Hold Doors
Use Case 2: Car Movement
Floor Indicators Door Controller
Lifting System Motor Controller
Signal Processor
Floor Request Processor
1 . Process Signal (Signal)
10 . Open Doors
2 . Move Car to Floor ( Destination)
4 . Move Car (Direction) 9 . Stop Car
7 . Update Position ( Floor) Direction Indicator . Update Direction (Direction) 5 Position Processor . Car At Floor 6 (Floor) 8 . Car Arrival 3 . Close Doors
Use Case 3: Update Floor Indicators
Floor Indicators Signal Processor
1 . Process Signal (Signal )
3 . Update Position (Floor) Position Processor . Car At Floor (Floor) 2 15
1. Process Signal (Signal)
Use Case 6: Change Status
Use Case 5: Emergency Stop
. Move Car to Initial Floor 2
Floor Indicators Door Controller
Lifting System Motor Controller
Signal Processor
Emergency Processor
1 . Process Signal (Signal) 3 . Close Doors . Open Doors 10 . Move Car (Direction) 4 9 . Stop Car . Update Position 7 ( Floor) Direction Indicator 5 . Update Direction ( Direction) Position Processor . Car At Floor 6
(Floor) . Car Arrival 8 Car Status Controller 11 . Update Status (Status) Door Controller
Signal Processor
2 . Open Doors 3 . Close Doors 16
Signal Processor
1 . Process Signal (Signal) Car Status Controller 2 . Update Status (Status) Use Case 7: System Startup
Lifting System Motor Controller
Signal Processor
Floor Request Processor
3 . Process Signal (Signal) . Start Accepting Floor 10 Request Signals 5 . Move Car to Initial Floor 6 . Move Car (Direction) . Stop Car 9
Position Processor . Car At Floor 7 (Floor) . Car 8 Arrival Car Status Controller . Update Status (Status) 4 System Status Controller
. Turn System On 1 . Start up 2 17
3.2 External Interface Requirements This section sets out in detail the specifications for each interface component of the system.
3.2.1 User Interfaces The user interfaces can be divided into several categories: buttons, key controls, system controls and indicators. Buttons (such as the floor and direction buttons) may be pressed at any time. Key controls may only be activated by the proper key. Finally, system controls are only accessible from an elevator control room, and thus would only be used by elevator operators. Buttons In general, buttons will light up when pressed, thus giving the user positive feedback. Also, all of the symbols and numbers are raised or lowered from the buttons surfaces, which will help the visually impaired figure out what the buttons do. In most cases, the buttons will press down and then return to their original state without sticking. The alarm button, however, will stay pressed down until it is pressed again, at which point it will return to its original state. The alarm button causes the cars alarm to sound while it is pressed down, so this behaviour is logical [4]. Key Controls Key controls may only be used by repair people and elevator operators. Key controls typically switch between a limited number of states (e.g. fan on/off, car status of auto or hold). System Controls Use Case 8: System Shutdown
Lifting System Motor Controller
Signal Processor
Floor Request Processor
3 . Process Signal (Signal) 4 . Stop Accepting Floor Request Signals 5 . Move Car to Initial Floor
. Move Car (Direction) 6 . Stop Car 11
Position Processor . Car At Floor 8 (Floor) 10 . Car Arrival System Status Controller
. Turn System Off 1
. Shut down 2 Floor Indicators 9 . Update Position ( Floor) Direction Indicator 7 . Update Direction
( Direction) 18 System controls are used to turn the elevator system on or off. They would typically be used quite infrequently perhaps the system would be turned on early in the morning and turned off late at night, or turned off at the start of holidays and turned on once the next term begins. Indicators The floor and direction indicators provide feedback to the user about where the cars are and which direction they are going. There are floor and direction indicators in the elevator cars, and there should be floor indicators above the elevator doors on each floor of the building.
3.2.2 Hardware Interface-Application Program Interface The systems hardware interface shall consist of the elements needed for the various user interface components described above to communicate with the elevator control system. Thus, the hardware interface system needs to accept signals from elevator buttons, key controls and system controls, and convey these signals to the elevator control system. With respect to this document, this translation happens transparently, as the process is at a lower level of detail than is appropriate for the documents focus.
3.2.3 Communications Interface The communications interface in the elevator system consists of the rotary telephone which is directly connected to a repair persons phone, which is staffed 24 hours a day. Thus, in the event of an emergency, a user can pick up the phone and will be connected immediately to a repair person, who will be able to assist the user or direct their call to the proper people. Although the phone has a rotary dial, this is merely an indication of the type of phone rather than an implication of any potential connection to an arbitrary phone number. 4 Reference Tables and Description
4.1 Functional Requirements Table and Traceability Document Note: The Sources column has been omitted from this table, since the document only has one source. Similarly, the Where Specified column has been omitted, since this is a partial SRS and the requirements are only specified in this column.
Req# Name Description Details / Constraints Category Related
Reqts Related UCs F1 System Startup Upon startup, the system shall begin operation in a reasonable initial state May only be initiated by an operator E F14, N13 UC7 F2 System Shutdown The system shall be able to be shut down in a safe and efficient manner at any point in time May only be initiated by an operator E F4, F5, F14, N5N13 UC8 19 F3 Floor Request When the up/down button is pressed, the closest available car will be sent to that floor If all cars are busy, then the floor will be added to the destination list of the car that will get to that floor soonest E F4, F5, F6, F9, N5N12 UC1 F4 Car in Transit When a car is in motion, it will update the floor indicators in that car and above elevator entrance E UC3 F5 Car Direction Change When a car changes direction, its direction indicator will be updated E UC1, UC2 UC5, UC8 F6 Car Arrival When a car arrives at the floor at the front of its destination list, it will stop at that floor E F7, F8, N7, N10 UC1, UC2 UC5, UC8 F7 Open Doors (auto mode) When a car arrives at a destination floor, its doors will open and the doors at that floor will also open. They will remain open for a short period of time, and then close automatically E F8, N5, N6, N8, N12 UC1, UC2 UC5 F8 Open Doors (hold mode) When a car arrives at a destination floor, its doors will open and the doors at that floor will also open. They will remain open until the car leaves for a different floor E F7, N5, N6, N8 UC1, UC2 UC5 F9 Close Doors Before a car leaves a floor, its doors will close and the doors at that floor will also close
E F3, F10, N8, N11 UC1, UC2 UC5 F10 Car Movement When a floor button is pressed, the car will be sent to that floor The car may stop at other floors first E F4, F5, F6, F7, F8, N3- N12 UC2 F11 Hold Doors The doors will stay open while the Hold doors button is pressed. E N5, N6, N8 UC4 20 F12 Emergency Stop When the Stop button is pressed or the car is set to service status, the elevator car will immediately go to the first floor, both its doors and the doors at the first floor will open and remain open, and the car will ignore floor requests E F14, N5N13 UC5 F13 Fire Alarm When a fire alarm signal is received, both elevator cars will immediately go to the first floor, both their doors and the doors at the first floor will open and remain open, and the cars will ignore floor requests E F6, N5N13 UC5 F14 Change Status When the car status key control is turned, the cars status will change to Auto, Hold or Service. See section 2.1 for a definition of Auto, Hold and Service status E F7, F8, F12 UC1, UC2 UC5, UC6
4.2 Non-functional Requirements Table and Traceability Document
Req# Name Description Details/Constraints Category Related Reqts Related UCs N1 Extra elevators (Scalability) Adding extra elevators to the system should happen smoothly In practice, this is limited by the layout of the building W N2 System Failure (Safety) If the system fails, the users should not be put in any danger Relies on the functionality of the safety system M F12, N13 UC1, UC2 UC4, UC5 N3 Universal Accessibility (Usability) The system should be accessible to people with disabilities M F3, F10, F11, F12 UC1, UC2 UC4, UC5 N4 Button Illumination (Usability) The buttons in the elevator car and on the wall panel should light up when pressed W F3, F10, F11, F12 UC1, UC2 UC4, UC5
N5 Elevator Car Door Open Condition (Safety) The car doors shall only open when the car is stopped at a floor [2] M F7, F8, F11, N6 UC1, UC2 UC4, UC5 UC8 21 N6 Floor Door Open Condition (Safety) The floor doors shall only open when a car is stopped at that floor M F7, F8, F11, N5 UC1, UC2 UC4, UC5 UC8 N7 System Response Speed (Reliability) The system shall process input and produce output in an efficient manner [2] W F3-F8, F11-F14 UC1-UC6 N8 Door Open/Close Speed (Usability) The doors shall open and close gradually to allow people to easily enter and exit the car Currently, the doors take about 2 seconds to open or close M F7-F9, F11, N5, N6 UC1, UC2 UC4, UC5 UC8 N9 Elevator Car Start Speed (Usability) The car shall gradually accelerate from rest to its standard speed in order to provide a smooth ride for users W F3, F6, F10, F12, F13 UC1, UC2 UC5, UC8 N10 Elevator Car Stop Speed (Usability) The car shall gradually slow down from its standard speed to rest in order to provide a smooth ride for users W F3, F6, F10, F12, F13 UC1, UC2 UC5, UC8 N11 Door Close Condition (Safety) The car doors will only close if there is nothing in the doorway Ensures the user will not get trapped by the door M F9 UC1, UC2 N12 Open Door Time Period (Usability) When a car is in auto mode, the doors should wait 3 seconds between opening and closing M F7 UC1, UC2 N13 Initial Floor If an elevator car needs to go to an initial floor, it shall go to the 1 st floor If the 1 st floor is unsafe, then the elevator will go to the 3 rd floor M F1, F2, F12, F13 UC5, UC7 UC8 4.3 Use Case Descriptions and Use Case Diagram
Use Case Descriptions Because this document describes the elevator control system, rather than the elevator system as a whole, a precise distinction is made between actors and users. A user is either a person who is using the elevator system to get from one floor to another or a repair person. An actor, on the other hand, is usually a part of the elevator system (such as the down button) that sends a message to the elevator control system. The elevator systems user interface lies between the user and the elevator control system, and prevents the users from also being actors. In the following use cases, the users are listed in brackets to indicate which people have access to which user interface components.
Finally, the use cases that follow will refer to a floor being at the front of the list, which means that the floor will be visited next by the car. The list might be ordered using first in, first out, or 22 it might take other factors such as proximity of the car to the floor or time of day into account. This is regarded as an implementation decision, and is thus not dealt with in this document.
Name: Car Dispatch ID: 1 Event: A user presses the up/down button Goal: Send a car to a floor in response to an up/down button press System: Elevator Control System Actors: Up/down button (pressed by user) Overview: A car is sent to the floor where the up/down button was pressed Pre-conditions: The elevator system is in a state where it will accept requests Post-conditions: A car is at that floor, its doors are open and the floor doors at that floor are open References: F3, F5-F9, F14, N2-N12 Related Use Cases: UC 3 Typical process description I nitiator Action System Response 1. User presses the up/down buttons on a wall
while not at destination floor do 5. Floor sensor signals the cars arrival at a non-destination floor
end while 7. Floor sensor signals the cars arrival at the destination floor
2. Determine which car should be sent to the floor 3. Add the floor to the cars destination list 4. Tell the lifting system motor in the appropriate elevator shaft to move the car in the proper direction 5. Send the current direction to the direction indicator inside the car
6. Update the floor indicators (see UC 3)
8. Update the floor indicators (see UC 3)
9. Tell the lifting system motor in the appropriate elevator shaft to stop 10 Tell the door controller to open the car doors and the doors at that floor, wait three seconds, and then close them again Alternative 1: No car is available 23 2. Determine which car will be able to go to that floor soonest 3. Add the floor to that cars destination list 4. When the floor gets to the front of the list, tell the lifting system motor in the appropriate elevator shaft to move the car up/down, as required to move the car to the floor (steps 5-10 as above) Alternative 2: Car has Hold status 10. Tell the door controller to open the car doors and the doors at that floor Exception 1: Car fails to level 9. Car fails to stop at the same level as the floor, possibly because of excess weight
10. Set the cars status to stuck until the elevator car is fixed by the repair crew Exception 2: Doors fail to open or close 10. Elevator car doors or doors at the floor fail to open or close
11. Set the cars status to stuck until the car is fixed by the repair crew
Name: Car Movement ID: 2 Event: The user presses a floor button Goal: Send a car to a floor in response to that floor button being pressed within that car System: Elevator Control System Actors: a floor button (pressed by user) Overview: A car is sent to a destination as a result of a floor button press Pre-conditions: The elevator system is in a state where it will accept requests Post-conditions: The car is at the floor that was pressed, its doors are open and the doors at that floor are open References: F5-F10, F14, N2-N12 Related Use Cases: UC3 Typical Process Description I nitiator Action System Response 1. User presses a floor button inside an elevator car
2. Tell the door controller to close the car doors and the doors at the floor the car is currently on
24
while not at destination floor do 5. Floor sensor signals the cars arrival at a non-destination floor
end while 7. Floor sensor signals the cars arrival at the destination floor
3. Tell the lifting system motor in the appropriate elevator shaft to move the car in the proper direction 4. Send the current direction to the direction indicator inside the elevator
6. Update the floor indicators (see UC 3)
8. Update the floor indicators (see UC 3) 9. Tell the lifting system motor in the appropriate elevator shaft to stop 10. Tell the door controller to open the car doors and the doors at that floor, wait three seconds, and then close them again Alternative 1: Cars destination list is non-empty 3. Add the floor to the cars destination list 4. When the floor gets to the front of the list, tell the lifting system motor in the appropriate elevator shaft to move the car up/down, as required to move the car to the floor (steps 4-10 as above) Alternative 2: Multiple buttons pressed 1. The user presses several floor buttons
2. Add the floors pressed to the cars destination list (steps 2-10 as above for each button pressed) Alternative 3: Button(s) pressed while in motion 1. The user presses floor button(s) while the car is in transit
2. Add the floors pressed to the cars destination list 3. Handle all floor requests preceding those just added to the cars destination list (see UC1, UC2) (steps 2-10 as above for each button pressed) Alternative 4: Car has Hold status 10. Tell the door controller to open the car doors and the doors at that floor Exception 1: Doors fail to close 25 2. Elevator car doors or doors at the floor fail to close
3. Set the cars status to stuck until the doors are fixed by the repair crew Exception 2: Car fails to level 7. Car fails to stop at the same level as the floor, possibly because of excess weight
8. Set the cars status to stuck until the elevator car is fixed by the repair crew Exception 3: Doors fail to open 8. Elevator car doors or doors at the floor fail to open
9. Set the cars status to stuck until the doors are fixed by the repair crew
Name: Update Floor Indicators ID: 3 Event: A cars position sensor signals that the car has arrived at a floor Goal: Keep the floor indicators up-to-date while a car is moving System: Elevator Control System Actors: Cars position sensor, cars floor indicator and external floor indicator(s) Overview: The system updates the floor indicators to indicate which floor a car is on Pre-conditions: The elevator car is moving and in an active or emergency state Post-conditions: The floor indicators show which floor the car is currently on References: F4 Related Use Cases: UC1, UC2, UC5 Typical Process Description I nitiator Action System Response 1. Floor sensor signals the cars arrival at a floor
2. Send the current floor number to the floor indicator(s) outside the elevator 3. Send the current floor number to the floor indicator inside the elevator car
Name: Hold Doors ID: 4 26 Event: The Hold doors button is pressed Goal: The doors are held open while the Hold doors button is pressed System: Elevator Control System Actors: Hold doors button in a car (pressed by user) Pre-conditions: The elevator car is at rest Post-conditions: The elevator car is at rest and its doors are closed Overview: The elevator control system keeps the doors open while the button is pressed References: F11, N2-N8 Related Use Cases: None Typical Process Description I nitiator Action System Response 1. User presses the Hold doors button inside an elevator car
2. Tell the elevator door controller to keep the car doors and floor doors open 3. Store any floor requests (from up/down buttons or
4. Hold doors button released
floor buttons pressed inside the elevator) in the cars destination list, but keep the car in place
5. Tell the elevator door controller to close the car doors and floor doors Exception 1: Doors fail to open 2. Elevator car doors or doors at the floor fail to open
3. Set the cars status to stuck until the doors are fixed by the repair crew Exception 2: Doors fail to close 5. Elevator car doors or doors at the floor fail to open
6. Set the cars status to stuck until the doors are fixed by the repair crew
Name: Emergency Stop ID: 5 27 Event: The Emergency stop button is pressed, the cars status is changed to service, or an external fire alarm signal is received Goal: To return the car to the initial floor and allow passengers to leave the car System: Elevator Control System Actors: Emergency stop button (pressed by user), car status key control (turned by operator), or a fire alarm signal (sent externally) Overview: The elevator control system sends the car to the initial floor and Pre-conditions: The system is in an active state Post-conditions: The car is on the initial floor with its doors open, and in an emergency state References: F5-F9, F12-F14, N2-N10 Related Use Cases: UC3 Note: If a fire alarm signal is received, then this use case applies to all elevator cars in the elevator system, instead of a single car Typical Process Description I nitiator Action System Response 1. User presses the emergency stop button inside an elevator car
while not at destination floor do 5. Floor sensor signals the cars arrival at a non-destination floor
end while
2. Tell the door controller to close the car doors and the doors at the floor the car is currently on 3. Tell the lifting system motor in the appropriate elevator shaft to move the car down 4. Send the current direction to the direction indicator inside the elevator
6. Update the floor indicators (see UC 3)
7. Floor sensor signals the cars arrival at the destination floor
8. Update the floor indicators (see UC 3) 9. Tell the lifting system motor in the appropriate elevator shaft to stop 10. Tell the door controller to open the car doors and the doors at that floor 11. Set the cars status to emergency
Name: Change Status ID: 6 28 Event: Car status key control is switched to auto or hold Goal: Change the cars status to auto or hold, which changes the car door behaviour System: Elevator Control System Actors: Car status key control in a car (turned by operator) Overview: Description of the car status key control switch process Pre-conditions: None Post-conditions: The cars status is set to active or hold References: F14, N7 Related Use Cases: UC1, UC2, UC5 Typical Process Description I nitiator Action System Response 1. Car status key control turned to auto (by repair person)
2. Set the cars status to active, the cars door behaves as specified in F7 Alternative 1: Status set to hold 1. Car status key control turned to hold (by operator)
2. Set the cars status to hold, the cars door behaves as specified in F8 Alternative 2: Status set to service 1. Car status key control turned to service (by operator)
2. Set the cars status to service, the car behaves as specified in UC 5
Name: System Startup ID: 7 Event: System is started up by an operator Goal: The elevator system is in a state where it can accept floor requests System: Elevator Control System Actors: Elevator operator Overview: Describes the process of starting up the elevator system Pre-conditions: System is off Post-conditions: Both cars are at the initial floor in an active state References: F1, N13 Related Use Cases: UC8 Typical Process Description I nitiator Action System Response 29 1. Operator turns system on
while not at initial floor do 4. Floor sensor signals the cars arrival at a non-initial floor end while 5. Floor sensor signals the cars arrival at the initial floor
2. Set the status of both cars to active 3. Tell the lifting system motors in both elevator shafts to move the cars up/down, as appropriate
6. Tell the lifting system motor in both elevator shafts to stop 7. Begin accepting floor requests
Name: System Shutdown ID: 8 Event: Elevator system is shut down by an operator Goal: The system is shut down quickly and safely, allowing users to exit the system System: Elevator Control System Actors: Elevator operator Overview: Description of process of elevator system being shut down Pre-conditions: Elevator system is active Post-conditions: Both cars are at the first floor, both car doors are open, the doors at the first floor are open, all other floor doors are shut, the system will not process any floor requests or signals from within the elevator cars References: F2, F5, F6, N5, N6, N8- N10, N13 Related Use Cases: UC7 Typical Process Description I nitiator Action System Response 30 1. Operator turns system off
while not at initial floor do 5. Floor sensor signals the cars arrival at a non-initial floor
end while 7. Floor sensor signals the cars arrival at the initial floor
2. Stop processing floor requests and signals from within the elevator cars 3. Tell the lifting system motor in both elevator shafts to move the cars down 4. Send the current direction to the direction indicator inside the elevator
6. Update the floor indicators (see UC 3)
8. Update the floor indicators (see UC 3) 9. Tell the lifting system motor in both elevator shafts to stop 10. Tell the door controller to open both sets of car doors and both sets of the doors at that floor
31 Use Case Diagrams
User Actor Control System
The first available elevator car is sent to users floor
The users car is sent to the given floor
Holds elevator doors open in the users car
The users car is sent to the initial floor, and the doors are opened
Operator Actor Control System
The cars status is changed
The system is initialized
The system is shut down in a safe manner
Up/Do wn button
Floor button
Hold Doors button
Stop button
Car status key control
System is turned on System is turned off 32
Actor Control System
Fire alarm signal (external)
Elevator car position sensor
4.4 Index Active, 3 alarm bell, 5 assumptions, 4 buttons, 5, 6, 7, 12, 16, 18, 21, 22 car, i, ii, 3, 5, 6, 7, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 collaboration, 4 conceptual, i, 4 direction indicators, 14, 18, 20, 23, 26 doors, 3, 5, 7, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 26 elevator control system, ii, 5, 7, 12, 18, 22, 23 elevator door controller, 5, 22 emergency, i, 6, 12, 22, 23 Emergency, 3, 10, 15, 23 floor button, ii, 3, 7, 15, 20, 21 floor doors, 5, 18, 22, 26 Floor Request, ii, 14 functional, i, ii, 4, 7, 16
Hold, 3, 5, 15, 19, 21, 22 hold door, 7 indicators, i, 5, 12, 14, 18, 20, 22, 23, 26 initial floor, 3, 17, 23, 25, 26 key control, 5, 15, 23, 24, 25 key controls, ii, 6, 12 non- functional, i, ii, 4 operators, ii, 12 position sensor, 5, 22 repair crew, ii, 6, 19, 21, 23 safety, i, 5, 6, 16 scheduling system, 5 sequence, i, 3, 4, 7 shutdown, i, 5 startup, 5 state, i, 3, 4, 7, 12, 14, 18, 20, 22, 23, 25 Stuck, 3 up/down, ii, 3, 14, 18, 19, 21, 22, 25 use case, i, ii, 23 User, i, ii, 6, 12, 18, 20, 22, 23, 27 Both cars are sent to the initial floor, and their doors are opened The position indicators are updated