🔄 What is the best software release frequency?
Cliff Brake March 10, 2025 #releaseDifferent projects/products have different needs, but generally the trend in our industry is to release new software more often. There are several reasons for this:
- Modern processors (even embedded microcontrollers) are very powerful and expandable, so it is possible to add additional features after the initial release.
- Many devices are now connected, so updates can be deployed "over the air" automatically, rather than executing some manual operation.
- Continuous Integration (CI) and other workflows are improving the quality of software such that we are more confident the software is always tested and working. Long manual testing/QA periods are no longer the best practice.
- People are used to software updating on their phones/computers, so it is generally more accepted.
- Connected systems need more updates.
- Connected systems bring security concerns which require updates.
Perhaps the main reason the release frequency is increasing is more cultural than anything. In previous times, software updates were perceived as "breaking things." Especially in embedded systems, the mantra was: test it extensively, get it right, and lock things down. Updates are risky. However, the world has changed.
In the end, a software release means more value is being delivered to your users. And if our goal is to deliver value, then that includes releasing new software more often.