Giving Structured Analysis Techniques a Formal and Operational Semantics with KARL

Dieter Fensel, Jürgen Angele, Dieter Landes, Rudi Studer · Berichte des German Chapter of the ACM · 1993

The “Knowledge Acquisition and Representation Language” (KARL) (cf. [12, 6]) is a formal and operational knowledge specification language developed in the domain of expert systems. It offers language primitives to describe static data as well as the functional and the dynamic behavior of processes. Because these different language primitives are connected by a powerful and flexible mechanism, KARL allows the integrated representation of requirements within one formal and executable language and therefore the integration of prototyping into a life-cycle oriented software development process. KARL has been developed in order to formalize and operationalize specifications of knowledge-based systems. As software engineering and knowledge engineering have many features in common, which is often hidden because similar things are expressed using quite different terminologies, we investigate in this paper how KARL can be used in the framework of methods developed in the software engineering domain. We show how KARL can be used to define a formal and executable semantics for data dictionaries, dataflow diagrams, process specifications, and control flow specifications which are well-known means of Structured Analysis (cf. [35]).

Read the paper · More papers on PaperTik