Collaborative and Distributed Product Configuration: An Agent-Based Approach Carlos Roberto Marques Junior Elder José Reioli Cirilo
Motivation The paradigm of software development based on Software Product Line (SPL) has emerged as an interesting approach to software factories. Several benefits are achieved with the use of LPS. –Reduction in development cost; –Increase Quality; –Reduced Time-to-Market; –Reduction in maintenance effort; –Better cost estimation; –among others….
Motivation Feature Modeling –Compact representation of all the products of an SPL in terms of features; –describes the configuration space of a system family; –Widely used to SPL representation.
Motivation
Problems with Product Configuration As long as the problem domain gets bigger, the feature model becomes more complex. Product configuration might require the participations of many stakeholders, each one with his expertise. Unfortunately, current configuration technology is essentially single-user-based and translated in configuration decisions by the product manager. 17/2/20145 Nome do Autor © LES/PUC-Rio
No pre-processing to synchronize the participation of stakeholders. The process of configuration is dynamic. The approach is agent-based. The approach transfers the responsibility of reasoning about the constraints, the communication and the conflict resolution to the agents. The agents are able to produce suggestions to make the configuration valid (in relation to the constraints of the feature model), in case some constraint was violated. 17/2/20146 Nome do Autor © LES/PUC-Rio Collaborative and Distributed Product Configuration
Model UA PCMA Instance 1 Instance n Instance 2 GUI Model GUI Libertas: Approach Overview
Libertas: Architecture Overview
Libertas: Graphical User Interface 17/2/20149 Nome do Autor © LES/PUC-Rio
Feature Model -> Constraint Satisfaction Problem C S A S S S f1f1 f2f2 f3f3 f4f4 f4f4 Variables: v f1, v f2, v f3, v f4 e v f5 v f1, v f2, v f3, v f4 e v f5 E {0,1} Dependency Constraints: vf 4 vf 5 Hierarchical Constraints: vf 3 vf 2 vf 4 vf 2 Feature Model Constraints: vf 2 vf 3 ^ vf 4 f 4 f 5
Feature Model -> Constraint Satisfaction Problem
Proposal Code improvements; Extend the feature model representation; Optimal configuration recommendation; –Agents reason on the feature model constraints and suggest the best configuration Documentation 17/2/ Nome do Autor © LES/PUC-Rio
References Czarnecki, K., Helsen, S. & Eisenecker, U. (2004b), Staged configuration using feature models, in R. L. Nord, ed., Proceedings of the Third Software Product-Line Conference (SPLC 2004), Boston, MA, USA, August/September 2004, Vol of Lecture Notes in Computer Science, Springer-Verlag. K. Czarnecki, S. Helsen, and U. Eisenecker. Staged configuration through specialization and multi-level configuration of feature models. Software Process Improvement and Practice, 10(2):143–169, M. Mendonca, D. D. Cowan, T. Oliveira, A Process-Centric Approach for Coordinating Product Configuration Decisions, HICSS, p. 283a, Mendonca, M., Oliveira, T., Cowan, D.D.: Collaborative Product Configuration in Software Product Lines – Formalization and Dependency Analysis, Journal of Software, ISSN X, vol. 3, issue 2, pp , February 2008.Collaborative Product Configuration in Software Product Lines – Formalization and Dependency Analysis
Collaborative and Distributed Product Configuration: An Agent-Based Approach Carlos Roberto Marques Junior Elder José Reioli Cirilo