12 Secrets of Software Implementations from an Experienced Developer
The cost of poor implementation might lead the ROI down to zero and increase the payback period several times. But unfortunately, many companies fall into this trap.
The grocery chain Lidl spent $580 million and 7 years to develop a modernized inventory system, but failed to implement it. As a result, these resources went in vain — Lidl got back to the existing inventory system.
The U.S. Navy invested $1 billion in building 4 ERP systems. They abandoned 3 out of 4 in several years because they didn’t make any noticeable improvements in the operations.
Nike, a multinational corporation and very famous company in the sneaker industry, lost $500 million in sales and project costs because its new ERP system went live with critical bugs that slowed down the opportunity for timely good delivery.
These are some of the cases. To avoid such negative consequences, it’s necessary to know the theory about software implementation and have experience in software introduction in various industries like transportation, eCommerce, AdTech. As a software developer with 9 years of experience, I want to share my expertise and knowledge on this topic. By following my advice, you will avoid pitfalls in this rough trip.
What is Software Implementation
Consider Software Implementation as a set of activities required to integrate a new software or a big update of an existing one into the business processes. The final goal is to make the business work more efficiently.
This step refers to such types of software as management applications, enterprise software (ERP), supply chain management programs, inventory management systems, customer relationship management (CRM) solutions, and others.
A set of activities in software implementation comprises three major steps:
- planning (when the team makes every effort to organize smooth and successful implementation)
- integrating (installing the applications, data migration, primary configuration, staff training)
- monitoring (bug fixing, KPI tracking, feedback gathering).
Why Software Implementation is Inevitable For Any Company
Here I want to answer two major questions:
- Why does any organization, regardless of the size, inevitably have to implement new software?
- Why is it necessary to know the right way of doing things during the implementation process?
Let’s start with the first question. When the company experiences growth, the number of employees increases, business processes evolve, and new processes appear. Software should reflect these changes and adapt to new processes through either software updates or transitions to new solutions. Here the need for software implementation arises.
To be honest, the software implementation has a lot of benefits. According to Mint Jutras, an independent research-based consulting firm, 46% of enterprises implement new ERP solutions to save costs and improve performance metrics.
Now refer to the second question.
Poor implementation can lead to bad consequences with different degrees of damage to a business. Mention some of the negative effects of a poor software implementation process:
- revenue losses because of unexpected downtimes
- unmet terms of goods/service delivery
- loss in productivity
- loss of reputation
- security holes that can result in the leak of sensitive information or unauthorized authorization from a third party
- complete loss of money invested in the new software
Why Software Implementation Is So Complex
There are three main reasons:
Reason #1: Rough adaptation among employees
Employees are people, and people resist changes. It’s not something business owners can alter or affect — it’s the nature of people we should deal with. People tend to feel insecure when changes occur because they face uncertainty.
So, whenever a business expects any changes (especially when it comes to the new software implementation) it should give serious thought to how to get over employees’ resistance to changes.
Reason#2: Issues with the software that lead to failures
These issues include missed requirements, critical bugs, inconsistency of the new software with the existing processes, etc. Speaking about issues with the software, It’s not a surprise that more than 70% of projects fail. Failure is a risk that often waits just around the next corner. The best way to address it is to collaborate with robust software solutions and reliable software developers like the SumatoSoft company.
Reason #3: An ill-conceived implementation plan
I’ve noticed that this is quite a common mistake. A poor implementation plan means that managers, support staff, and employees will be blind during the software introduction and the software implementation process will be chaotic. By simply paying attention to this preliminary step, a business will get rid of headaches and undesired issues. And this is the step I want to take a closer look at.
Implementation Plan Is The First Milestone To Success
An Implementation Plan is a roadmap for introducing new software or updates. It starts with the requirements and goals for software implementation. Then it describes all effects of the new software on business processes and lists all activities that need to be done so the implementation process would go smoothly and deliver necessary strategic results.
7 Steps Of The Implementation Plan:
Step #1: Defining Business Goals And Metrics To Measure The Success
Business goals here should derive from the pain points of the company and bottlenecks it wants to overcome. This step should always go first with the focus on the question “why do we do it?” (why introduce new software or update the existing one?).
Once areas of improvement are identified, it’s necessary to bind a metric to every desired effect. For example, if the business expects to accelerate the time to close the deal with clients, how many days/hours the closure should take at the end of the day.
Step #2: Documenting Project Scope to Shape The Contours Of Work
Requirements elicitation and gathering is a common step in custom application development which is covered during the discovery phase. However, requirements are necessary for ready-made solutions as well. Requirements serve two purposes:
- To draw a clear vision of the required functionality. The point is simple: a business gets from the software what it asks. If the requirements are vague and poorly defined, the outcome will likely not satisfy the business.
- To control the scope creep. Clear requirements prevent unnecessary work and help to distinguish the necessary feature from the optional.
To learn more I encourage to read the article: Tips and Tricks on Making Good Requirements.
Step#3: Identifying The Business Processes That Will Be Affected
New software solutions will affect existing business processes. A new system can also lead to the emergence of new logic and processes. Identification of such a type of effect helps to avoid chaos during the development and unexpected outcomes.
Step #4: The Choice Of The Appropriate Software Solution
If the company refers to custom software development, this step will be much easier since it’s part of the vendor provider’s services. Regarding how to find a reliable technological partner I offer to read the Whitepaper: Finding The Right Software Developer.
Looking for the right off-the-shelf software, start with the most popular products in the industry and among competitors. Matching the business requirements (step #3) and product functionality helps to find the most optimal solution.
Newer products are only a good choice when the changes it brings will not affect the core business functionality.
Step #5: Building The Implementation Team
The implementation team has a wider number of members than a development team because there must be a representative from every key department that will use the product. The representatives will guide colleges through the adoption and ensure that the solution aligns with the department’s needs. The larger the company, the bigger the team will be.
Besides the representative, the team should have the product owner, project manager, system administrators (1-several), and support staff.
Step #6: Preparing Rollout Schedule
The software implementation can take weeks and months. A rollout schedule is a timeline that helps to move progressively toward the complete adoption and not to get stuck.
Step #7: Building Training And Engagement Strategy
The cornerstone of successful implementation is employee engagement. They should be aware of how the new software works and how it facilitates their work optimization.
The strategy should include various types of training methods: joint seminars, collaborative training, coaching, self-education, inbuilt training lectures and courses, and interactive demo with tips.
Once we finish with this part of the article, I want to share my 10+ years of experience working on multiple projects in various industries. Nowadays, I work as a CTO in the SumatoSoft company.
12 Secrets of Software Implementation From A Professional Developer
Secret #1: Implementation Isn’t Equal To Adoption
Even the greatest and most effective tool will fail to deserve recognition among the workers without a positive attitude towards it. And as a result, the adoption rate will be flat for a long time and ROI will be lower than the most pessimistic prediction.
So, build a positive environment around the product, highlight its benefits, ensure it provides a great user experience, etc.
And keep in mind, that once a new system is launched, the software implementation process doesn’t finish — continue working with adoption.
Secret #2: Optimize The Core Business Processes That Will Be Affected
Before complicating things further and introducing new software, it’s essential to ensure that current core processes are well-established and that they work.
The software doesn’t serve as a panacea for all issues and broken processes in particular. It’s a tool that should be used wisely to get the desired outcomes. And by wisely I mean that trying to build a beautiful house without a solid foundation, be prepared to watch the house fall apart.
Secret #3: Communicate Early And Often
Systematic and early communication facilitates two things:
- It ensures that workers are prepared for the upcoming changes. Any software and updates released without preliminary warnings can increase dissatisfaction from the beginning.
- It maintains systematic feedback from users. It’s not necessary to modify software after every piece of negative feedback because unplanned modifications lead to scope creep. Even listening to users is a good practice to up adoption rates. And, of course, feedback provides additional insights into the challenges users face.
Secret #4: Celebrate The Occasions And Encourage Workers
Software adoption is about human-to-human interaction. Use various methods to get people excited about new software. Single out a reward to adoption champions, promote learning programs, enlighten product advantages, and use visualization dashboards to track the progress.
Secret #5: Have A Specialist Who Is Perfectly Familiar With The Software
Thanks to the knowledge and skills with the product, an employee will help other colleges to get familiar with the new system, answer any questions, and correct mistakes others will make. If it’s an off-the-shelf solution the knowledge and skills usually derive from experience with the system. In the case of implementing custom software, such experience isn’t available, so you can train such a specialist. Choose a person or group of people (depending on the number of departments) who will get early access to the software and additional hours of training.
Secret #6: Minimize Corrections After The Release
Uncontrolled corrections upon request will likely result in confusion later on. The initial configuration of the software should go without unnecessary complications and radical changes. Prioritize complaints (if any) from employees and their desires about the software and solve only critical issues. All minor issues can be fixed in the coming updates (that will be for sure).
Secret #7: Prepare Backups Of All Significant Information
Before migrating to a new solution, it’s always a good idea to backup the data from your previous system. Even if data exchange between old and new software is supposed. Unfortunately, the data import often doesn’t go smoothly. Automatic data migration is a cool and commendable idea, but there are a bunch of reasons why it may fail like unsuitable data shame.
Secret #8: Push And Encourage Adoption
Extended deadlines are a very bad practice here. If the adoption goes too slow, it’s a signal to take action to accelerate the software implementation. The longer the adoption period the more costs a company will pay. Stick to the plan and don’t ignore warning signs when deadlines are extended several times for no serious reason.
Secret #9: Check Compatibility With Existing Software
The bigger the company is, the more complex its inner workflow, and the more interrelated systems it uses. Missing the compatibility check can lead to software implementation failure and a lot of frustration. Compatibility tests should go right after other types of testing.
Secret #10: Don’t Be Shy To Use Change Management Model
Change management models are methodologies that describe various approaches to organizational change. It’s a great tool to successfully implement software and can provide clear guidance on how to overcome some quite common obstacles on the way.
Some models are:
- The Kübler Ross Change Curve in the Workplace
- ADKAR Model
- Kotter’s 8-Step Change Model
Secret #11: Phased Software Implementation Is Better Than a Complete One
If a company also has smaller system nodes or modules in addition to the main software node it is better to start with small ones. By implementing minor changes, bugs can be easily identified and eliminated. Once minor issues are fixed it will be much easier to “calmly” transfer the main nodes. It helps not only to avoid overwhelming the implementation team with defect fixing but reduces user resistance to change since the transfer occurs gradually.
Secret #12: Pilot Launches In Testing Environment Save Time, Money, And Nerves
It may sound contradictory because the testing environment takes some time to deploy and it takes additional time whenever new updates or sets of features are about to go live. However, all these efforts pay off when the implementation team faces serious incompatibility issues… but in a testing environment.
How I Built Custom ERP System For Toyota With SumatoSoft
The business was married to a set of legacy systems that didn’t meet the business requirements. It also hampered the company’s development toward process automation.
Our part of work:
We had a very responsible part of the work: we were supposed to develop the module for customer service and support that will be used in the tens of centers! Wow!
It took all our expertise and experience to build a CRM that suits such a giant company as Toyota. Thanks to a skilled professional team, transparent communication with the client, and well-established development and knowledge sharing process, we’ve succeeded.
Implementation followed after the development.
The SumatoSoft CRM module was successfully implemented in 20 centers around the country!
It automated car sales and services, reduced operational costs, and improved customer retention rates.
Well, I’ve said more than anyone could tell in the article. The implementation plan and my secrets can turn the software implementation process around if only applied. More can be said only in the live conversation or during the consultation, so feel free to contact me or the SumatoSoft company I work in.
Thanks for reading!