Oh Software Modernisation.
Over the last few years, it has become quite a trendy topic, as companies were forced to face and learn from their past mistakes. But, in case you missed it, here is a brief definition of what Software Modernisation is: also known as Legacy Modernisation, it is a continuous process of improving technological systems to increase business agility.
A few months ago we wrote about the importance of Software Modernisation for employee retention, especially in larger well-established companies. People are one of the key resources of any organisation and evidently play a great part in the success of organisational improvement projects such as digital transformations, business process reengineering efforts or Software Modernisation projects. So, let’s look at it from another perspective where people, once again, play a key role.
The need for innovation
In today’s fast-paced world and with the increasing demand for quality software and minimal disruption, organisations must adopt a more flexible approach for their structure, in terms of routines/processes as well as towards the various technologies and practices used.
Paul Leonardi’s research article titled “When flexible routines meet flexible technologies: affordance, constraint, and the imbrication of human and material agencies” (2011) presents one of the problems faced by people when they realise their inability to reach their targets with the present settings and environment. They put into question controllable and modifiable elements as to choose which one to change and how to do so.
They have the choice to modify either the routine and processes they follow or the technologies that they are working with, however neither of these options is mutually exclusive - both are in fact intricately interwoven. Be aware that both are also good opportunities for externalisation as employees may tend to resist change and blame new procedures they have to follow or technologies that they use at work in order to explain the lack of success or their low productivity.
Some of the solutions linked to changing the routine include adopting new work methodologies (exploring the broad spectrum of Agile approaches for example) , improving communication across teams horizontally and vertically or putting together some guidelines and policies, to document processes to better align individuals and teams.
Adaptation to change
People’s perception of technologies (software or even the hardware that employees work with for example) greatly influences their preference as to what should be modified first in order to solve the problem(s). If their perception of that technology is positive, it is considered as an affordance (it is helpful or convenient) however, when perceived negatively, technology becomes a constraint, and that is a time when Software Modernisation is the best if not the only solution.
In the case of a large legacy system with many layers and generations of technologies, sections of old code pieced together like a Frankenstein monster, it seems obvious that it would be considered as a constraint. Some of the risks associated with such systems can include quality and security issues, both internally and externally. Increased lead time for even the simplest of tasks due to code being more difficult to understand and modify, less reliable and less stable. Developer teams will face more bugs and spend a significantly greater amount of time fixing problems and executing manual tests than actually moving forward. It is a vicious circle which leads to increased levels of frustration and stress, demotivation and disengagement.
When perceived negatively, technology becomes a constraint, and that is a time when Software Modernisation is the best if not the only solution.
Oftentimes teams are the first ones to become aware of issues, some even have useful ideas and potential solutions to share if only the “business” side of the organisation would listen. Technology, in that case, is a constraint.
This is a good time to involve an external party who will bring valuable experience and expertise to help to carry out Software Modernisation projects. Involving the internal teams is usually recommended to optimise the adoption of new practices and acceptance of the changes, they should be informed, consulted at times, and involved on various levels.
In a previous article, we briefly explored how Software Modernisation can serve employee retention purposes. We mentioned two factors through which employers can influence their workforce’s motivation (remember: motivators and hygiene factors). We have now also discussed how software can fall under either or both of these categories. Seeing the importance of technology in our everyday life, particularly at work and even more so given the post-pandemic boom in remote work, employers and employees are urged to adapt and reevaluate the place of software in their organisations.