Expert Committee Case Study

The ExpertCommittee (EC) case study consists of developing a conference management system, which we have evolved over time, consequently it has several versions. This kind of system, first proposed in (Ciancarini 1998), has been widely used to the elaboration and application of agent-oriented methodologies. After developing the first version of the system (its core), some agent features were incorporated to it. The evolution of the EC was accomplished in an ad-hoc way, therefore we did not consider features modularity, leading to a tangled and spread code into all system components. Consequently, this was also reflected in the system design. Further, using an extractive approach of the SPL development, we build the EC MAS-PL. Based on the different EC versions, we developed an architecture in such way that we could semi-automatically derive all the different previously released versions of the system or any valid combination of its features.

Expert Committee Overview

The first version of the EC consists of a typical web-based conference management system, which supports the paper submission and reviewing processes from conferences and workshops. In sequel, we evolved this version of the system, incorporating new optional and alternative features. Most of them are agent features, which automate some tasks previously performed by users and are mainly related to the specification and implementation of user agents. These changes implied the addition of new agents and roles, as well as changes in their behavior.

The EC first version provides functionalities to support the complete process of conference management, such as: (i) create conferences; (ii) define conference basic data, program committee, areas of interest and deadlines; (iii) choose areas of interest; (iv) submit paper; (v) assign papers to be reviewed; (vi) accept/reject to review a paper; (vii) review paper; (viii) accept / reject paper; (ix) notify authors about the paper review; and (x) submit camera ready. Each of these functionalities can be executed by an appropriate user of the system, such as, conference chair, coordinator, program committee members and authors. In the following versions, software agents were introduced into the EC architecture, providing autonomous behavior. We consider autonomous behavior actions that the system automatically performs and previously needed human intervention. The main aim of these new features was to help the tasks assigned to all the system users by giving them a user agent that addresses mainly the following functionalities: (i) deadline and pending tasks monitoring; and (ii) automation (or semi-automation) of the user activities.

The table above summarizes the different versions of the EC system. Each new version was implemented based on the previous one. The first version was built without any autonomous behavior, in other words, without software agents. The second version of the EC system added a feature to the system that is related to autonomous behavior, it monitors the system and automatically sends some important message notifications. Thus, in this second version, we have used the agent abstraction and AOSE techniques to allow the introduction of this new agent feature in the system. Software agents were used to model and implement this autonomous behavior, including an agent representing each user of the system playing different roles. The third version provided new functionalities (non-agent features) to the system related to the Reviewer role; however the user agent had to be modified by the inclusion of this new role for supporting messages notifications. The following versions also included agent features and, finally, the last version changed a feature previously included (message notifications), resulting in an alternative feature.

© Copyright 2008 Ingrid Nunes. All rights reserved.