The Messenger v5 platform consists of a number of distinct components, including Messenger v5 itself, our interfaces with external systems (MIS, message delivery partners, etc), Groupcall Xporter and the Groupcall Xporter data extraction scripts for each supported MIS.
Groupcall periodically releases updates of Messenger v5 to introduce new features and to resolve identified bugs. Groupcall takes a number of measures to validate releases of Messenger v5 before they are promoted into live; these measures begin before development and include:
- Technical design discussion for both new features and bug fixes
- Peer review of application code
- Testing of new features against our local platform and then our staging platform
- Regression testing existing features against our local platform and then our staging platform
- Integration testing against live builds of other Groupcall Messenger v5 components
To carry out this testing we carry out the following phases in succession:
- We test on our local platforms using sample data
- We publish our code into Windows Azure in a staging area and test using demonstration accounts in our live datastore that are populated with sample data.
Once we are satisfied with testing and integration we ‘swap’ live and staging over so that staging becomes live. This also means that we have the previously live code in staging, and allows us to swap back promptly if any issues are identified after cutover. This previously live application version is then typically discarded within 48 hours of promotion unless there is reason to retain for rollback purposes for longer.
A similar testing process is applied for changes to Groupcall Xporter and Groupcall Xporter data extraction scripts for each supported MIS
- Testing against sample MIS data
- Piloting with a small number of consenting live schools
- Release of update to the Xporter estate