In the world of technology nothing is taken for granted, on the contrary, everything has surgical precision and the best solutions are always being sought when implementing software, but it is also necessary to see the dimension of the project to measure the degree of support or maintenance involved.
Although some simple projects such as an informative web page (beyond the constant updating of the content) have a tireless source of automatic support for the same technology that has been used, such as WordPress, for example, there are more complex projects that involve certain number of profiles that constantly check that everything is still working properly.
Currently there are 4 types of maintenance:
It is understood that each type speaks for itself, it should be noted that the preventive has the objective of keeping mapped any failure in the software system, especially in terms of security, that is why depending on the size of the software, the function it has and the sector for which it has been built, such as banking for example, it is of vital importance to have a support and maintenance team without altering the operation of the software.
The correction of errors or defects in the programs is essential, and the constant evaluation of any flaw in the code, updating documentation, seeing performance, processing and adapting the software to new environments simplifies larger problems.
That is why one of the pillars of software maintenance is also adaptability, since technologies are constantly evolving, it is imperative to make changes to the environment, such as the operating system, the software development itself and even the architecture itself. Part of adaptability also entails tweaking or rewriting code if needed, database upgrades, migrations, and integrations.
The perfective aspect is more punctual, since it seeks to update functionalities, adding new features and providing it with greater efficiency in execution.
Now, at the level of time, it varies a lot from the level of the project, since, as we can see from the types that exist, it is not just correcting errors or updating the system, but also encompasses a certain number of activities that can last the entire life of the project, being 2, 5, 10 years or more, something that differs a lot from the software development time and also from its cost.
There are other aspects to take into account, such as the team assigned for maintenance, which are clearly specialized profiles in the programming language and technology used in the development of the project. This team must maintain a neat organization in terms of the responsibilities of each one, documentation record and preparation of reports to verify the work carried out in detail.
Last modified: February 24, 2022