Software maintenance is defined as the process by which software updates; new tasks include, also correcting the software updates.
programming problems resolve in the form of maintenance contracts concluded by programming companies with their customers and calculates as annual fees based on a percentage of the total cost of the program, types of software maintenance there are three types of software maintenance
It results from internal changes in enterprise software systems, such as the transfer of software to new devices or translators.
And other operating systems, to adapt to external, commercial, and modern requirements in meeting the needs of the user and business sectors.
Modifying, improving system and software bug problems is the core of remedial maintenance work, so that code, software structures, and software alerts change, and either needed from the user or from error reports that appear in the programs.
So that the fix is either for emergency failures or a scheduled adjustment and correction process.
Software restructures, so it is called software reengineering, to prevent future software problems so that the software becomes more understanding, its advantages improve and thus facilitate its maintenance.
Optimal maintenance: these are additional its modifications to remain usable for as long as possible.
Reducing the costs of their use, care, speed, reliability, and new features.
Reasons For Software Maintenance
The need for software maintenance is evident due to the following circumstances and factors: market changes and policies, as new laws, introduce on institutions, such as changing tax regulations and accounting processes, requiring software modification.
Customer requirements: The customer always requests to modify the settings for his work and add new features to his programs.
Changes in host software or devices, if any of the devices, or operating systems, change, it is customary to change the software structure to adapt to them.
Adjustments to organizational work levels is sometimes requires to make regulatory changes, demanding that their programs adjust.
Software Maintenance Steps
Software Maintenance Includes The Following Steps:
Identify the requirements for change in programs by recording feedback or the wrong messages from which they issue.
Analysis of software modifiability, including system security and safety, and another alternative is to inquire if the modification is costly.
Design new procedures that need to adjusts by testing them and making sure they are effective. Implement the new code for units designed in the previous phase, requiring each programmer to test the programmed unit parallel with other teams. Integrative testing of new units with the system as a whole.
Delivery and deployment of the system throughout the organization.
They conduct a final test, in the company after delivery of the program, if necessary, they train the users.