The question I have been receiving comments on is:
How does increasing software releases helps efficiency?
This is a really good question because if increasing the frequency of software releases does not benefit the end users and their companies then why waste time in creating all these releases!
I will start by explaining the reality of our industry.
In the shipbuilding and offshore industry projects are driven by a very demanding project schedule which can have significant penalties if the work is not completed on time. Depending on the type of company (design agency, shipyard, etc.), the type of structure (ship, offshore structure, etc.) the project duration as well as the penalties will vary.
The best practice for these companies is to only update their software between milestones and not in the middle of the project. I 100% agree with this strategy even though I have mentioned in previous posts the benefit vs. risk of updating is leaning more towards updating these days. However, I think during mid-project the risk is factors times greater than during a transition between milestones/projects and therefore the additional risk will usually always outweigh the benefits of the new release.
This does mean the window of updating their software products is reduced to a few intervals. Having the most feature rich software version at this time is important as it might be months, possibly a year, before this window exists again. If the release cycle was coarser then there is a higher possibility that you would have to implement a month or even a year old version of the software. This would result in the opportunity cost of losing the efficiency of the newer versions.
The best analogy I have for this is imagine your window of upgrading your tablet was just weeks before the release of the latest version. You would be required to purchase the soon to be older version of the tablet.
To continue to illustrate my point lets work through an example. Assume the software release schedule is once a year (April) and you have two opportunities to update in that year (May and October)
In May you will have the option of updating to the latest release available in April which consists of improvements A- H. In October there is no new release and therefor you will stick with the release you updated in May.
Now assuming the software release is more frequent.
In May you are able to update to the latest release with the same improvements as the previous scenario. However, during the October time-frame you are able to update to a release which has additional improvements.
Another benefit – less features per release
I know it might sound counterintuitive, but since you are now able to update more often the number of new features between updates is decreased. This means it will be easier and more likely for the new features to be discovered and therefor adopted in your workflow. I recall some of ShipConstructor’s old releases having over 250 new features and improvements which I bet there are very few people who read through the list. If the user does not know of the new improvements then I consider that time wasted for SSI. Smaller, more frequent releases is simply more manageable for the user to consume and incorporate into their workflow.
Based on client schedules, which rule the project, results in them not being able to use the latest release until there is an opening between jobs or milestones. With smaller and more frequent updates, clients have the opportunity to upgrade ShipConstructor when their project schedule allows for it. This gives them the opportunity to access to the newest improvements and allow them to use it on the next project.