Software Engineering and Knowledge Engineering

Software Engineering and Knowledge Engineering

Expert Systems with Applications PERGAMON Expert Systems with Applications 23 (2002) 345±347 www.elsevier.com/locate/eswa Editorial Software Engin...

126KB Sizes 2 Downloads 311 Views

Expert Systems with Applications PERGAMON

Expert Systems with Applications 23 (2002) 345±347

www.elsevier.com/locate/eswa

Editorial

Software Engineering and Knowledge Engineering

1. Introduction

2. The SEKE hypothesis

In this special issue of Expert Systems with Applications, we present selected papers from the 13th International Conference on Software Engineering and Knowledge Engineering (SEKE 2001) (http://www.ls. ®.upm.es/seke01/). This conference aims at bringing together experts in knowledge engineering (KE) and software engineering (SE) to discuss relevant results. Special emphasis is placed on the transfer of methods between the two domains. SEKE 2001 was held in Buenos Aires, Argentina, on 12±15 June, 2001. Twenty-two countries from all ®ve continents were represented in the conference program. As worldwide response to the call for papers, we received over 100 contributions, which allowed us to select high-quality submissions. A rigorous refereeing process selected around 50 full papers and eight short papers for presentation at the conference. The SEKE Conference provides a unique, centralized forum for academic and industrial researchers and practitioners to discuss the application of either SE methods in KE or knowledge-based techniques in SE. The ®rst International Conference on SE and KE was held in the USA in 1988. Since then, a conference has been held every year, and the thirteenth took place in 2001. In its 13-year history, it is the ®fth time that the SEKE conference has been held outside the USA. The present steering committee is composed of: Shi-Kuo Chang (University of Pittsburgh and Knowledge Systems Institute), V. Basili (University of Maryland), B. Buchanan (University of Pittsburgh) and C.V. Ramamoorthy (University of California). The 2001 conference co-chairs were Natalia Juristo (Universidad PoliteÂcnica de Madrid-Spain) and Stephen J. Mellor (Vice President of Project Technology, Inc.). The keynote speakers this year were: Vic Basili, Alan M. Davis, Stephen J. Mellor, Shari Lawrence P¯eeger and Shi-Kuo Chang. This special issue is made up of the most relevant papers for a KE journal. As a motivation for this special issue on the interactions between KE and SE, Section 2 discusses the SEKE hypothesis and Section 3 is a discussion of the subjects addressed by the articles published in the special issue. We thank you for your interest and hope you will enjoy the articles.

In this section, our aim is to give readers an insight into the motivations of the cooperation between SE and KE and help put the papers in this special issue into context. Although KE and SE were originally two disciplines developing different types of software systems, as the problems they address and the software systems construction process have evolved, points of intersection have been found where these two disciplines can feed off each other (AcunÄa et al., 1999). These points of intersection involve the interchange of principles, techniques, methods, methodologies and processes between the two disciplines. This means that each discipline can bene®t from the knowledge and experience of the other. The hypothesis on which research into the convergence between SE and KE is based is as follows: at a high enough level of abstraction, SE and KE have points in common (Juristo, 1998). Obviously, this does not mean that they are the same. What this ®eld aims is to study the differences that persist today (of which there are many) and identify which are insurmountable and which are the fruit of the separate evolution of KE and SE. This working hypothesis (the similarity at a given level of abstraction) ®ts in with a well-known scienti®c principle: the step from general to universal laws (retroduction). Kant stated that the evolution of science was a constant elevation of the induction level: early on, general laws are induced from speci®c cases and, later, a universal law is abstracted from a series of general laws. Examples of general laws obtained by induction are: the law of the inclined plane, which was induced from the observations of many cases of bodies sliding down inclined planes; Kepler also obtained his laws on planetary motion by adjusting the theory to empirical data; the law of the Earth's gravity is also a general law obtained through induction. However, these three general laws (inclined plane, gravity and Kepler's laws) are generalized to the law of universal gravitation at a second level of induction (retroduction). Another example of an endeavor at getting universal laws from general laws is the attempt (as yet unsuccessful) to unify all the known forces: electromagnetic interaction, gravitational interaction, strong interaction and weak interaction. In this context, the hypothesis of unifying SE and KE

0957-4174/02/$ - see front matter q 2002 Published by Elsevier Science Ltd. PII: S 0957-417 4(02)00069-6

346

N. Juristo, S.T. AcunÄa / Expert Systems with Applications 23 (2002) 345±347

seeks to raise the level of abstraction of software system development methods in such a manner as the methods now known and particular to SE and KE (which can be considered as general laws that govern the speci®c cases of systems development) are an instantiation of more general methods (the universal laws governing the general laws). However, efforts at generalization should not be taken to mean the uni®cation of SE and KE, just as getting universal laws in physics does not mean that the general laws disappear. On the contrary, the general laws are still applied at the lower level, while the universal law provides a much better understanding of the phenomenon. Therefore, each engineering discipline can exist separately, maintaining its intrinsic characteristics, and both should bene®t from a symbiotic relationship. Now the working hypothesis (symbiotic relationship between KE and SE) is based on wellknown biological principles. It is scienti®cally accepted that the principle of the biological and social universe is increased diversi®cation, heterogeneization and symbiotization. Survival not of the strongest, but of the most symbiotic (Maruyama, 1973). Symbiosis is the association of two beings of different species, favoring each other's development. For example, plants convert carbon dioxide into oxygen by photosynthesis, while animals convert oxygen into carbon dioxide through their metabolism. Plants and animals are symbiotic. Their differences permit each of them to satisfy the needs of the other. All the parties involved gain by symbiosis and, although they retain their identity, they cannot live separately.

In this context, SEKE integration seeks to attain a genuine association and cooperation, rather than small- or largescale alliances, to take advantage of commonalities and complementarities. This integration is referred to as the symbiosis of the two disciplines. There is fertile ground for the symbiosis of SE and KE, and this will be highly bene®cial from the engineering viewpoint as regards producing quality software and, in turn, will improve each discipline, while they retain their autonomy and independence, leading to a positive feedback cycle. 3. Special issue composition At SEKE'01, there were four main areas addressing the

intersections of SE and KE: Reuse (nine papers), Requirements Engineering (four presentations), Software Quality (four contributions) and Software Agents (three presentations). There were also contributions shown from a SE or KE perspective: Reuse (two articles), Requirements Engineering (three papers), Software Quality (three presentations), Databases (three contributions), Object Orientation (six articles), Project Management (three papers), Software Agents (one presentation), Learning Organizations (three papers), Software Design and Maintenance (three papers), Software Architectures (one article) Knowledge Management (one paper) and Data Mining (two papers). Finally, subjects such as reuse, knowledge acquisition, software design, modeling and event speci®cation methods were also covered in eight short papers. It was dif®cult to select just a few of all the interesting papers that were presented at the conference. We have chosen seven articles, each from a different area addressed at SEKE'01. Particularly, we have chosen the papers that came out of the refereeing process with the highest scores and closely related to the subjects of the Expert Systems with Applications journal. The seven articles we have selected fall into four categories: Agents, Data Mining, Knowledge Management and Reuse. SEKE is not an abstract idea; applications already exist that demonstrate it well. This issue tries to promote the application of this knowledge and developments to a wider range of organizations and systems by emphasizing existing techniques and research on new integral methods or models. Most of the following articles deal with real experiences. Autonomous agents systems are rapidly emerging as a powerful paradigm for designing and developing complex software systems. Therefore, as is the case with any new software paradigm, the successful and widespread deployment of agent systems requires not only new models and technology, but also new methodologies to support developers in engineering such systems in a robust, reliable, and repeatable fashion. In this respect, Gruer, Hilaire, Koukam and Cetnarowicz present the RIO methodology, which covers the speci®cation and design phases of agent systems. This methodology integrates SE and arti®cial intelligence methods and allows practical bene®ts from a safe theoretical ground. The RIO methodology consists of a cognitive agents architecture based on models, strategies and goals and adopts a formal agent- and role-modeling approach. This formal modeling approach is based upon the combination of Object-Z (functional perspective) and statecharts (behavior perspective). The framework proposed attempts to de®ne a complete and general methodology, speci®cally tailored to the analysis and design of agent systems, and de®ne formal abstractions that are suitable and precise for specifying agent systems described with the role-interactionorganization-agent meta-model. In the same area, van Elst and Abecker de®ne three basic dimensions of information that have a fundamental impact on the usefulness and usability of ontology-based

N. Juristo, S.T. AcunÄa / Expert Systems with Applications 23 (2002) 345±347

information systems, namely formality, stability, and sharing scope. Also, they describe the relationships between these dimensions and sketch techniques for trading off. Following the Gaia methodology that suggests de®ning the structure of an agent system in terms of a role model, especially when an organizational view evidently has to be taken to the application scenario, van Elst and Abecker perform this analysis with respect to an ontology-related actor. These role descriptions are the basis for the implementation of domain ontology agents. Finally, the practical use of their approach is shown in the scenario of a distributed organizational memory architecture. Regarding Data Mining, the research efforts in image and data retrieval have concentrated so far on increasing the ef®ciency and reliability of extracting the elements of image and data semantics. Thus, two papers in this area aim to improve search and retrieval performance at the cognitive level of content abstraction. One of them is an expert system with an application in the ®eld of physiotherapy, more speci®cally, in muscle function assessment based on isokinetic machine data. Alonso, CaracËa-Valente, GonzaÂlez and Montes describe a medical diagnosis system using KE and data mining methods. This system is based on the rules and isokinetic model-oriented modeling of the knowledge of the expert who works the machine and applied data mining method based on the discovery of sequential patterns in time series and the fast Fourier transform. This mining method identi®es similarities and differences among exercises in order to process the information to characterize injuries and discover reference patterns speci®c to populations. The results obtained were applied in two environments: one for the blind and another for elite athletes. On the other hand, image mining presents special characteristics due to the richness of the data that an image can show. The lack of effective evaluation parameters for retrieval systems is identi®ed as a critical issue. Conci and Castro propose an evaluation framework for comparing the in¯uence of the distance function on image mining by color and perform experiments in order to illustrate the proposed scheme. This framework assesses a system's quality from the viewpoint of users and provides a basic set of attributes to characterize the ultimate utility of this kind of systems. The links between knowledge management and organizational development processes is an especially interesting topic. In this area, Rosca and Wild provide a decisionmaking methodology for the business rules life cycle. This methodology covers aspects of the acquisition, deployment and evolution of business rules. The methodology assumes that business rules are expressed in terms of business concepts and corporate knowledge that are captured in a high level architecture. The architecture proposed consists of three interconnected components: the enterprise model, the business rules model and the decision support model. The paper is focused on a ¯exible deployment of business rules, which not only supports decision making in the face of con¯icting requirements, but also the evolution of those

347

requirements in the face of changing regulatory environments, competitive markets and corporate goals. Because the reuse of mature software development processes is used by some organizations as a means of improving their software development practices, the fourth group of articles addresses the role of reuse for software processes. In order to ease the reuse activity, two papers consider patterns that have proven to be an adequate knowledge representation throughout the software process. In this respect, Souza and Ferreira propose a reusable architecture for rule-based systems described through design patterns. The aim of these patterns is to constitute a design catalog that can be used by designers to understand and create new rule-based systems, thus promoting reuse in these systems, which still have great importance in the construction of knowledge systems. Complementarily, Mens, Michiels and Wuyts propose the use of a declarative meta-language for expressing and reasoning about programming patterns in object-oriented programs in order to support software development and maintenance. They illustrate this by expressing different kinds of programming patterns as rules in a declarative meta-programming language and by showing how these rules could be used to search for occurrences of, check, detect violations of and enforce programming patterns and even to generate code. The speci®cation obtained from this meta-programming using a formal language with clearly de®ned syntax and semantics can be used to support processes in a clearer way, enforcing the communication of ideas in a more accurate language.

References AcunÄa, S. T., LoÂpez, M., Juristo, N., & Moreno, A. (1999). A process model applicable to software engineering and knowledge engineering. International Journal of Software Engineering and Knowledge Engineering, 9 (5), 663±687. Juristo, N. (1998). Guest editor's view. Knowledge-Based Systems, 11, 77± 85. Maruyama, M. (1973). Symbiotization of cultural heterogeneity: scienti®c, epistemological and esthetic bases. General Systems, 18, 127±135.

N. Juristo Facultad de InformaÂtica, Universidad PoliteÂcnica de Madrid, Campus de Montegancedo s/n, 28660 Boadilla del Monte, Madrid, Spain E-mail address: natalia@®.upm.es S.T. AcunÄa Departamento de InformaÂtica, Universidad Nacional de Santiago del Estero, Avenida Belgrano (S) 1912, 4200 Santiago del Estero, Argentina E-mail address: [email protected]