When and how should you refactor UX?

UX, i.e. the overall experience of using an application, plays a crucial role in the effectiveness of the work performed by users. There is nothing worse than an application that freezes all the time, runs slow, and hides basic functionalities from its users. Additionally, there is nothing worse than an application that was supposed to improve work, its implementation cost millions, but its users prefer to do their work manually – exactly as it was before it was implemented.


These problems, in particular, often concern ERP applications, which are frequently used to digitize very complex business processes. The first applications of this type were created over a dozen years ago and so far the processes originally implemented in them are still up to date. So, from the business point of view, these applications continue to fulfill their role to support their users (accounting, finance, warehouse, payroll, HR, etc.) in their daily work in the organization.


However, over time, technology has changed a lot. In particular, it has moved away from on-premise solutions to online and mobile solutions (very often hosted in the Cloud). New users also have changed their requirements as the development and constant change of technology have become their bread and butter. Therefore, in order to keep up with the changing world and competition, we are forced to take up the challenge to improve technology. When implementing such projects, we must pay special attention to a number of factors that may translate into achieving a return on the investment.


Improving the frontend layer should be supervised by UX designers who have a very good understanding of the business processes and the way users have been working so far. Preparing mockups of new screens and testing them with current users will surely help to avoid many problems in the future. Changing the way the application is used by people who have worked with the system in a certain way for many years may be very challenging. It can often be perceived as a shock that negatively affects the assessment of the system. Therefore, we must approach this issue with great caution – on one hand, adapt the solution to new market requirements, on the other, keep in mind its users.


Avoid big-bang – change the system incrementally. Start with MVP – the key functionalities that you will be able to verify on the market as soon as possible, resulting in shortening the TTM. A huge mistake that is often made by many organizations is the lack of an iterative approach to software development. The use of this type of process may result in getting the first effects of work after a very long time. And what’s worse, they can be unaccepted by the market. Therefore, it is necessary to shorten the user-supplier feedback loop with the shortest possible release cycle.

UX is not only about the way an application looks, but especially about the way it works. As the number of users increases, it is also necessary to adapt the system to a greater load. Especially when we move from on premises solutions to online solutions. The application must be prepared for increased user traffic at critical moments for the organization. After all, we cannot allow the application to take a long time to respond or to freeze during the closing of the fiscal year or when accepting a large shipment of goods to the warehouse. Therefore, a very important part of the development of ERP applications is to conduct performance tests that allow to accurately determine the behavior and cost of maintaining systems with specific non-functional requirements.


Very often, a large part of the costs related to the maintenance of ERP systems is the so-called support and maintenance. The need to maintain the system by an external supplier very often is a result of imperfections and errors that the system has. A very important aspect of development of ERP applications is resistance to system and user errors. The occurrence of this type of event very often requires L2 and L3 support  to restore the system to its original state. Therefore, the introduction of a good QA process during software development may significantly reduce its maintenance costs, which will allow you to maintain a more attractive price compared to the competition.


ERP systems are very complex applications. The way business processes are handled by the system has a great impact on how they are perceived by users. We need to remember about it at all stages of system development, especially when we invest in UX development. That is because it is the users who ultimately choose a system and it depends on them whether we will get the expected return on our investment.