Session Title Envisioning an Environment for Domain-Specific Engineering

Session Type Think Tank

Duration 90 minutes

Session Description

A motivating premise of the original product line conception was that a product can be specified and generated mechanically based on the resolution of a set of variability-based decisions that characterize a product family. Today, as tools supporting code generation spread, a traditional bottom-up emphasis persists on the detailed technical structure and content of software and the mechanisms for building and combining components. For product lines, applicable low level mechanisms are many and not the challenge. A product line approach starts from a different perspective of business objectives, with a concern for the need to support diverse and changing needs, to create a unified domain-specific capability to derive customized products. This session will use an exploratory graphical metaprogramming-based tool to expose and explore ideas for refining and enhancing tools generally to better support a product line capability. Variability-based product generation is contrasted with model-based generation as commonly conceived.

Speaker(s) Grady Campbell (Prosperity Heights Software)

Grady Campbell, a member of the technical staff at the Software Engineering Institute since 2002, works to identify, develop, and transition improvements in the process and practices of software development and acquisition. Prior to this, Mr. Campbell was an independent consultant in software product lines after being responsible at the Software Productivity Consortium in 1990 for conceiving and developing the first comprehensive software product line methodology. His 35 years experience also includes participating in the NRL Software Cost Reduction project and leading development in the 1980's of a model-based application generator based on adaptable software.

NB The subject material regarding product line concepts or tooling are not endorsed or otherwise associated with Carnegie Mellon University or the Software Engineering Institute.



Intended Audience Practitioners or researchers with experience in software product lines.