This is an old revision of the document!
HeKatE Case Thermostat
Introduction
The ARD process can be easily explained using the following example.
It is a reworked Thermostat case.
The main problem described here is to create a temperature control system
for an office.
The design process is shown below.
Description
Conceptualization
Vocabulary
Original Rules
Rule: 1
if the day is Monday
or the day is Tuesday or the day is Wednesday
or the day is Thursday or the day is Friday
then today is a workday
Rule: 2
if the day is Saturday
or the day is Sunday
then today is the weekend
Rule: 3
if today is workday
and the time is 'between 9 am and 5 pm'
then operation is 'during business hours'
Rule: 4
if today is workday
and the time is 'before 9 am'
then operation is 'not during business hours'
Rule: 5
if today is workday
and the time is 'after 5 pm'
then operation is 'not during business hours'
Rule: 6
if today is weekend
then operation is 'not during business hours'
Rule: 7
if the month is January
or the month is February or the month is December
then the season is summer
Rule: 8
if the month is March
or the month is April or the month is May
then the season is autumn
Rule: 9
if the month is June
or the month is July or the month is August
then the season is winter
Rule: 10
if the month is September
or the month is October or the month is November
then the season is spring
Rule: 11
if the season is spring
and operation is 'during business hours'
then thermostat_setting is '20 degrees'
Rule: 12
if the season is spring
and operation is 'not during business hours'
then thermostat_setting is '15 degrees'
Rule: 13
if the season is summer
and operation is 'during business hours'
then thermostat_setting is '24 degrees'
Rule: 14
if the season is summer
and operation is 'not during business hours'
then thermostat_setting is '27 degrees'
Rule: 15
if the season is autumn
and operation is 'during business hours'
then thermostat_setting is '20 degrees'
Rule: 16
if the season is autumn
and operation is 'not during business hours'
then thermostat_setting is '16 degrees'
Rule: 17
if the season is winter
and operation is 'during business hours'
then thermostat_setting is '18 degrees'
Rule: 18
if the season is winter
and operation is 'not during business hours'
then thermostat_setting is '14 degrees'
Analysis
Conceptual design
General Conceptual Design
First, it is stated that there is a system to be designed which is described by
a single conceptual attribute Thermostat
.
It is so called level 0 of the design.
Refining knowledge about what is the purpose of the system makes a transition to the diagram at level 1; it is a finalization.
It is stated that the thermostat controls temperature and this control has something to do with time.
That is why Thermostat
is finalized into Time
and Temperature
.
Furthermore, at level 2, it is stated that Temperature
depends on Time
: there are two properties identified in the
system and a functional dependency between them.
The design process continues, through splits and/or finalizations, until all physical attributes (indicated with lower case letters) are identified and relationships among them are stated which is presented at level 8.
Subsequent ARD levels are given below:
The Transformation Process History diagram is given below:
XTT prototype generated by VARDA:
Full ARD Model
See therm-model.pl
in varda
Directed Conceptual Design
Refined Conceptual Design
Physical Attribute Specification
Structuralization
Logical design