Release Process - How and When Changes are Made
This page describes how changes to LegalServer are tested, when they are released, and when they are effective on sites.
The release week runs from Thursday through Wednesday. Wednesday is the end of the current week's sprint and when final testing occurs.
Planning and Assignment
By early Thursday morning, the Sprint Minders have assigned tickets to the developers to work on for the release week. Sprint Minders are that rare breed that enjoy juggling knives while people throw other sharp things at them. Observe them. Respect them. Speak to them, if you must, in whispered deferential tones.
Changes are Made and Committed
The developers work on tickets throughout the release week. Proposed code or database changes are developed and tested, then committed to a development (testing) branch of the code.
On Wednesday, we update a test copy of each site with all new changes. Each ticket is tested by someone other than the developer who made the change. Support staff participate in testing if math and other hard things are not involved. Any issues that arise are either fixed and re-tested, or the change is rolled back for additional work in the next release week.
After ticket testing is finished, we run a series of unit tests (currently over 8,200 if you are curious). Each unit test checks a distinct piece of code or feature like (horribly oversimplified) "can a case profile be displayed", "can an event be created", etc.
After unit tests pass, we update test copies of 3 sites, including an online intake site. Several humans then create an intake, open, close, and re-open a case, enter time, and run reports on the 3 sites. For the online intake site, we do an application, transfer it, then review and accept it on the site it was transferred to. This also tests the electronic case transfer feature used to transfer cases between different organizations (not just online intakes). Any issues are dealt with, and if code changes are needed, the testing sites are updated again and re-tested.
Demo Sites are Updated
Overnight Wednesday and early Thursday morning, all demo sites are updated with the new changes. We are testing the demo sites throughout that week as we work with current onboarding clients (who only have a demo site). Site administrators often check updates on demo sites during that week as well, particularly for new or changed features that are important for their site.
Live Sites are Updated
Overnight Thursday and early Friday morning, live sites are updated with the changes from the previous release cycle. These are the changes that were tested in the previous release cycle and have been on demo sites for a week at this point, so we have high hopes any issues have been found.
Sometimes fixes can't wait for the regular update schedule. Internally we call these hotfixes, meaning an update is applied to affected sites immediately, or as soon as is possible and safe.