o the - lsi.us.es · chapter 2 phd project 2.1 introduction in this section, we briefly present...

39

Upload: others

Post on 09-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software
Page 2: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

ON THE AUTOMATED ANALYSIS OF

FEATURE MODELS

DAVID BENAVIDES CUEVAS

UNIVERSIDAD DE SEVILLA

PHD PROJECT

ADVISED BY ANTONIO RUIZ-CORTÉS

Page 3: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

First published in 2006 byThe Distributed GroupETSI InformáticaAvda. de la Reina Mercedes s/nSevilla, 41012. SPAIN

Copyright c© MMV The Distributed Grouphttp://[email protected]

In keeping with the traditional purpose of furthering science, education and research,it is the policy of the publisher, whenever possible, to permit non-commercial use andredistribution of the information contained in the documents whose copyright theyown. You however are not allowed to take money for the distribution or use of theseresults except for a nominal charge for photocopying, sending copies, or whichevermeans you use redistribute them. The results in this document have been tested care-fully, but they are not guaranteed for any particular purpose. The publisher or theholder of the copyright do not offer any warranties or representations, nor do theyaccept any liabilities with respect to them.

Classification (ACM 1998): D.2.10 Software Engineering: Design: Methodologies,Representation; D.2.1 Software Engineering: Requirement/Specifications: Languages,Methodologies, Tools.

Support: Partially supported by project AGILWEB

Page 4: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Contents

1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 PhD Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2.1.1 Software product lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.1.2 Feature models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42.1.3 Constraint programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2.2 Innovation degree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2.1 Improvements in the State of the Art . . . . . . . . . . . . . . . . . . . . 82.2.2 Summary of contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.4 Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.5 Work Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Page 5: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

ii Contents

Page 6: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

List of Figures

2.1 CFM meta model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 James System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Page 7: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

iv List of Figures

Page 8: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Chapter 1

Summary

In our research work we are going to propose new methods and tools forthe automated analysis of feature models in the context of software productlines.

Automated analyses of FMs are an important challenge in software prod-uct lines. Despite of year of progress, feature models are mostly represented asgraphical diagrams and they lack of an automated support or the automatedsupport proposed until now is limited.

In our PhD project we will present how to transform a feature model intoa Constraint Satisfaction Problem. In that way, it will be possible to use off–the–shelf constraint satisfaction solvers to automatically accomplish severaltasks such as calculating the number of possible configurations and detectingpossible conflicts. This is a novel approach and has been recognized to bea valuable complement to the state of the art in the automated analyses offeature models.

Page 9: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

2 Chapter 1. Summary

Page 10: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Chapter 2

PhD Project

2.1 Introduction

In this section, we briefly present the main concepts we use through therest of the PhD project. First we present software product lines in Section2.1.1; we focus on feature models in section 2.1.2; finally, we outline con-

straint programming in Section 2.1.3

2.1.1 Software product lines

“The software Industry is not industrialized” [23]. This sentence was in-scribed in the NATO conference proceedings in 1968 and nowadays this affir-mation remains valid. We understand the industrialization of software as thecapability of produce software systems that fulfill budget and quality in a pre-scribed way. In other industries this is achieved by producing product lines.Indeed, Boing, Dell or even Mc Donalds builds product lines of aircrafts, com-puters or hamburgers.

Most of the current software organizations start a new project from thescratch. Thus, if a new project needs to be started most of the effort of previousproject will be wasted. Software product line engineering tries to avoid thissituation by promoting the production of a family of software products fromcommon features instead of producing one by one from the scratch. Thereforethis approach will be more suitable for product–oriented organizations ratherthan project–oriented organizations.

Page 11: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

4 Chapter 2. PhD Project

According to [13], a Software product line consists of a set of software prod-ucts sharing a common set of features that satisfy the needs of a particular do-main and that are developed from a common set of core assets in a prescribedway. Therefore, software product line engineering is about producing familiesof similar systems rather than the production of individual systems. 1.

Software product line engineering consists of two main activities: domainengineering (also called core asset development) and application engineering(also called product development). These two activities are complementaryand provide feedback to each other. Domain engineering deals with the pro-duction of software assets to be used in different products of the product line.On the other hand, application engineering deals with the production of indi-vidual systems. One of the most important results of domain engineering isthe feature model of the software product line.

2.1.2 Feature models

A Feature Model (FM) is a compact representation of all possible productsof an SPL. FMs are used to model a set of software systems in terms of featuresand relations among them. Designing a software system in terms of featuresis more natural than doing it in terms of objects or classes. Consequently, asoftware system will be composed of a set of features.

Since FMs were first presented in 1990 [21] there have been many publica-tions and proposals to extend, improve and modify the original FM diagram.However, despite years of research, there is no consensus on a FM notation.Although it would be desirable to have a common notation, we use the oneproposed by Czarnecki [15] that was formalized as a context free grammarand integrates some previous extensions.

A FM is basically a tree structure with dependencies between features. Fig-ure 2.1 represents the general metamodel of a FM (this metamodel was pre-sented in [11]). Likewise, Figure 2.2 represents a FM of the James Project [18].James is a collaborative web based system that we modeled in terms of fea-tures and can be a clear example of an SPL. Some products can be derivedfrom the FM on Figure 2.2. Having a web service interface (WSInterface) isoptional while it is mandatory to have user management (UserManagement),at least one module (Modules) and the core of the system (Core).

A FM is composed of a root (JAMES in Figure 2.2) and an optional set

1Similar concepts are known in the literature as system family engineering [25], generativeprogramming [14] or software factories [20]

Page 12: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

2.1. Introduction 5

FeatureModel

GroupedSolitarySetBinary

Relations

Root1

0..*

Feature0..*

1 2..*

Cardinality 1..*1..*

ExcludesDepends

Constraint0..*

Figure 2.1: CFM meta model.

of constraints (they refer to global constraints: depends and excludes; R9 andR10 in Figure 2.2).

A root is composed of an optional set of relations. Relations can be of twodifferent types: binary relations which include mandatory (e.g. R1), optional(e.g. R2) and cardinality–based relations (e.g. R4) or set relations (e.g.R7).

A feature can be of two different types and is composed of zero or morerelations. A binary relation is composed of one and only one solitary featurewhich is the child feature since the parent feature is the one that has this rela-tion (Core orUserManagement are examples of solitary features); A set rela-tion is composed of at least two grouped features (Calendar,DB or PDA areexamples of grouped features). In addition, a solitary feature and set relationscomprise one or more cardinalities. Note that in the graphical representationit is possible not to represent a cardinality in set relations although in fact thatmeans that the cardinality is 〈1-1〉. Likewise, there are graphical representa-tions for commonly used cardinalities of solitary features like [1..1] and [0..1]

(see Figure 2.2 notes).

Page 13: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

6 Chapter 2. PhD Project

JAMES

Core ModulesWSInterface

Calendar

Forum Congress Management

Repository

GUI

PC PDA

UserManagement

DB LDAP

R1R2 R3 R4

R5

R6 R7 R8

R9R10

Solitary Feature with cardinality [1..1]Solitary Feature with cardinality [0..1]

Feature Group with group Cardinality <n-n’> (or <1-1> when not cardinality)Requires

Excludes

<1..2> <1..4>

Solitary Feature with cardinality [n..n’]

[n..n’ ]

<n..n’>

[1..4]

Figure 2.2: James System.

2.1.3 Constraint programming

Constraint Satisfaction Problems [26] have been object of research in Arti-ficial Intelligence in the last few decades. A Constraint Satisfaction Problem(CSP) is defined as a set of variables, each ranging on a finite domain, and a setof constraints restricting all the values that variables can take simultaneously.A solution to a CSP is an assignment of a value from its domain to every vari-able, in such a way that all constraints are satisfied simultaneously. We maywant to find: i) just one solution, with no preference as to which one, ii) allsolutions, iii) an optimal solution by means of an objective function defined interms of one or more variables. Solutions to a CSP can be found by searching(systematically) through all possible value assignments to variables.

In many real-life applications, we do not want to find any solution but agood solution. The quality of a solution is usually measured by an applicationdependent function called objective function. The goal is to find a solutionthat satisfies all the constraints and minimize or maximize the objective func-tion, respectively. Such problems are referred to as Constraint SatisfactionOptimization Problems (CSOP), which consist of a standard CSP and an op-timization function that maps every solution (complete labelling of variables)to a numerical value. These are some basic definitions of what a CSP is.

Definition 2.1 (CSP) A CSP is a three–tuple of the form (V,D,C) where V 6= ∅ isa finite set of variables, D 6= ∅ is a finite set of domains (one for each variable) and Cis a constraint defined on V .

Consider, for instance, the CSP: ({a, b}, {[0..2], [0..2]}, {a+ b < 4})

Page 14: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

2.2. Innovation degree 7

Definition 2.2 (Solution) Let ψ be a CSP, a solution of ψ is whatever valid assign-ment of all elements in V as satisfies C.

In the previous example, a possible solution is (2, 0) since it verifies that2+ 0 < 4.

Definition 2.3 (Solution space) Let ψ be a CSP of the form (V,D,C), its solutionspace denoted as sol(ψ) is made up of all its possible solutions. A CSP is satisfiable ifits solution space is not empty.

sol(ψ) = {S | ∀si · si ∈ S ⇒ C(si) = true}

In the previous example, there are eight solutions. The only assignmentthat does not satisfy a + b < 4 is (2, 2). Nevertheless, if we replace the con-straint with a+ b < −1, then the CSP is not satisfiable.

Definition 2.4 (CSOP) A CSOP is a four–tuple of the form (V,D,C,O) where V ,D and C stand for a CSP and O is a real function defined on D.

Consider, for instance, the CSOP: ({a, b}, {[0..2], [0..2]}, {a+ b < 4}, a)

Definition 2.5 (Optimum space) Let ψ be a CSOP of the form (V,D,C,O), itsoptimum space denoted asmax/min(ψ,O) is made up of all solutions that maximizeor minimize O.

max(ψ,O) = {s | ∀s′ · s′ ∈ sol(ψ) ∧ s′ 6= s ⇒ O(s) ≥ O(s′)}

min(ψ,O) = {s | ∀s′ · s′ ∈ sol(ψ) ∧ s′ 6= s ⇒ O(s) ≤ O(s′)}

In the previous example,max(ψ,a) = {(2, 0), (2, 1)}.

2.2 Innovation degree

In this section, we briefly present the main contributions of our PhD projects.In Section 2.2.1 we present the improvements regarding the state of the artthat we plan to provide in our PhD project; in Section 2.2.2 we summarizeour current contributions in congress, conferences and journals.

Page 15: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

8 Chapter 2. PhD Project

2.2.1 Improvements in the State of the Art

When we started our research path, there was little support in the auto-mated analyses of feature models. We put a stone in this castle and proposedthe translation of a feature model into a constraint satisfaction problem. Thisis a novel contribution and has been already quoted by some of the most im-portant researchers in the area [1, 2, 12, 16, 27, 28]. [1] literally says talkingabout our paper [10]:

Concurrently and independently of our work, Benavides, Trinidad, and Ruiz-Cortes [6] also noted the connection between feature models and propositional formu-las, and recognized that handling additional performance, resource, and other con-straints is a general constraint satisfaction problem (CSP), which is not limited tothe boolean CSP techniques discussed in this paper. We believe their work is a valu-able complement to our paper; read together, it is easy to imagine a new and powerfulgeneration of feature modeling tools that leverage automated analyses.

In our opinion what make our contributions stronger is the fact that wehave formulated the problem in a higher level of abstraction what allow usto handle with all current proposals: BDD based, SAT based or ourself (CSPbased).

2.2.2 Summary of contributions

Our research path on software product lines started in a local sofware com-pany (Telvent) where we had the opportunity of participate in two europeeanprojects: CAFE and FAMILIES. Our experience in those projects allowed us tostart opening contacts and topics of research for our PhD project.

Our research work has followed a clear path in such a way that we havebeen able to publish our contributions in important congress and journals. Wecan summarize our contributions as follows:

• The first result was published in a national conference [3]. We proposeda set of techniques using XML to represent variability of a software prod-uct line and claimed the need of including extra–functional aspects.

• Secondly, in [7] we provided an overview of the benefits that a softwareproduct line approach could bring to the development of software prod-uct lines based on web services.

Page 16: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

2.3. Objectives 9

• Later, in [4] we focused our challenges in the need of the introduction ofextra–functional information in a software product line. We can say thatthe attendance to this workshop provided us the necessary backgroundto start working on feature models which are the core of our PhD project.

• The study of feature models allowed us to present a contribution to thesoftware product line conference [17]. This can be seen as a marginalresult of our PhD project but it is important to underline that it was pre-sented in the major forum of software product lines.

• After a deep study of feature models, we concluded that an automatedsupport to the analyses of feature models was mandatory. We presentedour first approach in [5] and later in [9] where we provided a way oftranslating a feature model into a constraint satisfaction problem. Thisallows us to have an automatic support for feature models analyses.

• The former paper was the seed for our paper in the CAiSE conferencewhere was finally accepted [10].

• Then we have submitted a paper to an special issue on software productlines of the journal “Communications of the ACM” which is the resultof a join work with professor Don Batory head of the group on softwareproduct lines at the University of Texas.

2.3 Objectives

Our main objective in the near future is to write the dissertation of the PhDthesis. We had some objectives that we have already achieved, namely:

i. International dissemination. We have presented some papers in inter-national conferences. We would like to underline the one presented in[10].

ii. International contacts. We have spent one month in CIMAT (Centro deInvestigación en Matemáticas) in Guanajuato, Mexico. In addition wehave done a visit of three months to the Cork Constraint ComputationCentre in Ireland which is one of the leading research centers in con-straint programming. We have also contacted Prof. Don Batory in Texas(USA) with a fruitful email exchange.

iii. Publications. We have submitted our major results up to now to an im-portant journal: Communications of the ACM in a join work with Prof.

Page 17: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

10 Chapter 2. PhD Project

Batory. We plan to submit one more article to the Journal of SoftwareEngineering and Knowledge Engineering in October 2006.

2.4 Methodology

Software Engineering is a relatively new area of research. Therefore thelack of research methodologies is a recognized handicap. Even more, in re-search forums it’s still under discussion if software engineering should beclassified as a science or as an engineering. [19, 22, 24].

From the early stage of our research work we have though about method-ological aspects and we have participated in national and international forumswhere this issues are trated. In 2002 we presented a paper in the first work-shop on "Métodos de Investigación y Fundamentos Filosóficos en Ingenieríadel Software" [6]. We exposed our reason to not follow the classical methodsin research used in other branched such as mathematics of physics in softwareengineering.

Later in 2004, we participated again in the second edition of this work-shop [6] that was colocated with the "Congreso de la Sociedad de Lógica,Metodología y Filosofía de la Ciencia en España". This time we exposed themethodological difficulty raised from the fact that a software engineering re-searcher has to be researcher, student and teacher at the same time.

Later in 2005, we presented an English version of that paper [8] in the "1stWorkshop on Philosophical Foundations of Information Systems Engineering"where in addition we proposed action research as a research method in thecontext of software engineering.

2.5 Work Plan

Our work plan is mainly focused in two activities:

i. PhD Dissertation writing. We plan to finish writing at the end of July.

ii. European PhD degree. Because we intend to access to the european PhDdegree we have to do some logistic tasks:

(a) Write the PhD thesis in English.

Page 18: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

2.5. Work Plan 11

(b) Send the thesis to two European doctors to obtain their insights.

(c) Proceed with the steps contemplated in the regulation of the Uni-versity of Seville for the inscription of an european PhD thesis.

iii. Publication of partial results. We plan to submit three paper during theyear. One to the main conference on software product lines (SPLC), an-other to the main conference on software engineering (ICSE) and a jour-nal paper to the Journal of Software Engineering and Knowledge Engi-neering in October 2006.

Page 19: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

12 Chapter 2. PhD Project

Page 20: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Bibliography

[1] D. Batory. Feature models, grammars, and propositional formulas. InSoftware Product Lines Conference, LNCS 3714, pages 7–20, 2005.

[2] D. Batory. A tutorial on feature oriented programming and the aheadtool suite. In Summer school on Generative and Transformation Techniques inSoftware Engineering, 2005.

[3] D. Benavides, A. Durán, M.A. Serrano, and C. Montes de Oca. QualityOf Service in System Families Based on Web Services. In Proceedings of theSymposium on Informatics and Telecommunications, Seville, Spain, Septem-ber, 2002.

[4] D. Benavides, A. Ruiz-Cortés, R. Corchuelo, and A. Durán. Seeking forextra-functional variability. In Proceedings of the ECOOP Workshop on Mod-eling Variability for Object-Oriented Product Lines, Darmstadt, Germany,2003.

[5] D. Benavides, A. Ruiz-Cortés, R. Corchuelo, and O. Martín-Díaz. Splneeds an automatic holistic model for software reasoning with featuremodels. In International Workshop on Requirements Reuse in System FamilyEngineering, pages 27–33, Madrid, Spain, 2004. Universidad Politécnicade Madrid.

[6] D. Benavides, A. Ruiz-Cortés, and M. Toro. Aplicando la filosofía de lasciencias de la complejidad a la ingeniería del software. In Primer Workshopen Métodos de Investigación y Fundamentos Filosóficos en Ingeniería del Soft-ware MIFISIS 2002, pages 97–106. Universidad Rey Juan Carlos, Spain,2002.

[7] D. Benavides, A. Ruiz-Cortés, O. Martín, and J. Bermejo. A firts approachto build product lines of mows. In Proceedings of the ZOCO02 workshop, ElEscorial, Madrid, 2002.

Page 21: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

14 Bibliography

[8] D. Benavides, A. Ruiz-Cortés, and C. Muller. In 1st Workshop on Philosoph-ical Foundations of Information Systems Engineering (PHISE’05), June 2005.

[9] D. Benavides, A. Ruiz-Cortés, and P. Trinidad. Coping with automaticreasoning on software product lines. In Proceedings of the 2nd GroningenWorkshop on Software Variability Management, November 2004.

[10] D. Benavides, A. Ruiz-Cortés, and P. Trinidad. Automated reasoning onfeature models. LNCS, Advanced Information Systems Engineering: 17thInternational Conference, CAiSE 2005, 3520:491–503, 2005.

[11] D. Benavides, S. Trujillo, and P. Trinidad. On the modularization of fea-ture models. In First European Workshop on Model Transformation, Septem-ber 2005.

[12] M. Cengarle, P. Graubmann, and S. Wagner. Semantics of uml 2.0 inter-actions with variabilities. In Proceedings of the International Workshop onFormal Aspects of Component Software, 2005.

[13] P. Clements and L. Northrop. Software Product Lines: Practices and Patterns.SEI Series in Software Engineering. Addison–Wesley, August 2001.

[14] K. Czarnecki and U.W. Eisenecker. Generative Programming: Methods,Techniques, and Applications. Addison–Wesley, may 2000. ISBN 0–201–30977–7.

[15] K. Czarnecki, S. Helsen, and U.W. Eisenecker. Formalizing cardinality-based feature models and their specialization. Software Process: Improve-ment and Practice, 10(1):7–29, 2005.

[16] K. Czarnecki and P. Kim. Cardinality-based feature modeling and con-straints: A progress report. In Proceedings of the International Workshop onSoftware Factories At OOPSLA 2005, 2005.

[17] Amador Durán, David Benavides, and Jesus Bermejo. Applying systemfamilies concepts to requirements engineering process definition. In Soft-ware Product-Family Engineering, volume 3014 of LNCS, pages 140–151.Springer-Verlag, 2004.

[18] P. Fernandez and M. Resinas. James project. Available athttp://jamesproject.sourceforge.net/, 2002-2005.

[19] J.M. Cañete F.J. Galán. ¿qué se entiende, en españa, por investigación eningeniería del software? In MIFISIS, 2002.

Page 22: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Bibliography 15

[20] J. Greenfield, K. Short, S. Cook, and S. Kent. Software Factories: AssemblingApplications with Patterns, Models, Frameworks, and Tools. Wiley, August2004.

[21] K. Kang, S. Cohen, J. Hess, W. Novak, and S. Peterson. Feature–OrientedDomain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University,November 1990.

[22] E. Marcos. Investigación en ingeniería del software vs. desarrollo soft-ware. In MIFISIS, 2002.

[23] D. Mcilroy. Mass-produced software components. In Proceedings of the1st International Conference on Software Engineering, Garmisch Pattenkirchen,Germany, pages 88–98, 1968.

[24] D. Parnas. Software engineering: an unconsummed marriage. Communi-cations of the ACM, 40(9), 1997.

[25] K. Pohla, G. Böckle, , and F. van der Linden. Software Product Line Engi-neering: Foundations, Principles, and Techniques. Springer–Verlag, 2005.

[26] Edward Tsang. Foundations of Constraint Satisfaction. Academic Press,1995.

[27] D. Wagelaar. Towards context-aware feature modelling using ontologies.In Proceedings of the MoDELS 2005 International workshop on MDD for Soft-ware Product Lines, 2005.

[28] D. Wagelaar and V. Jonckers. Explicit platform models for mda. In MOD-ELS 2005 8th International Conference on Model Driven Engineering Lan-guages and Systems, 2005.

Page 23: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

16 Bibliography

Page 24: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

This document was typeset on // using RC–BOOK α. for LATEX2ǫ.Should you want to use this document class, please send mail to

[email protected].

Page 25: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Comisión Interministerial deCiencia y Tecnología

Curriculum vitae

Nombre:David Benavides CuevasFecha:22/12/2005

Plan Nacional de I+D+I (2004-2007)

ATENCION: Deben firmarse al margen todas las hojas del curiculum

1

Page 26: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Apellidos: Benavides Cuevas Nombre: DavidDNI: 77585613-N Fecha de nacimiento: 1976-08-26 Sexo:Hombre

Situación profesional actual

Organismo: Universidad de SevillaFacultad, Escuela o Instituto: ETSI InformáticaDepto./Secc./Unidad estr.: Lenguajes y Sistemas InformáticosDirección postal: Av Reina Mercedes ,S/N 41012 Sevilla Sevilla España

Teléfono (indicar prefijo, número y extensión: 954 55 38 66Fax: 95 455 71 39Correo electrónico: [email protected]

Especialización (Códigos UNESCO): 570Categoría profesional: Profesor Colaborador Fecha de inicio: 2003-03-01Situación administrativa:

Plantilla X Contratado Interino BecarioOtras situaciones, especificar:

Líneas de investigación

Breve descripción, por medio de palabras claves, de la especialización y líneas de investigación actuales.Tecnologías de la información y las comunicaciones/Ingeniería del software

Formación Académica

Titulación Superior Centro Fecha

Ingeniero en Informática ETSI Informática 2001-07-01Certificat de spécialisation en systèmesd’information

Institute superiuer d’electronique de Paris2000-07-20

Doctorado Centro Fecha

Diploma de estudios avanzados Universidad de Sevilla 2005-10-01

2

Page 27: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Actividades anteriores de carácter científico profesional

Puesto Institución Fecha

Ingeniero de I+D Telvent Interactiva (Grupo Abengoa) 2002-01-04/2003-03-04

Profesor asociado tiempo particial Universidad de Sevilla 2002-10-01/2002-11-01

Profesor adjunto Grupo Ciencia y Estudios 2001-03-27/2001-06-26

Idiomas (R = regular, B = bien, C = correctamente)

Idioma Habla Lee Escribe

INGLÉS B B BFRANCÉS B B B

3

Page 28: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Participación en Proyectos de I+D financiados en convocatorias públicas

(nacionales y/o internacionales)

Título del proyecto: FAMILIES, Quality-aware system familiesEntidad financiadora: Telvent InteractivaEntidades participantes: Universidad de Sevilla, Fidetia, Universidad de essen, Nokia, Philips, Philips medicalsystems, Siemens,Duración, desde: 2003-09-18 hasta: 2004-09-17 Cuantía de la subvención: 12.713Investigador responsable: Frank van der LindeNúmero de investigadores participantes: 5Título del proyecto: FRADAEntidad financiadora: Ministerio de ciencia y tecnología (FIT-070000-2003-401)Entidades participantes: Universidad de Sevilla,Duración, desde: 2003-12-01 hasta: 2004-12-01 Cuantía de la subvención: 12.000Investigador responsable: Antonio Ruiz-CortésNúmero de investigadores participantes: 5Título del proyecto: CAFE (from concepts to application in system-family engineering)Entidad financiadora: ITEA, Ministerio de Ciencia y Tecnología (FIT-070000-2001-808)Entidades participantes: Telvent interactiva S.A., Philips medical systems, Nokia, Universidad de essen, Universi-dad politécnica de Madrid, Siemens, Bosch,Duración, desde: 2002-03-01 hasta: 2002-11-01 Cuantía de la subvención: 50.000Investigador responsable: Frank van der LindeNúmero de investigadores participantes: 70Título del proyecto: REDEST (experimental based cross fertilization and dissemination of requirements and gath-ering techniquesEntidad financiadora: comisión europea (IST-2000-29425)Entidades participantes: Telvent Interactiva,Duración, desde: 2002-03-03 hasta: 2002-11-01 Cuantía de la subvención: 13.000Investigador responsable: Jesús BermejoNúmero de investigadores participantes: 20Título del proyecto: WEBPLUS. Nueva generación de servicios WEBEntidad financiadora: Ministerio de ciencia y tecnología (FIT-150100-2001-78)Entidades participantes: Universidad de Sevilla, Fidetia,Duración, desde: 2002-03-01 hasta: 2003-12-30 Cuantía de la subvención: 12.020Investigador responsable: Jesús BermejoNúmero de investigadores participantes: 5Título del proyecto: AGILWEB, Desarrollo de aplicaciones basadas en servicios WEBEntidad financiadora: Ministerio de ciencia y tecnología (TIC-2003-02737-C02-01)Entidades participantes: Universidad de Sevilla, Universidad de Castilla la Mancha, Isotrol S.A., Telvent interactivaS.A.,Duración, desde: 2003-11-15 hasta: 2006-11-15 Cuantía de la subvención: 191.200Investigador responsable: Miguel Toro BonillaNúmero de investigadores participantes: 12Título del proyecto: WEBTEST. Técnicas avanzadas de pruebas para aplicaciones basadas en servicios WEB,subproyecto del proyecto coordinado TAMANSIEntidad financiadora: Mancha de Castilla la Mancha (pcb-02-001)Entidades participantes: Universidad de Sevilla, Universidad de Castilla la Mancha,Duración, desde: 2000-01-01 hasta: 2003-12-01 Cuantía de la subvención: 13.908Investigador responsable: Miguel Toro BonillaNúmero de investigadores participantes: 10

4

Page 29: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Publicaciones o Documentos Científico-Técnicos

( CLAVE: L = libro completo, CL = capítulo de libro, A = artículo, R = “review”, E = editor,S = Documento Científico-Técnico restringido. )

Autores (p.o. de firma): D. Batory, D. Benavides, A. Ruiz-Cortés,Título: Automated analyses of feature models: challenges aheadRef. revista/libro: Communications of the ACMClave: A Volumen: december (enviado) Páginas, inicial: 0 final: 0 Fecha: 2006-12-01Editorial (si libro):ACMLugar de publicación:USAAutores (p.o. de firma): D. Benavides, S. Segura, P. Trinidad, A. Ruiz-Cortés,Título: A performance comparison of two java CSP solvers to reason on feature modelsRef. revista/libro: LNCSClave: A Volumen: por asignar Páginas, inicial: 0 final: 0 Fecha: 2006-06-01Editorial (si libro):Springer-VerlagLugar de publicación:BerlínAutores (p.o. de firma): D. Benavides, A. Ruiz-Cortés, C. Montes de Oca, M.A. Serrano,Título: A first approach to build product lines of multi-organizational web based systems (mows)Ref. revista/libro: LNCSClave: A Volumen: por asignar Páginas, inicial: 0 final: 0 Fecha: 2006-01-01Editorial (si libro):Springer-Verlag berlinLugar de publicación:BerlínAutores (p.o. de firma): J. Bermejo, P. Trinidad, D. Benavides, A. Ruiz-Cortés,Título: Experiencies: TelventRef. revista/libro: LNCSClave: Capitulo de libro Volumen: por asignar Páginas, inicial: 0 final: 0 Fecha: 2005-12-31Editorial (si libro):Springer VerlagLugar de publicación:BerlínAutores (p.o. de firma): D. Benavides, P. Trinidad, A. Ruiz-Cortés,Título: Automated reasoning on feature modelsRef. revista/libro: LNCSClave: A Volumen: 3520 Páginas, inicial: 491 final: 503 Fecha: 2005-06-01Editorial (si libro):Springer-VerlagLugar de publicación:BerlínAutores (p.o. de firma): D. Benavides, A. Ruiz-Cortés, C. Müller , M. Toro,Título: La triple esquizofrenia del investigador en ingeniería del softwareRef. revista/libro: Aspectos Filosóficos, Psicológicos y Metodológicos de la InformáticaClave: Capitulo de libro Volumen: Páginas, inicial: 47 final: 56 Fecha: 2005-10-01Editorial (si libro):DykinsonLugar de publicación:MadridAutores (p.o. de firma): A. Durán, D. Benavides, J. Bermejo,Título: Applying system families concepts to requirements engineering process definitionRef. revista/libro: LNCSClave: A Volumen: 3014 Páginas, inicial: 140 final: 151 Fecha: 2004-11-01Editorial (si libro):Springer-VerlagLugar de publicación:BerlínAutores (p.o. de firma): O. Martín-Díaz, A. Ruiz-Cortés, A. Durán, D. Benavides, M. Toro ,Título: Automating the procurement of web servicesRef. revista/libro: LNCSClave: A Volumen: 2910 Páginas, inicial: 91 final: 103 Fecha: 2003-01-01Editorial (si libro):Springer-VerlagLugar de publicación:Berlín

5

Page 30: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Autores (p.o. de firma): O. Martín-Díaz, A. Ruiz-Cortés, D. Benavides, A. Durán, M. Toro ,Título: A quality aware approach to web service procurementRef. revista/libro: LNCSClave: A Volumen: 2819 Páginas, inicial: 42 final: 53 Fecha: 2003-01-01Editorial (si libro):Springer-VerlagLugar de publicación:BerlínAutores (p.o. de firma): R. Corchuelo, A. Ruiz-Cortés, D. Benavides,Título: New methods and tools supporting e-commerce IIRef. revista/libro: New methods and tools supporting e-commerce IIClave: E Volumen: Páginas, inicial: 0 final: 0 Fecha: 2003-01-01Editorial (si libro):KronosLugar de publicación:SevillaAutores (p.o. de firma): D. Benavides, A. Ruiz-Cortés, martín díaz, o, J. Bermejo,Título: A first approach to build product-lines of mowsRef. revista/libro: New methods and tools supporting e-commerce IIClave: A Volumen: Páginas, inicial: 61 final: 66 Fecha: 2003-01-01Editorial (si libro):KronosLugar de publicación:SevillaAutores (p.o. de firma): D. Benavides, A. Ruiz-Cortés, M. Toro,Título: Aplicando la filosofía de las ciencias de la complejidad a la ingeniería del softwareRef. revista/libro: Métodos de investigación y fundamentos filosóficos en ingeniería del software y sistemas deinformaciónClave: Capitulo de libro Volumen: Páginas, inicial: 97 final: 105 Fecha: 2003-01-01Editorial (si libro):DykinsonLugar de publicación:MadridAutores (p.o. de firma): A. Ruiz-Cortés, R. Corchuelo, A. Durán, D. Benavides,Título: Automatic detection of conflicts in quality requirementsRef. revista/libro: Applying requirements engineeringClave: Capitulo de libro Volumen: Páginas, inicial: 121 final: 130 Fecha: 2003-01-01Editorial (si libro):CatedralLugar de publicación:SevillaAutores (p.o. de firma): D. Benavides, A. Ruiz-Cortés, R. Corchuelo, A. Durán,Título: Seeking for extra-functional variabilityRef. revista/libro: Modeling variability for object-oriented product linesClave: Capitulo de libro Volumen: Páginas, inicial: 58 final: 63 Fecha: 2003-07-21Editorial (si libro):books on demand gmbhLugar de publicación:AlemaniaAutores (p.o. de firma): O. Martín-Díaz, A. Ruiz-Cortés, R. Corchuelo, D. Benavides,Título: Putting the foundations for a management and execution environment for mowsRef. revista/libro: New methods and tools supporting e-commerce IIClave: Capitulo de libro Volumen: Páginas, inicial: 93 final: 102 Fecha: 2003-01-01Editorial (si libro):KronosLugar de publicación:SevillaAutores (p.o. de firma): D. Benavides, A. Durán, M.A. Serrano, C. Montes de Oca,Título: Quality of service variability in system families based on web servicesRef. revista/libro: Simposio de informática y telecomunicacionesClave: Capitulo de libro Volumen: Páginas, inicial: 205 final: 217 Fecha: 2002-01-01Editorial (si libro):CopysevillaLugar de publicación:Sevilla

6

Page 31: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Participación en contratos de I+D de especial relevancia con Empresas y/o Administraciones

(nacionales y/o internacionales)

Título del contrato/proyecto:Tipo de contrato:Empresa/Administración financiadora:Entidades Participantes:Duración, desde: hasta:Investigador responsable:Número de investigadores participantes:PRECIO TOTAL DEL PROYECTO:

7

Page 32: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Patentes y Modelos de utilidad

Inventores (p.o. de firma):Título:N. de solicitud: País de prioridad: Fecha de prioridad:Entidad titular:Países a los que se ha extendido:Empresa/s que la están explotando:

8

Page 33: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Estancias en Centros extranjeros

(estancias continuadas superiores a un mes)

CLAVE: D = doctorado, P = postdoctoral, I = invitado, C = contratado, O = otras (especificar).

Centro: Cork Constraint Computation CentreLocalidad: Cork País: Irlanda Fecha: 2005-05-01 Duración (semanas): 14Tema: Programación con restriccionesClave: ICentro: Centro de Investigación en MatemáticasLocalidad: Guanajuato País: México Fecha: 2001-08-15 Duración (semanas): 4Tema: Servicios web y XMLClave: I

9

Page 34: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Contribuciones a Congresos

Autores: D. Benavides, S. Trujillo, P. Trinidad,Título: On the modularization of feature modelsTipo de participación: ConferenciaCongreso: First European Workshop on Model TransformationPublicación: Actas en papel y sitio webLugar celebración: Rennes, Francia Fecha:2005-09-26Autores:Título: Automated feature models management using constraint programmingTipo de participación: ComunicaciónCongreso: Summer School on Generative and Transformational Techniques in Software EngineeringPublicación: Technical report, Universidade do Minho (TR-CCTC/DI-36)Lugar celebración: BRAGA, PORTUGAL Fecha:2005-07-04Autores: D. Benavides, P. Trinidad, A. Ruiz-Cortés,Título: Using constraint programming to reason on feature modelsTipo de participación: conferenciaCongreso: The seventeenth international conference on software engineering and knowledge engineering (seke05)Publicación: ISBN: 1-891706-16-0Lugar celebración: taipei, taiwan Fecha:2005-07-14Autores: D. Benavides, A. Ruiz-Cortés, müller, c, P. Trinidad,Título: The triple schizophrenia of the software engineering researcherTipo de participación: conferenciaCongreso: International workshop on philosophical foundations of information systems engineering (phise’05)Publicación: ISBN 972-752-077-4Lugar celebración: oporto, portugal Fecha:2005-06-13Autores: D. Benavides, A. Ruiz-Cortés, P. Trinidad,Título: Coping with automatic reasoning on software product linesTipo de participación: conferenciaCongreso: Workshop on software variability managementPublicación: technical report university of groningen (iwi 2004-7-01Lugar celebración: groningen, holanda Fecha:2004-12-02Autores: P. Trinidad, D. Benavides, A. Ruiz-Cortés,Título: Aplicación de modelos de características a la gestión de planes de producciónTipo de participación: conferenciaCongreso: ZOCO: desarrollo y mantenimiento ágil de aplicaciones basadas en servicios webPublicación: actas en papelLugar celebración: Málaga Fecha:2004-11-09Autores: D. Benavides, A. Ruiz-Cortés, P. Trinidad,Título: Putting the basis for automatic reasoning on software product linesTipo de participación: conferenciaCongreso: ZOCO: desarrollo y mantenimiento agil de aplicaciones basadas en servicios webPublicación: actas en papelLugar celebración: Málaga Fecha:2004-11-09Autores: P. Trinidad, D. Benavides, A. Ruiz-Cortés,Título: Improving decision making in software product lines product plan managementTipo de participación: conferenciaCongreso: decision support in software engineeringPublicación: ISSN: 1613-0073Lugar celebración: Málaga Fecha:2004-11-09

10

Page 35: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Autores: D. Benavides, A. Ruiz-Cortés, R. Corchuelo, O. Martín-Díaz,Título: SPL needs an automatic holistic model for software reasoning with feature modelsTipo de participación: ConferenciaCongreso: International workshop on requirements reuse in system family engineeringPublicación: ISBN: 84-688-7314-4Lugar celebración: Fecha:2004-07-05Autores: O. Martín-Díaz, D. Benavides, J. Peña, M. Toro,Título: Un tratamiento sensible a la calidad para la adquisición de servicios webTipo de participación: conferenciaCongreso: VIII jornadas de ingeniería del software y bases de datosPublicación: actasLugar celebración: Fecha:2003-11-12

11

Page 36: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Tesis Doctorales dirigidas

Título:Doctorando:Universidad:Facultad/Escuela:Fecha:

12

Page 37: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Participación en comités y representaciones internacionales

Título del Comité:Entidad de la que depende:Tema:Fecha:

13

Page 38: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Experiencia en organización de actividades de I+D

Organización de congresos, seminarios, jornadas, etc., científicos-tecnológicos

Título:Tipo de actividad: Ámbito:Fecha:

14

Page 39: O THE - lsi.us.es · Chapter 2 PhD Project 2.1 Introduction In this section, we briefly present the main concepts we use through the rest of the PhD project. First we present software

Experiencia de gestión de I+D

Gestión de programas, planes y acciones de I+D

Título:Tipo de actividad:Fecha:

15