It is commonly agreed that Cooperative Information Systems provide the backbone of the Integrated Information Infrastructure of the future. The complexity of constructing and maintaining such systems can only be mastered by understanding and exploiting fully the following two recent advances in computing:
The proposed Cooperative Activity represents both advances by a small consortium of key research groups in Europe and Canada.
The European side consists of the following partners:
| Giorgio De Michelis Eric Dubois Matthias Jarke Florian Matthes Klaus Pohl Joachim Schmidt Technical Coordinator |
Universita di Milano Italy Universitaires du Namur Belgium Technische Universität Aachen Germany Technische Universität Hamburg-Harburg Germany Technische Universität Aachen Germany Technische Universität Hamburg-Harburg Germany |
The complementary experiences:
| Milano: | Concepts and Prototyps for Workflow and Conversation |
| Namur: | Formal Foundations of Requirements and Design |
| Aachen: | Change and Reuse in Information Systems Development |
| Hamburg: | System Technology for Cooperative Information Systems |
The Canadian side is represented by:
John Mylopoulos Eric Yu Carson Woo |
University of Toronto Canada University of British Columbia Vancouver |
The complementary experiences:
Toronto: Vancouver: |
Foundation of Non-Functional Requirements Engineering Principles and Practice of Organizational Computing |
The consortium considers the development of advanced models for Cooperative and Organizational Activities and the mastering of the advanced technology for Persistent and Communicating Objects as the crucial contributions to the wide and challenging area of Cooperative Information Systems.
Although the progress made in information technology and application development during the 80ies improved the efficiency of application development considerably its drawbacks and limitations are obvious and serious:
The above-mentioned limitations and barriers hinder the development and maintenance process measureably. As a consequence the complexity and costs of computer applications is growing faster than the demands and benefits of their users. This is of equal concern to both developers and researchers, in particular since current Interactive Database Applications are generalizing rapidly into Cooperative Information Systems as a conseqence of the mergence and growth of the CSCW field, and since it is commonly agreed that such systems will provide the backbone of the Integrated Information Infrastructure of the future.
As a consequence, advanced R&D work in the early 90ies attacked the problem at both ends:
Cooperative Information Systems will be object- and activity-oriented and have to work in heterogeneous and distributed environments (in that their components were developed independently of each other, at different times and by different people). Moreover, there is a growing demand to integrate such systems tightly with organizational work so that these information systems can be of direct and immediate use to the business activity at hand. The goal of the proposed cooperation is to integrate on-going research by the participating research groups, thereby contributing towards a technology that deals effectively with the development and maintenance of such information systems.
The overall goal of this Cooperation is to improve the future Information Infrastructure by
Objectives towards our goal will be a sharing of our collective knowledge to achieve a better understanding of:
Having recognized that the modelling of Cooperative and Organizational Activities and the mastering of Persistent and Communicating Objects are crucial contributions to the wide and challenging area of Cooperative Information Systems, it is remarkable that a relatively small consortium of key research groups in Europe and Canada can actually cover most of these demands:
European side:
The consortium enjoys a noteworthy collaboration history. Since about 20 years
Joachim Schmidt and John Mylopoulos have cooperated closely in several research projects.
In recent years this cooperation extended to Dr. Matthias Jarke, Technical University of
Aachen and to Dr. Carson Woo at the University of British Columbia (see also section 3). In the late 80ies Drs. Schmidt , Mylopoulos, Jarke and other European partners
cooperated successfully for about five years in the ESPRIT project DAIDA on design support
for data-intensive applications. The Canadians provided formal models for requirement
specification and theoretical results for mapping specifications into designs. The
European side contributed its achievements in advanced implementation technology such as
database programming languages and other tools for mapping information system designs into
implementations. In retrospect, DAIDA is considered as one of the first successful
projects in object-oriented information system design and maintenance (in terms of
technology development and transfer, publications, advanced teaching tools etc.). For the cooperation which is now under consideration the mutual interests are again
defined by a similar pattern of complementary expertise. Our prospective EU/Canadian
collaboration extends DAIDA's more static approach to program and database development
into the dynamic dimension of long-term, cooperating processes and open, heterogeneous
systems. Since 1990 the major DB/PL-related European activities have been concentrated in
the ESPRIT basic research project FIDE (Fully Integrated Data Environments)
which is working on extended object-oriented database models and polymorphic persistent
programming languages enriched by the technology that can cope with the dynamicity,
longevity and heterogeneity of long-lived, data-intensive activities. FIDE and related projects are now in a similar position as DAIDA was in the late 80ies:
they hold major parts of the technology for object- and activity-oriented information
systems in heterogeneous environments. However, to support application development using
this technology there is a strong need for relating the entire range of experience
including adequate formal foundation for conceptual modelling, functional and
non-functional requirement specification, script languages, organizational computing,
workflow experience etc. FIDE and related projects can provide the enabling system
technology which can handle adequately issues of extensible data modelling and typing,
type-safe polymorphic data manipulation, higher-order functionality for program generation
and transformation, persistence and distribution, commercial server integration, etc. Since approximately 15 years John Mylopoulos, Joachim Schmidt and Matthias Jarke have
together organized a series of workshops on communicating intelligent data-intensive
systems. Several PhD theses on the subject have been jointly supervised (e.g. Chung,
Wetzel, Schael). Further collaboration preparation on Cooperative Information Systems
was done in a cooperative effort between Eric Dubois and John Mylopoulos. Between Aachen,
Toronto, and Hamburg there has been exchanges of research personnel as well as between
Milano and Aachen. With the announcement last year of the effort between the European Union and Canada in
establishing a research cooperation programme, the consortium initiated intensive
discussions on cooperation. In April 1994 Mr. Brian Nixon of the Canadian side visited
Hamburg for an exchange on cooperation topics and familiarization of systems and tools
available. Hamburg University demonstrated its high interest in the prospected cooperation
by financing all of Mr. Nixon's costs here at Hamburg. While the European partners are particularly experienced in Computational
Modelling with a strong background in Systems Technology, the Canadian side has
complementary expertise in Conceptual Modelling with a strong background in Artificial
Intelligence. Both sides have a solid formal background and a strong record in computer
application and system implementation as well as in project cooperation: Giorgio De Michelis: At the Milan side an initial conceptual framework for
conceptualizing the requirements of mechanisms of interaction in a systematic way as well
as for design and evaluation of mechansims of interaction has been developed. This
framework distinguishes two complementary constitutive aspects of a mechanism of
interaction:
The Milan Workflow Model is based on Petri Nets, as is the case in many previous
Workflow Management Systems. Petri Nets are widely used for specifying many sorts of
mechanisms of interaction within Computer Supports for Cooperative Work. But on the one
hand it is based on a small subclass of Elementary Net Systems with simple elements and
highly readable models, and on the other it is based on some nice mathematical properties
of that class, allowing the generation of a large class of behaviours from those models.
Moreover, Milan is able to demonstrate that some interesting features proposed in the
literature, for example by Ellis & Keddara, 1993, to enhance the usability of Workflow
Management Systems can be easily embedded within it. Most of the languages supporting these different activities have been proven useful for
the expression of requirements related to classical centralized "business"
information systems. However, major deficiencies have been pointed out with respect to
their capabilities for expressing new kinds of requirements like those related to
real-time performances, complex data structures, security aspects and
concurrency/cooperation protocols in distributed Cooperative Information Systems. In the
light of recent advances in organizational modelling and distributed AI, a consensus is
now being reached in favour of the development of a new generation of languages for
capturing requirements inherent to Cooperative Information Systems. Namur has investigated the use of ALBERT at the modelling and analysis levels. More
recently, using the language in the context of large manufacturing Cooperative Information
Systems, Namur has found that the validation activity is also crucial. Besides the
use of a graphical formalism with "boxes and arrows" with which the customer is
familiar, the need for a better support has been identified providing help to the customer
for checking the adequacy of the behaviour displayed by the system formally specified.
Canadian side:
2.4 Complementary Cooperation Experiences in Research and Development
European side:
Consequently, one can characterize the degree of reuse in terms of a channel of communication between the original developers and the re-users. The broader and better defined the channel, the greater the potential for reuse, and therefore for productivity improvements.
At the Aachen side the insight gained in a series of CASE integration projects is exploited by defining a data modelling language for respository managers and their abstractional, assertional and dynamic clustering requirements. Aachen and Toronto have gained extensive experience which illustrates how the deductive object management system ConceptBase embodying the knowledge representation language TELOS as its data model meet these requirements.
The Aachen side has developed an approach which allows the support of traceability in information systems. This approach leads to the storage of all information which appears during the running of the development process. This process information allows an efficient and comprehensible adaptation of information systems to changing relationships or a changed environment. The acceptance of the system by developers and users is also increased through understanding the system evolution. Both aspects - process trace und process guidance - were researched separately primarily on account of their contrasting differences. Research has shown, however, that both approaches can increase greatly the productivity of development in information systems.
Tycoon provides essential supports for the following two activities in database application development:
The open, library-based approach to system construction is currently being pursued in several system frameworks that are based on C++ or distributed object models of similar expressiveness. Tycoon aims at a higher system development productivity in a language framework with the following characteristics:
John Mylopoulos: The research group in Toronto is working on a framework for representing and using Non-Functional Requirements (NFRs) for system development. Results of this research fall into four categories:
The Toronto framework allows NFRs to be represented as (potentially) harmonious or conflicting goals which can be decomposed, satisfied, and supported by the use of various generic methods. Correlation rules detect interactions induced by the use of generic methods, warn the designer and prevent certain actions that might jeopardize the satisfying of requirements. The framework captures design rationale, makes trade-offs explicit in a goal graph structure, and evaluates their effects through the labelling procedure. Throughout the process NFRs serve as selection criteria for choosing among a myriad of decisions which then act as a basis for justifying the overall design.
Applications to several classes of NFRs, with primary emphasis on accuracy and security requirements, have shown that there is the need for capturing various types of available development knowledge specific to such NFR goals, and that the framework meets the need in terms of generic methods and correlation rules.
Applications to several classes of NFRs, with primary emphasis on accuracy and security requirements, have shown that there is the need for capturing various types of available development knowledge specific to such NFR goals, and that the framework meets the need in terms of generic methods and correlation rules.
Through the implementation of the NFR assistant, it was found that the NFR framework is amenable to automating parts of the development process. The portions that are automated include mundane bookkeeping as well as more complex generation of offspring via method hierarchies or correlation tables as well as generation of correlation links and realization of the labelling procedure. By applying its NFR framework to realistic settings Toronto has shown three important benefits of the framework:
An Organizational Computing System is a computerized system that supports organizational activities involving processing and use of data and knowledge. By "support" we mean organizational activities should be automated to the highest extent possible and the system should provide as much assistance as possible to non-automated activities. For example, finding a meeting time that does not conflict with the personal schedules of several individuals is a time-intensive task. Such a task is a good candidate for automation. However, it would be undesirable and very difficult to totally automate the meeting because some situations are unknown in advance and humans want to be able to control decision making. In this case the computer provides assistance such as tabulating voting results. The idea here is to shift as much work (i.e., work that computers perform better than human beings) as possible away from humans and onto computers.
During the past four years, Vancouver developed a basic Organizational Computing System called OASIS (Organizational Computing and Autonomous Agent Interaction). OASIS is a computer-based information system that supports the construction and deployment of business applications. It is aimed at supporting the following four major organizational needs:
OASIS accomplishes these needs by viewing organizations as consisting of autonomous units with the capability of interacting with each other, and by the integrative use of blackboards and forms.
Hamburg (11-april-1996) Birgit Schramek; updated: 18-sep-1998 by Gerald Schröder