A rolling release is where the software is released to users in phases, often following a geographical pattern. Android operating system updates usually operate on a rolling release schedule.
A rolling release is a software development model in which updates are and automatically provided to the users.
Nightly Builds & Stable Build
Some modern software systems, especially open source systems, operate on a rapid application development(RAD) model where new features are constantly being added.
When a user updates their system they can choose between the newest nightly build /developer build version which has all the newest features but also likely more bugs, or a stable build with a slightly older feature set but fewer bugs.
A nightly build is a build process which creates a of the software every night.
A stable build refers to a version of the software that is considered and free of major bugs.
Regular Maintenance Updates
Most modern web-based systems require regular maintenance updates in order to keep the system running. The updates usually stick to a regular update cycle, such as once a week or once a month. These regular updates include:
API update support
Most complex systems use online API calls in order to fetch data. If these APIs are updated or withdrawn then the system needs to be updated in order to keep functioning.
Non-critical security updates
Many security issues often don’t pose an immediate threat and so need to be addressed in regular updates and or to keep ahead of the cat and game security game.
Minor feature updates
This can include things such as support for additional languages or file types.
Maintenance updates are often released to address issues with other software.
Security Patches
Often a critical security threat will emerge in the wild that necessitates an immediate system update. These vulnerabilities can leave the system open to a zero-day exploit that could result in serious consequences.
There should be a system in place that allows for security patches to be pushed to the target system immediately in order to address the threat.
patch
Hard Release
This is where software is to add users immediately and the availability is advertised or pushed to all available users immediately.
Advantages
This is the fastest way of getting the newest version of software out to all users
Depending on the system there are fewer issues with compatibility between users using different versions as more users are likely to update straight away
Disadvantages
This can put a large strain on the hosting and download servers as a large number of systems are updated at the same time.
Before a hard release, the software undergoes extensive testing.
Soft Release
This is where a new version is release but the release is not actively advertised and only limited numbers of users download straight away, with other users downloading over time.
Advantages
Lower strain on hardware and software resources
Bugs can be identified and fixed before large numbers of users install the new version.
Disadvantages
This can result in compatibility issues between users of different versions.
Many users won’t be aware that they can update.
Soft releases are often used to gather user and identify potential issues.