Types of Maintenance | Software Maintenance | Activities, Role

Software Maintenance, Types of Maintenance, its Role, Process, and Activities. in the Software Engineering.
Q1. Introduction and Types of Maintenance. Q2. Models and Techniques for maintenance.

Q1. Write about the Software Maintenance. Explain process and various Types of Maintenance?

Ans. Software Maintenance: Software maintenance is the process of changing the software after it has been delivered to the customer.

Software maintenance is very broad activity that includes error corrections, enhancements of capabilities, deletion of obsolete capabilities, and optimization.

Any work done to change the software after its operation is considered to be maintenance work.

Software maintenance in software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes or to adapt the product to a modified environment.

Process of Maintenance

This international standard describes the six software maintenance processes as:

1. The implementation processes contains software preparation and transition activities, such as the conception and creation of the maintenance plan, the preparation for handling problems identified during development and the follow-up on product configuration management.

2. The problem and modification analysis process, which is executed once the application has become the responsibility of the maintenance group.

The maintenance programmer must analyse each request, confirm it (by reproducing the situation) and check its validity, investigate it and propose a solution, document the request and finally, obtain all the required authorizations to apply the modifications.

3. The process considering the implementation of the modification itself.

4. The process acceptance of the modification, by checking it with the individual who submitted the request in order to make sure the modification provided a solution.

5. The migration process (platform migration, for example) is exceptional and is not part of daily maintenance tasks.

If the software must be ported to another platform without any change in functionality, this process will be used and a maintenance project team is likely to be assigned to this task.

6. Finally, the last maintenance process, also an event which does not occur on a daily basis, is the retirement of a piece of software.

Types of Maintenance

There are four major categories of software maintenance :

1. Corrective Maintenance : This type of maintenance refers to modification initiated by defects in the software. A defect comes from the design errors, logic errors and coding errors.

Design errors occur when changes made to the software are incorrect, incomplete, wrongly communicated or change request is misunderstood.
Logic errors come from invalid tests, incorrect implementation of design specifications, faulty logic flow or incomplete test data.

Coding errors are caused by incorrect implementation of detailed logic design and incorrect use of the source code logic. Defects are also caused by data processing errors and system performance errors.

2. Adaptive Maintenance: This type of maintenance includes modifying the software to match changes in the over-changing environment.

This type of maintenance includes any work initiated as a consequence of moving the software to a different hardware of software platform compiler, operating system or new processor.

For example, business rules, government policy, work patterns, hardware and software operating platform.

3. Perfective Maintenance : Perfective maintenance means improving the processing efficiency or performance or restructuring the software to improve changeability.

When the software becomes useful, the user tends to experiment with new cases beyond the scope for which it was initially developed.

Perfective maintenance refers to enhancement making the product better, faster, smaller, faster documented, cleaner structured, with more functions or reports.

4. Preventive Maintenance : Preventive maintenance occurs when software is changed to improve future maintainability or reliability or to improve a better basis for future enhancement.

When the hardware platform changes, then the software support environment changes, the software product require rework to manage with the new interface.

[ Topic= Types of Maintenance, Types of Maintenance ]

Q2. What is the quick fix model, iterative enhancement model and reuse oriented model of Software Maintenance?

Or Describe the techniques for maintenance?

Ans. 1. Ouick Fix Model: This is basically an unplanned approach for maintaining software. In this model, waiting for the problem to occur and then trying to fix it as quickly as possible.

Fixing would be done without detailed analysis of the long term effects, for example, ripple effects through the software or effects on the code structure.
The advantage of this model is that in an appropriate environment it can work perfectly well. For example, a system is developed and maintained by a person.

If customers are demanding the correction of an error they may not be willing to wait for the organization to go through detailed and time consuming stage of risk analysis.

2. lterative Enhancement Model: In this model, the changes in the software throughout its lifetime are an iterative process. Modification for maintenance, the model assume complete documentation as it relies on modification of this as the starting point of each iteration,

This model has effectively following three stage cycles :
1. Analysis.
2. Characterization of proposed modification.
3. Redesign and implementation.
The existing documentation of each stage (requirements, design, coding, testing and analysis) is modified starting with the highest level document affected by the proposed changes.

These modifications circulate though the set of documents and the system redesigned. The model clearly supports reuse and also contain other models. For example, quick fix model.

In the first iteration, problem area would be identified and next iteration would specifically address the problem. The problem with this model are the assumptions made about the existence of full documentation and the ability of the maintenance team to analyze the existing product in full.

3. Reuse Oriented Model: The principle of this model is that the maintenance could be viewed as an activity involving the reuse of existing program components.
This model has following four main steps:
1. Identification of the parts of the old system that are candidates for reuse.
2. Understanding these system parts,
3. Modification of the old system parts appropriate to the new requirements.
4. Integration of the modified parts into the new system.

A detailed structure is required for the classification of components and the possible modifications. With the full reuse model the starting point may be any phase of life cycle.

The requirements, the design, the code or the test data unlike other models.

For example: In the quick fix model, the starting point is always code.

[ Topic= Types of Maintenance ]
[ Topic= Types of Maintenance ]

Join us on Facebook, Instagram, and Twitter to get the latest study material. You can also ask us any questions.(Types of Maintenance)
Facebook = @allbcaweb
(click on it or search "allbcaweb" on Facebook)
Instagram = @allbcaweb
(click on it or search "allbcaweb" on Instagram)
Twitter = @allbcaweb
(click on it or search "allbcaweb" on Twitter)
Email= allbca.com@gmail.com
Send us your query anytime about Types of Maintenance!

[ Topic= Types of Maintenance , Types of Maintenance ]
[ Topic= Types of Maintenance , Types of Maintenance ]

External Links:

Software Maintenance, Types of Maintenance
Software Maintenance, Types of Maintenance

No comments:
Write comment