University of Oxford Logo University of OxfordSoftware Engineering - Home

Software Product Lines

The Software Product Line (SPL) approach to software development promises significant improvements in time-to-market, cost, and reliability, through the system identification and exploitation of commonalities and variations in software systems. The approach promotes asset re-use throughout the software life cycle, and facilitates product customisation. SPL has been applied successfully in a number of different domains, by large and small organisations alike.

Course dates

9th July 2012Oxford University Department of Computer Science12 places remaining.
15th July 2013Oxford University Department of Computer Science18 places remaining.

Objectives

This course presents a thorough and comprehensive coverage of state-of-the-art practices in SPL, from analysis and design to implementation, to provide students with a unique perspective that empowers them to identify, assess, and tackle the challenges of SPL and reap its latent benefits.

Contents

Challenges and Benefits of PLE
Importance of PLE in software engineering practice, commonality and variability management, Domain Analysis, Domain Engineering
Feature Oriented Design and Analysis
Features, variation points, feature models
Basic variability implementation technologies
Generic programming, frames
Aspect Oriented Programming
AspectJ, aspects and their application to product lines
Feature Oriented Programming
Feature modules, product line development with AHEAD
Product Line Validation and Testing
Design rules, model validation
Product Line Management
Adoption, processes, evolution
Product Lines in Industry
Commercial tools, successful industry projects
Research Trends
Model-Driven Development of Product Lines

Requirements

  • Programming maturity in any object-oriented language comparable to course OOP
  • UML knowledge comparable to that taught in the OOR module