It is well known that during the domain requirement engineering phase with UML, both feature models and UML notations (e.g. UML use case diagrams and activity diagrams for describing use cases) are necessary. The development in parallel of UML models and a feature model could introduce inconsistencies between such models that should be removed. The construction of UML models for requirements from a feature model is usually a complex task, the generation of UML models from a feature model cannot be automated, and it cannot be expected that UML specialists will construct feature models of high quality; for these reasons we propose in this paper to first develop UML models for requirements and from them to automatically generate a feature model. We have found only a few papers proposing methods for the construction of feature model from UML models for requirements, but these methods do not consider the mapping of use case descriptions, expressed using a UML notation, onto a feature model. In this paper we extend our previous work in requirements engineering of product lines with new kinds of variabilities for use case diagrams, and new stereotypes for classifying activity diagram actions. Additionally, we defined a transformation from these use case diagram and activity diagram notations onto feature model.
{"title":"Automatic generation of feature models from UML requirement models","authors":"Hernán Casalánguida, J. E. Durán","doi":"10.1145/2364412.2364415","DOIUrl":"https://doi.org/10.1145/2364412.2364415","url":null,"abstract":"It is well known that during the domain requirement engineering phase with UML, both feature models and UML notations (e.g. UML use case diagrams and activity diagrams for describing use cases) are necessary. The development in parallel of UML models and a feature model could introduce inconsistencies between such models that should be removed. The construction of UML models for requirements from a feature model is usually a complex task, the generation of UML models from a feature model cannot be automated, and it cannot be expected that UML specialists will construct feature models of high quality; for these reasons we propose in this paper to first develop UML models for requirements and from them to automatically generate a feature model. We have found only a few papers proposing methods for the construction of feature model from UML models for requirements, but these methods do not consider the mapping of use case descriptions, expressed using a UML notation, onto a feature model. In this paper we extend our previous work in requirements engineering of product lines with new kinds of variabilities for use case diagrams, and new stereotypes for classifying activity diagram actions. Additionally, we defined a transformation from these use case diagram and activity diagram notations onto feature model.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115772388","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The goal of the SPLC Doctoral Symposium is to provide a supportive environment that enables doctoral students to get feedback on and improve their research work. Students will have the opportunity to discuss their research, especially goals, methods, and preliminary results with experienced members of the community. Thus, the symposium offers a unique opportunity for Ph.D. students to gather valuable expert feedback with respect to their research work and to get into contact with other students who are at a similar stage. The overall aim of the symposium is to improve the quality of doctoral theses in the area of software product lines. The intent is to promote fruitful discussions and provide valuable feedback to the candidates.
{"title":"SPLC 2012 Doctoral Symposium","authors":"Rick Rabiser","doi":"10.1145/2362536.2362582","DOIUrl":"https://doi.org/10.1145/2362536.2362582","url":null,"abstract":"The goal of the SPLC Doctoral Symposium is to provide a supportive environment that enables doctoral students to get feedback on and improve their research work. Students will have the opportunity to discuss their research, especially goals, methods, and preliminary results with experienced members of the community. Thus, the symposium offers a unique opportunity for Ph.D. students to gather valuable expert feedback with respect to their research work and to get into contact with other students who are at a similar stage. The overall aim of the symposium is to improve the quality of doctoral theses in the area of software product lines. The intent is to promote fruitful discussions and provide valuable feedback to the candidates.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124945029","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Maxime Cordy, Pierre-Yves Schobbens, P. Heymans, Axel Legay
In Software Product Line (SPL) engineering, software products are build in families rather than individually. Many critical software are nowadays build as SPLs and most of them obey hard real-time requirements. Formal methods for verifying SPLs are thus crucial and actively studied. The verification problem for SPL is, however, more complicated than for individual systems; the large number of different software products multiplies the complexity of SPL model-checking. Recently, promising model-checking approaches have been developed specifically for SPLs. They leverage the commonality between the products to reduce the verification effort. However, none of them considers real time. In this paper, we combine existing SPL verification methods with established model-checking procedures for real-time systems. We introduce Featured Timed Automata (FTA), a formalism that extends the classical Timed Automata with constructs for modelling variability. We show that FTA model-checking can be achieved through a smart combination of real-time and SPL model checking.
{"title":"Behavioural modelling and verification of real-time software product lines","authors":"Maxime Cordy, Pierre-Yves Schobbens, P. Heymans, Axel Legay","doi":"10.1145/2362536.2362549","DOIUrl":"https://doi.org/10.1145/2362536.2362549","url":null,"abstract":"In Software Product Line (SPL) engineering, software products are build in families rather than individually. Many critical software are nowadays build as SPLs and most of them obey hard real-time requirements. Formal methods for verifying SPLs are thus crucial and actively studied. The verification problem for SPL is, however, more complicated than for individual systems; the large number of different software products multiplies the complexity of SPL model-checking. Recently, promising model-checking approaches have been developed specifically for SPLs. They leverage the commonality between the products to reduce the verification effort. However, none of them considers real time.\u0000 In this paper, we combine existing SPL verification methods with established model-checking procedures for real-time systems. We introduce Featured Timed Automata (FTA), a formalism that extends the classical Timed Automata with constructs for modelling variability. We show that FTA model-checking can be achieved through a smart combination of real-time and SPL model checking.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"27 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123263579","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Christian Tischer, B. Boss, Andreas Müller, A. Thums, Rajneesh Acharya, Klaus Schmid
Product lines are usually built for the long term in order to repay the initial investment. While long-term stable software systems are already hard, if they are developed individually, it is even harder for complete product lines. At the time a new product line is created, the details of future product line characteristics are typically not known, no matter how well and detailed scoping and planning is done. Thus, any product line needs to evolve and adapt over time to incorporate new customer requirements as well as new technology constraints. Stability of the product line architecture is very important to the successful long-term evolution of a product line. In this paper, we discuss how a form of domain decomposition, which we call conceptual architecture, can be used to guide product line engineering towards long-term viability. We will illustrate this approach in the context of a large-scale product line development and analyze the evolution properties of the product line. Transferability of the approach is suggested to other embedded software systems that drive mature, well-understood physical control system.
{"title":"Developing long-term stable product line architectures","authors":"Christian Tischer, B. Boss, Andreas Müller, A. Thums, Rajneesh Acharya, Klaus Schmid","doi":"10.1145/2362536.2362551","DOIUrl":"https://doi.org/10.1145/2362536.2362551","url":null,"abstract":"Product lines are usually built for the long term in order to repay the initial investment. While long-term stable software systems are already hard, if they are developed individually, it is even harder for complete product lines. At the time a new product line is created, the details of future product line characteristics are typically not known, no matter how well and detailed scoping and planning is done. Thus, any product line needs to evolve and adapt over time to incorporate new customer requirements as well as new technology constraints.\u0000 Stability of the product line architecture is very important to the successful long-term evolution of a product line. In this paper, we discuss how a form of domain decomposition, which we call conceptual architecture, can be used to guide product line engineering towards long-term viability. We will illustrate this approach in the context of a large-scale product line development and analyze the evolution properties of the product line. Transferability of the approach is suggested to other embedded software systems that drive mature, well-understood physical control system.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129419578","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The configuration of concrete products from a product line infrastructure is the process of resolving the variability captured in the product line according to a company's market strategy or specific customer's requirements. Several aspects influence the selection of features for a concrete product, such as dependencies and constraints between features, the different stakeholders involved in the process, the desired degree of quality, and cost constraints. This paper presents the vision of a configurator that will focus on providing indicators of security and performance for features and empowering its users to interactively observe the effect of the selected set of features on these two quality characteristics. We propose the use of reusable expert knowledge and static analysis for obtaining the indicators of security and performance, respectively. The two main issues to be investigated are: (1) to which degree the configuration process should be automated; and (2) how exactly to obtain indicators of security and performance for features that can be used to predict the security and performance of whole configurations.
{"title":"Towards product configuration taking into account quality concerns","authors":"Karina Villela, Taslim Arif, D. Zanardini","doi":"10.1145/2364412.2364426","DOIUrl":"https://doi.org/10.1145/2364412.2364426","url":null,"abstract":"The configuration of concrete products from a product line infrastructure is the process of resolving the variability captured in the product line according to a company's market strategy or specific customer's requirements. Several aspects influence the selection of features for a concrete product, such as dependencies and constraints between features, the different stakeholders involved in the process, the desired degree of quality, and cost constraints. This paper presents the vision of a configurator that will focus on providing indicators of security and performance for features and empowering its users to interactively observe the effect of the selected set of features on these two quality characteristics. We propose the use of reusable expert knowledge and static analysis for obtaining the indicators of security and performance, respectively. The two main issues to be investigated are: (1) to which degree the configuration process should be automated; and (2) how exactly to obtain indicators of security and performance for features that can be used to predict the security and performance of whole configurations.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127697822","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The objective of this workshop is to attract professionals from academia and industry to discuss the role of requirements engineering in product line developments, including new techniques, methods and tools that will help practitioners to improve their current requirements engineering practices. The workshop will address experiences from practitioners, empirical evidence about current practices, successful deployment of novel approaches, and current obstacles and proposed solutions. Nevertheless, REPOS also aims to become a discussion forum about the state of the art and practice for practitioners and researchers on Requirements Engineering for Software Product Lines.
{"title":"First international workshop on requirements engineering practices on software product line engineering (REPOS 2012)","authors":"E. Insfrán, Gary J. Chastek, P. Donohoe","doi":"10.1145/2362536.2362575","DOIUrl":"https://doi.org/10.1145/2362536.2362575","url":null,"abstract":"The objective of this workshop is to attract professionals from academia and industry to discuss the role of requirements engineering in product line developments, including new techniques, methods and tools that will help practitioners to improve their current requirements engineering practices. The workshop will address experiences from practitioners, empirical evidence about current practices, successful deployment of novel approaches, and current obstacles and proposed solutions. Nevertheless, REPOS also aims to become a discussion forum about the state of the art and practice for practitioners and researchers on Requirements Engineering for Software Product Lines.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127973275","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
A. Leitner, J. Zehetner, Philipp Toeglhofer, D. Watzenig
Co-simulation is a powerful approach to verify a system design and to support concept decisions early in the automotive development process. Due to the heterogeneous nature of the co-simulation framework there is a lot of potential for variability requiring the systematic handling of it. We identified two main scenarios for variability management techniques in a co-simulation environment. Variability management capabilities can be included in the co-simulation tool itself or provide variability mechanisms to configure the co-simulation externally from a software product line. Depending on the context, one or even both scenarios can be applied. This work addresses different types of variability in an independent co-simulation framework (ICOS) and defines requirements for a realization concept.
{"title":"Requirement identification for variability management in a co-simulation environment","authors":"A. Leitner, J. Zehetner, Philipp Toeglhofer, D. Watzenig","doi":"10.1145/2362536.2362572","DOIUrl":"https://doi.org/10.1145/2362536.2362572","url":null,"abstract":"Co-simulation is a powerful approach to verify a system design and to support concept decisions early in the automotive development process. Due to the heterogeneous nature of the co-simulation framework there is a lot of potential for variability requiring the systematic handling of it.\u0000 We identified two main scenarios for variability management techniques in a co-simulation environment. Variability management capabilities can be included in the co-simulation tool itself or provide variability mechanisms to configure the co-simulation externally from a software product line. Depending on the context, one or even both scenarios can be applied.\u0000 This work addresses different types of variability in an independent co-simulation framework (ICOS) and defines requirements for a realization concept.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127866476","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
This tutorial aims at presenting new feature modelling tools directly applicable to a wide range of variability problems and application domains. Techniques and languages (TVL, FAMILIAR) for modelling, managing and configuring feature models will be illustrated and explained to participants (practitioners or academics, beginners or advanced).
{"title":"Next-generation model-based variability management: languages and tools","authors":"M. Acher, P. Heymans, Raphaël Michel","doi":"10.1145/2364412.2364469","DOIUrl":"https://doi.org/10.1145/2364412.2364469","url":null,"abstract":"This tutorial aims at presenting new feature modelling tools directly applicable to a wide range of variability problems and application domains. Techniques and languages (TVL, FAMILIAR) for modelling, managing and configuring feature models will be illustrated and explained to participants (practitioners or academics, beginners or advanced).","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"18 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124003185","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Software Product Line engineering aims at reusing and automating software development to reduce costs, have shorter development cycles, and maintain quality. However, for organizations with settled development processes and a large code base, adopting an SPL approach may prove to be a daunting task. In this paper we present an industrial experimentation and a proposal for an SPL adoption in Heinsohn Business Technology (HBT), a software development company specialized in financial, transportation, mortgage-backed securities, and pension-fund solutions. We start by identifying and modeling multiple levels of variability inherent to the kind of developments undertaken by HBT. Next, we define restrictions inside every level as well as between the levels to fully characterize an HBT software product. To limit the impact on the organization development process, we use an extractive approach. This allows us to design core assets starting from current software artifacts. The overall approach is based on real-world software artifacts developed over the years by HBT, whose combinations result in approximately 4.88e11 possible product configurations.
软件产品线工程旨在重用和自动化软件开发,以降低成本,缩短开发周期,并保持质量。然而,对于具有固定的开发过程和大型代码库的组织来说,采用SPL方法可能是一项艰巨的任务。在本文中,我们提出了在Heinsohn Business Technology (HBT)中采用SPL的工业实验和建议,这是一家专门从事金融、运输、抵押贷款支持证券和养老基金解决方案的软件开发公司。我们首先识别和建模HBT所承担的开发类型所固有的多变性水平。接下来,我们定义每个级别内部以及级别之间的限制,以充分表征HBT软件产品。为了限制对组织开发过程的影响,我们使用了一种抽取方法。这允许我们从当前的软件工件开始设计核心资产。整个方法基于HBT多年来开发的真实软件构件,这些构件的组合产生了大约4.88e11种可能的产品配置。
{"title":"Extractive SPL adoption using multi-level variability modeling","authors":"C. Parra, L. Giral, Á. Infante, Camilo Cortés","doi":"10.1145/2364412.2364429","DOIUrl":"https://doi.org/10.1145/2364412.2364429","url":null,"abstract":"Software Product Line engineering aims at reusing and automating software development to reduce costs, have shorter development cycles, and maintain quality. However, for organizations with settled development processes and a large code base, adopting an SPL approach may prove to be a daunting task. In this paper we present an industrial experimentation and a proposal for an SPL adoption in Heinsohn Business Technology (HBT), a software development company specialized in financial, transportation, mortgage-backed securities, and pension-fund solutions. We start by identifying and modeling multiple levels of variability inherent to the kind of developments undertaken by HBT. Next, we define restrictions inside every level as well as between the levels to fully characterize an HBT software product. To limit the impact on the organization development process, we use an extractive approach. This allows us to design core assets starting from current software artifacts. The overall approach is based on real-world software artifacts developed over the years by HBT, whose combinations result in approximately 4.88e11 possible product configurations.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127252425","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The MAPLE workshop focuses on the application of concepts and techniques from Model-driven Software Engineering (MDSE) in Software Product Line Engineering (SPLE). A particular focus is on techniques that allow to derive products from a product line more efficiently in order to maximize the return on investment and realize the expected benefits of SPLE techniques. The workshop covers both automated and interactive model-based techniques. As submissions, we particularly encourage research papers based on industrial experience and empirical studies as well as contributions, which identify and structure open challenges and research questions.
{"title":"Fourth International Workshop on Model-driven Approaches in Software Product Line Engineering (MAPLE 2012)","authors":"Goetz Botterweck, Deepak Dhungana, Rick Rabiser","doi":"10.1145/2362536.2362577","DOIUrl":"https://doi.org/10.1145/2362536.2362577","url":null,"abstract":"The MAPLE workshop focuses on the application of concepts and techniques from Model-driven Software Engineering (MDSE) in Software Product Line Engineering (SPLE). A particular focus is on techniques that allow to derive products from a product line more efficiently in order to maximize the return on investment and realize the expected benefits of SPLE techniques. The workshop covers both automated and interactive model-based techniques. As submissions, we particularly encourage research papers based on industrial experience and empirical studies as well as contributions, which identify and structure open challenges and research questions.","PeriodicalId":339444,"journal":{"name":"Software Product Lines Conference","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2012-09-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130038977","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}