









Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The home appliance control system (hacs) is a comprehensive system that allows users to remotely operate and manage various home appliances, such as microwave ovens, tvs, and garage doors, through remote devices like mobile phones, desktops, and palm-tops. The system provides a range of functionalities, including the ability to add or remove remote systems, schedule operations, maintain device status, and authenticate users. The hacs utilizes a class-based architecture, with classes representing different types of appliances (e.g., door/window, cooking appliance, av appliance) and their associated responsibilities and collaborators. The system also includes user and administrator roles, with the administrator having the ability to set access permissions for users to specific appliances. A detailed overview of the hacs, including its functional requirements, use cases, and sequence diagrams, making it a valuable resource for understanding the design and implementation of such a system.
Typology: Summaries
1 / 16
This page cannot be seen from the preview
Don't miss anything!
and configure it with HACS or delete an existing one when it is not used. Also the system administrator can create an account for a new user or delete existing account if it is no longer used.
A home appliance control system (HACS) is a system which is controlled by a remote system such as a mobile phone or a palm-top, and at the same time controls, monitors and coordinates home appliances such as air conditioner, microwave oven, garage doors, TV set, VCR, audio controller, indoor/outdoor lights, water sprinkler, home security system, bath tub controller, etc. In order to activate home appliances and to allow for different ways of cooking, the HACS needs mechanisms for communication between the different devices in the system, and for coordination among the various processes running on such devices. Note that the HACS needs mechanisms for adapting to different needs of the user as well. For example, when the user is very hungry, the microwave oven may need to respond to the user’s request that it operate maximally to cook the food as fast as it can. For another example, if the user is hungry, tired and may come home late, then the system may be asked to fully cook the meal by the expected arrival time, and periodic warming up every 10 minutes afterwards.
The HACS shall be adaptable. Any change is environment shall be detectable, and the HACS shall then be transformable through recognition of the change in HACS needed and the change recognized shall be enacted in the system. The system could be automatically adaptable or manually adaptable. Since speed is of paramount importance for any real-time system, it shall be given a priority comparable to that of the adaptability requirement. This presumably according to the customer needs. Detecting changes in the environment is usually a very time-consuming task, hence hurting speed. Similarly, detection of events could induce significant performance penalty.
The HACS shall also be safe. For example, the microwave oven should now blow up or become too hot to touch.
Use case diagrams are intended to model the functional requirements of the system. It shows a set of use cases and actors and their relationships. It is always selected to be the start point
of software design. The following figure shows the use case diagram of the HACS system from the end user point of view. Operate Microwave^ Microwave Operate TV TV Garage Door Operate Garage Door Cellphone Palm-top Remote System Add/Remove Remote System Admin Operate <
5.1.1 User User refers to the person who has an account and a password, can log in on HACS, and operate home appliances remotely by HACS. 5.1.2 Admin Admin is a kind of user who has special rights, for example Add/Remove Device and Add/Remove Remote System, other than basic operations. 5.1.3 Device Device refers to computer embedded home appliances that could be added onto HACS, configured, and operated remotely. 5.1.4 TV
5.2.3 Operate Microwave The use case Operate Microwave is a service provided for the users to operate on the microwave that is connected to HACS through remote systems. Users can send messages of cooking, defrosting, stopping, etc. 5.2.4 Operate Garage Door The use case Operate Garage Door is a service provided for the users to operate on the garage door that is connected to HACS through remote systems. Users can send messages of opening and closing it. 5.2.5 Operate TV The use case Operate TV is a service provided for the users to operate on the TV that is connected to HACS through remote systems. Users can send messages of turning it on, turning it off, increasing the volume, decreasing the volume, and changing channels. 5.2.6 Check/Update Status The use case Check/Update Status means that the HACS keeps a record of the state of all the connected devices. It keeps updating their states from time to time. When users require the state information of some device through remote systems, the HACS send the latest state of that device to the remote system that requested. 5.2.7 Control Sometimes the device may malfunction. For example, the microwave may keep cooking for an hour, which is not required by the users. The use case Control means it can detect such malfunctioning by updating the state of the devices, stop it (using operate use case), and inform the user what happened. Another case there might be some emergency happens, for example, a break in through the garage door or fire starts, the HACS shall detect them and notify police department and fire department respectively. 5.2.8 Add/Remove Device The use case Add/Remove Device is a service for the users to add a device, for example, microwave, TV, and garage door, onto the HACS to be controlled remotely and automatically, as well as remove a device from the HACS that is no longer to be controlled. When a device is connected to HACS, both the HACS and the device are configured in order to collaborate with each other. 5.2.9 Add/Remove Remote System The use case Add/Remove Remote System is a service for the users to add or remove a remote control system, for example, cell phone and palm-top, onto the HACS, so that the remote system can be used to communicate with the HACS and control the devices.
6.1.1 Appliance Class The Appliance class shall act as a common parent class to all of the different types of appliances. The use of a common parent class allows for a certain interface between the HACS controller and the appliances to be enforced. Enforcing a common interface ensures that the entire system does not need to be recompiled to add a device to the system, but rather that appliances can be added or removed from the system dynamically simply by adding the appliance’s compiled class file to the system’s directory and then instructing the system to add the appliance to the system. 6.1.2 Door/Window, Cooking Appliance, and AV Appliance Class The Door/Window, Cooking Appliance, and AV Appliance classes serve as an example of the appliance type layer of classes. These classes will directly inherit from the Appliance class, but will not themselves represent physical appliances. Rather, this layer serves to enforce a common interface and common properties among a given type of appliance. 6.1.3 Garage Door, Microwave, and Device Classes The GarageDoor, Microwave, and Device classes are examples of the classes the represent actual physical appliances. These classes inherit from their respective appliance type class, and thus from the Appliance class. These classes will contain the actual implementation of the appliance function. Because all these classes inherit from the same Appliance class, all can be indexed by the HACS system and can be sent commands in the same manner. 6.1.4 HACS Controller Class
Flow of events:
Flow of events:
Flow of events: