Model-Based Reasoning: A Principled Approach for Software Engineering

Research output: Contribution to journalArticlepeer-review

7 Citations (Scopus)

Abstract

The software engineering industry suffers from almost unmanageable complexity both in the products it produces and in the processes of production. One of the current shortcomings in the software production process is the weakness of the models used. This paper makes observations on the role of knowledge in engineering and examines the central role of models and simulation. We develop an argument for the application of certain new forms of modelling methods in software engineering in order to impose more discipline and give a principled framework for building models that can support the software life-cycle. The concept of a model is examined in depth and different characteristics and types of model are defined. This introduces the relatively new concept of qualitative models and their use in the field known as model-based reasoning. Unlike previous knowledge-based methods, model-based reasoning has several important advantages. Although very few model-based software projects exist, we illustrate how this approach can be developed by drawing on applications from traditional engineering. It is argued that, because qualitative modelling offers great power for addressing the issue of complexity, such models have considerable potential as high-level abstractions of software products. These could form the core of tools for the management and support of the software development process through the whole product life-cycle.
Original languageEnglish
Pages (from-to)179-189
Number of pages11
JournalSoftware - Concepts and Tools
Volume19
Issue number4
DOIs
Publication statusPublished - 2000

Keywords

  • Model-based systems
  • Qualitative reasoning
  • Software modelling

Fingerprint

Dive into the research topics of 'Model-Based Reasoning: A Principled Approach for Software Engineering'. Together they form a unique fingerprint.

Cite this