4 approaches for your software upgrade
Friday, March 27, 2020 - Adam Stirk
When your legacy systems are causing problems for customers and employees it’s frustrating, inefficient and costly. It’s also time for an upgrade. Faced with a number of different software approaches – you need an appropriate solution for your business that provides the smoothest, most cost effective way forward and delivers the outcomes you need.
That’s where this guide comes in. Sometimes out of the box software will effectively solve a specific problem. And at other times a degree of customisation or software development is needed.
Over the years different approaches have fallen in and out of favour due to the pros and cons of each. We explore these four software project strategies so that you’re well-informed when it comes to choosing the right option for your technology project.
Option 1: Vanilla
Also known as ‘out-of-the-box’ or ‘off-the-shelf’, a vanilla approach leverages software packages that are fit-for-purpose, implemented without any significant modifications.
Adopting a vanilla approach came at a time when businesses were striving to keep up with competition. Instead of focusing on driving genuine business or customer improvements, a multitude of applications were implemented in a bid to be the most innovative organisation.
In the 1990s, vendors like SAP and Oracle pushed back on the continuous customisation of their systems, challenging customers to stick with the original code and processes. Instead of making hundreds of changes that required ongoing support, they believed their original, vanilla systems were better, lower risk and cheaper than intensive customisation efforts.
- Benefit in unravelling complexities created by convoluted process, workarounds and barriers by implementing a software package that has defined processes based on best practices.
- Benefit in having a single supplier dependency, as opposed to multiple providers in other approaches.
- Easy to implement if your processes are straightforward without the need for major organisational and process re-engineering.
- Lack of flexibility, restricting business and process change, whether driven by a change in the marketplace, product offering or customer base.
- If processes aren’t fully mapped to package workflows, gaps will lead to workarounds and other ways of working outside of the system, placing you back to square one.
- Lack of competitive advantage as you’ll be using the same, standardised functions as others and therefore only able to facilitate the same processes and offerings.
Key to an effective use of a vanilla approach is making a specific match between your business processes and the off-the-shelf product. It is also important to note that businesses should prepare people, as well as processes, for this change, in order to ensure operations are kept to the new ways of working within the system.
Option 2: Customised
If an off-the-shelf product does not exactly match your business processes and therefore deliver what you need, the next option is often a customised approach, consisting of adapting a software package to support more specific business processes and operations.
For example, adopting an enterprise ERP to manage core operations, but commissioning further development for factors such as customised workflows, validation and the ability to record additional information specific to your business.
This is a common approach for a number software project implementations, with only 10% of ERP implementations reporting no customisations and over 25% reporting significantly or extremely customised ERP environments.
It is common for larger businesses to often adopt enterprise level software packages that begin as vanilla approaches, and then engage in large-scale customisation projects that evolve into development projects. This involves the complete process of conceiving, specifying, designing, programming, documenting, testing and fixing bugs.
- Benefit in more complex processes and workflows can be supported, leading to greater efficiency and productivity.
- Benefit in the ability to support change and growth in the business through both planned and reactive customisations.
- Can create problems after implementation as upgrades become increasingly difficult since code needs to be rewritten to support newer versions of the software. This can lead to businesses to defer upgrades and ultimately end up on a separate path from the natural progression of the product.
- Maintaining extensive custom code can lead to significant technical debt, where the cost of ownership grows over time.
- Customisations can result in creating errors, resulting in projects focusing on fixing rather than progressing new developments.
- Projects can become ‘customised beyond recognition’, especially in businesses with multiple geographical locations and siloed departments where unique customisations have occurred, removing standardisation and uniformity.
- Can become the worst of both worlds in terms of product approaches.
In order to get the most value out of customisation projects, it’s important to perform analysis around developments in that they are worth the time and money. Businesses should be clear on what value they are gaining from investments, such as ‘X customisation will reduce input processing time by 70%’, in order to ensure an effective return on investment. If you cannot identify the value to your business, it might be worth reconsidering whether the customisation is necessary.
Businesses should build a contingency plan consisting of buffers into software implementation plans that initially allow for some level of customisation, even if you’re not sure how much customisation to expect. Planning for this when defining time frames and budget can prevent your project from going off-course and ensure a valuable return.
Option 3: Hybrid
Now that systems can be stored in the cloud, instead of being hosted in on-site servers, software is becoming more accessible and open to integrations through APIs. This has led to a increase in the adoption of a hybrid approach, consisting of a framework of decoupled systems to address specific business challenges.
This can be a combination of both off-the-shelf software products, customised applications and bespoke software. For example, implementing an ERP product to manage core business processes, integrated with additional bespoke applications such as customer portals or mobile applications to provide a competitive advantage.
- Benefit in resulting fit-for-purpose systems that work to your processes and workflows.
- Benefit in the ability to leverage legacy systems through the use of APIs to combine new systems and innovations with existing platforms.
- Benefit in the ability to roll out a product to manage core businesses processes relatively quickly without impacting current workflows, that you can then build on top of.
- Is dependent upon API’s being available.
- Multiple projects and ‘programmes of work’ can cause distributed supplier management and difficulty to pinpoint responsibility should something go wrong within your ecosystem.
- You’ll need to invest time and resources in multiple projects, providing collaboration, ownership and responsibility to drive each project to success.
To ensure success and return on investment using a hybrid approach, you’ll need to clarify complex architecture and ensure you have sufficient teams to deliver.
You’ll need to define and empower project owners in order to drive engagement with the wider organisations and work collaboratively with supplier teams to drive project success.
Businesses should focus on communication throughout projects, especially in complex landscapes, in order to ensure original goals are met. This could include real-time communication and information sharing between stakeholders and suppliers, transferring key information such as status updates, timelines, budget, performance indicators, best practices and lessons learned.
Option 4: Bespoke
If commercial off the shelf systems do not sufficiently support your business processes and workflows, provide a platform for innovation and support your growth plans, your other option is to take a complete bespoke approach.
With Forrester stating in 2017 that custom-built software is the ‘breakout category’ within IT software, with market share rising from 10% to 30% over the last 5 years, bespoke software adoption is proving more popular, driven by a need for flexibility and innovation to stay competitive in today’s rapidly changing marketplace.
Using an agile approach, based on proof of concepts, MVP’s and prototypes, businesses are able to map out detailed user journeys and solve specific challenges.
- As bespoke software is purpose-built, your end product will be fit-for-purpose to support and enhance your business processes and operations.
- Future needs can be assessed as part of requirements gathering, enabling features to be incorporated into the application to support your business through growth and change, rather than incurring costs through additional licences or customisation projects in a commercial off-the-shelf approach.
- Custom software can be built to integrate with it’s intended environments, as well as potentials, enabling low-risk and low-cost integration with legacy applications and 3rd parties.
- With the use of proof-of-concepts and prototyping early on in the process, alongside the use of an agile approach, your solution will be user-driven, based on rapid feedback loops, resulting in an intuitive system requiring minimal user training.
- You own the IP of a bespoke software product, meaning you own the rights to use, sell, monetise or change your software as you see fit.
- A custom solution can provide greater competitive advantage by differentiating your business, product offering or customer journey from competitors.
- You’ll need to dedicate time and resources to ensure project success, in particular investing time during the development process.
- Bespoke software can be a larger initial investment than other software approaches.
- A bespoke approach will take a longer to deliver as opposed to adopting a pre-packaged ‘plug-and-play’ approach.
Before engaging in a bespoke software project, it’s key to carry-out build vs buy analysis to ask if there is already a software product that delivers the functions you need, for both current and future needs, including automating key processes and transactions, providing appropriate data handling, privacy and security functions, integrations and scalability, among others.
Once deciding a bespoke approach is the way forward to solve your specific business challenge, it’s important to define what it is going to solve and put in place measures to monitor success.
Key to driving success of your bespoke project will be the allocation of dedicated talent and internal resource to manage the project from analysis, throughout development, to completion. Including involving key user groups throughout the process to ensure a fit-for-purpose and intuitive solution.
Deciding which solution is right for your next technology upgrade will depend on the expertise within your team, resources available, your business goals and complexities, time frames and budget. There is no ‘one size fits all’, but in planning for technology projects, businesses should keep in mind how the solution will support both short and long term scalability plans, tie back to business strategies and provide the ability to react to growing and evolving business needs.
To find out more about improving the performance of legacy systems, download our free eBook:
Digital transformation does not always require a root and branch restructuring with widespread implications, too much risk and business interruptions.
Instead, we recommend taking an ongoing, measured…
According to a recent study, 73% of enterprises failed to provide any business value from their digital transformation efforts. And only 22% achieved their desired business results by meeting specific…