Last post I discussed the benefits of software but highlighted the schedule hit that in can impose upfront. The good news is for many products, adding software update will actually accelerate the schedule. The products that can benefit have one or more of the following characteristics:
- Moderate to high complexity
- Medium to high volume
- Involve several different devices working together
- Require operation across a wide and dynamic set of operating environments
- Have significant communication requirements with other devices
If your product has one or more these characteristics, the time required to implement remote software upgrade upfront will quickly pay for itself it the ability to make changes faster and quicker as the product proceeds through test and integration and out into the marketplace.
For example, higher volume products will highlight software issues more readily. If a software glitch occurs 1% of the time, an engineer at their desk never sees it. Whereas when 10,000 or 100,000 are built it turns into the game Whack-a-Mole. While every attempt is made to find and fix issues before the product is released, as the number of devices increase it becomes a tradeoff between the time to find more and more challenging bugs and the need to get the product to market. The cost of manual reprogramming a large number of devices is expensive, time consuming, and a distraction. Remote software upgrade quickly pays for itself in these situations.