Maintenance of websites and information systems as a critical link that is often underestimated
Metaphorically, we can compare it to buying a car. When purchasing a new car, there is no question that the car must be serviced regularly. But why is it that the owner of a website or information system often does not even think about maintenance, and this cost is a surprise to him?
I interviewed Ursel Paap, Software Development Maintenance Manager at Trinidad Wiseman. We discussed the maintenance process of different software solutions (when what, how often must be maintained), maintenance costs, and the consequences of maintenance if maintenance is not done.
Please explain why monthly maintenance is needed for an information system or website that has passed the active development phase and what is the worst that can happen if it is not done?
Maintenance is the last link in the software development life cycle, which is often not given as much attention as the active development phase. Regular maintenance, however, is critical to the standard and secure functioning of the web on a day-to-day basis.
If the web is not maintained, it remains open to security vulnerabilities and can become a potential target for cybercriminals. In addition, development language frameworks and browsers are constantly evolving, requiring the web to be continuously updated. Otherwise, the user-friendliness of the web may deteriorate, along with other factors (e.g., a page that loads too slowly, an outdated design, etc.).
Metaphorically, we could look at security updates as changing the oil in a car. If the oil change is scheduled every 10,000 km, but the actual oil change takes place every 15,000 km, then probably nothing will happen to the car immediately. However, if a similar course of action becomes the norm, the car's engine may fail at some point.
Please describe what basic activities are performed for effective maintenance of an information system or web in the maintenance phase?
Monthly security updates for modules and additional modules as well as the core system itself must be performed. In addition, website monitoring and management and implementation of further developments are essential.
We also notify the client of the need to update the server software or front-end framework. We also monitor the logs and inform the customer about possible security incidents. In maintenance projects, we advise the client on content management, i.e. we advise on the best and most convenient way to do things; we are there for the client.
Trinidad Wiseman's good practice is proactive project management for projects in the maintenance phase, where we indicate to the client at the right time when some maintenance needs to be done and potential areas that can be made even more user-friendly.
What could monthly maintenance cost for different projects?
Since there are no identical projects, the maintenance cost depends very much on the nature, size and volumes of the specific project.
Here are some examples:
- a smaller type of website (e.g. community theatre or commune) that does not contain business logic can be maintained very successfully with a time expenditure of 1-2 hours, which in monetary terms is approx—120+km euros per month.
- the monthly maintenance of large projects - where, for example, the web, e-shop and company information system are all in one - can take up to 20 hours, or about— 1000+ km euros per month.
What are reasonable response times for a project in the maintenance phase in TWN practice?
It depends on which service package our customer has chosen:
- in the case of larger projects where the web is in constant development, we always respond to inquiries within 1 working day and start work within up to 5 working days.
- in the case of medium and small-scale projects, we always respond to inquiries within a maximum of 2 working days and start work within one working week.
Please shed some light on how it works when an information system or web, which is the maintenance phase, requires additional large-scale development and what costs must be taken into account in this case?
It is good practice for our maintenance projects that any additional development requiring more than 8 hours of work on initial inspection is reviewed separately, and a scope estimate is prepared for the specific work. This way, we can better plan large-scale expenditures with the client and consider alternative solutions.
Sometimes the client does not understand why the project manager is also involved in the maintenance of the information system or the website. Please explain why this role is important and what might happen if we don't include him?
The project manager performs various tasks in the maintenance phase - from classic project management in the form of follow-up developments and the preparation of volume estimates to the tasks of a customer manager.
It can sometimes seem confusing to the client why it is necessary to involve a project manager for 3-4 hours to implement further developments. However, TWN's experience has shown that a proactive project manager, who organizes all communication between the client and the developer in a timely and smooth manner and is always aware of all the details of the client's maintenance process, is an essential link in the maintenance process.
Does the customer always have a specific developer or contact person to turn to who knows everything about their system?
At TWN, we offer 3 fixed maintenance packages depending of the size of the project (there is also the option of a personalized package), and each package has a specific project manager.
Generally, every major project - where the project's ecosystem is constantly changing - is assigned a responsible developer who also worked on the same project during the active development phase. In this way, implementing additional developments is faster and more efficient.
In smaller and medium-sized maintenance projects, the resource is distributed to help the customer faster so that the first free developer does security updates and further developments.
How many maintenance projects does TWN manage at the same time, and is it possible for the customer to monitor the current status of his maintenance project?
Currently, TWN manages 40 different maintenance projects at the same time through the support desk. TWN's maintenance work support desk is a Jira environment where customers can easily monitor the current status of the work being carried out and, if necessary, make additional orders and ask further questions about developments/security updates.
The customer does not need to worry about their Jira usage skills. Editing in the environment is easy, and as the official representative of Atlassian in Estonia, we are always open to training the client in this regard. If there is no desire for training, the project manager takes all the input from the client by phone or e-mail and generates the necessary work ticket himself.
But what happens if the customer is not satisfied with the maintenance work?
First, let's find out the reason for the dissatisfaction. There have been no problems with patching security updates in my TWN practice. However, there is a possibility that when carrying out additional developments of a smaller volume - where preliminary analysis is often not carried out - the entire development input comes directly from the client, and the developer may interpret it differently.
This again reflects the importance of the project manager/analyst role in maintenance projects, where a project manager or analyst with a technical background collects input from the client and "translates" it into the "language of developers".
And finally, please tell us how and under what conditions can I join the TWN maintenance work support desk?
Since development and maintenance always go hand in hand, after the end of the active development phase, we conclude a contract for security updates/maintenance works with the customer. The client himself does not have to do anything else - we automatically move the project to the TWN support desk and inform the client of all necessary updates in a timely manner.
As we said, the maintenance of websites and information systems is the last and often underestimated link of the software development life cycle. Yet it is critical in helping to prevent both security issues and overall web stagnation in the long run. To prevent unpleasant surprises, we recommend that monthly web maintenance be included in every web planning budget.