Information systems: a knowledge-based perspective

Information systems: a knowledge-based perspective

introduction Information systems: a knowledge-based perspective The ever increasing demand for effective and flexible information systems, coupled wit...

168KB Sizes 0 Downloads 84 Views

introduction Information systems: a knowledge-based perspective The ever increasing demand for effective and flexible information systems, coupled with the shortcomings of traditional techniques in the development and operation of these systems, has highlighted the importance of deriving more powerful concepts, techniques and tools for improving software productivity and functionality. One promising emerging paradigm is one which views the development and operation of information systems as a knowledge-centred activity. This particular view has recently given rise to many major research activities with the common theme of developing more advanced information systems environments. These activities fall mainly under three broad categories:

Software development through knowledge base construction This approach is based on the premise that in software construction the most important task is the development of the knowledge base as opposed to programs. This knowledge base is a representation of organizational information structures, happenings, rules and constraints which need to be explicitly represented throughout a system's lifecycle. In this respect, development and maintenance of software is about processing the knowledge of the people that carry out the tasks within the organization. Such an approach has far reaching implications, not least the fact that in the future, instead of performing maintenance on programming code (an activity generally regarded as the main bottleneck in a system's lifecycle) any changes will be accommodated by making reference to a central modular knowledge base.

Assisting in the process of systems development Assistance in the development of information systems has long attracted the interest of researchers and practitioners. Automated facilities have progressed from program generators and data dictionaries to tools which support proprietary development methods, and more recently to Computer Assisted Software Engineering (CASE) shells. Research in the use of knowledge-based techniques is aimed at providing support environments which play an active rather than just a passive role in assisting developers. Active support can result from the utilization of knowledge about the method used, the provision of enhanced facilities for the elicitation of user requirements, and the explicit documentation of design decisions taken during the development process.

Interaction between knowledge bases and databases In many respects, this work represents the underlying technology which supports the various activities discussed above. In the long term, knowledge base management systems will be the main contributory factor towards the aim of knowledge-richinformation systems environments. The contribution of knowledge bases is in the provision of better semantic models and the ability to carry out useful reasoning about the operational characteristics of a system, including issues such as transaction handling, constraint handling, etc. On the other hand, the contribution of databases is in the ability to have 'large' knowledge bases supported by facilities which are normal features in database systems, e.g. concurrency control, storage management, security, recovery, etc. These main research directions were explored in March 1988 at an Vol 1 No 4 September 1988

195

introduction

,

International Workshop held at the University of Manchester Institute of Science and Technology (UMIST) with the support of the Alvey Directorate and the Commission of the European Communities. Researchers from Alvey, ESPRIT and other national research and development programmes presented and debated many aspects relating to their work. This issue of Knowledge-Based Systems is devoted to a selection of papers presented at the workshop. Of these, three papers report on work funded under ESPRIT, two papers report on Alvey funded projects, and one on research funded by the Rome Air Development Center (RADC) in the USA. The paper 'Modelling software processes in a knowledge base: the case of information systems' by Matthias Jarke et al. deals with a representation scheme for software process knowledge which centres on the concept of design decisions. This approach is explored within the DAIDA project, which has many of its conceptual foundations based on the results of the TAXIS project carried out by John Mylopoulos and his colleagues at Toronto University over the past eight years. Jacques Hagelstein, in his paper 'Declarative approach to information systems requirements', concentrates on one area of the software development process, namely requirements analysis and specification. Hagelstein's work in the METEOR project is concerned with shifting the emphasis from the target software system towards the application domain. The paper presents the ERAE model, which is used as the knowledge representation formalism for modelling user requirements. In 'Knowledge-Based Software Assistant' Kevin Benner discusses the application of knowledge-based techniques in assisting software developers. Benner describes the main components of the KBSA system, which comprise the requirements assistant, the specification assistant and the project management assistant. Frans van Assche et al. in their paper 'Information systems development: a rule-based approach', discuss a new paradigm for constructing information systems developed as part of the RUBRIC project. The paper reports on the conceptual foundations, the design discipline and the implementation environment which support a rule-based paradigm. The paper by David Budgen and Mustafa Marashi, 'MDSE Advisor: knowledge-based techniques applied to software design assessment', is concerned with design metrics for the MASCOT development method. Finally, 'Co-operation and communication within an active IPSE' by Thomas Rodden et al. covers an important area of work in software development. The paper describes the architecture of an Integrated Project Support Environment (IPSE) which makes use of techniques from the areas of knowledge-based systems, office automation and object-oriented programming. Many have argued that knowledge-based systems have so far been used in small, well-defined application areas. Information systems, by their very nature, represent 'development in the large', and with their wide industrial applicability provide us with a unique opportunity to apply knowledge-based techniques in real-life applications. In this respect, I feel that the papers in this issue represent a major milestone on the road to industrial applicability of knowledge-based systems. Dr Pericles Loucopoulos University of Manchester Institute of Science and Technology, UK 196

Knowledge-BasedSystems