March 22, 2012

Synchronizing the Three Dimensions of Systems and Software Development

What's New

While I don’t normally find press releases very interesting, our friends at BigLever Software, a Perforce integration partner, created a very interesting way to picture the complexity of modern development projects. (BigLever’s CEO, Dr. Charles Krueger, also contributed a guest blog article on systems and software asset sharing.)

I’ve quoted the relevant bits below, but I think this graphic summarizes the complexity involved in developing systems and software that evolve over time (Multi-baseline), are customized for different product variations (Multi-product), and have a “Multi-phase” lifecycle. An example would be a software component for cellular communications. This component may be used in several chip sets, evolve as bugs are fixed, and of course go through a lifecycle where requirements and test cases drive changes.


The “Multi-baseline” axis is traditionally where Perforce, as a version management system, is able to offer solutions. ALM suites (whether best-of-breed or entirely integrated) address the “Multi-phase” aspects by trying to at least illuminate what happens when, say, a requirement changes. The “Multi-product” axis is very challenging, and by comparison there are relatively few solutions dedicated to this problem space, known as product line engineering (PLE), which is the area addressed by BigLever.

Many Perforce customers have created their own approaches for solving the Multi-product problem, often relying on Perforce workspace, branch, and stream views to help define how products are assembled from sets of components. But, while the problem may be managed, I don’t think it can be considered solved in a general sense.

Are you struggling with complex, Multi-product development? This may be a great time to start a conversation in the Perforce Forums.  BigLever has given us some food for thought, so let’s hear what you have to say!

Excerpts from BigLever’s recent press release: BigLever Software Integrates with Perforce to Address Market Need for Synchronized Version Management and Variation Management in Product Line Engineering.

To deliver competitive products, companies must effectively manage complex combinations of systems and software assets, finely tuned to support varying customer demands. As a result, engineering teams must deliver multiple product variations, with widely diverse features, synchronized through multiple lifecycle phases and overlapping development streams targeting different delivery dates. The BigLever Gears PLE solution overcomes these complexities by managing an entire product line portfolio as a single production system – much like a manufacturing factory – that utilizes product feature profiles to automatically assemble and configure the assets needed to produce a product line.

BigLever’s industry-standard Gears PLE Lifecycle Framework and third-party tool integrations, such as the Perforce/Gears Connector™, enable organizations to expand their tools and processes, and integrate PLE concepts, across the three dimensions of engineering concern:

  • Multi-product:  Gears provides the feature-based variation management and automated production line necessary to engineer and deliver the multiple products in a product line.
  • Multi-phase:  The tools necessary to support the multiple phases of a product line engineering lifecycle are the same tools that companies use today, augmented by Gears.
  • Multi-baseline. Change and configuration management for a product line are done on multiple evolving baselines of the product assets rather than on a multitude of individual product baselines. Perforce addresses this concern by providing control over source code and other digital assets for the concurrent development of systems, firmware and software.

As part of the new partnership, BigLever received technical certification for its Perforce/Gears Connector for the Universal Configuration Management Bridge™. The Perforce/Gears Connector provides a synchronous solution for integrating version management and feature-based variation management for product line assets, enabling the orchestrated execution of configuration management operations as the product line evolves.

Learn more about Product Line Engineering.