Home   FAQs   New Arrivals   Specials   Pricing & Shipping   Location   Corporate Services   Why Choose Bookware?  
 Search:   
Call our store: 9955 5567 (from within Sydney) or 1800 734 567 (from outside Sydney)
 View Cart   Check Out   
 
Browse by Subject
 TAFE Accounting
 TAFE I.T./Computing
 TAFE - Other
I.T
 .NET
 Windows 8
 Adobe CS6
 Cisco
 CCNA 2012
 CCNP 2012
 Java
 VB
 ASP
 Web Design
 E-Commerce
 Project Management
 ITIL
 Macintosh
 Mobile Devices
 Linux
 Windows Server 2012
 SQL Server 2012
 SAP
Certification
 MCITP
 MCTS
Economics and Business
 Accounting
 Business Information Systems
 Economics
 Finance
 Management
 Marketing
 TAX
 Human Resources
Academic
 Law
 Nursing
 Medical
 Psychology
 Engineering

Software Product Lines: Practices and Patterns (The SEI Series in Software Engineering)

by: Paul Clements and Linda Northrop

Notify me when in stock

On-line Price: $84.94 (includes GST)

Hardcover package 608

20%Off Retail Price

You save: $21.00

OUT OF PRINT. But we may be able to find a copy for you! Please contact Bookware customer service for availability.

Retail Price: $105.94

Publisher: ,Jun-01

Category: SOFTWARE ENGINEERING Level: I/A

ISBN: 0201703327
ISBN13: 9780201703320

Add to Shopping Cart

Summary


  Long a standard practice in traditional manufacturing, the concept of product lines is relatively new to the software industry. 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. Software organizations of all types and sizes are discovering that when skillfully implemented, a product line strategy can yield enormous gains in productivity, quality, and time-to-market.


  Software Product Lines is the culmination of an intensive investigation, undertaken by the Software Engineering Institute (SEI) at Carnegie Mellon, into how leading-edge software development organizations have 'retooled' for product lines. With explanations of fundamental concepts further illuminated by real-world experience, this book spells out the technical issues involved in adopting a product line strategy, as well as the organizational and management issues that are so critical for success. In providing a comprehensive set of practices and patterns, this book defines and explores the key activities for software product line development and explains specific practice areas in engineering, technical management, and organizational management.


  Highlights include:


  The benefits of a software product line approach, including actual improvement data from industrial success stories

Methods to develop a reusable base of core assets and to develop products that utilize that core

Common problems paired with concrete solutions in the form of reusable software product pine patterns

Twenty-nine practice areas for successful implementation, including architecture definition,component development, configuration management, market analysis, and training

The product line technical probe for identifying technical and organizational weaknesses that could impede success

Three detailed case studies from the industry lead you step by step through the process of developing and managing software product lines, illustrating potential pitfalls, creative solutions, and the ultimate rewards. Discussion questions, sidebars, and real-world anecdotes from the trenches reveal the collective wisdom of those on the front line of software product line ventures.


          0201703327B09102001


  Features


                  Author Bio


  Dr. Paul Clements is a senior member of the technical staff at the SEI where he works on software architecture and product line engineering. He is the author of more than three dozen papers on software design and real-time systems.

Linda Northrop is director of the Product Line Systems Program at the SEI and chaired the first annual International Conference on Software Product Lines. A frequent keynote speaker and highly acclaimed educator, she has more than thirty years of experience in software development, including work at Eastman Kodak and IBM.


          0201703327AB07232001

Table of Contents

Foreword.

Preface.

Acknowledgements.

Dedication.

Reader's Guide.


  I. SOFTWARE PRODUCT LINE FUNDAMENTALS.


      1. Basic Ideas and Terms.


  What Is a Software Product Line?

What Software Product Lines Are Not.


  Fortuitous Small-Grained Reuse.

Single-System Development with Reuse.

Just Component-Based Development.

Just a Reconfigurable Architecture.

Releases and Versions of Single Products.

Just a Set of Technical Standards.

A Note on Terminology.

For Further Reading.

Discussion Questions.


              2. Benefits.


  Organizational Benefits.

Individual Benefits.

Benefits versus Costs.

For Further Reading.

Discussion Questions.


      3. The Three Essential Activities.


  What Are the Essential Activities?

Core Asset Development.

Product Development.

Management.

All Three Together.

For Further Reading.

Discussion Questions.


  II. SOFTWARE PRODUCT LINE PRACTICE AREAS.


      Describing the Practice Areas.

Starting versus Running a Product Line.

Organizing the Practice Areas.


      4. Software Engineering Practice Areas.


  Architecture Definition.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Architecture Evaluation.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Component Development.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      COTS Utilization.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Mining Existing Assets.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Requirements Engineering.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Software System Integration.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Testing.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Understanding Relevant Domains.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


              5. Technical Management Practice Areas.


  Configuration Management.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Data Collection, Metrics, and Tracking.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Make/Buy/Mine/Commission Analysis.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Process Definition.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Scoping.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Technical Planning.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Technical Risk Management.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Tool Support.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


              6. Organizational Management Practice Areas.


  Building a Business Case.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Customer Interface Management.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Developing an Acquisition Strategy.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Funding.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Launching and Institutionalizing.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Market Analysis.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Operations.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Organizational Planning.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Organizational Risk Management.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Structuring the Organization.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

Discussion Questions.


      Technology Forecasting.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


      Training.


  Aspects Peculiar to Product Lines.

Application to Core Asset Development.

Application to Product Development.

Specific Practices.

Practice Risks.

For Further Reading.

Discussion Questions.


  III. PUTTING THE PRACTICE AREAS INTO ACTION.


                  7. Software Product Line Practice Patterns.


  The Value of Patterns.

Software Product Line Practice Pattern Descriptions.

The Curriculum Pattern.

The Essentials Coverage Pattern.

Each Asset Pattern.

What to Build Pattern.

Product Parts Pattern.

Assembly Line Pattern.

Monitor Pattern.

Product Builder Pattern.

Cold Start Pattern.

In Motion Pattern.

Process Pattern.

Factory Pattern.

Other Patterns.

Practice Area Coverage.

Discussion Questions.


      8. Product Line Technical Probe.


  What Is the Product Line Technical Probe?

Probe Interview Questions.

Probe Participants.

Probe Process.

Using the Probe Results.

Conducting a Mini Self-Probe.

Discussion Questions.


      9. Cummins Engine Company: Embracing the Future.


  Prologue.

Company History.

A Product Line of Engine Software.

Getting off the Ground.

An Organization Structured for Cooperation.

Running the Product Line.

Results.

Lessons Learned.

Epilogue.

Practice Area Compendium.

For Further Reading.

Discussion Questions.


      10. Control Channel Toolkit: A Software Product Line that Controls Satellites.


  Contextual Background.


  Organizational Profiles.

Project History.

Control Channels.

Launching CCT.

Developing a Business Case for CCT.

Developing the Acquisition Strategy and Funding CCT.

Structuring the CCT Organization.

Organizational and Technical Planning.

Operations.

Engineering the CCT Core Assets.

Domain Analysis.

Architecture.

Component Engineering.

Testing: Application and Test Engineering.

Sustainment Engineering: Product Line Evolution.

Documentation.


      Managing the CCT Effort.

Early Benefits from CCT.


  First CCT Product.

Benefits beyond CCT Products.


      Lessons and Issues.


  Tool Support Is Inadequate.

Domain Analysis Documentation Is Important.

An Early Architecture Focus Is Best.

Product Builders Need More Support.

CCT Users Need Reuse Metrics.

It Pays to Be Flexible, and Cross-Unit Teams Work.

A Real Product Is a Benefit.


      Summary.

For Further Reading.

Discussion Questions.


      11. Successful Software product Line Development in Small Organization.


  Introduction.

The Early Years.

The MERGER Software Product Line.

Market Maker Software Product Line Practices.


  Architecture Definition.

Component Development.

Structuring (and Staffing) the Organization.

Testing.

Data Collection and Metrics.

Launching and Institutionalizing the Product Line.

Understanding the Market.

Technology Forecasting.


      A Few Observations.


  Effects of Company Culture.

Cost Issues.

The Customer Paradox.

Tool Support.


      Lessons Learned.


  Drawbacks.


      Conclusions: Software Product Lines in Small Organizations.

For Further Reading.

Discussion Questions.


      12. Conclusions: Practices, Patterns and Payoffs.


  The Practices.

The Patterns.

The Success Factors.

The Payoff.

Finale.


      Glossary.

Bibliography.

Index. 0201703327T07312001