Operating Instructions - Maxton Hydraulic Elevator Control ...
COMET Elevator Control System Case Study - Prima parte - Elevator Control System Case Study.
-
Upload
erminia-sorrentino -
Category
Documents
-
view
234 -
download
7
Transcript of COMET Elevator Control System Case Study - Prima parte - Elevator Control System Case Study.
COMET
Elevator Control System Case Study
- Prima parte -
Elevator Control System Case Study
- Problem description - Use Case Model* Select Destination Use Case
* Request Elevator Use Case
* Abstract Use Cases
* Stop Elevator at Floor Abstract Use Case
* Dispatch Elevator Abstract Use Case
* Select Destination Concrete Use Case
* Request Elevator Concrete Use Case
Indice
Indice
- Static Model
- Object Structuring
- Dynamic Model* Collaboration Diag. per Select Destination Use Case
* Collaboration Diag. per Dispatch Elevator Abstract Use Case- Statechart Model- Fusione dei Collaboration Diagrams- Subsystem Structuring* Refined Static Model
Elevator Control System Case Study
L’ Elevator Control System in oggetto deve controllare uno o più ascensori.
In particolare il sistema deve:
•schedulare gli ascensori per rispondere a richieste degli utenti ai vari piani
•controllare il movimento degli ascensori tra i piani
Problem Description
Per ogni ascensore:
• elevator buttons
• elevator lamps
• elevator motor
• elevator door
Indice
Problem Description
Per ogni piano :
• up and down floor buttons
• floor lamps
• direction lamps: direzione di eventuale ascensore in arrivo
Indice
Problem Description
Inoltre:
• un solo floor button, una sola floor lamp e una sola direction lamp per ascensore al primo e ultimo piano
• in ogni albero motore ad ogni piano un arrival sensor
Indice
Problem Description
Caratteristiche hardware dei dispositivi di I/O:
• elevator buttons, floor buttons, arrival sensors: asincroni
• altri dispositivi di I/O: passivi
• elevator lamps, floor lamps: accese dall’hardware, ma spente dal software
• direction lamps accese e spente dal software.
Indice
Use Case Model
Attività della fase di Requirements Modeling
Attori: Elevator User e Arrival Sensor
Dalla descrizione informale del problema si identificano:
Select Destination: l’utente nell’ascensore preme un up (o down) elevator button per selezionare un piano di destinazione
Request Elevator: l’utente a un piano preme un up (o down) floor button per richiedere un ascensore
Indice
Request Elevator
Select Destinati
on
Use cases e attori di Elevator Control System
Elevator User
Arrival
Sensor
Indice
Message sequence description per Select Destination
Message sequence description per Request Elevator
Use Case Model: Select Destination Use Case
Attori: Elevator User, Arrival Sensor
Precondizione: L’utente è nell’ascensore
Descrizione:
• L’utente preme un bottone per salire. Il sensore del bottone manda al sistema una richiesta, identificando il piano di destinazione che l’utente vuole visitare.
• La nuova richiesta è aggiunta alla lista dei piani da visitare. Se l’ascensore è fermo, il sistema determina in quale direzione muovere per servire la successiva richiesta. Il sistema comanda la chiusura della porta, quindi comanda al motore di muovere l’ascensore su o giù.
Indice
Torna al diagramma
Use Case Model: Select Destination Use Case
1 Quando l’ascensore si muove, l’arrival sensor si accorge che ci si sta avvicinando a un piano e lo notifica al sistema. Questo controlla se ci si doveva fermare a quel piano: se sì, comanda al motore di fermare l’ascensore. Fermato l’ascensore, il sistema comanda l’apertura della porta.
2 Se ci sono altre richieste in sospeso, l’ascensore visita quei piani che si trovano sulla strada per il piano richiesto dall’utente. Infine l’ascensore arriva al piano selezionato dall’utente.
Indice
Use Case Model: Select Destination Use Case
Alternative:
• L’utente preme un bottone per scendere: la risposta del sistema è analoga alla sequenza principale.
• Se l’ascensore è a un piano, e non c’è nessun altro piano verso cui muovere, resta fermo a tale piano con la porta aperta.
Postcondizione: L’ascensore è arrivato al piano di destinazione selezionato dall’utente.
Indice
Use Case Model: Request Elevator Use Case
Attori: Elevator User, Arrival Sensor
Precondizione: L’utente è a un piano,vuole un ascensore
Descrizione:
1 L’utente preme un bottone per salire. Il sensore del bottone manda la richiesta al sistema, identificando il numero del piano.
2 Il sistema seleziona un ascensore per visitare il piano. La nuova richiesta è aggiunta alla lista dei piani da visitare. Se l’ascensore è fermo, il sistema determina in quale direzione muovere per servire la successiva richiesta. Il sistema comanda la chiusura della porta, quindi comanda al motore di muovere l’ascensore su o giù.
Indice
Torna al diagramma
1 Quando l’ascensore si muove, l’arrival sensor si accorge che ci si sta avvicinando a un piano e lo notifica al sistema. Questo controlla se ci si doveva fermare a quel piano: se sì, comanda al motore di fermare l’ascensore. Fermato l’ascensore, il sistema comanda l’apertura della porta.
2 Se ci sono altre richieste in sospeso, l’ascensore visita quei piani che si trovano sulla strtada per il piano richiesto dall’utente. Infine l’ascensore arriva al piano in risposta alla richiesta dell’utente.
Use Case Model: Request Elevator Use Case
Indice
Use Case Model: Request Elevator Use Case
Alternative:
• L’utente preme un bottone per scendere: la risposta del sistema è analoga alla sequenza principale.
• Se l’ascensore è a un piano, e non c’è nessun altro piano verso cui muovere, resta fermo a tale piano con la porta aperta.
Postcondizione: L’ascensore è arrivato al piano in risposta alla richiesta dell’utente.
Indice
Use Case Model: Abstract Use Cases
Si individuano due sottosequenze comuni agli Use Cases descritti, da cui ricavare due Abstract Use Cases:
Dispatch Elevator: la situazione in cui l’ascensore viene inviato in risposta a una richiesta dell’utente
Stop Elevator at Floor: la situazione in cui l’ascensore si ferma
Indice
Dispatch Elevator
Stop Elevator at Floor
Select Destination
Request Elevator
«include» «include»«include» «include»
Elevator User
Arrival Sensor
Use case model con abstract use case
Indice
Vai a Static Model
Vai a Dispatch Elevator
Vai a Stop Elevator at Floor
Use Case Model: Stop Elevator at Floor Abstract Use Case
Attore: Arrival Sensor
Precondizione: L’ascensore si sta muovendo
Descrizione: Quando l’ascensore si muove, l’arrival sensor si accorge che ci si sta avvicinando a un piano e lo notifica al sistema. Questo controlla se ci si doveva fermare a quel piano: se sì, comanda al motore di fermare l’ascensore. Fermato l’ascensore, il sistema comanda l’apertura della porta.
Alternative: L’ascensore non deve fermarsi a questo piano, quindi va oltre.
Postcondizione: L’ascensore si è fermato al piano, con la porta aperta
Indice
Torna al diagramma
Use Case Model: Dispatch Elevator Abstract Use Case
Precondizione: L’ascensore ha almeno un piano da visitare
Descrizione: Il sistema determina in quale direzione muovere per servire la successiva richiesta. Il sistema comanda la chiusura della porta, quindi comanda al motore di muovere l’ascensore su o giù.
Alternative: Se l’ascensore è a un piano, e non c’è nessun altro piano verso cui muovere, resta fermo a tale piano con la porta aperta.
Postcondizione: L’ascensore si sta muovendo nella direzione comandata.
Indice
Torna al diagramma
Use Case Model: Select Destination Concrete Use Case
Attori: Elevator User
Precondizione: L’utente è nell’ascensore
Descrizione:
1. L’utente preme un bottone per salire (o scendere). Il sensore del bottone manda al sistema una richiesta, identificando il piano di destinazione che l’utente vuole visitare.
2. La nuova richiesta è aggiunta alla lista dei piani da visitare. Se l’ascensore è fermo, si include Dispatch Elevator Abstract Use Case
3. Si include Stop Elevator at Floor
Indice
Use Case Model: Select Destination Concrete Use Case
4. Se ci sono altre richieste in sospeso, l’ascensore visita quei piani che si trovano sulla strada per il piano richiesto dall’utente. Infine l’ascensore arriva al piano selezionato dall’utente.
Alternative:
L’utente preme un bottone per scendere: la risposta del sistema è analoga alla sequenza principale.
Postcondizione: L’ascensore è arrivato al piano di destinazione selezionato dall’utente.
Indice
Use Case Model: Request Elevator Concrete Use Case
Attori: Elevator User
Precondizione: L’utente è a un piano, vuole un ascensore
Descrizione:
1. L’utente preme un bottone per salire. Il sensore del bottone manda la richiesta al sistema, identificando il numero del piano.
2. Il sistema seleziona un ascensore per visitare il piano. La nuova richiesta è aggiunta alla lista dei piani da visitare. Se l’ascensore è fermo, si include Dispatch Elevator abstract use case.
3. Si include Stop Elevator at Floor abstract use case
Indice
Use Case Model: Request Elevator Concrete Use Case
4. Se ci sono altre richieste in sospeso, l’ascensore visita quei piani che si trovano sulla strada per il piano richiesto dall’utente, seguendo le sequenze di dispatching e stopping. Infine l’ascensore arriva al piano in risposta alla richiesta dell’utente.
Alternative: L’utente preme un bottone per scendere; la risposta del sistema è analoga alla sequenza principale.
Postcondizione: L’ascensore è arrivato al piano in risposta alla richiesta dell’utente
Indice
Static Model
Attività della fase di Analysis Modeling
Static model: relazioni statiche
Conceptual static model
Context class diagram
Indice
Floor
FloorButton FloorLamp DirectionLamp
Elevator
ArrivalSensor
1...*
1Notifies
1...*1...*
Stops at
1...*
Indicates arriving/leaving
1,2
Switches on/off
1,21,2
ElevatorButton ElevatorLamp Motor Door
1...* 1...* 1 1
Conceptual static model per Elevator Control System
Indice
Refined Static Model
«system»ElevatorControlSystem
«external output device»DirectionLamp
Outputs to1...*
1
«external output device»
FloorLamp
«external input device»
FloorButton
1
1...*
Outputs to
1
1...*
Inputs to
«external output device»
Motor 11...*
Outputs to
«external output device»
Door
«external output device»Elevator Lamp
«external input device»
Arrival Sensor
«external input device»
Elevator Button
1...*
1...*1...*1...*
1
111
Inputs toInputs to Outputs
to
Context class diagram per Elevator Control System
Indice
Refined Static Model
Object Structuring
- External device obj. Software device interface obj.
Individuazione degli oggetti software:
* Elevator Button Interface * Door Interface * Motor Interface * Elevator Lamp Interface * Floor Button Interface * Floor Lamp Interface * Arrival Sensor Interface * Direction Lamp Interface
Attività della fase di Analysis Modeling
Indice
Object Structuring
Control objects:
* Elevator Control state dependent control object* Elevator Manager* Scheduler
Entity object:
*Elevator Status & Plan status: informazioni sul movimento dell'ascensore (in su, in giù o fermo); il piano corrente (se si trova fermo a un piano) o l'ultimo piano visitato (se è in movimento) plan: lista di tutti i piani che l'ascensore deve visitare
Indice
Dynamic Model
Si definiscono le interazioni tra gli oggetti corrispondenti a ciascuno use case.
Si utilizzano collaboration diagrams
Attività della fase di Analysis Modeling
Indice
«input device
interface»:ElevatorButtonInterface
«coordinator»
:ElevatorManager
«coordinator»
:Scheduler
«state dependent control»
:ElevatorControl
«entity»:ElevatorSta
tus&Plan
E1: Elevator Button Request
E2: Elevator Request
E3: Update E4:
AcknowledgeE5: Elevator Commitment
E5a: Up or Down
Collaboration diagram per Select Destination use case
:ElevatorUse
r
Indice
Dynamic Model: Collaboration Diagram per Select Destination Use Case
Message sequence description
E1: La Elevator Button Request arriva all'oggetto Elevator Button Interface
E2: L'oggetto Elevator Button Interface manda all'oggetto Elevator Manager la Elevator Request
E3: L' Elevator Manager manda la richiesta all'oggetto Elevator Status & Plan,che la aggiunge alla lista dei piani da visitare
Indice
Diagramma
Dynamic Model: Collaboration Diagram per Select Destination Use Case
E4: Viene aggiornato l'elevator plan. Viene mandato un riscontro all'oggetto Elevator Manager, che verifica se l'ascensore è fermo
E5: L' Elevator Manager manda un messaggio Elevator Commitment allo Scheduler, per informarlo che tale ascensore andrà a visitare il piano dato
E5a: Se l'ascensore è fermo, Elevator Manager manda un messaggio Up (o Down) all'oggetto Elevator Control,indicandogli di muovere nella direzione desiderata. Questo caso è gestito da Dispatch Elevator use case
Indice
Diagramma
Dynamic Model: Collaboration Diagram per Dispatch Elevator Abstract Use Case
Note: i messaggi Up o Down possono arrivare a Elevator Control da diverse origini, che verranno indicate con source object (considerabile come parametro di input al collaboration model).
Nello scenario considerato viene inviata una Up Request
Indice
Collaboration diagram parziale
Collaboration diagram parziale
Statechart
«state dependent control»
:ElevatorControl
«entity»:ElevatorStatus
&Plan
«output device interface»
:FloorLampInterface
«external output device»
:FloorLamp
«output device interface»
:DoorInterface
«external output device»:Door
D1: Up Request
D2: Close Door
D3: Close Door Command
D4: Door Response
D5: Door Closed
D2a: Off Up Floor Lamp
D2a.1: Floor Lamp Output
Collaboration per Dispatch Elevator - parziale
Indice
Message sequence description
StatechartCollaboration completo
«state dependent control»
:ElevatorControl
«entity»:ElevatorStatus
&Plan
«coordinator»:Scheduler
«output device interface»
:DirectionLampInterface
«external output device»
:FloorLamp
«output device interface»
:MotorInterface
«external output device»:Motor
D10a: Departed (Floor#)
D10: Departed (Floor#)
D6a: Off Up Direction Lamp
D6: Up
D9: Elevator Started
D6a.1: Direction Lamp Output
D8: Motor Response
D7: Start Up Motor Command
Collaboration per Dispatch Elevator - parziale
Indice
Message sequence description
Statechart
Collaboration completo
Elevator Idle
Checking Next
Destination
Elevator Starting Up
Door Closing to Move Up
Entry/D2: Close Door, D2a: Off Up Floor Lamp
Elevator Moving
Entry/ D10, D10a: Departed
D5: Door Closed/ D6: Up, D6a: Off Up Direction Lamp
D1: Up Request
D1: Up Request
D9: Elevator Started
Use case Dispatch Elevator: statechart per Elevator Control
Indice
Collaboration completo
«external output device»
:DirectionLamp
«output device interface»
:DirectionLampInterface
«state dependent control»
:ElevatorControl
«output device interface»
:DoorInterface
«external output device»:Door
«external output device»:Motor
«output device interface»
:MotorInterface«coordinator»
:Scheduler
«entity»:ElevatorStatus
&Plan
«external output device»
:FloorLamp
«output device interface»
:FloorLampInterface
D2a.1: Floor Lamp Output
D6a.1: Direction Lamp Output
D2a: Off Up Floor Lamp
D6a: Off Up Direction Lamp D1:
Up Request
D10: Departed(Floor#)
D10a: Departed (Floor#)
D6: Up
D9: Elevator Started
D7: Start Up Motor Command
D8: Motor Response
D2: Close Door
D5: Door Closed
D3: Close Door CommandD4: Door
Response
Collaboration Diagram per Dispatch Elevator use case
Indice
Torna a parziale 1 Torna a parziale 2
Torna a statechart
Dynamic Model: Collaboration Diagram per Dispatch Elevator Abstract Use Case
Message sequence description
Precondizione: l’ascensore si trova nello stato Elevator Idle oppure nello stato Checking Next DestinationD1: {source object} manda un messaggio Up Request a Elevator Control, che effettua una transione allo stato Door Closing to Move Up
Come risultato della transizione, ci sono due eventi in output concorrenti
Indice
Collaboration parziale 1 Collaboration parziale 2 Collaboration completo
Dynamic Model: Collaboration Diagram per Dispatch Elevator
Abstract Use Case
D2: Elevator Control manda un comando Close Door a Door Interface
D2a: (sequenza parallela) Elevator Control manda un comando Off Up Floor Lamp all’oggetto Floor Lamp Interface, che spegne la reale floor lamp
D3: Door Interface manda un Close Door Command alla porta reale
D4: la porta reale manda una Door Response quando la porta è chiusa
Indice
Collaboration parziale 1 Collaboration parziale 2 Collaboration completo
Dynamic Model: Collaboration Diagram per Dispatch Elevator
Abstract Use Case
D5: La Door Interface manda un messaggio Door Closed a Elevator Control, che effettua una transizione allo stato Elevator Sarting Up
D6: Elevator Control manda un comando Up all’oggetto Motor Interface
D6a: Elevator Control manda una richiesta Off Up Direction Lamp all’oggetto Direction Lamp Interface, che spegne la direction lamp (D6a.1)
D7: l’oggetto Motor Interface manda una Motor Response quando l’ascenore ha iniziato a muoversi verso l’alto
Indice
Collaboration completo
Collaboration parziale 2Collaboration parziale 1
Dynamic Model: Collaboration Diagram per Dispatch Elevator Abstract Use Case
D8: il motore reale manda una Motor Response quando l’ascensore ha iniziato a muoversi verso l’alto
D9: l’oggetto Motor Interface manda un messaggio Elevator Started all’oggetto Elevator Control, che effettua una transione allo stato Elevator Moving
D10: Elevator Control manda un messaggio Departed agli oggetti Elevator Status & Plan (D10) e Scheduler (D10a)
Indice
Collaboration parziale 1 Collaboration parziale 2 Collaboration completo
Statechart Model
E’ necessario
• fondere gli statecharts parziali di Dispatch Elevator use case e di Stop Elevator at Floor
• considerare branch alternativi
per creare uno statechart completo
Si avranno inoltre: Statechart gerarchico e top level
Attività della fase di Analysis Modeling
Indice
Elevator Moving
A2: Approaching Floor/ A3: Check This Floor
Entry/D10, D10a: Departed
Elevator Idle
entry/update idle statusDoor Closing to Move Up
Entry/D2:Close Door. D2a: Off Up Floor Lamp
Door Closing to Move Down
Entry/Close Door. Off Down Floor LampD1: Up
RequestDown Request
Elevator Starting Up Elevator Starting Down
D5: Door Closed/ D6: Up, D6a: Off Up Direction Lamp
Door Closed/ Down, Off Up Direction Lamp
D9: Elevator Started
Elevator Started
Elevator Stopping
A4: Approaching Requested Floor/ A5: Stop/ A5a.1: On Direction Lamp
Statechart per Elevator Control....
No Request
D1: Up Request
da Checking Next Destination
Down Request
da Checking Next Destination
Indice
Gerarchico Top level
....
Elevator Door
Opening
A8: Elevator Stopped/ A9: Open Door/,A9a: Off Elevator Lamp, A9b, A9c: Arrived
Elevator at Floor
A12: Door opened/ A13: Start Timer
Checking Next Destination
A14: After (Timeout)/ A15: Check Next Destination
verso Door Closing to Move Up
D1: Up Request
No Request
verso Elevator Idle
Down Request
verso Door Closing to
Move Down
Statechart per Elevator Control
Indice
Gerarchico Top level
Statechart Model
Consideriamo il top level statechart , che mostra gli eventi ma non le azioni:
1. Elevator Idle: l’ascensore è fermo a un piano e non ha richieste in sospeso. Ha la porta aperta.
2. Preparing to Move Up: è un super-stato che comprende i seguenti sottostati
•Door Closing to Move Up: l’ascensore vi entra quando incomincia a chiudere la porta per soddisfare una richiesta di visitare un piano superiore
•Elevator Starting Up: un ascensore vi entra quando la porta è stata chiusa e sta aspettando che il motore inizi a farlo muovere
Indice
Top level
Statechart Model
3.Preparing to Move Down: superstato che consiste dei seguenti sottostati:•Door Closing to Move Down•Elevator Starting DownSono analoghi ai due precedenti
4. Moving to Floor: questo superstato consiste dei seguenti sottostati
•Elevator Moving: un ascensore vi entra quando ha iniziato la sua salita o la sua discesa
•Elevator Stopping: un ascensore vi entra quando si sta avvicinando a un piano a cui si deve fermare
Indice
Top level
Statechart Model
•Elevator Door Opening: un ascensore vi entra quando si è fermato al piano e la porta si sta aprendo
•Elevator at Floor: un ascensore vi entra quando la porta si è aperta completamente
5. Checking Next Destination: l’ascensore controlla quale piano visitare e quindi in quale direzione muoversi, o se entrare nello stato Elevator Idle. Vi entra dopo un timer event nello stato Elevator at Floor
Indice
Top level
Elevator Idle
entry/update idle status
Door Closing to Move Up
Entry/Close Door, Off Up Floor Lamp
Door Closing to Move Down
Entry/Close Door. Off Down Floor Lamp
Up Request Down Request
Elevator Starting Up
Elevator Starting Down
Door Closed/ Up, Off Up Direction Lamp
Door Closed/ Down, Off Down Direction Lamp
Elevator Started
Elevator Started
Statechart gerarchico per Elevator Control
No Request
Up Request
da Checking Next Destination
Down Request
da Checking Next Destination
Preparing to Move Up
Preparing to Move Down
Indice
Elevator Door
Opening
Elevator Stopped/Open Door, Off Elevator Lamp, Arrived
Elevator at Floor
Door opened/Start Timer
Checking Next Destination
After (Timeout)/Check Next Destination
verso Door Closing to Move Up
D1: Up Request
No Request
verso Elevator Idle
Down Request
verso Door Closing to
Move Down
Statechart gerarchico per Elevator Control
Elevator Stopping
Elevator Moving
Entry/Departed
Approaching Requested Floor/Stop On Direction Lamp
Moving to Floor
Approaching Floor/Check This Floor
Indice
Flat statechart Top level
Elevator Idle
Preparing to Move Down
Moving toFloor
Preparing to Move Up
Checking Next
Destination
No Request
Up Request
Up Request
ElevatorStarted
ElevatorStarted
Down Request
Down Request
After(Timeout)
Top-level statechart per Elevator Control
Indice
Descrizione degli stati
Fusione dei Collaboration Diagrams
Attività della fase di Design Modeling.
Si mostrano tutti gli oggetti che partecipano agli use cases e tutte le loro interazioni.
Vengono incluse alternative che di solito non compaiono nei collaboration diagrams canonici.
I nomi dei messaggi possono essere aggregati.
Indice
Fusione parziale 1 Fusione parziale 2
«output deviceinterface»
: Elevator LampInterface
Elevator Lamp
Output «output deviceinterface»
: Motor Interface
Motor Command
Off ElevatorLamp
«state dependentcontrol»
: Elevator Control
Stop
Down
Up
Elevator Started
Elevator Stopped
Motor Response
«Output deviceinterface»
: Door Interface
Open Door Close Door
Door Opened
Door Closed
Door Command
Door Response
«coordinator»
: Scheduler
Arrived (Floor#)
Departed (Floor #)
«input device interface»
: Floor Button Interface
Scheduler Request
ElevatorCommitment
Service Request
Floor Button Request
Fusione dei collaboration diagrams – parte 1
Indice
«state dependentcontrol»
: Elevator Control
«timer»: Door Timer
After(Timeout)Start
Timer
«output device interface»
: Direction LampInterface
DirectionLamp
Output
«output device interface»
: Floor LampInterface
FloorLamp
Output
«input device interface»
: Arrival SensorInterface
ArrivalSensorInput
Direction LampCommand
Floor LampCommand
ApproachingFloor
(Floor #)
«entity»: Elevator Status
& Plan
Check Next Destination
Check This Floor (Floor #)
Arrived (Floor #)
Next Destination
Departed (Floor #)
ApproachingRequest
Floor
Update Acknowledge«coordinator»: ElevatorManager
«input deviceinterface»
: Elevator ButtonInterface
ElevatorButton
RequestElevator Request
Fusione dei collaboration diagrams – parte 2
Indice
Subsystem Structuring
Si dà la precedenza alle linee guida:
• Geographical location
• Aggregation/composition
poichè l’applicazione che consideriamo è potenzialmente distribuita
Attività della fase di Design Modeling.
Indice
Subsystem Structuring
Elevator Subsystem: oggetto composto, control subsystem
Contiene:Door Interface, Motor Interface, Elevator Button Interface, Elevator Lamp Interface, Arrival Sensor Interface, Door Timer, Elevator Control, Elevator Status & Plan, Elevator Manager Floor Subsystem: oggetto composto, data collection subsystem
Contiene: Floor Lamp Interface, Floor Button Interface, Direction Lamp Interface Scheduler Subsystem: coordinator subsystem.
Indice
Struttura di Elevator Subsystem Struttura di Floor Subsystem Strutturazione in sottosistemi
«output deviceinterface»
: Elevator LampInterface
«output deviceinterface»
: Motor Interface
«state dependentcontrol»
: Elevator Control
Stop
Down
Up
Elevator Started
Elevator Stopped
«Output deviceinterface»
: Door Interface
Open Door Close Door
Door Opened
Door Closed
«entity»: Elevator Status
& Plan
Check Next Destination
Check This Floor (Floor #)
Arrived (Floor #)
Next Destination
Departed (Floor #)
ApproachingRequest
Floor
«timer»: Door Timer
After(Timeout)
StartTimerOff
ElevatorLamp
«coordinator»: ElevatorManager
Acknowledge
Update «input deviceinterface»
: Elevator ButtonInterface
Elevator Request
Arrived (Floor #)
Departed (Floor #)
verso subsystem Scheduler
Up, Down
«input device interface»
: Arrival SensorInterface
ApproachingFloor
(Floor #)
«control subsystem» :ElevatorSubsyste
m
verso Floor
subsystem
Floor Lamp Command,Direction
Lamp Command
Struttura di Elevator SubsystemDescrizione Refined Static Model
«external input
device»: FloorButton
Floor Button
Request «subsystem»: Scheduler
Floor LampOutput
«external outputdevice»
: DirectionLamp
Direction Lamp
Output
«input device interface»
:FloorButtonInterface
«output device interface»
:FloorLampInterface
«output device interface»
:DirectionLampInterface
«subsytem»:ElevatorSubsy
stem
ServiceRequest
Floor Lamp
Command«external
outputdevice»
: FloorLamp
Direction Lamp
Command
«data collection subsystem»
:FloorSubsystem
Struttura di FloorSubsystem
Indice
Descrizione Refined Static Model
«control subsystem»: ElevatorSubsystem
«external outputdevice»
: ElevatorLamp
«control subsystem»
: ElevatorSubsyst
em
«external inputdevice»
: ElevatorButton
«external outputdevice»: Motor
«external outputdevice»: Door
«external input
device»: FloorButton
«data collectionsubsystem»
: FloorSubsystem
Elevator
LampOutput
ArrivalSensor Input
MotorCommand
MotorResponse
DoorCommand
DoorResponse
«coordinatorsubsystem»: Scheduler
«external outputdevice»
: FloorLamp
Floor Button
Request
ServiceRequest
«external outputdevice»
: DirectionLamp
Floor Lamp
Output
Direction LampOutput
Floor Lamp
CommandDirection Lamp
Command
Arrival(Floor #)Depart
(Floor #)Elevator
Commitment
SchedulerRequest
«system»:Elevator ControlSystem
ElevatorButton Requst
Strutturazione in sottosistemi
Indice
DescrizioneRefined Static Model
Refined Static Model
Indice
Rappresentato da un class diagram
Derivato da:
• architettura generale dei sottosistemi
• struttura di ciascun sottosistema
Mostra:
• classi da cui sono istanziati gli oggetti che partecipano ai collaboration diagrams
• relazioni tra le classi
«output device interface»
Door Interface
«output device interface»
ElevatorLampInterface
«output device interface»
MotorInterface
«inputdevice interface»
ElevatorButtonInterface
«input device interface»
ArrivalSensorInterface «state dependent
control»
ElevatorControl
«coordinator»
ElevatorManager
«entity»
ElevatorStatus&Plan«timer»
DoorTimer
Controls
1
1...*
Controls
1
1 Requests1...*
1
Updates1
1
1
1Updates,Check
s
11Commands
1
1
Controls
1
1...*
Notifies
1
1Notifies
«control subsystem»
ElevatorSubsystem
«output device interface»
Direction Lamp Interface
«server»
ElevatorStatus&PlanServer
«coordinator»
Elevator Scheduler
«input device interface»
Floor Button Interface
«output device interface»
Floor Lamp Interface
1...*
1...*
Controls
«entity»
OverallElevatorStatus&Plan
1
1Updates
11
Selects
1...*
1...*
Controls
1...* 1
1...*
1
1
1..*
Updates
1..* Requests
Notifies
Requests
«data collection subsystem»
FloorSubsystem
«coordinator subsystem»Scheduler
*
*
*1
* 1
Refined static model per Elevator Control System
Static model
Struttura di Elevator Subsystem
Struttura di Floor Subsystem
Strutturazione in sottosistemi