Information systems development: a rule-based approach F Van Assche*, P Layzellt, P Loucopoulost and G Speltincx* This paper seeks to demonstrate an approach to software engineering for information systems that will lead not only to good information system creation, but will also expli- citly maintain the representation of the business knowledge so as to allow for more effective system evolution and its active exploitation at run time. A rule-based develop- ment environment, known as RUBRIC, is described, which serves as the means of achieving these objectives. Keywords: software engineering, software tools, informa- tion systems, programming environment, RUBRIC The growing complexity of information systems, and the ensuing problems of software engineering, have high- lighted the inadequacy of the informal way of construct- ing such systems. These problems manifest themselves in computer systems which are often unmanageable, unreliable, inflexible, and hence difficult to maintain ~-3. The response to these problems has been the emergence of a number of system development methods, each of which seeks to provide a coherent development path by providing a mechanism through which the desired aspects of a system can be modelled, an underly- ing philosophy and approach by which models can be developed, and a set of development steps by which resources can be organized and allocated. Furthermore, many methods now have associated computer-based tools, aimed at improving productivity, e.g. Information Engineering 4, JSD s, NIAM 6, SADT 7, SASD s and STRADIS 9. One major shortcoming of these methods is that the modelling of the real-world is achieved only in informa- tion systems terms, i.e. processes and data, rather than in terms more appropriate to the problem space environ- ment. The result is that, whereas end users perceive and often define a business system in terms of policies or rules and exceptions applying to these rules, such a view *James Martin Associates, Rue de Geneve 10, Evere, 1140, Belgium tDepartment of Computation, University of Manchester Institute of Science and Technology, PO Box 88, Manchester, UK. is not directly visible in the derived system specification, using contemporary methods. An information system is directly related to the business system within which it operates, and is thus a manifestation of some business requirements for opera- tional control and the support of decision making. Current approaches, by concentrating solely on the in- formation system aspects, fail to represent the effects of the business environment on the information system itself, i.e. the rules which govern the behaviour of an information system (the business rules) are not explicitly represented (if represented at all), but instead are hard- coded into program sources. This low level representation of business rules results in computer systems which are difficult to maintain, as maintenance staff, who receive requirement changes in terms of the business environment, must first translate the requirement into the same terms in which the infor- mation system is described and represented. This there- fore provides a wide scope for poor translation and misunderstanding, leading to systems which fail to meet their requirements' o. Hence, a new paradigm is required. This paradigm states that development of an information system should be viewed as the task of developing or augmenting an organization's knowledge base 11-~ a. In order to realize this, an integration of database technology and techniques in the domain of knowledge representation is employed. The integration is based on concepts derived from the theory on deductive databases, object-oriented databases, usage of rules, semantic networks and frames for modelling information systems. Existing and proven techniques, applied in software engineering, offer a reference framework to achieve this integration. The paradigm that emerged from this allows them to model the knowledge on the organization explicitly as the basis for the development of information systems. In particular, the need for explicit policy to be identify- able throughout the development of a system, and to remain distinct from the procedures and elementary data operations necessary to implement the policy, is being recognized. 0950-7051/88/040227-08 $03.00 © 1988 Butterworth & Co (Publishers) Ltd Vol 1 No 4 September 1988 227