Академический Документы
Профессиональный Документы
Культура Документы
CONTROL SYSTEM
Kunal Patel
Arun Immaneni
Saurabh Kapoor
Meghna Atluri
Akila Muthuveeraganapathy
Introduction
System Design
User Interaction
Use Case Diagram
Sequence and Collaboration Diagram
Class Diagram
What is HACS?
How it happens
Saves time
Save money (Long run)
Self Maintenance
When: you are in a traffic jam
Security
on the highway
What: You set microwave oven
Makes life easy
in a slow cooking mode
Overview
of
HACS
System
Cellphone,
Laptop, PDA
Temp Controller
Microwave
Server or HACS
System
Database
Security System
Accessing It
Input device
User Interface Login, Initial Settings,
Operations, Logout
System Design
HACS is a system which is controlled by a remote system
such as a cell phone, and controls home appliances such as
VCR
In case of emergency such as fire, the user or an
organization such as Fire Department should be notified.
Also, HACS should have a database of information about
the users and appliances.
FireDepartment
Options of the
HACS Sy stem
Alarm Alert
Database
User is an authenticated
user checked by HACS
while login process.
Operate Microwave
Manage Appliances
<<uses>>
CommonUser
Monitor Appliances
Operate Temperature
Controller
Operate Doors
Log Out
User
Administrator
<<uses>>
In case of a break-in,
the Police Department
& user are notif ied
Break Entry
Manage Accounts
Police
Department
Adminstrator
Manage Appliance
Monitor Appliance
Common User
Database
Login
User
Logout
Modify Account
Sequence Diagram-Login
aUser : User
aUserInterface :
UserInterface
aLoginForm :
LoginForm
aDatabase :
Database
1: SelectLogin()
2: CreateForm()
3: login()
4: Query(username,password)
5: GetResult()
6: SetAccStatus()
7: DisplayResult()
aUserInterface :
UserInterface
aUser : User
3: login()
2: CreateForm()
6: SetAccStatus()
7: DisplayResult()
4: Query(username,password)
aLoginForm :
LoginForm
5: GetResult()
aDatabase :
Database
aUserInterface :
UserInterface
aLogoutForm :
LogoutForm
2: CreateForm()
3: Input()
4: SetAccStatus(username, "logout")
T his Use case can either be
ini tiated by User or Admi n
5: DisplayResult()
3: Input()
aUserInterface :
UserInterface
4: SetAccStatus(username, "logout")
5: DisplayResult()
aLogoutForm :
LogoutForm
2: CreateForm()
aMaintainAccControl :
MaintainAccControl
anAccForm :
AccForm
anAdminstrator :
Adminstrator
aDatabase :
Database
1: SelectManageAcc
2: CreateControl
6: Select Operation
7: Input
11: Continue or Exit
anAccForm :
AccForm
anAdminstrator :
Adminstrator
1: SelectManageAcc
8: Update D B (an Acc Form)
9: Get Result()
aUserInterface :
UserInterface
5: Create Form()
12: Continue or Exit
2: CreateControl
3: call Check Login
4: [not login] Exit()
13: [Continue] repeat step 5
aMaintainAccControl :
MaintainAccControl
aDatabase :
Database
aModifyAccControl :
ModifyAccControl
anModifyAccForm :
ModifyAccForm
aUser : User
1: SelectModifyAcc()
2: Create Control()
aDatabase :
Database
1: SelectModifyAcc()
2: Create Control()
aUserInterface :
UserInterface
aModifyAccControl :
ModifyAccControl
aUser : User
6: Input()
5: Create Form()
9: DisplayResult()
anModifyAccForm :
ModifyAccForm
aAppControl :
AppControl
aAppInterface :
AppInterface
aAppForm :
AppForm
aDatabase :
Database
1: SelectManageApp()
2: Create Control()
T he operations of managing this
appl iance i nclude AddAppli ance,
Remove Appliance and Modify
Appl iance
1: SelectManageApp()
2: Create Control()
aAppInterface :
AppInterface
aAppControl :
AppControl
aUser : User
6: SelectOperation()
7: Input()
11: Continue or Exit()
5: Create Form()
12: Continue or Exit()
10: DisplayResult()
9: GetResult()
aDatabase :
Database
8: Update()
aAppForm :
AppForm
Microwave Oven
HACS
Microwave
1: login
A u ser ca n ch e ck
th e statu s a n d
cha n ge th e
m o de,te mp ,ti me a t
a ny po i nt o f ti m e
3: select microwave
4: retrive available options
6: check status
7: show status
8: set mode(cook,warm,defrost)
9: update mode
User
HACS
9: update mode
11: update temperature
13: update time
15: turning off
Microwave
:HACS
:Oven
1: detect fire
2: fire alert
4: call owner
1: detect fire
2: fire alert
:FireAlarm
:HACS
:Oven
Security System
: HACS
: User
: Controller
check status()
checkStatus()
return results()
openDoor()
openDoor()
opens door()
closeDoor()
closeDoor()
closes door()
: User
3: return results()
6: opens door()
9: closes door()
: Controller
2: checkStatus()
5: openDoor()
8: closeDoor()
hacs : HACS
User is an
authenticated
user.
: User
switchOnSensor()
switchSensorOn()
sensorOn
returnResults
switchOffSensor()
switchSensorOff()
sensorOff
returnResults
5: returnResults
9: returnResults
4: sensorOn
8: sensorOff
: MotionSensor
3: switchSensorOn()
7: switchSensorOff()
: User
: GarageDoor
User is an
authenticated User
select garage system
checkStatus()
checkStatus()
returnResults()
openGarage()
openGarage( )
lightOn()
closeGarage()
closeGarage( )
lightsOff()
: GarageLight
: User
User is an
authenticated User
4: returnResults()
3: checkStatus()
6: openGarage( )
9: closeGarage( )
: GarageDoor
: GarageLight
7: lightOn()
10: lightsOff()
: DetectorHandling
: HouseBreakEntry
: BreakEntryNotice
: PoliceDepartment
: user
User is an
authenticated user
detectHouseBreakEntry()
Emergency ie Police
departments phone number
and users number are stored
in the devices
Once the situation is under
control, the detector is reset
createControl()
setEmergencyStatus()
createBreakNotice()
notify(Police Department)
notify(user)
: DetectorHandling
2: createControl()
3: setEmergencyStatus()
: BreakEntryNotice
: HouseBreakEntry
4: createBreakNotice()
5: notify(Police Department)
: PoliceDepartment
6: notify(user)
: user
Temperature Control
oHACS : HACS
oUser : User
oTempratureController :
CTempratureController
2: Command(SetTemprature, desire_temp)
3: SetTemprature(desire_temp)
oHACS :
HACS
2: Command(SetTemprature, desire_temp)
3: SetTemprature(desire_temp)
oTempratureController :
CTempratureController
oHACS : HACS
oUser : User
oTempratureController :
CTempratureController
2: Command(SetMode, iMode)
3: SetMode(iMode)
oHACS :
HACS
2: Command(SetMode, iMode)
3: SetMode(iMode)
oTempratureController :
CTempratureController
Class Diagrams
(from HACS)
Username
Password
(from HACS)
User
Privileges
(from HACS)
DeleteUser()
CreateUser()
authenticateUser()
H.A.C.S
(from HACS)
name
CommonUser
Remote access can be
Mobile Phone,Com puter...
(from HACS)
username
password
1
*
login()
logout()
callCops()
selectAppliance()
callOwner()
callFireDept()
...()
1
DoorController interfaces
with the door to perform the
desired operation
Appliance
applianceType
submitUserInput()
Controller
create()
delete()
operation : string
doorNumber : int
performOperation(operation, doorNumber)
GarageDoor
Temprature Controller
(from HACS)
temp
mode
setmode()
settemp()
Oven
(from HACS)
name
opname()
GarageLight
MotionSensor
lightState : boolean
sensorState : boolean
checkLightState()
turnLightOn()
turnLightOff()
checkSensorState()
switchSensorOn()
switchSensorOff()
Door
doorState : boolean
position : int
doorState : boolean
breakEntry : boolean
doorNumber : int
getDoorPosition()
openGarage()
closeGarage()
checkGarageState()
openDoor()
closeDoor()
checkdoorState()
checkBreakEntry()
Thank You
Any Questions???