Today, most companies target the needs of their prospective customers by creating a product line—a portfolio of closely related products with variations in features and functions—rather than a single product. Yet due to multiple intertwined products with different features and production deadlines, developing software for a product line is extremely complex. These challenges can hinder your company’s ability to capture the window of opportunity, maximize quality, and expand the scope of your product-line portfolio, making it difficult to obtain a competitive edge.
A new class of software development methods and tools collectively known as software product-line engineering (SPLE) is emerging to address this problem. When combined with modeling, specifically model-driven development (MDD) methods and tools, the result is a powerful synergy. Modeling gives application developers a collaborative development environment, allowing large and small teams alike to communicate effectively and productively.
This model-driven, software product-line engineering (MD-SPLE) combination can dramatically improve time-to-market, cost, quality, and portfolio scale and scope. What is most interesting is the magnitude of potential possible improvements, not measured in percentage points, but more commonly in factors of two to 10. These improvements are so large, they impact the fundamentals of how companies compete. They enable companies to leverage the power of their product-line portfolios in ways not easily imagined before.
MD-SPLE and the Discontinuous Jump
MD-SPLE refers to engineering methods, tools, and techniques for creating a portfolio of similar software systems from reusable MDD models, using automated software composition and configuration. Manufacturers have long employed engineering techniques to build individual lines of similar products using a common factory that assembles and configures parts that are designed to be reused across the entire product line. For example, modern automobile manufacturing plants can assemble variations of a car model from reusable parts specifically designed to be composed and configured in different ways to reflect the model’s feature variations.
The idea of manufacturing software from reusable parts has been around for decades, but success has been elusive. Recent advances in SPLE and MDD have shown that the strategic application of reuse within the narrow context of a single product line can enable companies to get a discontinuous jump in their competitive business advantage, similar to gains achieved by manufacturers that first adopted mass production and mass customization.
New Products as Commodities
With conventional software development approaches, significant resources are required to add a new product to a product-line portfolio. As a result, adding a new product is not a trivial business decision.
What happens when MD-SPLE approaches reduce the development time and effort required to create new products by 50% to 90%? New products become commodities rather than resource-intensive investments. When new products are commodities, the power of the portfolio is expanded, providing the agility needed to quickly capitalize on new revenue opportunities.
Leveraging Market Turbulence
Effectively managing software development for a product-line portfolio using conventional methods requires a slow, controlled portfolio evolution. As a result, accommodating market turbulence—sudden, unanticipated change in market demand—is very difficult. Turbulence can result in products that don’t meet market demand, underperforming products, or an inability to maintain quality standards.
What happens when MD-SPLE methods enable you to launch new products into the market with 10% to 50% of the time horizon required by conventional approaches? Market turbulence becomes an opportunity rather than a risk. The power of the portfolio means you can consistently be first to market with products that meet changing demands, providing the stability to both weather market turbulence and leverage turbulence as a strategic advantage against competitors.
MD-SPLE offers new and imaginative strategic business options. Modeling provides a powerful enabler for the rapid development of individual products within a product line, as well as better visualization for the maintenance and evolution of those products over time. SPLE allows a product-line portfolio to be engineered with the simplicity of a single system rather than a multitude of products. Shifting the focus of an organization from conventional product-centric approaches to portfolio-centric and model-driven engineering enables businesses to leverage the order-of-magnitude tactical improvements for even greater strategic business and competitive advantage.
1 See the www.SoftwareProductLines.com community Web site for examples and details.