Professional Documents
Culture Documents
Version 1.0
Author:
Major Revision Date:
Version: 0.1
Table of Contents
Table of Contents.....................................................................................................................................................2
Document Version Control...................................................................................................................................5
Privacy Information..............................................................................................................................................5
Document Revision History.....................................................................................................................................5
Status........................................................................................................................................................................ 5
Approved By............................................................................................................................................................5
Use Case Brief..........................................................................................................................................................6
1.0 Use Case Model............................................................................................................................................6
1.1 Use Case List..........................................................................................................................................6
1.2 Actor List................................................................................................................................................7
1.3 Use Case Relation Diagram....................................................................................................................8
1.4 Use Case Glossary...................................................................................................................................9
2.0 Use Cases...................................................................................................................................................10
2.1 Place Request........................................................................................................................................10
2.2.3 Alternate Scenarios...........................................................................................................................12
2.2.4 Exception Scenarios..........................................................................................................................12
2.2.5 Business Rules\Constraints....................................................................................................................13
1. Introduction....................................................................................................................................................15
2. Purpose...........................................................................................................................................................16
3. Business Components.....................................................................................................................................16
4. System Component.........................................................................................................................................16
5. Object List......................................................................................................................................................17
6. Description of the Classes:.............................................................................................................................18
7. Class Diagram................................................................................................................................................20
8. Sequence Diagram for Lights.........................................................................................................................21
9. Collaboration Diagram for Lights...................................................................................................................23
10. Sequence Diagram for AC..........................................................................................................................24
11. Collaboration Diagram for AC...................................................................................................................25
12. Sequence Diagram for Microwave.............................................................................................................26
13. Collaboration Diagram for Microwave.......................................................................................................27
14. Sequence Diagram for Security System......................................................................................................28
15. Collaboration Diagram for Security System...............................................................................................29
16. State Chart Diagram...................................................................................................................................30
17. State Chart Diagram for Light System........................................................................................................31
18. State chart Diagram for AC........................................................................................................................32
19. State chart Diagram for Microwave............................................................................................................33
20. State Chart Diagram for Security System...................................................................................................34
21. Package Diagram........................................................................................................................................35
22. Component Diagram...................................................................................................................................36
23. Deployment Diagram.................................................................................................................................37
Document Version Control
It is the reader's responsibility to ensure they have the latest version of this document. Questions should be directed to the
preparer of this document above, or the project manager.
Privacy Information
This document may contain information of a sensitive nature. This information should not be given to persons other than
those who are involved in the project or who will become involved during the lifecycle.
Status
Status Open In Process Ready for Pending Approved
Review Approval
Approved By
Department Name Date Comments
Product Management
Release
Development
Use Case Brief
Home appliance control system (HACS) is a system which allows us to control, monitor and coordinate
home appliances such as air conditioner, microwave oven, lights and security system through a remote
device (such as Cell Phone, Laptop or Palmtop). Hence, with a HACS, we can operate our home
appliances according to our convenience from our school, work, and car or from any place where our
remote input device is functional.
In order to control a device the user needs to connect its input device to the Service Provider who is
responsible for implementing the requested operation by sending a required command to the HACS
Interaction Device. For this, the User enters the User id and PIN for authentication and then device id
and operation to be performed given. The HACS Interaction Device interacts directly with the device
controller and controls the device. Every device is assigned an id along with the operations that can be
implemented on them.
2.3 Operate A.C The use case describes the ability of the user to perform the requested
operation on the A.C. This operation could be Switching ON/OFF or
changing the temperature settings.
2.4 Operate Lights The use case describes the ability of the user to set the state of the specified
lights as requested. For example if the state of light-1 is OFF & its requested
state is ON, it will be switched ON. If the requested state is OFF the state
will remain unchanged.
2.5 Operate Microwave The use case describes the ability of the user to enable the HACS interaction
device to set the mode, time & duration of microwave according to the
request placed. It might result in an error message if there is nothing placed
inside the microwave.
2.6 Operate Security System The use case describes the ability of the user to send the command to the
security system, which sets its state & level. The state can be ON or OFF.
The level can be 1,2,3,4 depending on the stringency of the security
required.
1.2 Actor List
Use Case List
User-x
Places Request
Service Provider
Security System
Maintanence
Agency
Trouble Shoot
Lights
Operate Lights
Operate AC
STORE REQUEST
Various devices are connected to HACS
Interaction Device and receives the
instructions to be implemented.
AC
DATA BASE
1.4 Use Case Glossary
Term Definition
Home appliances Home application are such as air conditioner, microwave
oven, lights and security system
Service Provider Service Provider who is responsible for implementing
the requested operation by sending a required command
to the HACS Interaction Device. For this, the User
enters the User id and PIN for authentication and then
device
SUD System under design. It is the computer program under
design.
Use case Records behavioral requirements for the SUD. It is a
contract for the behavior of the SUD.
Summary-level goal Involves multiple user goals. They show the context in
which the user goals operate. They show life-cycle
sequencing of related goals. They provide a table of
contents for the lower-level use cases.
User-level goal Goal that is of the greatest interest. It is the goal the
primary actor has in trying to get work done or the one
the user has in using the system.
Sub function-level goal Goals that is required to carry out user goals. Include
them only as you have to – they are needed on occasion
for readability or because many other goals use them.
For example, Find and Save, As are sub function-level
goals.
2.0 Use Cases
2.1 Place Request
Description The use case describes the ability of the user to place request for a specific operation to be
implemented on a particular appliance i.e. (A.C, Lights, Microwave, Security System).
Level User goal
Primary Actor(s) 1. User
2. Service Provider
Secondary Actor(s)
Precondition(s) 1. User devices (such as Cell Phone, Laptop or Palmtop) is access to service provider
trough any methods
i. Pont to point,
ii. Dial-up
iii. Internet cloud
iv. Wireless
v. Fixed IP etc.
2. The user has the valid ID, PIN along with the device ID & the operation code to be
implemented.
Minimal Guarantee System sends an error message when the requested task cannot be performed.
Success Guarantee Display message to the user that the requested task successfully performed.
Trigger User places a request for a specific operation.
Frequency On demand
Reference
2.1.1 Activity Diagram
2.1.2 Main Success Scenario
Action Response
1. The user accesses the service provider The service provider system displays login screen to the user.
through a remote device (such as Cell Phone,
Laptop or Palmtop).
2. The user specifies the Login ID, PIN and The system validates the information entered by the user if user
then user submits the details. <A1> is valid user of HAC System then system gives access to the
<A2><A3> user and displays the list of user home appliance control
devices.
3. The user specifies the device id and operation
to be performed (On / Off / Other control
parameter).
4. The user submits request to service provider 1. The service provider forward the request to the HACS
Interaction Device
A2. The user enters the wrong Login ID or PIN and submits the details
Action Response Next
Action
The user provides wrong Login ID or PIN and The system informs the user that Login ID and 2
submits PIN is not valid ID or PIN
B2. The user can enter a maximum of 25 Characters in the Login (ID), PIN
Rule\Constraint Description
The number of Characters in the login ID would E.g. Jhon-Pam-Kelly-12345.
be limited to twenty-five Characters only.
Version 1.0
1. Introduction
System Design Document must contain both – the Functional Specification and Class Description. This document describes
the behavior of HAC System as seen by an external observer, and contains the technical information and data needed for the
design. This document defines what the functionality will be, and how that functionality will be implemented.
SyDD depicts the Components – Business and System – for describing the system design. The Components described here
would be further sub divided into the Classes and for each of the Classes identified; all Methods and Attributes associated
with the Classes would be listed. The Methods relate to the “functions” and Attributes relate to the “database” part of design
considerations of the Classes respectively.
User Requirements
|
Use case document
|
High Level System Design: Functional Specification & Class Description
|
Detailed Design
|
Coding
Specifically, the functional specification translates the User and System Requirements into a technical description that:
Ensures that the system feature requirements are correctly understood before moving into the next step, the software
design or the detailed design process.
Clearly and unambiguously provides all the information necessary to design the software at the higher level.
Classes identified; all Methods and Attributes associated with the Classes would be listed.
2. Purpose
The purpose of this document divided design into two parts Functional Specification and Class Description. Here SyDD
describes the Functional Specifications of HAC System, and the Classes of HAC System.
3. Business Components
The following summarizes the module specific business components.
Sr. No. Name Description
4. System Component
Sr No. Name Description
ClsUser -The class holds the information of various users. This information refers to their UserID, name & address
associated to each other.
Sr. No. Class Name Class Attributes Methods Functional details
1 User UserId requestaccess Places a request with the service provider for the
Name access to HACS
Address
sendcommand Pass on the requested command along with the
user & PIN to the service provider
ClsUser-X - This is a sub class of USERS & inherits the properties of the class USERS. This class holds the
information of a particular user, named ‘X’.
Sr. No. Class Name Class Attributes Methods Functional details
2 User-X UserId opname() It is used to send the details of operation to be
performed.
ClsServiceProvider – The class holds the details of users associated with their unique PIN along with the services they
can access.
Sr. No. Class Name Class Attributes Methods Functional details
3 ClsServiceProvider ProviderID acceptreq() These function used to process the request it
Pin receives for the access of a particular HACS
Services
reqPIN
acceptcmnd
reporterror().
acceptreq() This function used to process the request it
receives for the access of a particular HACS
reqPIN() This function sends a request to the user for the
PIN
acceptcmnd This function processes the request for an
operation sent by the user & forwards it to the
HACS Interaction Device.
ClsHacsIntrDevice The class holds the IDs for various appliances & the command that can be processed for a particular
device.
Sr. No. Class Name Class Attributes Methods Functional details
4 ClsHacsIntrDevice Device ID checkstatus() Send a request for the status of a device
Command
settime(),
setduration()
returnstatus() This function sends a message to the HACS
interaction device about its status
ClsAcController The class holds the ID of a particular AC along with the mode & temperature
Sr. No. Class Name Class Attributes Methods Functional details
6 ClsAcController ID swON(), These function used to switch it ON, switch it
Temperature OFF & to change the temperature settings
Status respectively
swOFF(),
settepm()
returnstatus() This function sends a message to the HACS
interaction device about its status.
ClsLightController The class holds the information of various lights at the house
Sr. No. Class Name Class Attributes Methods Functional details
7 ClsLights ID switchON The functions it performs are switchON,
Controller Name switchOFF & returnstatus().
Status
switchOFF
returnstatus().
ClsSecSysController The class holds the device ID of the security system along with its status & mode.
Sr. No. Class Name Class Attributes Methods Functional details
8 ClsSecSysController ID setlevel() The functions are used to set the level of
Status stringency, switching ON & switching OFF the
Mode security system.
swON
swOFF
7. Class Diagram
8. Sequence Diagram for Lights
Sequence diagrams are closely related to Communication diagrams and show the sequence of messages passed between
objects using a vertical timeline
Requests for PIN & the device ID with the required operation
Enter the PIN with the ID of Lights & their required state.
Add Request
Update Request
Send Message:(SUCCESS/FAILURE)
Lights
8: Return Status
11: Send Message: (FAILURE/SUCCESS)
6: Add Request
10: Switches the required lights according to the request. 12: Update Request
Database
USER Service HACS Interaction Data Base A.C. Controller A.C. Maintenence
Provider Device Agency
Requests for PIN & the device ID with the required operation
Add Request
Update Request
Maintenence
Agency
13: Send Message: (SUCCESS/FAILURE)
5: PIN Verified: Sends the instruction for the required operation.
A.C.
8: Return Status
11: Sends Message: (SUCCESS/FAILURE)
10: Starts the A.C. accordingly. 6: Add Request
12: Update Request
Requests for PIN & the device ID with the required operation
Enter the PIN with the ID of Microwave with the required mode, duration & time.
Add Request
Starts the Microwave at the desired time with the given duration & mode.
The user request access to HACS. The service
provider asks for PIN and Device ID. The user
enters the Information. Then service Provider Send Message (SUCCESS/FAILURE)
interacts with the Interaction device, which
checks if or not microwave is empty. If not it
sets the timer and mode and starts it. If empty
it returns a error. Update Request
11: Starts the Microwave at the desired time with the given duration & mode.
Data_Bas
12: Send Message (SUCCESS/FAILURE) e
USER Service HACS Interaction Data_Base Security System Security Police Dept
Provider Device Controller System.
Requests for PIN & the device ID with the required operation
Enter the PIN with the ID of Security System & the state required.
Add Request
The user request access to HACS. Checks the status of the system.
The service provider asks for PIN
and Device ID. The user enters the
Information. Then service Provider
interacts with the Interaction device,
which checks the status of Security Return status
System and sets its state according
to the request.
Successful
Connected to
Service Provider
logged in
Send request
Wait for
feedback
Successful
Error
Feedback= Troubleshoot
ERROR
17. State Chart Diagram for Light System
Service Provider
Active
Sends Command
Ready Error
Database
Updated
Ready
Scanning
Request
Scanning Successful
Implementing
Command
Idle State
Receive command from the AC Device Controller, i.e. set status & temprature
Status= ON/OFF.
Temprature=As specified in the reqest, T.
Temprature != T
A.C. Temprature = T
Running.
Switch OFF requested
Error
19. State chart Diagram for Microwave
Idle State
Receive command from the Microwave Controller, i.e. set mode & time.
MODE=Normal/Slow/Fast/Reheat
Time= As specified in the request
Execute Command
Idle
Status= ON/OFF.
Mode= HI / NORMAL
Breakthrough Detected
ALARM
TRIGGERED
21. Package Diagram
To simplify complex class diagrams, you can group classes into packages. A package is a collection of logically related UML
elements.
ServiceProvi
CellPhone der
HACS Interaction
device
HACS Device
Controller Devices
Database
22. Component Diagram
The component diagram shows the organization and dependencies among the set of components of the system. The Home
Appliance Control System contains the following components:
login.dll
Service
Provider.exe
TroubleS
hoot.dll
HACSInteracti
onDevice.exe
deviceContr
ollerGUI.exe
Databas
e.dll
appliance.
dll
update.dl
l
The deployment diagram shows the configuration of run-time processing elements and the software processes living on them.
The nodes we have in our deployment diagram are:
-Trouble Shoot
-Database
-Cell phone Client
-Service Provider Server
-HACS Interaction Device
-Microwave Controller
-System Security Controller
-AC Controller
-Lights
-Microwave
-System Security
-AC
-Lights
Cellphone-client
ServiceProvider
Server HACS interaction
Device
Security System
Microwave Controller Light
Controller AC
Controller Controller
Micro Security AC
wave System Lights