With version 7.1 of TimeControl and TimeControl Industrial having just been released, we thought it was a good time to update our notes on the best practices for upgrading TimeControl.
For many of us, we have gotten so used to having our mobile devices update our applications automatically in the background that it takes a conscious effort to think of proper upgrading procedures for enterprise applications. When the application is a timesheet system like TimeControl, this issue can be compounded by the thought that so little of most users’ week is taken up by entering their time in the timesheet. Yet the data in a timesheet system may be absolutely critical to many corporate policies that are essential such as payroll or invoicing. Upgrading clients is not an automatic part of TimeControl technical support but HMS is often asked to assist with such upgrades as part of a consulting mandate.
An enterprise application like TimeControl is one that should be upgraded within a structured process. Here are some best practices we have learned at HMS on how to implement a TimeControl upgrade. The advice is likely useful for any corporate enterprise application:
First, make a plan
Yes, the upgrade can be downloaded in a couple of minutes. Yes, it’s easy to click on the installation package and have it start churning through files and processes. But no. Don’t get started until you have a plan. When HMS does an upgrade on behalf of a client, we have a standard template of how the upgrade will go. It looks like this:
- Backup existing system
- Install the new version as a separate instance or if it exists, install into the staging instance.
- Upgrade the staging instance and turn off any automatic scheduling so you don’t upload exports or links to project management twice (one from production, and again from staging)
- Review logs from the upgrade for any errors then review all data for any issues. Record how the errors or issues were resolved.
- Use the staging instance and duplicate a representative number of timesheets from the current system. Review reports and exports to ensure they are working correctly.
- Inform existing users when you intend to bring your production instance of TimeControl offline to perform an upgrade
- Production Upgrade day:
- Take TimeControl offline
- Backup the data and the application directory in case it is needed for a rollback
- Upgrade the instance
- Review upgrade logs. Using your notes from any corrections that were needed during that upgrade, perform the same corrections here if needed.
- Restart TimeControl
- Do a check of basic functions to ensure the system is working properly
- If everything appears in order, inform the users that TimeControl is back up and available.
- If there are major issues for some reason with the production instance, roll-back and speak with HMS about errors encountered.
Next – Back it up
You might think that everyone backs up their enterprise data but sadly that’s just not true. No matter how confident you are that your particular deployment of TimeControl will be seamless and instant, back up your data. We do. We don’t start an upgrade on behalf of a client without backing up the data. In some cases, organizations with virtual servers can actually back up the entire TimeControl environment include the database server, the database itself and even the TimeControl instance. That’s fine. But don’t get started on an upgrade without backing it up first.
Look before you leap
This advice is often given to swimmers venturing outdoors into an unknown area. Diving into water that looks deep but turns out to be rock-filled or shallow can be dangerous. In the case of TimeControl, take a look at the “Read-Me” files, any “What’s New in this version” files and even the installation and upgrade guide before jumping into a new version. Just because a new version of TimeControl has an exciting new screen doesn’t mean that you need to upgrade right away. If your current TimeControl is happily operating then there is a disincentive to go through the effort of upgrading.
All the world’s a stage
”All the world’s a stage…” said Shakespeare (in As you Like It). In this case, I’m referring to staging your upgrade. Every enterprise system should probably have both a production instance and a staging or development instance. Your TimeControl licensing allows you to do this without extra cost. Establishing an instance of TimeControl that has everything your production configuration has (easy to do by copying the production database back to the staging instance) means that you can test out new updates before they’re made available to the end-users. That’s just a best practice for any enterprise system, not just TimeControl. This allows not only new updates but any configuration changes such as new filters, new reports, new validation rules to be tested out in advance. With a new version like TimeControl 6.0 where the architecture was significantly changed or 6.1 where core functions like table management underwent big changes, you’ll be able to ensure that your system will work just as it should before end users are exposed to it.
Do the whole upgrade
One of the most common upgrade problems reported to our technical staff from clients is finding that the client either skipped a step or didn’t finish the entire process. This is particularly true when clients are trying to upgrade through multiple versions and the client doesn’t let the ensure that the Transaction Server has started or that the Scheduling Server is actually running and complete the update work in each version before moving onto the next. So, make sure you’ve complete all the steps to the update!
Be prepared to advance to the rear
During the Korean War, General Oliver Smith was asked if the American Marines were retreating. “We’re advancing to the rear,” he is reported as answering. When we’re talking about software, it’s a fact that not every upgrade goes perfectly and for a wide variety of reasons. When you do your update, be prepared to retreat, regroup and try again. If you backed up not only your data but also your application directory, you should be able to roll back the upgrade with relatively little effort or time. If that happens, talking to HMS Technical Support about what errors you encountered may help. Make sure to have your error logs and the process you followed available
We’ve seen a lot of updates and full upgrades over the last couple of decades. If you’d prefer, HMS Consulting services is always available to help you get the very latest version up and running or, if upgrades are just not for you, you can ask HMS about subscribing to TimeControl Online and we’ll take care of upgrading for you automatically.