Nearly every product today, from cars and phones to washing machines, contains some sort of embedded computing technology. Customers are increasingly yearning for technology-enabled products. Smart phones, computing tablets, electronic navigation systems, Wi-Fi-enabled TVs, and a slew of other tech-enabled products offer consumers convenience, portability, and personalization at very reasonable prices, thanks to increased competition among manufacturers.
Consider these daunting statistics. Over the past five years, the average number of tech-enabled engine control units in new vehicles has grown from 20 to 80. In the mobile phone industry, the number of IT-based updates per year is approximately 40, double the number from 2000.
As the complexity of products increase, so does the task of developing them. The mounting pressure to cut time to market while also keeping prices low adds to the challenges faced by manufacturers worldwide today. The growing demand for these tech-heavy products creates a struggle for manufacturers who are trying to keep costs low amid fast-evolving technologies and the continual pressure for product upgrades.
Traditional product development was driven largely by hardware considerations. Today’s complex products are dependent upon the effective integration of multiple hardware and software components. Software design involves strings of code that are pieced together in interconnected layers. The IT architecture underlying new product designs today, therefore, is much more complex. In products that are controlled by on-board microprocessors, sensors and processors guide their function, not mechanical components.
Manufacturers accustomed to managing the development of their hardware need to learn new processes and metrics for managing the development of software. Hardware typically involves much less uncertainty about how the components of a system work together: something connects or it doesn’t. Software development involves shades of gray. Because embedded development requires expertise in software and in hardware engineering and physics, best practice includes the use of cross-functional teams of experts and development methodologies that apply common models and simulation tools.
Successfully developing these tech-enabled, complex products requires an integrated approach that addresses a number of important characteristics. The architecture should be modular in nature, allowing sections to be stored and applied in different or future products. It should be built on standards, providing for easier integration, and be configurable so one system can meet many different customer requirements. Finally, it should be updatable, allowing new features and functions to added without having to discard large parts of previous releases.
Product development teams creating complex products should continually look for ways to simplify designs. Ask if a certain desired feature is something that customers would use regularly. If not, consider leaving it out. If the design seems overly complex, teams should not be afraid to start over and determine if the design can be streamlined to reduce its complexity. This not only decreases developments costs and design cycle time, but can also reduce the complexity of using the product. If a product is too complex and the learning curve is to high, adoption will be low.
Efficient and effective collaboration among those tasked with developing these complex products—engineering, marketing, concept design, and others—is critically important. This interaction helps IT-and engineering development teams balance what the market demands in a feature set against what the business side requires in costs and cycle times—and keeping it all within the realm of what’s technically possible.
Close collaboration also helps to anticipate where design changes might occur since changes made to one portion of complex multi-dimensional designs have ripple effects that can affect adjacent portions. Carefully and collaboratively organizing the architecture of these designs is vital to isolating the effects of design changes. By involving all those who are likely to initiate changes in the design—sales, marketing, purchasing, Quality, manufacturing, and engineering—you can help predict where those design changes will occur and design the underlying product architecture accordingly.
Because of the great complexity involved in the design of these tech-enabled products, the implementation of a product lifecycle management (PLM) system is vital. PLM systems help organizations by managing the interdependencies of these various subsystems (software and hardware) on each other, facilitating the collaboration between the multiple disciplines involved in the design, and tracking the change process.
Image by Tom Held