Reeection may be used as a way of opening up the general process of object reiication and management. Instead of having a situation where such activities are either totally closed or totally ad-hoc, we may provide a general policy framework for object management, one that allows particular policies in a controlled manner. By revealing the process or processes involved in making an object available to an application program, and by making those revelations in an modiiable and object-oriented way, distributed and possibly heterogeneous data and program resources, such as the so-called legacy systems, may be used by new applications in a transparent way. This paper discusses the R-OK (reeective object knowledge) model and how it may be used to such ends.
The work reported in this chapter uses operational reeection as a means of enabling cooperation between pre-existing and autonomous information sources located at a number of remote sites. Each component database system is encapsulated by a layer of metalevel software that knows about that system's functionality and competence, incorporates basic programmable cooperative processing facilities, and provides access to the enclosed system by means of an abstract program interface, regardless of the underlying system's complexity.
Recent years have witnessed signi cant technological advances and developments in the areas of communication and networking technology which have created the possibility for remote data sharing and exchange over large distances. These technological advances have sparked increasing interest from large organizations which wish to make their existing, and currently disjoint, information resources interoperate e ciently and transparently in a way that guarantees that business is transacted more e ciently. Yet, the means for exchanging and sharing information are still primitive and largely constrained to exchanging relatively unstructured pieces of data as dictated by relational database and distributed computing systems technology. Today's corporate computing environments are typically heterogeneous, containing a variety of database management systems which are incompatible in syntax and semantics due to di erences in their respective data models and corporate usage. In such environments it is necessary that each component information system (IS) is not only able to communicate with other ISs but that it can also use the entire functionality of other existing ISs. Redevelopment of these systems (which are normally implemented in di erent languages, re ect di erent information and computing models, and reside on di erent computers or workstations supported by di erent operating systems) in an integrated fashion has proved to be prohibitive in
We view cooperating systems as being a set of systems that are distributed over a common communication network and that work towards solving a common task. This is achieved by coordinating and exchanging information and expertise. Such systems exclude conventional database systems since the knowledge these systems contain is buried within application code. In this paper, we overcome this problem by introducing a layer of special re ective, i.e. metalevel, objects which surround each local database system. These objects are used to capture domain and operational knowledge, and to describe, at least in part, remote systems and to monitor task-oriented activities. In this way, we can turn interconnected conventional database systems into a set of cooperating knowledge-based systems.