KBE System Definition

Dave Cooper of Genworks published an AIAA paper where he defines the minimum set of features for a Knowledge-Based Engineering (KBE) system. These features include:

Functional Coding Style: programs return values, rather than modifying things in memory or in the model.

Declarative Coding Style: there is no “begin” or “end” to a KBE model – only a description of the items to be modeled.

Runtime Value Caching and Dependency Tracking: the system computes and memorizes those things which are required – and only those things which are required (no more, no less).

Dynamic Data Types: Slot values and ob ject types do not have to be specified ahead of time. They are inferred automatically at runtime from the instantiated data. Their datatypes can also change at runtime. In fact, the entire structure and topology of a model tree can change, depending on the inputs.

Automatic Memory Management: When an object or piece of data is no longer accessible to the system, the runtime environment automatically reclaims its memory.

The paper is well worth a read as it provides some interesting historic insight into KBE systems and the deficiencies of pseudo-KBE systems such as CATIA Knowledgeware.

1 comment for “KBE System Definition

  1. a.s.mitchell
    Mon 19 Jan 2009 at 4:51 AM

    I don’t agree with Dave Coppers paper. What sort of technology you choose to develop your system is dependent on the skills of the developer and user base.

    The focus on functional languages and especially Lisp would rule out all but a few developers and most of your users.

    Anyone that says dynamically typed languages are good is crazy. Basic typing errors that can be caught at compile time now become runtime errors resulting in less robust code.

    The aerospace industry (boeing ) is used as example of KBE success. In reality it is an example on how to get stuck with old technology and an expensive legacy system that only a few developers can maintain. It has also meant that they haven’t been able to leverage the latest technology available in the market place.

    There is a definite start and finish to a KBE model as you are trying to capture the optimum workflow. You can’t do an analysis before there are loads, geometry etc. are defined.

    I do agree with the point that new web-based technologies and OS independence are the way to go. However, this seems in contradiction with his previous requirement of the system having to last upto 50 years. Web-based technologies currently are lucky to have a life span of 5 years.

    Successful KBE systems in industry act as the glue around other proprietary systems. Not the system on which everything else sits.

Leave a Reply

Fork me on GitHub