This is an old revision of the document!


The HeKatE Design Process

The HeKatE project aims at providing an integrated design process described below.

Introduction

This is an integrated design process, based on the concept of the executable design where the “design” means building a complete system.

Some basic features of this process are:

  • knowledge-based,
  • based on the abstraction-specification relation,
  • hierarchical,
  • integrated,
  • formalized.

Abbreviations used:

  • TBC = To Be Considered
  • WIP = Work In Progress
  • FIXME = guess what :-)

Stages

The process is involves the following the stages described below.

  • Main File: hekate_case_NAME:start
    • what should contain this file? Some links to other case pages, maybe something more?Krzysztof Kaczor 2009/07/14 19:41

Description

The first stage is a general natural language description. A “story” that a customer tells the designer.

The transition from this stage requires some basic NL (Natural Language) processing, possibly through simple NL parser or semi-formalization, e.g. structured english.

  • Input: users's descriptions
  • Output: text-based description
  • Files: hekate_case_NAME:description
  • Remarks: the encoding of this stage is non existant, KD can be considered FIXME

Conceptualization

In this stage some primary concepts are identified. These can be attributes, properties, objects (in the general sense), or rules.

The output of this stage is a preliminary list of possible attributes, properties. The list may be somehow structured, or formalized. Though, it is not mandatory.

  • Input: text-based description
  • Output: possible attributes, properties, etc
  • Files: hekate_case_NAME:conceptualization
  • Remarks:
    • the encoding of this stage is non existant, KD can be considered FIXME
    • in some cases the original design can contain some concepts!

Vocabulary

In a general case, the concepts are identified by the designer and captured with use of some simple high-level representation. This is a preliminary attribute identification.

  • Input: text-based description, conceptualization
  • Output: possible relations between attributes, properties, etc (At this stage some loose semantic relations can be identified. Some methods that could be used here are SBVR, ontologies, etc.)
  • Files: hekate_case_NAME:vocabulary
  • Remarks:
    • the encoding of this stage is non existant, KD can be considered FIXME
    • in some cases the original design can contain some vocabulry! (see UServ, etc)

Original Rules

In a case where an already designed system is being modeled, some ready rules can be provided. In the HeKatE approach these rules should be considered a mean of conceptualization only. These rules are often informal, or semi-formal.

  • Input: original rules from the case study, tables, etc, possibly a control structure in case of drools
  • Output: observations? FIXME
  • Files: hekate_case_NAME:rules
  • Remarks:
    • In the business rules approach number of rule types are identified, that do not map in a straightforward way to the HeKatE logical design.

Conceptual design

The conceptual design stage is the beginning of the formalized hierarchical process. Based on the concepts, or vocabulary, the ARD properties and attributes are being identified, as well as functional dependencies between them stated.

See the ARDplus design for the detailed specification.

  • Input: previous information, description
  • Files:
    • hekate_case_NAME:ard_design
    • hekate_case_NAME:ard_design.png (all levels)
    • hekate_case_NAME:ard_diagram.png
    • hekate_case_NAME:ard_diagram.dot
    • hekate_case_NAME:tph_diagram.png
    • hekate_case_NAME:tph_diagram.dot
    • hekate_case_NAME:ard_model.png (sha!)
    • hekate_case_NAME:ard_model.dot (sha!)
    • hekate_case_NAME:hekate_case_NAME-ard.hml
  • Output:
    • The output of this stage is the low-level ARDplus diagram with physical attributes, plus attribute domains, and types description.
    • This output as a whole is encoded with use of the HeKatE Markup Language.
  • Remarks:
    • test new shell in VARDA
    • test set-based representation in VARDA
    • compare VARDA with HJEd

General Conceptual Design

In a general case, the ARD diagram is built using the vocabulary previously identified.

DEFAULT CASE

Directed Conceptual Design

In a case where the original rules were provided, the physical attributes identified during the design should match the original rules. The lowest ARD level should match the structure of the original rule-base.

FIXME

Refined Conceptual Design

This is also a case where the original rules were provided. However, the design is not aimed at matching the original rule-base. The goal is to improve the original design with the HeKatE approach.

FIXME

Physical Attribute Specification

This is actually the partial output of the conceptual design in a standalone form, that is only the appropriate ATTML encoding. It is a natural input for the next stage. It is also a point, where the formalized attribute specification can be shared with other systems, tools and approaches.

FIXME

  • now possible only in hqed
  • provide xslt for wiki export (WTF!)
  • Input: previous ard design
  • Files:
    • hekate_case_NAME:hekate_case_NAME-atts.hml
  • Output: physical att specs in HML
  • Remarks:
    • at this stage it should be possible to import attributes from other formalized sources, e.g. RIF-based systems.
    • this should be compatible with the attributive logic concepts and definitions.

Structuralization

Using a partial output of the conceptual design that is only the apropriate ARDML dependencies.

In this stage a fully or semi automated generation of the XTT table schemas (rule prototypes) is performed. Using the lowest ARD level XTT schemes are generated. The inference structure (table-to-table links) is also built which serve as a guideline for future XTT processing order.

The algorithm is given in the ECAI submission FIXME.

The output of this stages is the XTT schemes structure encoded with the use of the XTTML.

  • Input: previous ard design in hml
  • Files:
    • hekate_case_NAME:hekate_case_NAME-prot.hml
  • Output: xtt tabs prototypes
  • Remarks:

Logical design

In this stage the actual design of the XTT tables is put forward. Tables are filled with rules, and extra, fine-grained links can be added (row-to-row) links.

See the XTT design for the detailed specification.

  • Input: xtt prototype
  • Files:
    • hekate_case_NAME:hekate_case_NAME-xtt.hml
    • hekate_case_NAME:hekate_case_NAME-rt.pl
    • hekate_case_NAME:hekate_case_NAME-cb.pl (callbacks)
  • Output:
    • The output of this stages is the full XTT structure encoded with the use of the HML.
  • Remarks:
    • compare xtt proto generation by varda and hqed! maybe it should be moved to structuralization ?Krzysztof Kaczor 2009/07/14 19:39
    • where callbacks are written?

On-Line Analysis

In this stage the logical description of the XTT is used to conduct a formal analysis of selected formal properties such as:

Show functions of:

  • HQEd
  • HalVA
  • Input: full xtt design
  • Files:
    • hekate_case_NAME:hekate_case_NAME-halva1-9.hml (differnet cases) FIXME
  • Output: reports?
  • Remarks:

Physical Design

The executable design generation.

The XTT representation has a clear, well-defined Prolog representation. This representation is fully automatically generated from the XTT design.

  • Input: full xtt design
  • Files:
    • hekate_case_NAME:hekate_case_NAME-rt.pl FIXME
  • Output: reports?
  • Remarks: FIXME
    • different inference modes?

UML Serialization

  • KKL: ARD+XTT
  • JSJ?

Java Serialization

  • LLK: Java Serialization x2

SemWeb Serialization

  • WTF: daal
  • MKL: swrl!
  • JSJ?

Rule Engine Implementation

  • LLK: Drools

Integration

The stages are integrated with:

  • knowledge encodings
  • transformations
  • other?

FIXME This needs filling!

Encoding

Currently XML encodings to be used:

  • ATTML
  • ARDML
  • XTTML

The are now integrated into HML the Hekate Markup Language.

Knowledge Markups

Aspects:

  • ATTML ↔ RDF
  • RIF ↔ ARD
  • RIF ↔ XTT
  • SWRL ↔ XTT
  • ontologies ↔ ATTML
  • ontologies ↔ ARDML

Transformations

FIXME HatHoR

Tools

Current tools:

  • VARDA
  • HJEd
  • HQEd
  • HeaRT
  • HaThoR

Case Template

====== Introduction ======

===== Description =====

===== Conceptualization =====

==== Vocabulary ====

==== Original Rules ====

===== Analysis =====

===== Conceptual design =====

==== General Conceptual Design ====

==== Directed Conceptual Design ====

=== Full ARD Model ===

==== Refined Conceptual Design ====

===== Physical Attribute Specification =====

===== Structuralization =====

===== Logical design =====
hekate/hekate_process.1247593447.txt.gz · Last modified: 2019/06/27 16:00 (external edit)
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