For most companies, the goal of implementing new software is to become better, faster, and more capable of handling growing business demands. In the last blog post, we looked at the five W’s that help to set expectations for a successful software implementation. We will now delve into HOW to successfully implement, and identify several key success factors for every project.
Functional Requirements – When you’re in the market for new software, you will likely have at least a few main goals to accomplish. You will discuss these goals with vendors, who take notes, but these conversations are generally much higher-level than the detail in which the Project Team will get during implementation. A Fit Gap Analysis can be extremely helpful, in which all Functional Requirements are documented and analyzed in terms of “Fits” and “Gaps” with the out-of-box software. It is an upfront cost, but can save significant time and cost on the project, as the Project Team will have somewhat of a script to work off of, rather than uncovering details on-the-fly and adjusting plans and priorities (see Steering Committee below) as they go.
Project Team – Identifying the right people, and a chain of command, is extremely important. These individuals will be relied on by sponsors and all stakeholders to get the job done right. Discuss and be considerate when assigning the following critical roles and responsibilities, and do so before the project begins so each resource will know their role(s) going in. It is possible to wear multiple hats, but often times a Super User is also assigned to be Project Manager. Depending the person and their availability for this project, that can be doable, but in many cases either the project management role falls by the wayside (and expectations, priorities, etc. get misaligned), or the individual is attempting to do both and not enough time to focus on the software, in which case the timeline for implementation extends.
Project Kickoff – At the beginning of the project, it is crucial to define objectives, scope, and milestones with the Project Team. This will lay a foundation for implementation methodology, while also identifying immediate action items for all to begin with. Generally, the Project Sponsor and/or Project Team will review a Project Charter, which is then delivered to conclude the kickoff phase.
Project Plan – This one’s a biggie! Many, many blog posts, articles textbooks, etc. have been written on how to effectively plan a project. You have likely heard of “waterfall” and “agile” approaches, and Camelot (like many companies these days) opts for a hybrid of the two. It is important to define the waterfall, seen as Phase #’s below. Each phase has milestones and deliverables. However, unlike true waterfall, you need to be less rigid about user feedback and changes. In other words, a change management plan in incorporated, as user feedback is expected to be an on-going process at a certain point. It is considered agile to receive and adjust plans based on user feedback in the design/development/configuration phase (Phase 2 below). Define a Change Management Plan (see Project Tools below) and rely on the Steering Committee to weigh decisions based on the Triple Constraints. Ultimately, it is harder to estimate cost and timeline when the scope is changing, but in my experience, there are rarely software implementations that go-live without scope changes at some point between kickoff and go-live, so you might as well be prepared! Here’s an overview of Camelot’s Hybrid Project Methodology:
Project Tools – These may seem obvious, but keep these tools handy and make use of them!
Software Testing – This is one of the most crucial parts of the implementation. There is no such thing as “too much testing!” Super Users AND End Users should test, and test cases/scenarios should be considered ahead of time because knowing HOW to test is just as important as the testing itself. Make a plan for what tests to run and for who is testing what. Testing not only validates process flows and data input/output but also gives users valuable “practice time” with the new software, so they are familiar when it’s time for go-live. Some common testing types and methodologies include:
Go-Live! – With proper testing and preparation, go-live should be a smooth endeavor. This does not mean flawless J. In other words, make a plan for go-live support as part of your Go-Live Plan. During implementation, the Project team should take note of things to add to a Go-Live Checklist. This checklist is part of the Go-Live Plan, which should be reviewed as the Go-Live Date nears (often it is necessary to review the plan multiple times). The Go-Live Plan consists of tasks to be completed by all involved parties, including: preparations before users are out of the legacy system (e.g. posting open transactions), a time that all users will be out of the legacy system, an estimated time to complete backups of legacy system and data conversion to new system, a time period for Super Users to run basic tests, steps for IT/networking tasks to be completed, and GREEN LIGHT for go-live! Last, but not least, an escalation plan should be discussed so that the Project Team knows how to identify and triage issues that come up on the Go-Live Date (and days following).
What’s next?! – There are often features planned for later on down the line, and there almost always new ideas and features that come up through the implementation that are not “critical” for the initial go-live. Keep a log of these “continuous improvement” efforts, and get started after allowing some time for the dust to settle on the new system!
Every project has its own unique challenges and success factors, so being prepared and laying out a plan ahead of time is key. New software can bring many new benefits to your business, and given the time to execute the project plan will minimize the stress of this change to your company and stakeholders. In the end, the software will allow you to do more, sell more, keep growing, and service your existing and new customers better!