An explanation of our development process

On 9th May 2023 we published some notes about ‘ez2view v9.6.1.99 released (last version compatible with MMS v5.0)’and, in those notes, included a description of our Software Development process.

Since the formation of the company decades ago we’ve been working to adhere to these four principles of Agile software development (even before these principles were espoused in the Manifesto), with the specifics varying as our customer’s requirements have changed.

 The description provided on 9th May reflects our approach at the time (as it relates to our ez2view software).  Given we’re starting to refer to this description separately, I’ve copied it over into its own article here (backdated to the same point in time).

We trust you’ll find this useful.

————-

 

A view ‘inside the sausage machine’

In recent weeks we’ve fielded calls from a number of clients asking about specific versions that were on the ez2view installer page.  We provided them an explanation along the lines of what follows – they found this useful, so we thought it would be worthwhile to share this with readers here.

Note 1)  We’re pretty much continuously working on ez2view, and build new versions of ez2view on a weekly basis, sometimes several times each week.

Note 2)  Internally, these builds work through the following sequential steps:

Step 1 = we run some Automated Unit Tests with the build process

… if these pass, the build is marked ‘Pre-Release’ for us to use and test internally.

… so this is what I tend to try to use the latest of (for instance) although I can’t keep on top of how frequent they are.

Step 2 = we then run some Automated Screenshot* Tests:

… if these pass, the mark on the build is changed to ‘Release Candidate’

… if this happens, it is uploaded to this site:

https://installers.global-roam.com/ez2viewaustralia/[INSTALLER WITH VERSION NUMBER]

Step 3 = if we have a flag turned on in the process …

… then this switches the ‘latest bleeding edge release’ flag automatically in the process

… which then adjusts the version number (and the URL) linked in the right-hand column of the the ez2view installer page.

… this column has been labelled ‘Latest and Greatest’ to reflect what it is.

Step 4 = at this point, there are still a couple of things we occasionally do manually that have not yet been done for that release:

4a)  We have a test matrix specifying a full batch of systematic manual platform tests (e.g. upgrade from v9.X to v9.Y on Windows Version Z):

i.  Sometimes these identify specific bugs that we then correct (and repeat steps 1 to 4)

ii.  However note these tend to be corner-cases, as we (and some particular external users we work closely with) are always using the ‘Latest and Greatest’ so come across and resolve most problems without needing to wait for this step.

4b)  Occasionally, as well, we’ll update the Widget Guides (a manual process) to reflect all of the enhancements made to particular widgets to that point.

4c)  At this point, we would then link to that specific version as a ‘Slow Channel’ release.

 

Following from this explanation, note that the ‘Latest and Greatest’ has not yet gone through Steps 4a and Step 4b.