Gears enables enterprises to engineer their product portfolio as a single system rather than multiple products, and facilitates the development and deployment of new using a simple feature-based portfolio evolution approach, said Charles Krueger, chief executive and founder of Austin, Texas-based BigLever.
Krueger said Gears is an SPL development tool that addresses the unique challenges of engineering software for a portfolio of similar products.
Indeed, the notion of a software product line assumes that software systems in a particular application domain have more similarities than differences.
According to BigLever, Gears shifts the development focus from a multitude of products to a single software production line capable of automatically producing all of the products in a portfolio. And Gears can be used in any or all stages of the portfolio development lifecycle, for more effective requirements management, change and configuration management, source code development, software builds, testing, and document development, Krueger said.
Meanwhile, with Gears 5.3, companies can evolve their entire portfolio using feature profiles that facilitate the easy addition or modification of feature requirements to meet customer need or market demand.
Gears 5.3 provides a table-based view of product features so that product marketing and development teams can easily review and select specific features for specific products. The new version also automatically guides non-technical users, such as product marketing or sales, in viewing, selecting and extending product feature sets to map new requirements to current and extended portfolio capabilities, according to the company.
"Gears feature-based portfolio capabilities are redefining the way companies create and evolve their product line," Krueger said in a statement.
Krueger said BigLever was founded in 1999 and delivered its first product in 2001. Many of the concepts in Gears date back to Kruegers days as a graduate student at Carnegie Mellon University when he began to focus on the notion of software reuse, he said.
"The tool we provide extends the normal development tools and methods with this notion of variability," Krueger said. The trick lies in "managing the diversity and taking advantage of the commonality" of software systems. Gears provides a "first-class notion" of a variation point. "Next we have a feature model—a domain modeling concept" to model the features that cause variation in the products in a portfolio, he said.
In a paper Krueger wrote on BigLevers successful software product line implementation at LSI Logics Engenio Storage Group, he stated: "Manufacturers have long used analogous engineering techniques to create a product line of similar products using a common factory that assembles and configures parts designed to be reused across the varying products in a product line. For example, automotive manufacturers can now create tens of thousands of unique variations of one car model using a single pool of carefully architected parts and one factory specifically designed to configure and assemble those parts."
However, the idea of manufacturing software from reusable parts has been around for decades, but success has been elusive, Krueger said. Moreover, "the characteristic that distinguishes software product lines from previous efforts is predictive versus opportunistic software reuse," Krueger said in his paper. "Rather than put general software components into a library in hopes that opportunities for reuse will arise, software product lines only call for software artifacts to be created when reuse is predicted in one or more products in a well-defined product line."
SPLs provide engineering managers with "the ability to organize your team structure differently. You can organize your teams around subsystems or individual assets, because your developers have a more narrow focus" of building specific parts, Krueger said. "So you no longer need to scale your team every time you add a new product to your portfolio."
Krueger said manufacturing operations have been early adopters of the software product line methodology because they tend to get the concept of mass production and customization. But mainstream enterprise business systems can benefit from the approach as well, he said. And it does not require a staff overhaul or lots of upheaval, he added.
"If youve got a couple of talented people at the architectural level, and a couple of good team leads, that seems to be sufficient to get things going and to manage it," Krueger said. "You just need to get the factory into your build system and your configuration management setup."
Meanwhile, although Krueger talks about the factory approach, BigLever does not necessarily adhere to the "software factory" approach to software product lines that Microsoft has promoted. Microsofts approach calls for domain-specific languages to help build parts.
"They are talking about building languages and all the commonality of a specific domain," Krueger said. However, "we can work in domains that are evolving very fast—where it doesnt make sense to establish a domain-specific language because things change so fast."
The concept of software product lines is itself still in the early stages. "Were crossing that threshold of academic pursuit to a viable business pursuit," Krueger said. "Its still early, but in a couple of years it will be like agile development and aspect-oriented programming. Were just starting to reach critical mass."
To reach that critical mass, software product lines need more success stories. The SPL has been hailed as a productivity enhancer for software development in general. Krueger said BigLevers work with Engenio took the LSI Logic business unit from having 15 products when BigLever started working with them, to having 40 products by the end of the first year or working with Gears and employing a software product line approach. And the companys productivity has continued to scale to the point that they can add one new product a week, he said.