Software Product Lines Automate Development

Experts at the Software Product Line Conference tout the software product line model as the key to mass production of software by focusing on reuse and automated tools.

BALTIMORE—With reuse of software assets as its foundation, the software product line theory will help foster mass production and customization of software to power the next generation of systems, SPL experts said at a conference here.

At the Software Product Line Conference, vendors, researchers and practitioners shed light on the status of software product lines, how they are putting them to use, and what tools and techniques help to implement SPLs.

"Software product lines refers to engineering techniques for creating a portfolio of similar software systems from a shared set of software assets using a common means of production," said Charles Krueger, chief executive of BigLever Software, in Austin, Texas, a corporate sponsor of the event.

/zimages/3/28571.gifHelp wanted: Mainframes seek new programmers. Click here to read more.

Krueger added that manufacturers have long used analogous engineering techniques to create a line of similar products using a common factory that assembles and configures parts designed to be reused across the varying products in the product line.

Paul Clements, a member of the technical staff at the Software Engineering Institute at Carnegie Mellon University in Pittsburgh, said he wants to see more vendors "fold in product line capabilities into tools and IDEs [integrated development environments]." The SEI sponsored the SPLC the week of Aug. 21.

Moreover, Clements said he hopes to see the industry shift the development paradigm so that an emphasis is placed on building families of systems, rather than on single applications. He said the creation of single applications should become the exception as opposed to the norm.

The company that is perhaps furthest along in its support for software product lines is Microsoft with its Software Factories approach to building applications using patterns, models, frameworks and tools that feature code generation and automation, Clements said. Microsoft is a gold corporate sponsor of SPL.

"Software Factories is an example of this kind of thinking," he said.

Jack Greenfield, a Microsoft software architect and thought leader on the Redmond, Wash., companys Software Factories approach, said Software Factories "is a way of implementing software product line theory. Its a tool-based approach to software product line theory in its development and practice," he said.

Greenfield likened Microsofts approach to SPLs with the companys adoption of object-oriented programming.

"Software product lines is a general thing, and we have a specific way of doing it called Software Factories, like we have a way of doing object-oriented development called .Net," he said.

Juha-Pekka Tolvanen, co-president and chief executive of MetaCase, in Jyvaskyla, Finland, demonstrated his companys MetaEdit+ tool set, which enables enterprise developers to do domain-specific modeling. MetaEdit+ is a tool for the expert developer who is looking to boost productivity by generating code directly from models. The technology works 10 times faster than UML (Unified Modeling Language), Tolvanen said.

MetaCase touts its tool as an SPL enabler that comes in two versions: one for domain engineers and one for application engineers.

"Its an open tool that company experts can modify," Tolvanen said. In essence, MetaEdit+ enables developers to build their own CASE (computer-aided software engineering) tools, he said. MetaCase was also a sponsor of SPLC.

Next Page: Aspect-oriented programming.