Software has stealthily become a common denominator in manufacturing, creeping into nearly every product sold today. Examples abound: From toasters to car keys, and even to Legos, more and more unlikely products contain software. Every new car now contains as many as 100 microprocessors, each of which is driven by software. Nearly half the cost of developing a new jet fighter goes to the plane’s software. Siemens, the German electronics firm, employs 47,000 software developers — which is even more than Microsoft does.
Software may make the world go round, but it can trip up traditional manufacturers as they struggle to integrate software development into their operations. The costs of getting the software component of product development wrong are staggering: Software errors, according to a 2002 study by the National Institute of Standards, cost the U.S. economy close to $60 billion annually. Automakers alone faced more than 30 software-related product recalls between 1998 and 2003. In the past, the most common field call for elevator makers was to fix door malfunctions, and for copier makers it was to deal with paper handling; today the number one cause of field calls for each is software problems.
Are such errors just a part of doing business, or can something be done to eradicate them? Although most manufacturers have adopted best practices, such as Six Sigma, for developing the core parts of their product to high standards of quality and efficiency, they often don’t extend those practices to their software development. Frequently, the software components are an afterthought in the process. As such, too many companies insufficiently manage their software-development efforts. This adds massive complexity to their product development, which in turn leads to poor product quality and escalating costs.
The problems begin when companies don’t fully understand the needs of their new product’s target customer; with the overall product specs left loosely defined, the software requirements intended to meet those needs are even fuzzier. That gap leads to expensive inefficiency, with companies developing the software to run new features as one-off assignments rather than as part of a comprehensive and clearly defined development plan. Moreover, without a clear understanding of customer requirements, many of these efforts simply aren’t worth pursuing. Poor planning then cascades into the development and testing phases. Because manufacturers haven’t developed a cohesive strategy with accompanying contingency plans, they often have difficulty determining how to proceed when components fail. Worst of all, there’s no one to hold accountable. Throughout this process, a lack of communication is endemic.
These problems can’t be solved without a wholesale change of the manufacturing process. Senior technology leaders within manufacturing companies must acknowledge the critical role of their software operations and take a measured approach to development and integration with other business and manufacturing processes. That strategy involves:
putting a rigorous product life-cycle management (PLM) process in place
identifying and implementing accurate metrics for measuring improvements in the development process
finding ways to reduce complexity
Following such an approach can yield a variety of benefits, including faster time to market, reduced development costs, and increased competitive advantage, in addition to improved software quality.
Implement a Process
Guessing which features customers might want and using that conjecture to design and manufacture products as quickly as possible is no way to develop software. From idea to development to testing, software developers need to establish a disciplined PLM process that ensures developers can repeat certain steps every time. A PLM process also improves collaboration, getting everyone involved on the same page regarding the appropriate process, and creates a clear niche for software development within the larger context of product development and launch.