Abstract: This paper presents an environment to give support to the online activities of cooperative learning. The proposed environment is based on the architecture of a Cooperative Environment of Learning (AmCorA), using the Internet and based on the multiagent technology.
Keywords: Software Engineering, multiagent systems, online learning, cooperative learning, distance learning.
The use of computer networks in the teaching-learning process has become present in alternative models of education, such as distance and open education. The Internet comes, in this context, as a favorable element to one of these alternatives: the distance education. The majority of the teaching-learning systems at a distance facilitates the communication, the distribution and the exchange of information among learners and mediators.
This article explores the necessary requirements for an environment of continuous education in Software Engineering in the Internet following a principle that discusses the construction (and not the information) as the base for the design and development of this environment. The term construction is used by Resnick (Resnick, 1996) who presents the use of networks of computers not only as a channel for information distribution, but mainly as a way to supply the students with new ways to learn in a community. To fulfill these requirements, we discuss the proposal of a multiagent architecture, using a methodology specially developed for the analysis and design of systems based on agents (Wooldridge et al, 1999), where the construction of systems is compared with a process of "organizational design".
The Software Engineering was created as an attempt to solve the problems faced in the software development and, since then, it has been increasingly progressing, generating new methodologies, languages, paradigms, methods, techniques and tools. The necessity of appropriation of knowledge on these new tools on the part of the developers of software is real. The proposal of a cooperative environment of learning in Software Engineering aims at speeding this appropriation of knowledge.
Resnick (Resnick, 1996) emphasizes the use of networks of computers, as the Internet, to support the categories of discussion constructions, sharing and contribution. However, as it happens in the case of the WEB, Resnick observes a limitation in what concerns the types of supported constructions. Currently, the WEB is mainly used to show samples of " passive data ", as texts, pictures, and videos. We lack environments where the students can post guided simulations, components, and other devices leading to process so that the contribution occurs naturally among the students, in auch a way that when a project is placed in the Web, it can be accessed and reused by anyone. The choice for the course of Engineering of Software in this project was due to the fact that this discipline involves all the categories of constructions cited by Resnick (Resnick, 1996). The environment aims at involving and integrating pupils, professors, researchers and professionals operating in the market. The environment also leaves room for the reintegration of retired professionals.
The general objectives of the environment are: (1) To provide the acquisition of information and bibliographical material at a professional level; (2) To provide the interaction among the diverse collaborators and learners in the form of workshops and exchange of experiences, reinforcing the reuse of work; (3) To allow the learners to demonstrate their capacity to do something with the acquired knowledge, i.e., apply the information in new situations and problems, promoting the development of "capacities and abilities" (Bloom et. al, 1974); (3) To develop and exercise "critical thinking "; (4) To provide lectures, conferences, minicourses, seminars and training at a distance; (5) To facilitate communication between professionals so as to promote room for discussion of ethical questions and citizenship; (6) To provide self-evaluation.
Next, a modeling based on agents for the AmCorA-ES is shown, using as reference the architecture proposed in the AmCorA project (Menezes et al, 1999).
The models built through the application of this methodology are incrementally generated through the phases of analysis and design in such a way that the activities of the process of software development share a common vocabulary. In this methodology, everything has to do with roles and agents who play roles inside an organization. This particular feature of the methodology and the reduction of the semantic gap which the vision of agents provides to the modeling of the real world, favor the choice for this paradigm and this methodology.
During the analysis phase, the generation of two abstract models occur : roles model and interaction model. During the design phase the transformation of these models into others occurs (model of the agent, model of jobs and model of relationship between agents), with a low-enough level of abstraction so that the techniques of object-oriented modeling can be applied and the system can be naturally implemented in non-agent-oriented languages, such as JAVA.
The roles model identifies the basic roles in the system and these are characterized by two types of attributes: permissions/rights representing the features and the limits that can be used to play the role, in which the features represent the information or knowledge that the agent has and responsibilities correspond to the functionalities of a role and can be divided in two categories: responsibilities of liveness, which declare something that must happen and security guard responsibilities, which are related to security requirements.
The interaction model consists of the definition of the protocols which are part of the roles. A protocol takes in account the objective of the interaction and not necessarily the precise order of the messages. The definition of the protocols includes the following set of attributes: Objective, Initiator, Respondent, Inputs, Outputs and Processing.
In the design phase, the roles and interaction models are transformed into agent model (actually, a set of roles), model of jobs (identifies the jobs associated with each role and specifies the main properties of these jobs). In terms of object orientation, a job corresponds to a method. However, jobs are not available for other agents in the same way that the methods of an object are available for another object to invoke. The difference is established by Jennings and Wooldridge (Jennings & Wooldridge, 1998) when they suggest that an object encapsulates some state, and has some control over it so that it can only be accessed or modified via the methods which it supplies; the agents encapsulate the state in the same way; however, they also encapsulate the behavior, in addition to the state. An object does not encapsulate behavior because it does not have control over the execution of its methods.
The design phase ends with a model of relationship between agents that defines the existent communication relationships between the types of agents. Wooldridge (Wooldridge et al, 1999) suggests that the next stage be a project, which, in this in case, is object-oriented. The object-oriented project in this modeling is designed for each one of the agents identified in the model of agents.
The organizational structure which emerges from the application of the methodology of Wooldridge for this proposal can be observed in figure 1. The organizational structure (" society " or " artificial organization ") obtained is actually the most abstract entity in the hierarchy of concepts of this methodology. Divisions inside the organization are also formed, representing an amount of related roles.
Next, a brief description of the responsibilities of the agents of the AmCorA-ES is made. The packing of the recognized roles in the AmCorA-ES architecture in agents follows a guidelines of the methodology of Wooldridge (Wooldridge et al, 1999), that considers that the designer can choose to pack many related roles in an agent for convenience, or matter of efficiency:
example bank, etc.);
- Training Manager: this agent is responsible for the storage and management of mini-
courses, lectures and other information displayed by collaborators, teachers and
instructors.
The agents of the AmCorA-ES can be classified according to Wooldridge and Jennings (Wooldridge & Jennings) based on their features:
(Jennings & Wooldridge, 1998) JENNINGS, N. R. WOOLDRIDGE, N. R. Agent Technology: Foundations, Applications, and Markets. Springer-Verlag, March 1998.
(Menezes et al, 1999) MENEZES, C. S.; Cury, D.; CAMPOS, G. H. B; CASTRO Jr. A. N. Um Ambiente Cooperativo para a Aprendizagem Construtivista Utilizando a Internet. Projeto apresentado a Chamada 01/98 do Edital em parceria entre os programas de Tecnologia da Informação (PTI) e de Educação (PEDU), UFES, 1999.
(Papert, 1993) PAPERT, S. The Children's Machine: Rethinking School in the Age of the Computer. New York: Basic Books, 1993.
(Resnick, 1996) RESNICK, Mitchel. Distributed Constructionism. In Proceedings on.. Learning Sciences Association for the Advancement of Computing in Education, Northwestern University, Jul. 1996.
(Vygotsky 1978) VYGOTSKY L.S. Mind in Society. The development of higher psycological process. Cambridge, Ma. :Harvard University Press, 1978.
(Wooldridge & Jennings) WOOLDRIDGE, M., JENNINGS, N. R. Agent Theories, Architetures e Languages: a Survey Intelligent Agents. Berlin: Springer-Verlag, 1995.
(Wooldridge et al, 1999) WOOLDRIDGE, M., JENNINGS, N. R., KINNY, D. A methodology for agent-oriented analysis and design. In O. Etzioni, J. P. Muller, and J. Bradshaw, editors: Agents '99: Proceedings on.. Autonomous Agents, Seattle, WA, 1999, Pag. 69 - 76.
(Azevedo, 1999) AZEVEDO, B. F. T. MutAntIS - uma arquitetura multi-agente para a autoria de tutores inteligentes. Dissertação de Mestrado, Centro Tecnológico, Universidade Federal do Espírito Santo, 1999
(Terra, 1999) Terra, O. G. Um Ambiente Multi-Agente para Recuperação de Informação. Dissertação de Mestrado, Centro Tecnológico, Universidade Federal do Espírito Santo, 1999.