By Paul Rayment, Director, Implementations EMEA, Wilson Allen

The rate of technology change is increasing at an ever-accelerating rate. Staying current with the latest versions of practice management and financial systems software is necessary if for no other reason than to ensure you have the latest security patches from the software vendor.

Why do some software upgrade projects go smoothly while others falter and stall? Many factors contribute to an on-time, in scope, and within budget upgrade process. At the heart of the key to success is managing and controlling the various stages correctly. To do this, rather than follow a dogmatic and potentially restrictive methodology, it’s best to apply a dynamic framework for each project stage. For example, consider a RAPID approach, which breaks project management into five essential steps: review, align, prepare, implement, and deliver.

Review and Align

The first steps for an effective software upgrade are the review and align stages, during which a launch meeting and new features overview session occur. For this article, it is assumed that you’ll work with either the software vendor’s services team or an appointed services partner to assist your internal team with the upgrade process.

Launch Meeting

Once you’ve identified who you’ll work with, the project formally begins, and your software services partner typically organizes a launch meeting. The launch meeting provides the opportunity for initial contact between your internal IT team, your project sponsors, the services partner’s project members, and any other key members of the project team. The main objectives of the launch meeting are to:

  • Ensure the services contract is correct in terms of software and services required
  • Confirm any optional services
  • Define and record project success factors and reasons/drivers for upgrading
  • Provide an overview of a typical upgrade and the steps required
  • Set expectations across the project and clarify budget, scope, and timeline along with the needed resources from both sides
  • Review the project approach
  • Supply and review key project and technical documentation
  • Plan initial tasks following the launch meeting

New Features Overview

Another part of the review and align stage is organizaing and delivering brief overview sessions that explain any new software features being implemented. These sessions can be delivered remotely and provide an opportunity for you to understand how the software has changed. These sessions allow you to determine if any process changes are required and help identify future training requirements.

Prepare

The preparation stage allows you to define and agree upon the project’s technical, training, testing, and project management aspects. For each of these elements, you would define all of the related requirements to refine the project plan and approach for each.

Technical Strategy Review Meeting

Part of the technical strategy is to organize and deliver a technical strategy meeting. After reviewing all technical documentation and before building servers and loading any pre-requisite software, a technical review allows any outstanding questions to be answered. For example, you might need to clarify the type and capacity of servers and OS software, compatibility issues with virtual servers, and responsibility for and approach to technical tasks. You can then complete a pre-install checklist, which is a mandatory pre-requisite and allows a technical consultant to access the systems and implement the software for testing, training, and familiarization purposes.

Training strategy

Delivering training correctly and efficiently is paramount to ensuring a fast return on investment. You must consider the scope of training, who requires it, and when and how it is delivered. As such, a strategy for training is important to capture these requirements.

Testing strategy

One of the most critical elements of any software project is testing. A robust and repeatable testing methodology is vital to improve the quality of the final deliverables and reduce the risk of issues occurring at go-live and beyond. Unit, system, integration, and user acceptance testing are vital elements to successful testing cycles. A significant proportion, if not the largest proportion of effort within a project needs to be allocated to testing. A testing strategy that includes robust methodology, success criteria, and quality gates along the project timeline, is crucial to a successful outcome.

Project strategy

Successful project management and delivery rely on a strategy that provides adequate controls across all elements of a project. From a clear set of reasons to initiate a project to a final set of measurable delivery and success criteria, these will all play a part in defining a robust project strategy. A project strategy must provide for delivery against scope, budget, and timescale to ensure that defined quality measures are met. Controls to ensure this would include specific and best-practice methodologies, approach, and documentation to ensure successful delivery.

Implement

Once all project team members agree on all aspects of the preparation stage, the implementation stage begins. A project gate or milestone for this purpose is necessary before the implementation stage, and this provides a best practice project control. During this stage, you perform all of the core project tasks from the initial software load to testing, training, and finally, the go-live.

Deliver

The top stage of any project and the reason for all of the previous steps is the go-live itself. The live implementation represents a culmination of all the project effort and planning to date.

A minute-by-minute plan or ‘run book’ that is typically prepared in collaboration between the firm and the services partner facilitates the go-live. Timings and responsibilities are set out in the plan, and once agreed upon, it is distributed to the project team and specifically those with relevant go-live tasks. Contingency and roll-back planning are also important in case of any unforeseen critical issues.

Communication is also essential for a successful go-live. For example, you could set up a team email including all involved parties to provide updates following each critical step. You could also conduct ad-hoc meetings via remote sessions if required.

Project closure occurs within the delivery stage and should follow after at least one month-end cycle has been performed after the live upgrade. This measure allows any teething issues to be resolved between the project team or software vendor’s support team, depending on the nature of the problem. It also enables and encourages a smooth transition to support.

Project Closure Meeting

A project closure meeting addresses any outstanding issues and documents lessons learned and critical success factors measured according to the criteria established at the outset of the project. It also allows for a formal sign-off of the project.

A sometimes-overlooked aspect of a closure meeting is the lessons learned process. To facilitate constant improvement for forthcoming projects for both parties, understanding what worked well and what could be improved is vital for any future engagements. These should be recorded throughout the project and added to a formal log for all projects so that the benefit of such an exercise is fully utilized.

Summary

These are just some of the key elements and best practices involved to help ensure a successful upgrade. In summary, a recipe for a successful upgrade is to:

  • Ensure success criteria is defined at the outset
  • Follow a well-defined and tested project framework
  • Ensure all strategy and plans are reviewed and agreed prior to executing any major tasks Preparation and planning is essential
  • Test, test, test, and test again with as many different individuals and variables as possible. Follow formal test scripts but also ensure ad-hoc and scenarios specific to your firm are tested. Testing can be up to 50% of the total project effort or timeline, the more testing the better
  • Have a comprehensive plan for go-live and build in contingency in case of critical issues
  • Learn from any successes and failures and ensure they are remembered for subsequent projects

If you have questions or would like to discuss this approach further, please contact us.