![]() |
||
| |
||
| Other Features |
Volume 4 | Number 3 | Third Quarter 2001 |
||||||||||||||||||||||||
| Building Systems from Commercial Components Using Easel to Study Complex Systems
Read
previous Read
previous features
If
you would like
|
Software Product Line Practice Patterns More
and more organizations today are taking a product line approach to software
development and are achieving large-scale productivity gains, reduced
time to market, and increased customer satisfaction.
About Product Line Practice Patterns The Product Line Practice Framework identifies 29 practice areas whose mastery and application are necessary for success with software product lines. But organizations do not always know how to apply these practice areas or where to begin. SEI authors Paul Clements and Linda Northrop write in their recently published book, Software Product Lines: Practices and Patterns,3 "You need to put the practice areas into play. You aren’t going to attack all of the areas at once. You need to follow a divide-and-conquer strategy that permits you to divide the product line effort into chunks of work to be done." The first thing an organization needs to do in this divide-and-conquer effort is understand its individual situation. Fortunately, although no two situations are exactly alike, similar situations occur again and again. It is through this similarity that product line practice patterns emerge. Patterns are a way of expressing common contexts and problem/solution pairs; they have been used effectively in many disciplines including architecture, economics, social science, and software design. For software product line practice patterns, 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 those practice areas that together address the problem for that context. Clements and Northrop note that "patterns provide a helpful handle for selecting and applying the appropriate practice areas to meet your individual needs." For product line patterns to succeed, they must be easy for a wide range of stakeholders to understand. They must have sufficient detail so that stakeholders can recognize the pattern context and problem and implement a solution. They must be consistent over the entire pattern set. They also must be able to handle static and dynamic information that will evolve as the product line develops. Following the lead of the "patterns community," the SEI has created a pattern template. It provides a standard way of expressing information:
An Example Pattern One of the early problems that new software product line organizations face is determining what products ought to be in their product line. The What to Build pattern is meant to assist them in this task. Determining what to build requires information related to the product area, technology, and market; the business justification; and the process for describing the set of products to be included in the product line. The following is a typical scenario suggesting the need for application of the What to Build pattern:
To date, the SEI has identified 22 practice area patterns. They are completely described in Software Product Lines: Practices and Patterns, along with a thorough description of the practice areas and multiple product line case studies. There are undoubtedly other product line practice patterns. Practitioners are encouraged to share their experiences and their own pattern creations.
For more information, contact— Customer Relations Phone Email World
Wide Web |
||||||||||||||||||||||||
|
Copyright
© 2001 by Carnegie
Mellon University.
All rights reserved. |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||