0000000000056572

AUTHOR

Luca Sabatucci

0000-0003-2852-9355

Separation of Concerns and Role Implementation in the PASSI Design Process

The use of design patterns proved successful in lowering the development time and number of errors when producing software with the object-oriented paradigm. In previous works we engaged the production of a tool for the reuse of patterns for multi-agent systems. Now we are fronting a new problem: automatic code generation for agents, designed with a specific methodology, with the support of design patterns and using an aspect oriented approach. In this work we present our preliminary experiences in the identification, description, production and use of aspects for multi agent systems and a tool for code production.

research product

A Collaborative Tool for Designing and Enacting Design Processes

Today several approaches using Situational Method Engineering paradigm exist, each of them proposes methods and techniques for developing ad-hoc design processes. In this context heavy efforts were spent in the construction of appropriate tools that could help method engineers in producing a specific design process and in using it. We developed a tool called Metameth for supporting the design process definition and its enactment. Metameth is implemented as a multi-agent system, where each agent is capable of reasoning and adapting itself in order to support the designer in performing different kinds of design activities.

research product

Agent System Implementation in Agent-Based Manufacturing and Control Systems

research product

MetaMeth: A tool for process definition and execution

Nowadays, several different tools are used in Software Engineering; in this work we are mainly interested to those supporting the design phases. These are usually classified in three categories: CASE, CAME, CAPE tools. MetaMeth is a CAME and a CAPE tool at the same time

research product

Engineering Self-adaptive Systems: From Experiences with MUSA to a General Design Process

Designing and developing complex self-adaptive systems require design processes having specific features fitting and representing the complexity of these systems. Changing requirements, users’ needs and dynamic environment have to be taken in consideration, also considering that, due of the self-adaptive nature of the system, the solution is not fixed at design time but it is a run-time outcome. Traditional design approach and life cycles are not suitable to design software systems where requirements continuously change at runtime. A new design process paradigm is needed to design such systems. In this Chapter, we present a retrospective analysis based on three projects developed in the las…

research product

Pattern Reuse in the PASSI Methodology

research product

A collaborative tool for designing and enacting design processes

Today several approaches using Situational Method Engineering paradigm exist, each of them proposes methods and techniques for developing ad-hoc design processes. In this context heavy efforts were spent in the construction of appropriate tools that could help method engineers in producing a specific design process and in using it. We developed a tool called Metameth for supporting the design process definition and its enactment. Metameth is implemented as a multi-agent system, where each agent is capable of reasoning and adapting itself in order to support the designer in performing different kinds of design activities.

research product

Tools and patterns in designing multi-agent systems with PASSI

research product

Intelligent Energy Management System

Energy management is nowadays a subject of great importance and complexity. It consists in choosing among a set of sources able to produce energy that will give energy to a set of loads by minimising losses and costs. The sources and loads are heterogeneous, distributed and the reaction of the system, the choice of sources, must be done in real-time to avoid power outage. The goal of this paper is to present a system able to self-regulate a heterogeneous set of power sources and loads organised as a coherent group of entities that is called micro-grid, in order to optimize several criteria such as: cost and efficiency. This system is based upon the Multi-Agent Systems paradigm. Each micro-g…

research product

Patterns Reuse in the PASSI methodology

Design patterns already proved successful in lowering the development time and number of errors of object-oriented software; now, they are, candidate to play a similar role in the MAS (multi-agent system) context. In this work we describe our experiences in the identification, production and application of patterns for agents. Some patterns are described together with the classification criteria and documentation approach we adopt. Upon them, we base a pattern reuse process that can be considered one of the distinguishing elements of the design methodology (PASSI) we use to develop MAS. Patterns can be applied to an existing agent or used to produce a new one with the support of a specific …

research product

A possible approach to the development of robotic multi-agent systems

The design of a an agent system for robotics is a problem that involves aspects coming from many different disciplines (robotics, artificial intelligence, computer vision, software engineering). The most difficult part of it, often consists in producing and tuning the algorithms that incorporates the robot behavior (planning, obstacle avoidance,. . . ) and abilities (vision, manipulation, navigation,. . . ). Frequently, the reuse of these parts is left to a copy and paste procedure from previous applications to the new one. In so doing many problems could arise. We propose a comprehensive approach for multi-agent systems oriented to robotics applications that uses a complete design methodol…

research product

Conquering Fine-Grained Blends of Design Patterns

The reuse of design patterns in realistic software systems is often a result of blending multiple pattern elements together rather than instantiating them in an isolated manner. The explicit description of pattern compositions is the key for (i) documenting the structure and the behavior of blended patterns and, (ii) more importantly, supporting the reuse of composite patterns across different software projects. In this context, this paper proposes a fine-grained composition language for describing varying blends of design patterns based on their structural and behavioural semantics. The reusability and expressiveness of the proposed language are assessed through its application to 32 compo…

research product

The four types of self-adaptive systems: A metamodel

The basic ideas of self-adaptive systems are not a novelty in computer science. There are plenty of systems that are able of monitoring their operative context to take run-time decisions. However, more recently a new research discipline is trying to provide a common framework for collecting theory, methods, middlewares, algorithms and tools for engineering such software systems. The aim is to collect and classify existing approaches, coming from many different research areas. The objective of this work is providing a unified metamodel for describing the various categories of adaptation.

research product

Building agents with agents and patterns

The use of design patterns proved successful in lowering the development time and number of errors when producing software with the object-oriented paradigm. Now the need for a reuse technique is occurring for the emergent agent paradigm, for which a great effort is currently spending in methodology definitions. In this work we present our experiences in the identification, description, production and use of agents patterns. A repository of patterns was enriched during these years so to request a classification criteria and a documentation template useful to help user during the selection

research product

Introducing pattern reuse in the design of multi-agent systems

This paper focuses on design issues to be faced when developing knowledge management (KM) applications based on the integration of peer-to-peer and multi-agent technologies. The reasons for using these technologies rest on the requirements posed by the specific KM paradigm that has been adopted, which emphasizes aspects such as autonomy and distribution of knowledge sources. We adopt an agent-oriented approach that extends Tropos, a software engineering methodology introduced in earlier papers. We present a characterization of peer-to-peer in terms of a general architectural pattern, a set of design guidelines for peer-to-peer applications, and a framework that integrates multi-agent and pe…

research product

The PASSI and Agile PASSI MAS Meta-models Compared with a Unifying Proposal

A great number of processes for multi-agent systems design have been presented in last years to support the different approaches to agent-oriented design; each process is specific for a particular class of problems and it instantiates a specific MAS meta-model. These differences produce inconsistences and overlaps: a MAS meta-model may define a term not referred by another, or the same term can be used with a different meaning. We think that the lack of a standardization may cause a significant delay to the diffusion of the agent paradigm outside research context. Working for this unification goal, it is also necessary to define in unambiguous way the terms of the agent model and their rela…

research product

Agent-Oriented Software Patterns for Rapid and Affordable Robot Programming

Robotic systems are often quite complex to develop: they are huge, heavily constrained from the nonfunctional point of view and they implement challenging algorithms. The lack of integrated methods with reuse approaches leads robotic developers to reinvent the wheel each time a new project starts. This paper proposes to reuse the experience done when building robotic applications, by catching it into design patterns. These represent a general mean for (i) reusing proved solutions increasing the final quality, (ii) communicating the knowledge about a domain and (iii) reducing the development time and effort. Despite of this generality, the proposed repository of patterns is specific for mult…

research product

An Expert System for the Design of Agents

The growing interest for the design and development of multi-agent systems has brought to the creation of a specific research area called Agent-Oriented Software Engineering (AOSE), specifically conceived for the development of complex systems. The development of such systems needs the support of appropriate tools that could help the designer in producing the design artefacts. We developed a tool called Metameth that may be used to define a new (agent-oriented) design process as well as to apply it. In this paper, we describe only a slice of this complex tool, specifically addressing the interaction with human actors (the designers). This subsystem is conceived as a collaborative multi-agen…

research product

Generating and Instantiating Abstract Workflows with QoS User Requirements

The growing availability of services accessible through the network makes it possible to build complex applications resulting from their composition that are usually characterized also by non-functional properties, known as Quality of Service (QoS). To exploit the full potential of service technology, automatic QoS-based composition of services is crucial. In this work a framework for automatic service composition is presented that relies on planning and service negotiation techniques for addressing both functional and non-functional requirements. The proposed approach allows for dynamic service composition and QoS attributes, and it can be applied when services are provided in the contest …

research product