Principles of parameterized programming
Software reusability: vol. 1, concepts and models
Eco-logic: logic-based approaches to ecological modelling
Eco-logic: logic-based approaches to ecological modelling
A calculus for the construction of modular Prolog programs
Journal of Logic Programming
KADS: a modelling approach to knowledge engineering
Knowledge Acquisition - Special issue on the KADS approach to knowledge engineering
(ML)2: a formal language for KADS models of expertise
Knowledge Acquisition - Special issue on the KADS approach to knowledge engineering
Applying Prolog programming techniques
International Journal of Human-Computer Studies
Structure-preserving specification languages for knowledge-based systems
International Journal of Human-Computer Studies - Special issue: verification and validation
Lightweight Formalisation in Support of Requirements Engineering
Automated Software Engineering
Basic Prolog Schemata
Hi-index | 0.00 |
Many of the systems which we, and those who have worked with us, have built were intended to make it easier for people with particular backgrounds to construct and understand logic programs. A major issue when designing this sort of system is pragmatics: from the many logically equivalent ways of describing a program we must identify styles of description which make particular tasks easier to support. The first half of this paper describes three ways in which we have attempted to understand the pragmatics of particular domains using well known methods from computational logic. These are: design using parameterisable components; synthesis by incremental addition of program slices; and meta-interpretation. These are helpful in structuring designs but do not necessarily provide guidance in design lifecycles - where less detailed designs are used to guide the description of more detailed designs. The second half of this paper summarises an example of this form of guidance.