The SEI helps advance software engineering principles and practices and serves as a national resource in software engineering, computer security, and process improvement. The SEI works closely with defense and government organizations, industry, and academia to continually improve software-intensive systems. Its core purpose is to help organizations improve their software engineering capabilities and develop or acquire the right software, defect free, within budget and on time, every time.

Framework for Software Product Line Practice

Framework for Software Product Line Practice, Version 5.0

The Framework for Software Product Line Practiceis a web-based, living document that aids the software community in software product line endeavors. Each version represents an incremental attempt to capture the latest information about successful software product line practices. This information has been gleaned from studies of organizations that have built product lines, from direct collaborations on software product lines with customer organizations, and from leading practitioners in software product lines.

Software Product Line Practice Patterns for Using the Framework

Patterns are a common way of expressing common contexts and problem-solution pairs. Design patterns are a well-known example in software. In software product line engineering, patterns can be used to show how aggregations of practice areas (as defined in the Framework for Software Product Line Practice) can be orchestrated to solve recurring problems:

The context is the organizational situation.

The problem is what part of a software product line effort needs to be accomplished.

The solution is the grouping of practice areas and the relations among them that together address the problem for that context.

The SEI has developed 12 patterns and 10 variants to help you navigate the Framework practice areas. [more]