What is a software product line?

A software product line is a portfolio of similar software-based systems and products produced from a shared set of software assets using a common means of production. Software Product Line (SPL) engineering refers to the engineering and management techniques to create, evolve, and sustain a software product line. Over the last few years, these trends have crystallized into an approach known as Product Line Engineering (PLE) for Systems and Software.

Why is software product line engineering important?

SPL engineering as a field of study can be traced back to the mid-1970s, although examples of actual software product lines built by far-sighted practitioners can be found much earlier.

Early generation SPL techniques and case studies have provided an invaluable view into the pros, cons and potential benefits of these approaches – establishing a solid foundation for the evolution of the field into a more repeatable, mature, well-defined discipline called Product Line Engineering (PLE).

Software Product Lines matures into the next generation of Systems and Software Product Line Engineering

Second Generation Product Line Engineering (2GPLE) represents the current state of the art in systems and software product line engineering.

2GPLE is experiencing mainstream adoption across industry sectors, delivering strategic benefits to a spectrum of engineering organizations from small to largest in the world.

2GPLE is no longer limited to focusing exclusively on software and software-based systems. Rather, it makes engineering assets from across the entire lifecycle – requirements, designs, test cases, user documentation, project plans, and more – first-class citizens, and encompasses not only software-based systems, but also systems in which software plays a diminished (or no) role.

With pragmatic 2GPLE approaches, languages for expressing variation are more uniform and simpler, reflecting only what is needed in practice. Automation to support asset and product derivation from shared assets has moved out of the research labs and into real-world industrial-strength application, gaining robustness, simplicity, and usability. 2GPLE adopts an integrated cross lifecycle perspective, a powerful generalization reflecting a move away from SPL’s software-only roots.

Learn more about 2GPLE

The best resource for learning about 2GPLE is www.productlineengineering.com. This informational website provides an introduction to basic 2GPLE concepts, approaches, and benefits – as well as historical information regarding First Generation PLE (1GPLE) approaches. Additional resources include:

BigLever Software website: Offers a comprehensive collection of resources regarding the latest advances in 2GPLE technologies and methods including videos, case studies, white papers, and more. See the LEARN MORE section.