To jest stara wersja strony!


The HeKatE Case HELLO

Eliasz Kańtoch Tomasz Michalski

This case analysis is based on hekate process.

Introduction

Stages

The process is involves the following the stages described below.

Description

The aim of the system is to tell greetings based on the time of day and customer's attributes.

Conceptualization

Vocabulary

  • Greeting is a text that consists of salutation and title of the person.
  • Salutation is one of the following: Good Morning, Good Afternoon, Good Evening, Good Night.
  • Title of person is based on status of the person.
  • Status are age,martial status and gender.
  • Gender – male albo female
  • Martial status – married i single

Original Rules

Rule: 1   
if     the hour is 'between 0 and 11' 
then   greeting is 'Good morning'

Rule: 2   
if     the hour is 'between 12 and 17' 
then   greeting is 'Good afternoon'

Rule: 3   
if     the hour is 'between 18 and 22' 
then   greeting is 'Good evening'

Rule: 4   
if     the hour is 'between 23 and 24' 
then   greeting is 'Good night'

Rule: 5   
if     the gender is female 
and    marital status is married
then   title is 'Mrs'

Rule: 6   
if     the gender is female 
and    marital status is single
then   title is 'Ms'

Rule: 7   
if     the gender is male 
then   title is 'Mr'

Rule: 9   
if     the gender is female 
and    marital status is single
and    age < 10
then   title is 'Little'


Analysis

Input danta: hour, gender, martial_status and age. Output data: combination salutation with title.

Buiding ARD model starts from level 0 and attribute HelloSystem. Attribute is finalized into two attributes Greeting and Salutation and one physical attribute invitation. Next step is to show relation between attributes that were created. Attribute invitation is the input to the system it depends on two attributes. On the level 4 there is finalization Salutation into four phisical attributes gender, martial_status, salutation_text and age. On the next level Greeting is finalized to hour and greeting_text. Level six is the last level, where there are all dependences.

Conceptual design

General Conceptual Design

Directed Conceptual Design

We model the system aiming at matching the original rules.

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.

The whole process is shown below:

ARD diagram Corresponding THP VARDA model
<graphviz file=„hekate:therm-a0.dot”></graphviz> ard_att_add('Thermostat'), ard_property_add(['Thermostat'])
<graphviz file=„hekate:therm-a1.dot”></graphviz> <graphviz file=„hekate:therm-t1.dot”></graphviz> ard_att_add('Time'), ard_att_add('Temperature'), ard_finalize(['Thermostat'], ['Time','Temperature'])
<graphviz file=„hekate:therm-a2.dot”></graphviz> <graphviz file=„hekate:therm-t2.dot”></graphviz> ard_split(['Time','Temperature'],[ ['Time'],['Temperature']], [ [ ['Time'],['Temperature']]])
<graphviz file=„hekate:therm-a3.dot”></graphviz> <graphviz file=„hekate:therm-t3.dot”></graphviz> ard_att_add('Date'), ard_att_add('Hour'), ard_att_add(season), ard_att_add(operation), ard_finalize(['Time'],['Date','Hour',season,operation])
<graphviz file=„hekate:therm-a4.dot”></graphviz> <graphviz file=„hekate:therm-t4.dot”></graphviz> ard_split(['Date','Hour',season,operation],[ ['Date','Hour'],[season,operation]],[ [ ['Date','Hour'], [season,operation]],[ [season,operation],['Temperature']]])
<graphviz file=„hekate:a5f.dot”></graphviz> <graphviz file=„hekate:t5f.dot”></graphviz> ard_split([season,operation],[ [season],[operation]],[ [ ['Date','Hour'],[season]],[ ['Date','Hour'],[operation]],[ [season],['Temperature']],[ [operation], ['Temperature']]])
<graphviz file=„hekate:a6f.dot”></graphviz> <graphviz file=„hekate:t6f.dot”></graphviz> ard_split(['Date','Hour'],[ ['Date'],['Hour']],[ [ ['Date'],[season]],[ ['Date'],[operation]],[ ['Hour'],[operation]]])
<graphviz file=„hekate:a7f.dot”></graphviz> <graphviz file=„hekate:t7f.dot”></graphviz> ard_att_add(day), ard_att_add(month), ard_att_add(today), ard_finalize(['Date'],[day,month,today])
<graphviz file=„hekate:a8f.dot”></graphviz> <graphviz file=„hekate:t8f.dot”></graphviz> ard_split([day,month,today],[ [month],[day,today]],[ [ [month],[season]],[ [day,today],[operation]]])
<graphviz file=„hekate:a9f.dot”></graphviz> <graphviz file=„hekate:t9f.dot”></graphviz> ard_split([day,today],[ [day],[today]],[ [ [day],[today]],[ [today],[operation]]]
<graphviz file=„hekate:a10f.dot”></graphviz> <graphviz file=„hekate:t10f.dot”></graphviz> ard_att_add(hour), ard_finalize(['Hour'],[hour]), ard_att_add(thermostat_settings), ard_finalize(['Temperature'],[thermostat_settings])

Full Optimized Design

VARDA can automatically optimize the diagram, by re/collapsing the lowest ARD using TPH.

The subsequent optimized ARD levels (as recreated by VARDA) are given below:

:hekate:thermostat-ard.png

The Transformation Process History diagram is given below:

:hekate:thermostat-tph.png

Full ARD Model

Refined Conceptual Design

Physical Attribute Specification

Structuralization

XTT prototype generated by VARDA:

:hekate:thermostat-varda-xtt.png

Logical design

:hekate:thermostat-xtt.png

check if:

  • rules are consitant with the book
  • the xtt design is consistent with the book w.r.t seasons and temperature!
pl/miw/2009/piw09_hades_1/hekate_case_hello.1244578216.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0