Papers by Massimo Cossentino
* First comprehensive overview of the 13 most important agent-oriented software design processes ... more * First comprehensive overview of the 13 most important agent-oriented software design processes in a standardized format * Includes the widely known OpenUP design process, the de facto standard in object-oriented software engineering * Descriptions are based on the IEEE-FIPA Design Process Documentation Template SC0097B, which allows different design processes to be easily comparedEach design process is described by its original creators or well-known researchers in the field To deal with the flexible architectures and evolving functionalities of complex modern systems, the agent metaphor and agent-based computing are often the most appropriate software design approach. As a result, a broad range of special-purpose design processes has been developed in the last several years to tackle the challenges of these specific application domains. In this context, in early 2012 the IEEE-FIPA Design Process Documentation Template SC0097B was defined, which facilitates the representation of d...
Advances in Experimental Medicine and Biology, 2011
Lecture Notes in Computer Science, 2009
Situational Method Engineering for constructing ad-hoc agent oriented design processes is grounde... more Situational Method Engineering for constructing ad-hoc agent oriented design processes is grounded on a well defined set of phases that are principally based on reuse of components coming from existing agent design processes; these components have to be stored in a repository. The identification and extraction of these components could take large advantages from the existence of a standardized representation of the design processes they come from. In this paper we illustrate our solution based on SPEM 2.0 specifications for modelling agent design processes and extending them when necessary to meet the specific needs we faced in our experiments.
Lecture Notes in Computer Science, 2005
The need of developing a new software engineering process (SEP) that could allow the quick protot... more The need of developing a new software engineering process (SEP) that could allow the quick prototyping of some robotic applications and meet the requests coming from some companies for a development process that was shorter than PASSI, gave us the opportunity of applying our studies on the assembling of a new SEP by reusing parts (called method fragments) from other processes. In this paper we discuss our approach that, starting from the method engineering paradigm, adapts and extends it considering specific agent-oriented issues like the multi-agent system metamodel. The final result of our experiment (Agile PASSI) is presented together with the requirements that motivated its structure.
Lecture Notes in Computer Science, 2012
This paper focuses on the field of Situational Method Engineering for the construction of agent-o... more This paper focuses on the field of Situational Method Engineering for the construction of agent-oriented design processes. Whatever SME approach a method designer wants to use, he has to manage two main elements: the (method or process) fragment and the repository where it is stored. Specific fragment definition and documentation are fundamental during those activities, for new process composition, and for the consequent system design activities. This paper aims at illustrating a proposal of fragment definition and documentation. This proposal is aimed to be an input for the IEEE FIPA Design Process Documentation and Fragmentation working group and, as regards our own research work, this is the ideal completion of the methodological practices prescribed in the PRoDe approach for new processes composition.
Handbook on Agent-Oriented Design Processes, 2014
PASSI (a Process for Agent Societies Specification and Implementation) is a step-by-step requirem... more PASSI (a Process for Agent Societies Specification and Implementation) is a step-by-step requirement-to-code methodology for designing and developing multiagent societies, integrating design models and concepts from both Object-Oriented software engineering and artificial intelligence approaches using the UML notation. The models and phases of PASSI encompass anthropomorphic representation of system requirements, social viewpoint, solution architecture, code production and reuse, and deployment configuration supporting mobility of agents. PASSI is made up of five models, concerning different design levels, and 12 activities performed to build multiagent systems. In PASSI, the UML notation is used as the modeling language, since it is widely accepted both in the academic and industrial environments. PASSI (Process for Agent Societies Specification and Implementation) is a stepby-step requirement-to-code methodology for designing and developing multiagent societies. The methodology integrates design models and concepts from both Object-Oriented software engineering and artificial intelligence approaches. PASSI
Handbook on Agent-Oriented Design Processes, 2013
The Open Unified Process (OpenUp) is an iterative design process that structures the project life... more The Open Unified Process (OpenUp) is an iterative design process that structures the project lifecycle into four phases: Inception, Elaboration, Construction, and Transition. It is part of the Eclipse Process Framework and embraces a pragmatic, agile philosophy that focuses on the collaborative nature of software development. It is a tools-agnostic, low-ceremony process that can be extended to address a broad variety of project types. The project lifecycle provides stakeholders and team members with visibility and decision points throughout the project and makes them able to manage their work through micro-increments.
ABSTRACT Goals identification is an open issue in the Requirement Analysis field for Multi-Agent ... more ABSTRACT Goals identification is an open issue in the Requirement Analysis field for Multi-Agent System design. Stakeholders commonly don’t have full and exhaustive awareness about their real objectives in the domain problem. Goals are implicitly expressed during the inquiring phase. Thus, the goal identification task is commonly ascribed to the expertise of the analyst. In this work we propose a new methodological approach to formalize the problem domain in terms of its ontological representation. We also introduce a new heuristic for extraction and val- idation of goals from the problem description. In this approach the do- main can provide evidences for the identification of unvoiced goals and for their validation according to the contextual data.
In Philosophy, the term awareness is often associated to theories of consciousness and self-refer... more In Philosophy, the term awareness is often associated to theories of consciousness and self-referential behavior. In computer science, the awareness is a topic of increasing relevance in both Software Engineering and Artificial Intelligence, being closely related to autonomy and proactiveness. We can distinguish two orders of awareness: the first order is the awareness of the environment also known as context-awareness; conversely, self-awareness is a higher order awareness (knowledge about one's own mental states). Nowadays, many agent oriented languages offer native instruments to implement context-awareness. However, self-awareness is not adequately supported and it requires further considerations. This paper focuses on implementation techniques, based on JASON, for creating software agents able to dynamically reason about their knowledge of the environment, as well as on their missions, capabilities and current execution state.
Nowadays several methodological approaches exist, each of them tightly tied up with the implement... more Nowadays several methodological approaches exist, each of them tightly tied up with the implementation platform supporting it. In this paper we propose an intermediate step toward the definition of a methodological approach for supporting the JACAMO framework. This paper resumes a previous work, focused on modeling BDI organizations, and we now address the requirements analysis phase. In particular, we propose the use of an ontological model and a goal model for representing requirements and the domain formalization respectively. The two portions of design process are connected by a heuristic process that allows to extract goals from the ontological model. The resulting models are also used for completing each other and for enhancing the problem description that is considered an input to our process. In the paper we use the well-known case study of the conference management system for illustrating the proposed portion of process.
Handbook on Agent-Oriented Design Processes, 2014
Nowadays, it is a matter of fact that a “one-size-fit-all” methodology or design process useful a... more Nowadays, it is a matter of fact that a “one-size-fit-all” methodology or design process useful and fitting every kind of problem, situation, or design context does not exist. (Situational) Method Engineering (SME) discipline aims at determining techniques and tools for developing ad hoc design methodologies. SME mainly and highly focuses on the reuse of portion of existing design processes or methodologies (the method fragments). In order to have means for creating SME techniques and tools and for creating new design processes, some key elements are needed: a unique process metamodel for representing design processes and fragments, a proper template for the description of AO design processes and for the description of method fragments. The FIPA Design Process Documentation and Fragmentation Working Group gave an important contribution to the SME research area in terms of the IEEE-FIPA standard Design Process Documentation Template (DPDT) that provides a standardized template for the description of design processes.
Lecture Notes in Computer Science, 2005
Page 1. The PASSI and Agile PASSI MAS Meta-models Compared with a Unifying Proposal Massimo Cosse... more Page 1. The PASSI and Agile PASSI MAS Meta-models Compared with a Unifying Proposal Massimo Cossentino 2 , Salvatore Gaglio 1,2 , Luca ...
Proceedings. IEEE/WIC/ACM International Conference on Intelligent Agent Technology, 2004. (IAT 2004).
From several years we are developing robotic multiagent systems according to well defined design ... more From several years we are developing robotic multiagent systems according to well defined design methodologies. These methodologies evolved over time because of the changes in the operating environments (robotic hardware and software platforms) and specific missions accomplished by our robots. In the last four years we used PASSI (Process for Agent Societies Specification and Implementation) obtaining good results but, the growing experience and day by day accelerating changes in requirements suggested us to find a new and more versatile approach. In this context we developed the Agile PASSI methodology discussed in this paper; it is an agile process built up capitalizing all the experiences done with PASSI and its supporting tools some of which have been adapted and reused in the new process.
2007 2nd International Conference on Digital Information Management, 2007
The growing interest for the design and development of multi-agent systems has brought to the cre... more 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-agent expert system, where each agent is capable of reasoning and adapting itself in order to support the designer in performing different kinds of design activities, regarding the use of various notations, and process life-cycles.
International Journal of Machine Consciousness, 2010
Engineering self-conscious robotic systems is a challenge issue because of the intrinsic complexi... more Engineering self-conscious robotic systems is a challenge issue because of the intrinsic complexity of such systems; a self-conscious robot has to acquire knowledge, to understand its world and to autonomously interact with its environment. In this paper the externalist point of view is used for developing a complete process for the design and implementation of a conscious robotic system that is able to interact with a dynamic environment in a human like fashion without possessing detailed knowledge about the environment and pre-programmed tasks and algorithms. The paper mainly focusses on the configuration part of the whole process that make the robot able to decide and to learn from experiences.
The construction of ad-hoc design processes is more and more required today. Situational Method E... more The construction of ad-hoc design processes is more and more required today. Situational Method Engineering (SME) provides an approach with a set of activities to be accomplished during the construction of a new process. In this paper we present our approach for adapting SME for the construction of multi-agent systems design processes mainly focussing on the method fragments selection and assembly phases. The MAS metamodel provides the driving concepts of these two phases; in fact, we use MAS metamodel elements for enabling the retrieval of fragments from the repository and for reasoning about how to assemble them or eventually to modify them. An experiment is reported here we construct a new design process that includes a goal oriented requirements analysis phase starting from the existing PASSI process.
Several approaches have been proposed to support situational method engineering (SME), each of th... more Several approaches have been proposed to support situational method engineering (SME), each of them providing different techniques and using different basic concepts. In this work, we propose a framework for comparing SME approaches based on a generic SME process model. Three approaches are presented and compared by using this framework.
Several different approaches to Situational Method Engineering exist. They differ in terms of the... more Several different approaches to Situational Method Engineering exist. They differ in terms of the primary element of the paradigm: the method fragment definition. Here, we introduce four method fragment definitions from the literature and compare their metamodels according to structural and functional criteria. The structural comparison showed a general alignment of some concepts that are sometimes referred with different names while the study of the compositional aspects results in evidence of substantial differences.
Uploads
Papers by Massimo Cossentino