This process is based on a combination of sple and the mde throw the use of visual techniques for modeling product lines and model driven techniques. This new title in wileys prestigious series in software design patterns presents proven techniques to achieve patterns for fault tolerant software. During family engineering, the artifacts in the spl artifact base are developed. He is among the pioneers of featureoriented software productlines, and has given many tutorials on this topic at premier conferences over the last 15 years. Schmidtf avanderbilt university, nashville, tenessee, usa buniversity of seville, seville, spain cvanderbilt university, nashville, tenessee, usa abstract the increasing complexity and cost of softwareintensive systems has led developers to seek ways. With explanations of fundamental concepts further illuminated by realworld experience, this book spells. Software product lines and model driven development. Patterns for parallel software design by jorge luis ortegaarjona software patterns have revolutionized the way we think about how software is designed, built, and documented, and the design of parallel software requires you to consider other particular design aspects and special skills. Cars was a subsidiary company to ford motor company as of 2010 february. Implementing typesafe software product lines using.
Part 1 provides the conceptual framework for software product lines, with an emphasis on practice areas. A product consists of a product architecture, derived from the product line architecture, a set of selected and configured product line components and product specific code. Supporting evolution in modeldriven software productline. Product lines have been used by the manufacturing industry for a long time to reduce costs and increase productivity by exploiting commonalties between products. Products of a spl are commonly described in terms of features, where a feature is a unit of product functionality. Testing a software product line clemson university. The authors distill the concepts and principles underlying the field with remarkable clarity, providing a muchneeded foundation for the field. For many that come briefly into contact with extreme programming, it seems that xp calls for the death of software design. Christian kastner is an assistant professor in the school of computer science at carnegie mellon university, pittsburgh, pa, usa. A software product line is commonly used for the software development in large automotive organizations.
Maryland software patterns and practices linthicum. Long a standard practice in traditional manufacturing, the concept of product lines is relatively new to the software industry. Ford helps ford drive human progress through empathy, creativity and design. The process of developing an automated functional test solution is not much different from the process of creating the same program but preparation and definition of the best practices are critical. Most spl development processes identify three stages. For software product line practice patterns, the context is the organizational situation.
Apples product development process inside the worlds. Boeing builds one, and so do ford, dell, and even mcdonalds. A software product line is a family of systems that share a common set of core technical assets, with preplanned extensions and variations to address the needs of specific customers or market segments. Schmidt, aniruddha gokhale1, jeff gray 2, yuehua lin, and gunther lenz3 1department of eecs vanderbilt university nashville, tn 37203, usa ng, d. In a modeldriven software product line spl which adopts dsm technique, products are represented as product models defined in a dsl. Software product lines come in many different forms.
Not just is much design activity ridiculed as big up front design, but such design techniques as the uml, flexible frameworks, and even patterns are deemphasized or downright ignored. A modeldriven traceability framework for software product lines. Practices and patterns clements 2002c, that contains a pre vious version of. This work extends the activities in such ventures to developing and managing software product lines. Maryland software patterns and practices linthicum heights. Apparatus and machinery engineering and product development with solidworks, cosmosworksxpress strength analysis, autocad for food, wood industry belt, chain and rollerconveyors, lifting units etc. Software product line engineering software engineering for a family of products software variability key problem in software product line engineering ft dlifeature modeling unifying view in multiple view spl feature relationships with other views explicitlyfeature relationships with other views explicitly depicted. A software product line is a software system aimed at producing a set.
Software product lines for customersupplier contracting request for proposal 38, diesel engine control units 39, telecommunication switches 40, navy ship control 41 and mobile phones have. Software product lines however, before we introduce the example, well take a small detour into the basis of sple. Experiences adopting software product line development without a product line. Boeing, ford, dell, and even mcdonalds develop product lines. Though several techniques have been used by the software engineering community to address these challenges, our recommendations are novel in that they are tailored to product line engineering. This paper describes a model driven development approach for software product lines based on web services, in which feature selection drives the dynamic customization of the product line architecture and implementation to derive the application. This work presents a model based testing approach to be used in model driven development and software product lines projects. A software product line spl is a set of software systems with welldefined commonality and variability.
Product line variability originates from differences among realworld domains which are represented by the products of a product line. Pollution prevention case studies pollution prevention p2. A strategic reuse of software is needed to handle the increasing complexity of the. He is the author of five books and more than three dozen papers on these and other topics. Linda northrop is director of the product line systems program at the sei and chaired the first annual international conference on software product lines.
In 2002 the system integration group was split and one of the results were two sister groups in the same section, one. Feature driven dynamic customization of software product lines. Reusable assets reference design architecture pattern legacy architectural. Section 4 presents a modeling approach to software product evolution and a conclusion is given in. The approach was implemented as a framework using existing modelling tools in the market and qvt transformations. Software product line engineering with feature models. Then i will describe the current issues, detail some experiences, and outline research questions regarding the testrelated activities in a software product line organization.
We are built to challenge assumptions, question the status quo, and provoke the imagination. Software product lines in automotive systems engineering. Model driven software product line process for service. Featurebased product variability has to be captured in the product line artifacts that. Featureoriented software product lines concepts and. Dorman began operating in shanghai as early as 2002, but expanded into our existing permanent presence in 2014. In summary software product lines epitomize the concept of strategic, planned reuse. Seis software product line tenets ieee software cin. This report presents a vision for software product lines as an acquisition focus and suggests extensions to current department of defense policy and practices to increase the awareness of and receptivity to product line acquisition. Product lines are, of course, nothing new in manufacturing. Software patterns have revolutionized the way developers and architects think about how software is designed, built and documented. Revenue management is the application of disciplined analytics that predict consumer behaviour at the micromarket levels and optimize product availability and price to maximize revenue growth. Product lines are common in many ventures, for example automobile and aircraft development. Implementing typesafe software product lines using parametric traits spl engineering is split into a family engineering and an application engineering phase 55.
Pollution prevention case studies pollution prevention. This thesis provides methods for developing modeldriven software product lines, in terms of development methodology, automated assistance and spl evolution support. We canvassed the experts, analyzed the products, and crunched the numbers. Software product lines is the culmination of an intensive investigation, undertaken by the software engineering institute sei at carnegie mellon, into how leadingedge software development organizations have retooled for product lines. Just as demonstrated by eli whitney and henry ford, adopting a product line approach.
Software organizations of all types and sizes are discovering that. Everyday low prices and free delivery on eligible orders. Supporting evolution in modeldriven software productline architectures gan deng 1, douglas c. Section 3 discusses the change management processes. Feature oriented model driven product lines salvador trujillo gonzalez dissertation presented to the department of computer sciences of the universityof the basque country in partial ful. This is a key reference for experts seeking to select a technique appropriate for a given system. In providing a comprehensive set of practices and patterns, this book defines and explores the key activities for software product line development and explains. This is a key reference for experts seeking to select a. Together, we are creating a future where things like mobility, autonomy and connectivity are flexible, memorable, mindful, and most of all. A model based testing approach for modeldriven development. Economy, energy and environment and green suppliers network case studies searchable by keyword, title, year, sector, and process used in achieving results. Modeldriven impact analysis of software product lines introduction changes are inevitable in software development and maintenance. A framework for software product line practice version 4.
Work with us ford motor company official global corporate. For example, in a shopping domain, realworld shopping systems may vary in. Section 2 presents software product lines evolution. Practices and patterns 3rev ed by paul clements, linda northrop isbn. This book provides a framework of specific practices, with detailed case studies, to guide the implementation of product lines in your organization. However, product line practice in the software industry is a relatively new concept. Software product lines for customersupplier contracting request for proposal 38, diesel engine control units 39, telecommunication switches 40. In some cases, the architecture of the product line is used by all products without being adapted, whereas in.
There are essential product line activities and practices areas. We try to make the topics we cover relevant to all programming languages, frameworks, and platforms. Software product lines spldefinition by clemens and northrop sei, 2002. Regardless of terminology, software product line practice involves strategic. The product line concept is about more than a new technology. The role of feature modeling in software product line engineering. We present three commonly faced patterns of changes incorporated in product lines and change management practices that mitigate their adverse effects. Software product lines guide books acm digital library. Software product lines spl is an approach to develop related systems reusing a managed set of core assets sharing functionality and quality attributes 4. Long a standard practice in traditional manufacturing, the co. A successful introduction of software product lines requires three essential ingredients. The office is made of more than 60 contributors across multiple crossfunctional groups, including design, testing, quality assurance, manufacturer development, sourcing and supply chain, all of which cover the whole cycle of new. Clements and linda northrop, addison wesley 2002 illustrates that product. Software product lines spl 45 are receiving increasing attention in software engineering.
Change management patterns in software product lines. A software product line vision for defense acquisition june 1, 2002 technical note by grady campbell. The primary aim of revenue management is selling the right product to the right customer at the right time for the right price and with the right pack. Spl engineering aims at developing these systems by managed reuse. The main difference from normal, oneofakind software development, is a logical separation between the development of core, reusable software assets the platform, and actual applications. Apples product development process may be one of the most successful design processes ever implemented. Practices and patterns clements, paul, northrop, linda on.
Aare kaarid software development academy estonia linkedin. The practice of software product lines involves longterm strategy and. The book provides a systematic introduction to featureoriented software product lines, and leads the reader to more advanced topics in its second half. Our meetings are characterized by lots of interesting questions and discussion. Paul clements is a senior member of the technical staff at the sei, where he works on software architecture and product line engineering. A model driven software product line process for developing applications. Examples of companies applying product lines in this way are as diverse as boeing, ford and mcdonalds. Then i will describe the current issues, detail some experiences, and outline research questions regarding the testrelated activities in a software product. The approach uses omg standards and defines model transformations from design models to test models. Please use quotes at the beginning and end of the search terms if you are looking for. Chapter modeldriven impact analysis of software product lines. The role of feature modeling in software product line. Pdf a model driven software product line process for. From visionary upstarts to storied stalwarts, here are companies that dazzle with new ideas and prove beyond a doubt.