In our view the CIA approach has consequences for what is called database semantics and knowledge representation. The traditional focus on logic and algebra to describe the semantics of database or knowledge base content needs to be widened to include the semantics of the communication. Since interfaces often have to reconcile different conflicting viewpoints, and have to be established by different, autonomous, parties, and because they are therefore more difficult to adapt, there is an increasing need for standards, such as reference ontologies. In some approaches this problem is tackled by introducing Local Information Models (LIM) for each CIA. These are linguistic based descriptions of the content of the data or knowledge base that is maintained by the CIA. In a way these LIMs are the database interfaces through which the other CIAs can approach the database. In our approach we place much more emphasis on the communication and negotiation between CIAs that takes place in occasional contacts. Because the abilities of the CIA to communicate and negotiate take an important place we claim that the influence of linguistics for these systems should go beyond that of a natural language interface.
In the above we have sketched the development of information systems from a rather technical point of view. However, it may even be more important to see what happened organizationally during this development.
When there was only one central database, the responsibility of the
information contained in it lay with the database administrator and usually
the board of directors of the company. When distributed databases were
introduced nothing changed organizationally. Only technical changes were
made for efficiency reasons. The introduction of CIS did show an organizational
shift. The responsibility of the distributed data is also distributed
to the departments that maintain it. The consequence is that the resulting
information systems are far more autonomous than the distributed
databases. This autonomy of the information systems is a very important
reason to consider agents as a new paradigm to implement these information
systems with.
For many, agents are another possibility to enrich the traditional information systems with new features. In that case they follow the tradition of the development from database to deductive database, active database and knowledge base. Although these features increase the power of the information systems they did not lead to new development methodologies. Mainly, because the role of these new types of information systems is the same as of the traditional ones. Although some new concepts have to be modeled to develop the system these concepts are just incorporated into the existing models and steps during the development process.
The same will happen if agents are only seen as another extension to the information system technology. Although this will again increase the power of the information system it will not utilize the full power of agents. In order to utilize the agent technology to the fullest extent we should look again into the actual purpose of the information systems and the role they fulfill within the organization. Only taking this more distant perspective we can define the role of agents.
The main function of an information system is to provide the right information, at the right time to persons within (or outside) the organization to fulfill a particular task as good as possible. Traditionally, these tasks were quite standard and stable, which also allowed the information system to be fixed for a long period of time. However, nowadays the organizations have to be more and more flexible. Tasks are getting more complex and adaptive to the circumstances. Information comes from many more resources than traditionally was the case (many more systems are connected electronically through e.g. the WWW). These developments indicate that also the information system can no longer be a passive system but should take an active role in providing and maintaining the information. Of course, this will lead easily to a conclusion to use agents as implementation technique. However, maybe even more important, it leads to a new methodology paradigm for developing information systems. The main new questions are: which different responsibilities can be distinguished and how should different agents be used for these responsibilities?
A second important question is of course what the functionality should be of those agents. Should they all be of the same type or have different architectures?
Of course, this is not the place to give a comprehensive answer to these questions. However, based on my experience, I feel that the first question will lead to a new methodology, because it is a fundamental new question to be answered in information system design. It influences the division of the system in subsystems and the (type of) communication between these subsystems.
In general there is a tendency to use standard architectures for all
the agents in one system. This, however, might not always be the optimal
solution. For several standard functions (like information filtering) standard
agents might be developed that should be able to cooperate with the agents
that are developed within the system. This imposes constraints on the type
of agents that can be used within the system and especially how they communicate.