multi-agent systems product lines camila nunes, elder cirilo, ingrid nunes...
Post on 27-Mar-2015
213 Views
Preview:
TRANSCRIPT
Multi-agent SystemsProduct Lines
Camila Nunes, Elder Cirilo, Ingrid Nunes
{cnunes,ecirilo,ioliveira}@inf.puc-rio.br
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Outline
• Introduction
• Background
• Case Studies– ExpertCommittee
– OLIS
• References
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Introduction
• Agent-oriented Software Engineering (AOSE) – New software engineering paradigm
– Development of distributed complex applications
• Software Reuse– Benefits
• Lower costs
• Reduced time-to-market
• Quality improvement
– AOSE methodologies
• Failed to adequately capture the reuse potential since many of the developed methodologies center on the development of specific software applications
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Introduction
• Software product lines (MAS)– New trend of software reuse
– Build family of applications in a systematic method
• Only recent research has explored the integration between SPL and Multi-agent Systems (MAS)– Multi-agent Systems Product Lines (MAS-PL)
– SPL + MAS benefits
– Help on the industrial exploitation of agent technology
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Background
Reuse: From Ad-Hoc to Systematic
Focus was small-grained and opportunistic.Results always fell short of expectations.
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Background
A software product line is a set of software-intensive systems sharing a common, managed set of features that satisfy the specific
need of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.
Software product line engineering is a paradigm to develop softwareapplications (software-intensive systems and software products) using
platforms and mass customisation.
A software platform is a set of software subsystems and interfaces thatform a common structure from which a set of derivative products can
be efficiently developed and produced.
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Background
Market Strategy / Application Domain
pertain to
Architectureshare an
Componentsare built from
is satisfied by
used to structure
Products
Product Lines:Take economic advantage of commonalityBound variability
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
SPL Development Approaches
• Proactive Approach– Development of product lines considering all the products in
the foreseeable horizon
– A complete set of artifacts to address the product line is developed from scratch
SPL
Product 1
Product 2
Product 3
Domain Analysis
Architecture
Project
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
SPL Development Approaches
• Extractive
– SPL is developed starting from existing software systems
– Common and variable features are extracted from these systems to derive an initial version of the SPL
Product 1
Product 2
Product 3SPL
Product 1
Product 2
Product 3
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
SPL Development Approaches
• Reactive– Incremental development of SPLs– SPL artifacts address only a few products. When there
is a demand to incorporate new requirements or products, the common and variable artifacts are incrementally extended in reaction to them
SPL
Product 1
Product 2
Product 3Requirements for a new product instance, Product 4
+
SPL
React
Iterate
Product 1
Product 2
Product 3
Product 4
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
Case Studies
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
ExpertCommittee (EC)
• Conference Management System
• Typical web-based application
• Functionalities to support the complete process of the management of conferences and workshops– Paper submission
– Reviewing processes
• Examples– EasyChair (http://www.easychair.org/)
– JEMS (https://submissoes.sbc.org.br/)
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
EC Versions
Version Description
Version 1 Typical web-based application (MAS-PL core)
Mandatory features that support the conference management process
Version 2 Release 1: Addition of the Reviewer role and the functionalities related to it: accept/reject review and review paper.
Release 2: Addition of automatic suggestion of conferences to the authors.
Release 3: Addition of message notifications to the system users through email or SMS (alternative feature).
Release 4: Addition of deadline monitoring, to trigger specific actions when they expire.
Release 5: Addition of automatic assignment of papers to committee members review them.
Release 6: Addition of task management.
Version 3 Refactoring of Version 2
Improvement of the modularization of some agency features
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
EC Feature Model
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
EC Architecture
ChairActions
BaseAction
Database
AuthorServiceImpl
ConferenceDAOHibernate
PaperDAOHibernate
AuthorActions
DeadlineAgent
GUI Layer
ChairServiceImpl
Data Layer
Business Layer
Chair Role
Coordinator Role
Author Role
Committee Member Role
Observable
Observer
User DataAgent
<<creates>>
ObservableService
User Agents
EnvironmentAgent
TaskAgent
TaskAction
TaskServiceImp
l
TaskDAOHibernate Notifier
Agent
SMSMAIL
…
Reviewer Actions
Reviewer ServiceImpl
Reviewer Role
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
EC Configuration File
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
OLIS
• OLIS (OnLine Intelligent Services)– Software product line of web-based systems
– Services (mandatory or optional)
• User Management
• Calendar
• Events Announcement
• Weather
– Handles different event types
• Generic
• Academic
• Travel
– Addition of Autonomous behavior to
• Provide Intelligent Services
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
OLIS Feature Model
FeatureDependencies
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
OLIS Architecture
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
OLIS Configuration
struts.xmlapplicationContext.xml
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
References
• CIRILO, E.; KULESZA, U.; LUCENA, C. Genarch: A Model-Based Product Derivation Tool. In Proceedings of Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS Tools 2007), Campinas – Brazil, 2007.
• CIRILO, E.; KULESZA, U.; COELHO, R.; LUCENA, C.; STAA, A. Integrating Component and Product Lines Technologies. In Proceedings of 10th International Conference on Software Reuse (ICSR 2008), Beijing – China, 2008.
• CIRILO, E.; KULESZA, U.; LUCENA, C. A Product Derivation Tool Base on Model-Driven Techniques and Annotations. Journal of Universal Computer Science, Graz – 2008.
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
References
• NUNES, I. O.; NUNES, C.; KULESZA, U.; LUCENA, C. Developing and Evolving a Multi-Agent System Product Line: An Exploratory Study. In: 9th International Workshop on Agent-Oriented Software Engineering (AOSE’08), 2008, Estoril. p. 177-188.
• NUNES, I. O.; KULESZA, U.; NUNES, C.; LUCENA, C. Documenting and Modeling Multi-agent Systems Product Lines. In: International Conference on Software Engineering and Knowledge Engineering (SEKE’08), 2008, San Francisco. p. 745-751.
• NUNES, C.; KULESZA, U.; SANT'ANNA, C.; NUNES, I.; LUCENA, C. On the Modularity Assessment of Aspect-Oriented Multi-Agent Systems Product Lines: a Quantitative Study. In Simpósio Brasileiro de Componentes, Arquiteturas e Reutilização de Software (SBCARS), 2008, Porto Alegre. p. 122-135.
• NUNES, I. O.; KULESZA, U.; NUNES, C.; CIRILO E.; LUCENA, C. Extending Web-Based Applications to Incorporate Autonomous Behaviour. In: WebMedia, 2008, Vila Velha. (to appear)
Camila Nunes, Elder Cirilo e Ingrid Nunes © LES/PUC-Rio
References
• NUNES, I. O.; KULESZA, U.; NUNES, C.; CIRILO E.; LUCENA, C. Extending PASSI to Model Multiagent Systems Product Lines. Submitted to Symposium on Applied Computing (SAC’09), 2008, Honolulu.
• CIRILO E.; KULESZA, U.; NUNES, I. O.; NUNES, C.; LUCENA, C. Automatic Product Derivation of Multi-agent Systems Product Lines. Submitted to Symposium on Applied Computing (SAC’09), 2008, Honolulu.
• NUNES, C.; KULESZA, U.; NUNES, I.; CIRILO E.; LUCENA, C. Assessment of the Design Stability of Multi-Agent Systems Product Lines. Submitted to Symposium on Applied Computing (SAC’09), 2008, Honolulu.
Questions?
Camila Nunescnunes@inf.puc-rio.br
Elder Ciriloecirilo@inf.puc-rio.br
Ingrid Nunesioliveira@inf.puc-rio.br
top related