Table of Contents

Mirella and HeKatE

Mirella was a prototype design and implementation tool for the first version of the XTT method.

It laid the foundation for the HeKatE Project.

The project has been discontinued, it is not compatible with HeKatE tools!

Old information is provided below (for historical reasons).

Introduction

Mirella is on of the results of the Ph.D. dissertation by Grzegorz J. Nalepa, Ph.D., entitled “Meta-Level Approach to Integrated Process of Design and Implementation of Rule-Based Systems”, 2004, AGH University of Science and Technology.

Mirella is an intelligent visual design tool supporting on-line verification of rule-based systems, based of the XTT knowledge representation. It is oriented towards designing reliable and safe rule-based systems in general. The main goal of the system is to move the design procedure to a more abstract, logical and graphical level, where knowledge specification is based on use of abstract rule representation. The designed graphical specification is automatically translated into a predefined XML (XTTML) knowledge format, so the designer can focus on logical specification of safety and reliability; simultaneously, practical code can be generated form a wide class of systems. On the other hand, formal aspects such as completeness, determinism, etc. may be automatically verified on-line during the design, so that it verifiable characteristics are preserved.

Mirella is based on the XTT knowledge representation method. The main idea behind new visual knowledge representation language called Extended Tabular-Trees aims at combining some of the existing approaches such as decision-tables and decision-trees by building a special a hierarchy of Object-Attribute-Tables. This hierarchy is based on the Psi-tree structure. The new language has some unique features such as: simplicity and transparency, due to an intuitive way of graphical knowledge specification, hierarchical, tree-like knowledge representation, highly efficient way of visualization with high data density using tables similar to Relational Database tables, power of the decision table representation, flexibility with respect to knowledge manipulation, analogies to the RDB data representation scheme, direct knowledge representation mapping into PROLOG schemes and rule-based systems.

Mirella and XTT have been discussed in more detail in several scientific papers, namely:

Mirella design

The architecture of Mirella consists of several modules and layers. There are four main system layers: environment it provides ways of importing, exporting and presenting knowledge base in both human and machine readable formats, visual - it allows for visual design of knowledge base, logic it provides means of formal verification of knowledge base, semantics it helps in adding domain-specific semantics to the knowledge base. The knowledge base itself is a repository for XTT based system description.

There are four principal modules of the system:

Mirella Architecture

Mirella implementation

The development platform for Mirella has been chosen with flexibility, portability and efficiency in mind. The platform consists of several middleware layers supporting GUI, canvas management, Prolog integration and XML handling; main components are:

The architecture described above is implemented in pure, ANSI C language, and is able to run on multiple platforms. While the environment is being implemented in the GNU/Linux environment, it can be easily ported to Sun Solaris, and possibly Windows platform.

The SWI-Prolog is a modern ISO-compliant portable Prolog compiler. The SWI-Prolog was selected due to its: flexibility, portability, availability, and possibility of integration with other software. It offers a bi-directional programming interface to and from ANSI C language allowing for easy integration with other code. It provides a built-in XML/RDF parser, suitable for direct XML processing and applications in the field of Semantic Web.

Mirella Development Platform

Screenshots

Below several real-life RBSs designs in Mirella are shown.

Mirella Thermostat

Mirella Traffic Example

Mirella Firewall Example

Availability

A beta version of the tool was made available in 2004. However, due to grave rework in XTT method itself, the codebase has beed discontinued.

Mirella experiences where the foundation for the HeKatE project