Sei software product lines

Building product lines from common assets can yield remarkable improvements in productivity, time to market, product quality, and customer satisfaction. Cmmi license sei cmmi service cmmi product suite services. Introduction to the seis software product line framework. Software product lines a software product line is a set of softwareintensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way. We work with sales leadership, analysts, researchers or hr, to deliver custom microsoft access, excel or tableau solutions. The remainder of this survey is structured as follows. A typical example of delayed design decisions is provided by software product lines spls. A software product line is a set of software reliant systems that share a common, managed set of features satisfying a particular market or mission area, and are built from a common set of core assets in a prescribed way. In section 2, we give a short introduction to software product lines using a running example and we present an overview on important software analysis that have been applied to soft.

Feb 28, 2019 it is a popular topic in software engineering academia and several papers exist on the concept of product lines. A software product line is a set of software intensive systems sharing a common, managed set of features, that satisfy the specific needs of. The more subtle consequence is that software product lines require much more than new technical practices. Under her leadership, the sei developed software architecture and product line methods that are used worldwide, a series of five highly acclaimed books, and software architecture and software product line curricula that include 11 courses and 6 certificate programs. A suitably organized and executed test process can contribute to the success of a product line organization. Efficient and effective software sustainment of product. A software product line is a set of software intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way. A software product line is a set of software intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way 4. A software product line is a set of softwarereliant systems that share a. Software product lines are emerging as a viable, important software development paradigm.

A fundamental principle of spls is variability management, which involves separating the product line into three parts. The arcade game maker pedagogical product line january 5, 2009 white paper. Spl community has spent huge amount of resources on developing various approaches to dealing with variability related challenges over the last decade. Northrop, software engineering institute software product lines are rapidly emerging as a viable and important software development paradigm. In addition, clements has authored dozens of papers in software engineering, reflecting his longstanding interest in the design and specification of challenging software systems. Software product lines were formalized by the cmu sei, and they define a software product lines as, a set of softwarereliant systems that share a. Software product line companies increasingly expand their platform outside their organizational boundaries, in effect transitioning to a software ecosystem approach. Testing a software product line sei digital library. The software product line conference splc provides a forum for practitioners, researchers and educators to present and discuss the most recent ideas, innovations, trends, experiences, and concerns in software product lines and software product family engineering. Abstract the software product line approach is a strategy for producing software intensive products. A framework for software product line practice version 4.

The sei has researched software product lines, both as case studies and by developing methods to design and build products. Software engineering workshop for educators workshop software engineering institute pittsburgh, pa. Software engineering institute sei has steered the research and development on software product lines sometimes called as software product family and has published several technical reports. Analysis strategies for software product lines 3 we refer the reader to a recent survey benavides et al. Variability management vm in software product line spl is a key activity that usually affects the degree to which a spl is successful. Software product lines spl and serviceoriented citeseerx.

Software product line engineering has proven to be the paradigm for developing a diversity of software products and software intensive systems in shorter time, at lower cost, and with higher quality. Our main office and corporate headquarters is in oaks, pennsylvania, usa, near philadelphia. A product line can reduce cost of development and support. 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. Members of the software product line hall of fame should serve as models of what a software product line should be, exhibiting most or all of the following characteristics. The sei is a federally funded research and development center conducting software engineering research in acquisition, architecture and product lines, process improvement and performance measurement, security, and system interoperability and dependability. The annual workshop for educators to foster an ongoing exchange of ideas among educators whose curricula include the subjects of software architecture and software product lines.

A product line is a set of products that together address a particular market segment or fulfill a particular mission. Those nominations feed discussions about what constitutes excellence and success in product lines. The software engineering institute sei defines an spl as a set of softwareintensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission. The carnegie mellon software engineering institute defines a software product line as a set of softwareintensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from. The principal goal of modelling variability techniques is to configure a. A software product line is a set of software intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way.

We provide technologydriven wealth and investment management solutions for wealth managers, investment managers, and institutional and private investors. This course is the first course required in the sei s software architecture professional, sei servicebased architecture professional and atam evaluator certificate programs. With explanations of fundamental concepts further illuminated by realworld experience, this book spells. Examples for these assets are the domain or product line model, reference architecture, design, and code. This collection includes two decades of sei work on software product lines. The arcade game maker product line is an example product line created to support learning about and experimenting with software product lines in the classroom. The software product line approach to the development of software intensive systems has been used by organizations to improve quality, increase productivity, and reduce cycle time. Recall that a software product line is a collection of related products with shared software artifacts and engineering services that has been developed by a single organization in support of multiple programs serving multiple missions and different customers. Sei offers solutions in various wealth management markets. Software product lines are rapidly emerging as a viable and important software development paradigm. Practices and patterns addisonwesley, 2001 and was coauthor and editor of constructing superior software sams, 1999.

Rather than deciding on what product to build on forehand, in spls, a software architecture and set of components is defined and implemented that can be configured to match the requirements of a family of software products. Software product line a software product line spl is a set of software intensive systems that share a common, managed set of features satisfying the speci. Introduction to the sei framework for software product. With explanations of fundamental concepts further illuminated by realworld experience. The sei sponsors national and international conferences, workshops, and usergroup meetings. New configuration management concepts provide means to create, maintain, and evolve these assets efficiently and consistently, including not only their common parts but. Mike phillips and harry levinson examine the intersection of three themes that emerged during the sei s work with one government program. Still others, from the sei s cert program, describe technologies and practices needed to manage software and network security risk.

Productfamily engineering pfe, also known as productline engineering, is a synonym for domain engineering created by the software engineering institute, a term coined by james neighbors in his 1980 dissertation at university of california, irvine. Based on the software engineering institute s research and experience, the concepts, activities, and practices described here can lead to successful product line development. Testing is used to identify defects during construction and to assure that completed products possess the qualities specified for the products. We also operate from offices in canada, hong kong, ireland, south africa, and the united kingdom. Variability modelling techniques have been developed to assist engineers in dealing with the complications of variability management. Software product line essentials sei digital library carnegie. Jan 14, 2019 product lines are known for the ability to isolate product variation for customization. The software product line spl is an emerging methodology for developing software products. Software product lines elearning software product lines. Attendees will also be better prepared for the sei s documenting software architectures and software product lines courses. Software product lines elearning a software product line is a set of softwarereliant systems that share a common, managed set of features satisfying a particular market or mission area, and are built from a common set of core assets in a prescribed way. The family that constitutes the product line is clearly identifiedthat is, there is a way to tell whether a particular software system is a member of the product line, by.

Mcgregor, clemson university and luminary software, u. Software product lines software product lines in practice. But a software product line is a relatively new idea, and it should seem clear from our description that software product lines require a different technical tack. The course also provides an overview of the essential technical and management practices needed to succeed with software product lines, and guidelines and patterns for applying product line techniques.

Core assets can be software components, architecture and. These documents include technical reports, presentations, webinars, podcasts and other materials searchable by usersupplied keywords and organized by topic, publication type, publication year, and author. We help you get to the details that erp and enterprise solutions typically cant, allowing your business to run faster and more accurately. Based on the software engineering institutes research and experi. Sei is a public company and is listed on the nasdaq exchange under the symbol seic. This book provides a framework of specific practices, with detailed case studies, to guide the implementation of product lines in your organization. Long before our work on this program, the sei began to focus on the concept of software product lines, which are a proven way to develop and manage software components more efficiently and at significant cost savings to the producer and its customers, who are often diverse customers that receive similar products from a common core software collection. Pdf a framework for software product line engineering. Software product lines collection sei digital library carnegie. Our case studies demonstrate many significant benefits of software product lines, including but not limited to the following. The sei digital library provides access to more than 5,000 documents from three decades of research into best practices in software engineering. In a software product line, individual products are instantiated from a common architecture called the product line architecture. Sei software group makes it easy to automate your business. Seis software product line tenets initiating software product lines.

Configuration management for software product lines. Citeseerx document details isaac councill, lee giles, pradeep teregowda. Software engineering institute 4500 fifth avenue pittsburgh, pa 1522612 4122685800. Each software product line conference splc culminates with a session in which members of the audience nominate systems for induction into the software product line hall of fame. A software product line is a set of software intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a. Software product lines were formalized by the cmu sei 2, and they define a.

Software product lines a software product line is a set of software intensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way. Sterndrive engineering sei is the largest supplier of aftermarket sterndrives and our own line of outboards in the world. Cmm measures the maturity of the software development process on a scale of 1 to 5. Aug 26, 2019 decisions for sustaining a software product line october 1, 2018 sei blog robert ferguson. Software product lines elearning software engineering institute. Software product lines the journal of object technology. Software sustainment and product lines july 2018 podcast mike phillips harry l. Software product lines spls, or software product line development, refers to software engineering methods, tools and techniques for creating a collection of. See a framework for software product line practice, v5 page 6. Paul clements is a senior member of the technical staff at the sei, where he works on software architecture and product line engineering. Experiences from the sixth dod software product line workshop cmu sei 2004tn011. My prior blog post on product lines in dod sustainment described the complexity of contractual relationships in a dod software product line.

The company makes replacement sterndrives for mercruisers alpha one and gen ii stern drives and replacement outboard lower units for mercury, johnsonevinrude and yamaha. Software architecture, software product lines this document describes the activities and practices in which an organization must be competent before it can benefit from fielding a. A software product line is a set of software intensive systems sharing a common, managed set of features that satisfy specific needs of a particular market or mission, and that are developed from a common set of core assets in a prescribed way, according to the definition used by the software engineering. The products offered include hydraulic pumps, trim cylinders, hoses, fittings, and other accessories. A software product line is a set of softwarereliant systems that share a common, managed set of features satisfying a particular market or mission area, and are built from a common set of core assets in a prescribed way. A product line succeeds because the commonalities shared by the software products can be exploited to achieve economies of production.

The first software engineering institute product line practice workshop was a handson meeting held in december 1996 to share industry and government practices in software product lines and to. The strategy encompasses organizational management, technical management, and software engineering aspects of product production. A software product line is a set of softwareintensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market. Producing a set of related products as a product line has allowed organizations to achieve increased. Before registering for this course, participants must have.

A software product line is a set of software intensive systems sharing a common, managed set of features that satisfy specific needs of a particular market or mission, and that are developed from a common set of core assets in a prescribed way, according to the definition used by the software engineering institute sei clements01. For example, configuration management is a practice area that applies to any software development effort, but it has special implications for product line. In this paper, we discuss the emerging trend of software ecosystems and provide a overview of the key concepts and implications of adopting a software ecosystem approach. It also discusses the main obstacles to realizing the synergy between these cuttingedge technologies. Product flexibility is the anthem of the software marketplace, and product lines fulfill the promise of tailormade systems built specifically for the needs of particular customers or customer groups. These and all books in the series address critical problems in software engineering for which practical solutions are available. Software product lines a software product line is a set of softwarereliant systems that share a common, managed set of features satisfying a particular market or mission area, and are built from a common set of core assets in a prescribed way.

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. Software product line engineering this chapter introduces the software product line design method, which is described in much greater detail in subsequent chapters. Other events cover subjects including acquisition of software intensive systems, commercial offtheshelf cotsbased systems, network security and survivability, software process research, software product lines, cmmi, and the sei team software process. A software product line is a collection of related products with shared software artifacts and engineering services that has been developed by a single organization intended to serve different missions and different customers. Sei work has confirmed the benefits of pursuing this approach. The products are built from common assets in a prescribed way. Introduction to software product lines sei digital library. Software product lines spls, or software product line development, refers to software engineering methods, tools and techniques for creating a collection of similar software systems from a shared set of software assets using a common means of production.

In fact, the concept of variability separates product lines from smallgrained reuse. Cmm is a method to evaluate and measure the maturity of the software development process of an organizations. This document describes a framework for product line development. Sei training software product lines elearning online. The software engineering institute defines basic concepts and the activities and practices that ensure success. May 30, 2008 a software product line is a set of software intensive systems sharing a common, managed set of features that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way 4. True since software product lines are a fairly new concept, it will take years before we know whether or not they truly offer any competitive advantage to. Software product line essentials sei digital library. Pdf seis software product line tenets semantic scholar. A software product line is a set of softwareintensive systems that share a common, managed set of features satisfying the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way. Shorter development schedules lower development and upgrade costs. Boat sterndrive, outboard lower unit, sterndrive engineering.

829 1096 1296 178 727 1146 1279 1261 1090 656 770 1372 943 325 642 1400 615 538 780 939 680 293 543 1360 238 1002 1367 1170 881 649 1222 1064 1204 777 1430 1624 1584 446 273 1322 592 633 114 315 478 208 420 856 1495 695 850