Active Interfaces through Software Agents
نویسندگان
چکیده
This paper concerns the development of an interface environment to help users in repetitive tasks in o ce work. The main ideas in the project concern: the development of active interfaces that autonomously perform tasks minimizing the interaction with the user; the use of the agent-oriented paradigm to provide both distributedness and incrementality of the software environment. The paper quickly illustrates the main issues addressed in the project and shows how they are exploited in the development of an active interface for ltering e-mail messages. The architecture of the ltering agent follows a multi-agent implementation. 1 Interfacing Useful Software Tools The spreading of electronic instruments is getting common people more and more in touch with software tools not always easy to be handled with. Particular emphasis can be put on network tools and information sources and on their use for di erent services in both domestic and o ce contexts. Due to the world-wide di usion of computer networks, to the daily increasing number of users connected to them and to the quantity of services o ered, it seems that a lot of our engagements and amusements will be satis ed through the networks while we are comfortably sitting on our chair. This scenario is likely to become true only if interfaces designed to make acceptable and easy using these o ered tools are supplied. In some way, the employment of such tools should be user-transparent. In fact people could not immediately accept the introduction of machines the utility of which is not so clear since they change completely their way of facing (and solving) problems. Also when the users are competent in dealing with sophisticated software mechanisms, the context can change but the problems are similar. In fact, high-skilled people do not disdain an aid that would make their work easy, for example by saving their time. In fact, the full exploitation of services and data available through the Internet takes a lot of time, time that is stolen to their job. A di erent issue concerns the usually large amount of knowledge needed to actually use those tools. Moreover, since the number of di erent versions or releases increases very fast, and it is di cult to follows all the changes especially if the acquisition of any competence is hard. Both in novice and expert cases, and for all the possible intermediate cases, the interfaces with these tools have the great responsibility of making the access easier. If the use of computers must be really enlarged to non-specialist people, their management should be easy and the interface should take care to do something more than what the users strictly request. In fact, since the goal is to disengage the user as far as it is possible from learning the tool, the interface should be active, i.e., it should support the user in each phase of her interaction. It should suggest solutions and have deductive capabilities. In our project we are considering interfaces for useful software tools available on the network. A lot of utilities are accessible on public domain repositories which are useful to solve particular problems but also: (a) they are very powerful but not easily comprehensible. So if from one hand they save time in small tasks, on the other hand they require a lot of time to be learned; (b) most of the utilities have programmer-oriented interfaces and, as a consequence, they are mainly used by "hackers" or specialized programmers. Our work has been focussed on building interfaces that avoid users to learn much about a particular tool. In addressing this kind of problem we have restricted the application context to the development of interfaces for tedious and repetitive o ce tasks, as dealing with e-mail messages or scheduling meetings or looking for useful information on the network. These tasks take advantage from or are motivated by the existence of the network, but the wide use and success of tools solving them are strictly depended on their conjunction with e ective and supportive interfaces. In the project we follows two methodological goals: (a) building active interfaces that carry out some additional role with respect to being simple lters between users and applications. The concept of active interface has been introduced in several research in human-computer interaction (e.g., [5, 7]); (b) employing the agent-oriented paradigm to implement the interfaces in order to make the whole system both easily extensible and tailorable to single users. A number of interesting work is going on similar issues (e.g., [3, 6]). In the rest of the paper we show an example of interface to a software tool that avoids users to learn a speci c language; has a supporting role with respect to the user; follows an agent-oriented implementation that allows for the speci cation of single parts of the whole system. 2 Active Management of E-mail Messages The project we are involved has the aim of incrementally developing a software Interface Agent connecting the user with an intelligent distributed architecture that supports and assists her in dealing with disparate tasks, tackling di erent network utilities and utilizing o ce services. We have built several specialized agents in order to increase the e ciency of the user's daily activities. Task of the Interface Agent is to select the agent(s) that can satisfy the user's needs, to coordinate the work of di erent agents, to make them cooperate in presence of a common goal, to communicate with the external world be it represented either by intelligent or by non-intelligent entities. Interface Agents acting on the behalf of di erent users can interact with each other in order to get help and can cooperate among them to accomplish particular goals. At the present, the architecture consists of: a rst implementation of the Interface Agent, a Mail Agent, a Meeting Agent and an Info Agent. Each agent consists in turn of sub-agents specialized to solve a particular problem. In this paper we illustrate the architecture and the behavior of the Mail Agent in order to show how the concepts above illustrated are translated into an operative framework. The Mail Agent is in charge of handling the incoming e-mail messages according to a user's pro le. With e-mail messages we mean every types of electronic mail such as bulletin-boards, mailing-lists, interest groups, etc. To cope with them speci c tools exist, e.g., packages like Procmail or MailAgent, that allow a user to lter the incoming messages: such tools are powerful but of di cult usage for non-expert programmers. Our Mail Agent hides to the users the use of the Procmail software and adds an active task by automatically suggesting modi cations in the pro le on the basis of a comparison between accepted and rejected messages. Procmail is a software that checks each incoming e-mail message according to a number of user-de ned lters. Filters have to be speci ed using the Procmail command language consisting of a set of operators, as in the following example: MAILDIR=/usr/users/amedeo/mail
منابع مشابه
The notion of trajectory in graphical user interfaces
The Active Objects Model (AOM) as a model-based user interface development environment is presented. The paper highlights the convenience of the trajectory notion in the description of the structure and functionality of graphical user interfaces. The AOM model consists of a set of active agents with private rule based behaviours. Model entities involve topological information which define, thro...
متن کاملThe Application of Object-Oriented Analysis to Agent-Based Systems
Agents are important software abstractions for distributed problem solving and autonomous, proactive behavior. They have been used in many applications, including manufacturing, enterprise integration, network management, and advanced user interfaces for worldwide web applications. As agent systems become more prevalent, the need arises for software engineering methodologies. The relationships ...
متن کاملAbsorptive capacity of information and knowledge through Interfaces in the customized software industry: The case of micro and small-sized Mexican firms
This paper contributes the understanding of how interface allows to the producers identify specific information and knowledge from the users (and other agents), and how it influences on firm’s absorptive capacity . We suppose that the great dynamism of the Information Technology Industry brings about uncertainty to the micro and small-sized Mexican software firms, and one way to reduce it is th...
متن کاملUse of Software Agents for the Management of Distance Education Courses over the Internet
This work presents a group of tools for the management of distance education courses in the WWW (Word Wide Web) environment. The goal of this work is centered on the development of tools to allow teachers to manage the daily course activities. These tools should also supply the students with mechanisms for interaction with the course activities defined by the teacher. The use of the software ...
متن کاملProviding Support for Process Model Enaction in the Metaview Metasystem
Process modeling is a means of formally deen-ing many aspects of the software development process through the use of models. Partial automation of a process model can help to improve the software process. Menial or tedious tasks, such as collecting metrics, no longer have to be the responsibility of the developer. Coordination of eeort can also be enhanced through automation. Automation can be ...
متن کامل