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 the carnegie mellon software engineering institute defines a software product line as a set of softwareintensive. The products are similar and focus on the same market sector. Service companies often find it hard to instill product thinking in teams. This report expands on the testing practice area described by clements and northrop. The software product line approach is a strategy for producing softwareintensive products. Testing is used to identify defects during construction and to assure that completed products possess the qualities specified for the products. A software product line consists of a product line architecture, a set of reusable components and a set of products derived from the shared assets. Part i is called software product line fundamentals, and its three chapters lay out the conceptual groundwork for software product lines. A software product line is a set of software systems with a common set of features developed from a set of core assets. The product develop1 a software product line is a set of softwareintensive systems sharing a common, managed set of. Perhaps their physical attributes, prices, quality, or type of customers are the same.
Integrating a product production method with a software. The application is seldom treated as a product, that needs to live in production for many years after the project is. A product line organization is responsible for staffing the skill sets required for its. Software product line organizations have unique practices and. Chapter 2 describes the benefits of a software product line approach from a variety of points of view throughout an organization. Software product lines journal of object technology. The more complex the product, the larger the number and arguably the heterogeneity of the people involved in the development effort. New personnel must be much more specifically trained for the product line. According to this type of organization, the authority flows from top to bottom in a concern. Training materials must be created that address the product line. People working on software applications believe that they are only on a temporary project that could range from a few months to a year. Software product lines and architecture 1208 words. Software product lines a software product line spl 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.
Most of these practice areas are applied during singlesystem development as well, but take on a. Keep the team aligned with a flexible roadmap that can be. Product lines have been used by the manufacturing industry for a long time to reduce costs and increase productivity by exploiting commonalties between products. In our cooperation with several software development organizations applying software productline principles, we have identified several other. In this management strategy, product development project managers must. This model examines the coordination between product line engineering and the business aspects of software product line. The production plan instantiates the production method for a specific product. Chief information officer office of the governor state of utah product development is the process of designing, building, operating, and maintaining a good or service1. The demands are different, the skills needed are different, and you will find you need different staff, processes and resources.
A product line architecture is a software architecture that supports a software product line. In industry, product lines provide both customer benefits such as functionality, quality, and cost and development organization benefits such as time to market and. However, product line practice in the software industry is a relatively new concept. As product lines mature, the skills required in an organization tend to. Productcentric or marketcentric this is a variation that can be combined with either of the two major types of it or software company organizational structure discussed above. Create beautiful, collaborative roadmaps in minutes. The software engineering institute has identified twentynine issues or practice areas that affect an organizations success in fielding a software product line. Acquiring a software product line also requires this same blend of skills to position the using organizations, so they can effectively exploit the commonality of the incoming products, as well as lend sound technical oversight and monitoring to the development effort. In this column i will focus on how object technology can play. Any organization that has many software systems will notice that many of those software systems have characteristics in common. Software and internet companies use a product development process to ensure that they are not just manufacturing a. Pdf organizing for software product lines researchgate. A framework for software product line practice, version 5.
Product organizational structure silicon valley product. Existing literature on software product lines 1,5,6,7 tends to focus on the technology and the processes that surround product line based software development. The product developers create a productspecific production plan from the general production plan created by the coreasset developers. A product line is a group of products that a company creates under a single brand. Software product lines adoption in small organizations sciencedirect. 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. The software product line practice was designed to manage software products, and their commonalities were designed to maximize the benefits to the organization. Product management organizational structure in tech. Where does product management belong in the organization. Wide variety in emphasis and strength of role product management is resident all over the organizational map in.
The production method implements the production strategy by delineating exactly how a product is built from core assets. Line organization is the most oldest and simplest method of administrative organization. Accordingly, this paper presents a business maturity model of software product line, which is a methodology to evaluate the current maturity of the business dimension of a software product line in an organization. Product line organizations in a product line organization, developers are organized into projects based on business product lines as opposed to skill set departments. Applying software product line principles in a product development organization will help the organization achieve increasingly challenging business goals. Software product line engineering has proven to be the methodology for developing a diversity of software products and softwareintensive. A software product line is a set of softwareintensive 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. Dont get me wrong both are important, but they are very different and most of your focus must. It is the discipline and business process which governs a product from its inception. This definition is consistent with the definition traditionally given for any product line. Pragmatic institute formerly pragmatic marketing has continuously delivered thought leadership in technology product management and marketing since it was founded in 1993. To help these it organizations, in this article i wanted to highlight the typical changes that are needed to evolve an it organization to an effective software product organization.
For example, if a company has a bakery division and clothing division, each of. This paper is a brief report of our experience integrating a software product line strategy similar to that developed by the software engineering institute with a. Software product lines the journal of object technology. In this tutorial we will layout production planning in a software product line and provide examples from a number of different product lines. In traditional software engineering project management, managers provide focused guidance to a team responsible for producing a specific result in a specified amount of time. It is the discipline and business process which governs a. Definition a set of softwareintensive system sharing a common, managed set of features that satisfy the specific needs of particular market segment or mission and that are developed from a common set of core assets in a prescribed way. How to become a productcentric organization smarter. The line of command is carried out from top to bottom. In our cooperation with several software development organizations applying software product line principles, we have identified several other organizational. Software product lines spls, or software product line development, refers to software. Pl product line is a set of softwareintensive systems that share a common, managed set of properties 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. Biglever is the longstanding leader in helping organizations across industry sectors fully realize the extraordinary benefits of product line engineering. 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.
A business maturity model of software product line engineering. Productplan is easytouse product management software designed to help teams better plan, visualize, and share the product strategy. In our cooperation with several software development organizations applying software productline principles, we have identified several other organizational. Today, we provide training and present at industry events around the world, conduct the industrys largest annual survey and produce respected publications that are read. For example, within your marketing department, there could be people assigned to product lines as product managers, or to market segments as market managers. Project management in a software product line organization. A suitably organized and executed test process can contribute to the success of a product line organization.
Productcentric approaches make it easier to rapidly innovate and iterate because they focus on customer experience, evolving requirements, and the strategic differentiation for a product or service. Weve pioneered the modern featurebased ple approaches that are revolutionizing the way organizations work by removing engineering complexity and streamlining the creation, delivery. In earlier articles i have discussed the key roles in the product organization product managers, project managers, interaction designers, visual designers, usability engineers, prototypers, engineers, architects, qa and product marketing and ive also discussed the ratios between the roles, but many organizations also struggle with the organizational structure that. Production planning in a software product line organization. When an organization initiates a product line strategy, that strategy must be integrated with existing strategies while not losing the benefits of the software product line strategy. A product line can reduce cost of development and support. 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 management sometimes also referred to as digital product management or, in the right context just product management is the discipline of building, implementing and managing software or digital products, taking into account lifecycle considerations and an audience.
Product management is at the center of your tech product tech product management. As such, each of those product division units consists of functional departments required to support that product. In industry, product lines provide both customer benefits such as functionality, quality, and cost and development organization benefits such. The product organization utilizes the functional approach but creates large business units within the company for each major product the company offers. Moving from an it to a product organization silicon. Introduction to the seis software product line framework. Essentially, fielding a product line involves three activities. Guidelines for developing a product line production plan. Maybe their function or channel distribution are the same or similar. Product line engineering for systems and software is a way to engineer a portfolio of related products in an efficient manner, taking full advantage of the products similarities while respecting and managing their differences.
The product managers mentality should be that of a miniceo of his product line analogous to the overall company for a real ceo. This is the reason for calling this organization as scalar organization which means scalar chain of command. Organizations of all types and sizes have discovered that a product line strategy, when skillfully implemented, can produce many benefitsand ultimately give the. A framework for software product line practice version 4. To succeed with software product lines, an organization must alter its technical practices, management practices, organizational structure and personnel, and. The demands are different, the skills needed are different, and you will find you. Management strategies many software product line organizations manage the activities that create and evolve core assets separately from those that create and evolve end products. Testrelated activities that can be used to form the test process for a product line organization are described.
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. The strategy encompasses organizational management, technical. Testing a software product line sei digital library. The firm can either let functions dominate, as in figure 1, with product line groupings under each function or have product lines dominate, as in figure 2, with functional groupings in each product organization. Testing a software product line december 2001 technical report john mcgregor. The use of software product lines for business process.
1145 355 205 689 74 198 465 672 1367 707 1343 352 642 211 545 169 343 1636 249 94 1292 918 356 1039 1489 483 948 1385 872