Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Q. No.01 Discuss the importance of the maintenance phase in the softwarelifecycl

ID: 3609798 • Letter: Q

Question

Q. No.01        Discuss the importance of the maintenance phase in the softwarelifecycle.                 

Q.No.02        Punjab Education Foundation is required a web based software thatcan be used to evaluate the registered schools throughout thePunjab Province. School Assessment (SA) software has number fmodules and MD of Punjab Education Foundation has a short time totest and implement this project. They hired software house for thedevelopment of SA software which is popular in developing at highspeed adaptation. This will be provided software fully functionalsystem in a very short time. They adopted model that is onlyapplicable in the project scope is constrained. Because of thisreason it is used primarily for information systems.

a)         Whichsoftware process model you should select for the given scenario inthe development of SAsoftware.       

b)         Givestrong argument in the favor of your selected software processmodel to prove it a rightdecision.                     

c)        Justify either only one software model is applicable or more thanone software model can beadopted?                   

Explanation / Answer

Software Development has many phases.

After the product has been released, the maintenancephase keeps the software up to date with environment changes andchanging user requirements.

Maintenance can only happen efficiently if the earlier phasesare done properly.

There are four major problems that can slow down themaintenance process:

Unstructured code,

Maintenance programmers having insufficient knowledge of thesystem,

Documentation being absent,

Out of date, or at best insufficient, and software maintenancehaving a bad image.

The success of the maintenance phase relies on theseproblems being

fixed earlier in the life cycle.

Maintenance consists of four parts.

Corrective maintenance deals with fixing bugsin the code.

Adaptive maintenance deals with adapting thesoftware to new environments.

Perfective maintenance deals with updating thesoftware according to changes in user

requirements.

Finally, preventive maintenance deals withupdating documentation and

making the software more maintainable.

All changes to the system can be characterized by these fourtypes of maintenance.

Corrective maintenance is ‘traditionalmaintenance’ while the other types are considered as‘software evolution.