Following the development of software to help sea farers carry out this safety critical activity requires in-depth maritime knowledge and a software development process that follows best Quality Assurance (QA) processes.
Over the last 10 years the development of Seall software has been led by CEO Des Neill, who had previously served as a Merchant Navy officer, and has vital in-depth maritime knowledge.
Des always incorporated good software development processes into the work on Seall with a heavy emphasis on Unit Testing and documented and audited quality processes.
Des also insisted on regression testing being carried out as the team developed successive release candidates. He had learned over the years the reality that unintended consequences can appear because of software changes. The likelihood of these regression defects has increased as the Seall software base increases in size and complexity.
However, there is an obvious tension between allowing the time to carry out regression testing, and shipping the software on time, especially as the number of users of the core software now exceeds 30,000 worldwide.
To carryout the set of regression tests manually takes over 2 hours of one of our experienced software engineers with in-depth Seall knowledge. In the final week before a release of Seall it is usually the case that this regression pack needs to be run 4 or 5 times, which results in 10 to 12 hours of manual testing time, and this can delay the release.
The team therefore began to investigate the possibility of automating the regression testing of Seall to save time.
Working with Odin Technology, Seall successfully automated the execution of their regression pack using Odin’s ScriptWorks automation tool. Using the ScriptWorks automated tests, the regression pack can be run unattended in just over 15minutes.
This is an obvious saving in man time, but the main benefits from Seall’s viewpoint are actually enhanced Quality Assurance because we can ensure:
· The regression pack will always be run in full after any software change. Previously there had always been a temptation not to do the regression tests, after what was considered a small change, or perhaps only carry out a subset of the regression tests.
· All the regression tests have been carried out thoroughly. When the tests were being carried out manually, it was likely that the tests may not be as carefully executed on the fourth or fifth occasion in a week, as on the first test run.
This is especially important on a heavily graphical application, such as Seall ECS[NB1] , where the test can require reviewing a known good image of a chart with the image of the chart produced by the changed software. Asking a human to do this is not as good as using software to do a pixel-by-pixel comparison.
Having used ScriptWorks to automate the testing of Seall’s graphical application, the team are now building a set of automated tests to Quality Assure our support software. This software provides customers with software releases and charts for their ECS or ECDIS. These services are web based but we have been able to use the same ScriptWorks tool with an obvious saving in man time.
We hope therefore to maintain the same high levels of software Quality Assurance across the support services that ensure that our customers always have access to the most up to date software and chart files.