45
HOME APPLIANCE HOME APPLIANCE CONTROL SYSTEM CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Embed Size (px)

Citation preview

Page 1: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

HOME APPLIANCE HOME APPLIANCE CONTROL SYSTEM CONTROL SYSTEM HOME APPLIANCE HOME APPLIANCE CONTROL SYSTEM CONTROL SYSTEM

Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Page 2: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Today’s Topic on HACS

• Introduction• System Design• User Interaction• Use Case Diagram • Sequence and Collaboration Diagram• Class Diagram

Page 3: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

What is HACS?

• Home Appliance Control System accessed by a remote device such as mobile phone or a palm-top to allow a home owner to control, monitor and coordinate home appliances.

Page 4: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

How it happens

Page 5: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Why HACS ???

When: you are in a traffic jam on the highwayWhat: You set microwave oven in a slow cooking mode

Slow cooking mode

1. Saves time2. Save money (Long run)3. Self Maintenance4. Security5. Makes life easy

Page 6: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Temp Controller

Microwave

Security System

Cellphone, Laptop, PDA

Server or HACS System

Overview of HACS System

Database

Page 7: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Accessing It• Input device • User Interface – Login, Initial Settings,

Operations, Logout

Page 8: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Interaction with HACSThe user can interact through any input device such as

the Laptop, Palmtop, Cell phone etc..• The user interface allows the user to enter or tell the

user name and password.• The user can also provide fingerprint or retinal scan for

authentication.• The system then transfers the details to the

authentication server and the authentication server allows or denies the user according to the information provided.

• After Authentication, the user is allowed access into the system

Page 9: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

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.

Page 10: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Use Case Diagrams

Page 11: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Use Case Diagram - User

User is an authenticated user checked by HACS while login process.

Security Sy stem includes all doors, windows and garage door

Options of the HACS Sy stem

FireDepartment

Alarm Alert

Operate Doors

Operate Garage Doors

Police Department

Break Entry

In case of f ire,user and the Fire Department are notif ied

In case of a break-in, the Police Department & user are notif ied

User

Monitor AppliancesCommonUser

Manage Accounts

Administrator

Manage Appliances

Operate Temperature Controller

Security System

Operate Microwave

Database

Log Out

HACS Appliance Controller

<<uses>>

<<uses>>

reports

Page 12: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Use Case Diagram - Primary User

Common User

Manage Appliance

Monitor Appliance

Login

User

Logout

Adminstrator

Modify Account

Manage Account

Database

Page 13: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence & Collaboration Diagrams

Page 14: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram-Login

aUser : UseraUserInterface :

UserInterfaceaLoginForm :

LoginForm

aDatabase : Database

1: SelectLogin()

2: CreateForm()

3: login()

4: Query(username,password)

5: GetResult()

6: SetAccStatus()

7: DisplayResult()

This case can be initiated by User or Adminstrator

Page 15: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Login

aUser : User

aUserInterface : UserInterface

aLoginForm : LoginForm

aDatabase : Database

6: SetAccStatus()7: DisplayResult()

1: SelectLogin()

3: login() 2: CreateForm()

4: Query(username,password)

5: GetResult()

Page 16: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Logout

aUser : User

aUserInterface : UserInterface

aLogoutForm : LogoutForm

1: SelectLogout()

2: CreateForm()

3: Input()

4: SetAccStatus(username, "logout")

5: DisplayResult()This Use case can either be ini tiated by User or Admin

Page 17: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Logout

aUser : User

aUserInterface : UserInterface

aLogoutForm : LogoutForm

4: SetAccStatus(username, "logout")5: DisplayResult()

1: SelectLogout()

3: Input()

2: CreateForm()

Page 18: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram - Manage Account

It wil l make a call to the database fro authentciation

anAdminstrator : Adminstrator

aUserInterface : UserInterface

aMaintainAccControl : MaintainAccControl

anAccForm : AccForm

aDatabase : Database

1: SelectManageAcc

2: CreateControl

3: call Check Login

4: [not login] Exit()

5: Create Form()

8: Update D B (an Acc Form)

9: Get Result()

10: DisplayResult()

12: Continue or Exit

13: [Continue] repeat step 5

6: Select Operation

7: Input

11: Continue or Exit

Operations of manage account include Add Account, Remove Account, Modi fy Account

Page 19: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Manage Account

anAdminstrator : Adminstrator

aUserInterface : UserInterface

anAccForm : AccForm

aDatabase : Database

aMaintainAccControl : MaintainAccControl

3: call Check Login4: [not login] Exit()

10: DisplayResult()

13: [Continue] repeat step 5

1: SelectManageAcc

6: Select Operation7: Input

11: Continue or Exit

2: CreateControl

8: Update D B (an Acc Form)9: Get Result()

5: Create Form()

12: Continue or Exit

Page 20: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram - Modify Account

aUser : User

aUserInterface : UserInterface

aModifyAccControl : ModifyAccControl

anModifyAccForm : ModifyAccForm aDatabase :

Database

1: SelectModifyAcc()

2: Create Control()

3: Call Check Login()

4: [not login] Exit()

5: Create Form()

6: Input()

7: Update DB(an ModifyAccForm)

8: GetResult()

9: DisplayResult()

It wil l make a call to the database fro authentciation

Page 21: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Modify Account

aUser : User

aUserInterface : UserInterface

aModifyAccControl : ModifyAccControl

anModifyAccForm : ModifyAccForm

aDatabase : Database

3: Call Check Login()4: [not login] Exit()

9: DisplayResult()

2: Create Control()

5: Create Form()

7: Update DB(an ModifyAccForm)

8: GetResult()

1: SelectModifyAcc()

6: Input()

Page 22: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram - Manage Appliance

aUser : UseraAppInterface :

AppInterfaceaAppControl :

AppControlaAppForm :

AppFormaDatabase :

Database

1: SelectManageApp()

2: Create Control()

3: call Check Login()

4: [not Login] Exit()

5: Create Form()

6: SelectOperation()

7: Input()

8: Update()

9: GetResult()

10: DisplayResult()

11: Continue or Exit()

12: Continue or Exit()

13: [continue] repeat step 5

The operations of managing this appl iance include AddAppliance, Remove Appliance and Modi fy Appl iance

This use case can be ini tiated both User and Adminstrator

It wil l make a call to the database fro authentciation

Page 23: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Manage Appliance

aUser : User

aAppInterface : AppInterface

aAppControl : AppControl

aAppForm : AppForm

aDatabase : Database

1: SelectManageApp()2: Create Control()

3: call Check Login()4: [not Login] Exit()

5: Create Form()

6: SelectOperation()7: Input()

8: Update()

9: GetResult()

10: DisplayResult()

11: Continue or Exit()

12: Continue or Exit()

13: [continue] repeat step 5

Page 24: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Microwave Oven

Page 25: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

User HACS Microwave

1: login

2: acknowledge and display operations

3: select microwave

4: retrive available options

5: display available options

6: check status

7: show status

8: set mode(cook,warm,defrost)

9: update mode

10: set temperature

11: update temperature

12: set time

13: update time

14: turn off

15: turning off

A user can check the status and change the mode,temp,time at any point of time

turning off the microwave oven can be done anytime

Sequence Diagram -Microwave Oven

Page 26: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

User HACS

Microwave

4: retrive available options

1: login3: select microwave

6: check status8: set mode(cook,warm,defrost)

10: set temperature12: set time14: turn off

2: acknowledge and display operations5: display available options

7: show status

9: update mode11: update temperature

13: update time15: turning off

Collaboration Diagram - Microwave Oven

Page 27: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Fire Alarm

:FireAlarm :HACS :Oven

1: detect fire

2: fire alert

3: call fire dept

4: call owner

5: switch off the oven

The system maintains the information about the users phone number and Fire Department's number.

The Fire Alarm is reset once the situation is under control.

Page 28: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram – Fire Alarm

:FireAlarm :HACS

:Oven

1: detect fire3: call fire dept4: call owner

2: fire alert

5: switch off the oven

Page 29: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Security System

Page 30: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Security System ( Doors )

: User : HACS : Controller

openDoor()

openDoor()

opens door()

check status()

checkStatus()

return results()

closeDoor()

closeDoor()

closes door()

User is an authenticated user.

Page 31: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram – Security System (Doors)

: User

: HACS

: Controller

6: opens door()9: closes door()

4: openDoor()1: check status()

7: closeDoor()

5: openDoor()2: checkStatus()

8: closeDoor()

3: return results()

Page 32: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Motion Sensor

: User

hacs : HACS : MotionSensor

switchOnSensor()

switchOffSensor()

select garage system

User is an authenticated user.

switchSensorOn()

sensorOn

returnResults

switchSensorOff()

sensorOff

returnResults

Page 33: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram – Motion sensor

: User

hacs : HACS

: MotionSensor

4: sensorOn8: sensorOff

1: select garage system2: switchOnSensor()6: switchOffSensor()

3: switchSensorOn()7: switchSensorOff()

5: returnResults9: returnResults

Page 34: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Garage Door

: Userhacs : HACS : GarageDoor : GarageLight

select garage system

openGarage()

openGarage( )

lightOn()

closeGarage()

closeGarage( )

lightsOff()

checkStatus()

checkStatus()

returnResults()

User is an authenticated User

Page 35: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram – Garage Door

: User

hacs : HACS

: GarageDoor : GarageLight

1: select garage system

5: openGarage()8: closeGarage()

2: checkStatus()

6: openGarage( )9: closeGarage( )

3: checkStatus()

4: returnResults()

7: lightOn()10: lightsOff()

User is an authenticated User

Page 36: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Break Entry

:BreakEntryDetector : DetectorHandling : HouseBreakEntry : BreakEntryNotice : PoliceDepartment : user

detectHouseBreakEntry()

createControl()

setEmergencyStatus()

createBreakNotice()

notify(Police Department)

notify(user)

Emergency ie Police departments phone number and users number are stored in the devices

Once the situation is under control, the detector is reset

User is an authenticated user

Page 37: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - BreakEntry

:BreakEntryDetector : DetectorHandling

: HouseBreakEntry : BreakEntryNotice

: PoliceDepartment : user

3: setEmergencyStatus()

1: detectHouseBreakEntry()

2: createControl()

4: createBreakNotice()

5: notify(Police Department)6: notify(user)

Page 38: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Temperature Control

Page 39: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Sequence Diagram – Set Temperature Control

oUser : User

oHACS : HACS oTempratureController : CTempratureController

HACS is the controller class which will handle the UI events

1: IssueCommand ( TempratureDevice, setTemprature, desire_temp )

2: Command(SetTemprature, desire_temp)

3: SetTemprature(desire_temp)

Page 40: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - Set Temperature

oTempratureController : CTempratureController

oUser : UseroHACS :

HACS

1: IssueCommand ( TempratureDevice, setTemprature, desire_temp )

2: Command(SetTemprature, desire_temp)

3: SetTemprature(desire_temp)

Page 41: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram – Set Mode of Temperature Controller

oUser : User

oHACS : HACS oTempratureController : CTempratureController

HACS is the controller class which will handle the UI events

1: IssueCommand ( TempratureDevice, setMode, desire_temp )

2: Command(SetMode, iMode)

3: SetMode(iMode)

Page 42: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Collaboration Diagram - SetMode

oHACS : HACS

oUser : User

oTempratureController : CTempratureController

1: IssueCommand ( TempratureDevice, setMode, desire_temp )

2: Command(SetMode, iMode)

3: SetMode(iMode)

Page 43: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Class Diagrams

Page 44: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Class Diagram - HACS

User(from HACS)

Oven

name

opname()

(from HACS)

Temprature Controller

tempmode

setmode()settemp()

(from HACS)

System Admin

UsernamePassword

DeleteUser()CreateUser()

(from HACS)

Remote access can be Mobile Phone,Computer...

GarageDoor

doorState : booleanposition : int

getDoorPosition()openGarage()closeGarage()checkGarageState()

GarageLight

lightState : boolean

checkLightState()turnLightOn()turnLightOff()

Authentication Process

Privileges

authenticateUser()

(from HACS)

ApplianceapplianceType

create()delete()

H.A.C.S

name

login()logout()callCops()selectAppliance()callOwner()callFireDept()...()

(from HACS)

*

1

*

1

Remote Access System

IpaddressUserInfoaccessDeviceType

submitUserInput()

(from HACS)

1*

1*

CommonUser

usernamepassword

(from HACS)

DoorController interfaces with the door to perform the desired operation

Door

doorState : booleanbreakEntry : booleandoorNumber : int

openDoor()closeDoor()checkdoorState()checkBreakEntry()

Controller

operation : stringdoorNumber : int

performOperation(operation, doorNumber)

MotionSensor

sensorState : boolean

checkSensorState()switchSensorOn()switchSensorOff()

Page 45: HOME APPLIANCE CONTROL SYSTEM HOME APPLIANCE CONTROL SYSTEM Kunal Patel Arun Immaneni Saurabh Kapoor Meghna Atluri Akila Muthuveeraganapathy

Thank YouThank You

Any Questions???Any Questions???

Thank YouThank You

Any Questions???Any Questions???