Results 1 -
9 of
9
Concepts and Guidelines of Feature Modeling for Product Line Software Engineering
- Software Reuse: Methods, Techniques, and Tools: Proceedings of the Seventh Reuse Conference (ICSR7
, 2002
"... Abstract. Product line software engineering (PLSE) is an emerging software engineering paradigm, which guides organizations toward the development of products from core assets rather than the development of products one by one from scratch. In order to develop highly reusable core assets, PLSE must ..."
Abstract
-
Cited by 30 (5 self)
- Add to MetaCart
Abstract. Product line software engineering (PLSE) is an emerging software engineering paradigm, which guides organizations toward the development of products from core assets rather than the development of products one by one from scratch. In order to develop highly reusable core assets, PLSE must have the ability to exploit commonality and manage variability among products from a domain perspective. Feature modeling is one of the most popular domain analysis techniques, which analyzes commonality and variability in a domain to develop highly reusable core assets for a product line. Various attempts have been made to extend and apply it to the development of software product lines. However, feature modeling can be difficult and time-consuming without a precise understanding of the goals of feature modeling and the aid of practical guidelines. In this paper, we clarify the concept of features and the goals of feature modeling, and provide practical guidelines for successful product line software engineering. The authors have extensively used feature modeling in several industrial product line projects and the guidelines described in this paper are based on these experiences. 1
Domain-Oriented Engineering of Elevator Control Software: A Product Line Practice
- in Software Product Lines: Experience and Research
, 2000
"... competitive market, embedded control software must be designed to respond quickly to both the customer and the market with high quality software. ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
competitive market, embedded control software must be designed to respond quickly to both the customer and the market with high quality software.
The Modelica Language
- Proceedings of the MoDELS 2005 Workshop on MDD for Software Product-lines: Fact or Fiction?, Montego
, 2005
"... It is hard to develop and evolve software product-line architectures (PLAs) for large-scale distributed realtime and embedded (DRE) systems. Although certain challenges of PLAs can be addressed by combining model-driven development (MDD) techniques with component frameworks, domain evolution problem ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
It is hard to develop and evolve software product-line architectures (PLAs) for large-scale distributed realtime and embedded (DRE) systems. Although certain challenges of PLAs can be addressed by combining model-driven development (MDD) techniques with component frameworks, domain evolution problems remain largely unresolved. In particular, extending or refactoring existing software product-lines to handle unanticipated requirements or better satisfy current requirements requires significant effort. This paper describes techniques for minimizing such impacts on MDD-based PLAs for DRE systems through a case study that shows how a layered architecture and model-to-model transformation tool support can reduce the effort of PLA evolution.
K.: Using a Marketing and Product Plan as a Key Driver for Product Line Asset Development
- Software Product Lines. Lecture Notes in Computer Science
, 2002
"... Abstract. The product line engineering paradigm has emerged recently to address the needs to minimize the development cost and the time to market in this highly competitive global market. Product line development consists of product line asset development and product development using the assets. Pr ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Abstract. The product line engineering paradigm has emerged recently to address the needs to minimize the development cost and the time to market in this highly competitive global market. Product line development consists of product line asset development and product development using the assets. Product line requirements are essential inputs to product line asset development. These inputs, although critical, are not sufficient to develop product line assets. A marketing and product plan, which includes plans on what features are to be packaged in products, how these features will be delivered to customers (e.g., feature binding time), and how the products will evolve in the future, also drives product line asset development; thus this paper explores design issues from the marketing perspective and presents key design drivers that are tightly coupled with the marketing strategy. An elevator control software example is used to illustrate how the product line asset development is related to the marketing and product plan. 1
Reducing enterprise product line architecture deployment costs via model-driven deployment and configuration testing
- In 13th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems
, 2006
"... Abstract. Product-line architectures (PLAs) are a paradigm for developing software families by customizing and composing reusable artifacts, rather than handcrafting software from scratch. Extensive testing is required to develop reliable PLAs, which may have scores of valid variants that can be con ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Abstract. Product-line architectures (PLAs) are a paradigm for developing software families by customizing and composing reusable artifacts, rather than handcrafting software from scratch. Extensive testing is required to develop reliable PLAs, which may have scores of valid variants that can be constructed from the architecture’s components. It is crucial that each variant be tested thoroughly to assure the quality of these applications on multiple platforms and hardware configurations. It is tedious and error-prone, however, to setup numerous distributed test environments manually and ensure they are deployed and configured correctly. To simplify and automate this process, we present FireAnt, which is a tool for the model-driven development (MDD) of PLA deployment and testing plans. To validate FireAnt, we use a distributed constraints optimization system case study to illustrate the cost savings of using an MDD approach for the deployment and testing of PLAs. 1
Domain Modeling of Software Process Models
"... This paper presents a novel application involving two important Software Engineering research areas: process modeling and software reuse. The Spiral Model is a risk-driven process model, which, depending on the specific risks associated with a given project, may be tailored to create a project-speci ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper presents a novel application involving two important Software Engineering research areas: process modeling and software reuse. The Spiral Model is a risk-driven process model, which, depending on the specific risks associated with a given project, may be tailored to create a project-specific process model. The software reuse area is that of domain modeling of families of systems, which capture the similarities and variations among the members of the family. The domain modeling approach is used to create a domain model of a Spiral Process Model (SPM), thereby capturing the similarities and variations among a family of process models. The SPM domain model has been extended to capture the key process areas of the Software Engineering Institute's Capability Maturity Model. The domain model is used to generate projectspecific process models. This approach allows managers to configure and reuse process models that manage the risks associated with new software development.
Coping with variability in product-line architectures using component technology
"... Abstract. Since any successful software product is continuously evolving in order to fulfill market requirements, it needs an architectural basis that can sustain the necessary variability to meet changing requirements. In this paper we presents a component-oriented approach for developing product-l ..."
Abstract
- Add to MetaCart
Abstract. Since any successful software product is continuously evolving in order to fulfill market requirements, it needs an architectural basis that can sustain the necessary variability to meet changing requirements. In this paper we presents a component-oriented approach for developing product-line architectures that can accommodate variability through separation of architectural, functional and non-functional concerns. The approach is based on our experiences from developing a product-line architecture for building experimental robot controllers that can control arbitrary robotic manipulators. 1

