The following UML class diagrams illustrate some parts of the Smart Home Framework (SHF) to quickly give you a high-level idea of its architecture. Detailed UML Class diagrams (and other types of diagrams) can be automatically generated with a UML-Java compatible tool. Please see click here to view our paper (currently submitted to AAAI 2013 Late Breaking Track) that describes these packages.

Note: The overall collection of below diagrams can be downloaded here. You will need NClass (a free and open-source UML Modelling tool) , which can be downloaded here, to view it.

The SHF supports both onsite (e.g., renewable generation such as solar panels, or non-renewable generation such as micro-CHP units) and offsite (i.e., the electricity grid) generation. The following class diagrams shows the basic structure of this package.


Click here to enlarge image

The SHF supports onsite (e.g., electric batteries in homes) and mobile (e.g., electric battery in an electric vehicle) storage.


Click here to enlarge image

Load Events:
The SHF describes appliance usage in terms of  Load Events. It provides a rich set of load types to model (i) deferrable and non-deferrable loads (ii) interruptible and noninterruptible (iii) critical load (loads with highest priority) (iv) base load (e.g., the fridge) (iv) or a combination of these (e.g. a deferrable-interruptible-critical event). A load event has certain attributes depending on its type. For example, a non-deferrable load type has start and end time attributes to describe its time-span. In addition, the SHF also supports a simple load type which provides a simple way to model load requirements in an appliance-independent manner. This load type is useful when the focus is on the general load requirements, regardless of the appliances.


Click here to enlarge image

Electric Vehicle:
The SHF contains classes that support modelling of electric vehicle (EVs). It also provides classes to described EV usage (e.g., travel events, journeys) and its attributes (e.g., storage).


Click here to enlarge image

A smart home can contain multiple appliances as described by the following diagram. Appliance usage is described in terms of Load Events (see above).


Click here to enlarge image