Software Maintenance Process Model After Delivery With Qualified . - Iraj

Transcription

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106,Volume-3, Issue-8, Aug.-2015SOFTWARE MAINTENANCE PROCESS MODEL AFTER DELIVERYWITH QUALIFIED OUTPUTSALEEM AL-ZOUBIFaculty of Information Technology, Irbid National UniversityE-mail: it@inu.edu.joAbstract-Software maintenance is one important phase in the software life cycle. Due to the problems that arise during themaintenance phase, the research focuses on software qualify after delivery. A new integrated model for maintenance processwill be constructed and implemented to support the analysis activates during software maintenance. This includes improvingsoftware productivity and the output quality. Additionally, this will involve applying the normal software application whichan important in theoretical and practical cases.Keywords- Software Maintenance; Maintenance Process; Process Model; Qualified Output.delivery with qualified output and compared withother model.I. INTRODUCTIONThe IEEE 1219-1998 software standards documentdefines software maintenance as "the modification ofa software product after delivery to correct faults, toimprove performance or other attributes, or to adaptthe product to a modified environment." Softwaremaintenance is the concluding part of the softwaredevelopment process or "life cycle." There are fourtypes of software maintenance defined in IEEE 12191998: corrective, adaptive, perfective and emergencymaintenance. Corrective maintenance fixes the bugsdiscovered after delivery while adaptive maintenancekeeps the software program usable in a changed orchanging environment. Changes to software toimprove performance and maintainability areclassified as perfective maintenance. Emergencymaintenance is usually unscheduled maintenance tokeep the system working properly at any time. Theneed for changes of certain part of software afterdelivery is here from the beginning of electroniccalculations. Required software changes are aninescapable consequence of the nature of softwareand the changing environment in which it is used.Majority of today’s software systems always meetwith rapidly changing requirements, which resultfrom changing environment, as well as rapidlychanging requirements of users of these systems.Maintenance is one of the most important and costlyphases in the life-cycle of a software system. Forexample, there are studies showing that up to 90% ofthe total resources consumed over the lifetime of asystem are allocated to maintenance tasks [1].II. RELATED WORKSoftware maintenance process model is an abstractrepresentation of the evolution of software to helpanalyze activities during software maintenance.Which use kind of maintenance model, should beaware of the characteristics of various models and,based on preservation of the environment to decide.The following analysis of several common models[3]. Quickly modify model that the maintenanceprocess is a "fire fighting" approach, which is thetemporary custom software maintenance method,software problem should be solved as soon aspossible, shouldn’t analyze long-term effects on theimplementation of changes [4 ].Dr. Barry W. Boehm bases on economic models andprinciple, proposes maintenance process model.Boehm's theory is models and principles ofeconomics can not only improve maintenanceproductivity, but also helps to understand themaintenance process [5 ].IEEE Computer Society software engineeringstandards branch, issued a "IEEE SoftwareMaintenance Standards" (IEEE 1219-1993), detailsthe activities of management and implementation ofthe iterative process of software maintenance,software maintenance, including input, processing,control and output and so on [6].Traditionally we use the term “software maintenance”for naming the discipline concerned with changesrelated to software system after delivery. Anappreciation of this discipline is important especiallybecause the cost is now extremely high. Safety andcost of software maintenance mean that there is anurgent need to find ways of reducing or eliminatingmaintenance problems [2]. In this paper, we willdiscuss model of software maintenance process afterInitially the model is put forward as a developmentmodel, because the software developers usually can'tfully understand the requirements, can't build aperfect system, so it is suitable for maintenance.Made the basis of the model: the software life cycleof software changes implemented, is an iterativeprocess, and to iteratively enhanced software system[7].Software Maintenance Process Model After Delivery With Qualified Output21

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106,III. SOFTWARE MAINTENANCE PROCESSSoftware maintenance process show in figure 1. Preparation. Adequate preparation is a goodstart to maintenance. Including the designationof maintenance personnel, establish smoothcommunication channels to facilitate themaintenance, training, preparation andapproval of "software maintenance plan" andso on. maintenance. Including the designationof maintenance personnel, establish smoothcommunication channels to facilitate themaintenance, training, preparation andapproval of "software maintenance plan" andso on[8]. Volume-3, Issue-8, Aug.-2015the program to understand the possible sideeffects, so that when changes in the programnote; final report on the formation of a singlesoftware modifications.Test. Software is modified, the analyticalreport based on testers in the test program fortesting. It’s easy to introduce new errors andchange, therefore the regression test, reduceside effects caused by change.Verification. After testing software changesbefore submission system upgrade, to gothrough the validation phase, the reviewersquestion whether the correct solution for theassessment. Verify the initiator for themanagers, the purpose is to ensure the qualityof software maintenance, can refer to theanalysis phase of the evaluation methods forassessment.Upgrade. Software verification is complete ininternal company, need publishing to user,upgrade system. Upgrade process fromdevelopers, engineers and users together[8].IV. SOFTWARE MAINTENANCE PROCESSMODELAs defined by IEEE 1219-1998, softwaremaintenance has seven phases, with each phasehaving input, process, control and output. The phasesare problem identification, analysis, design,implementation, system test, acceptance test anddelivery. Modification request (MR) constitutes theinput to problem identification while validated MR isthe final output of this first phase. The last phase ofmaintenance is delivery. Physical configuration Audit(PCA) plays an important part to make sure that thevalidated MR is fully achieved in the prior phases.Finally installation, training of users and versiondescription document (VDD) is produced. Softwaremaintenance process model is an abstractrepresentation of the evolution of software to helpanalyze activities during software maintenance.Which use kind of maintenance model, should beaware of the characteristics of various models and,based on preservation of the environment to decide.The following analysis of several common models[3].A. Quickly Modify ModelQuickly modify model that the maintenance processis a "fire fighting" approach, which is the temporarycustom software maintenance method, softwareproblem should be solved as soon as possible,shouldn’t analyze long-term effects on theimplementation of changes. Usually don’t analyze thecode to modify the structure of the ripple effect of theimpact, even if the analysis is also very little writtendocumentation. Quickly modify the model structureshow in figure 2. In the right environment, this modelis very effective. For example, if the system isdeveloped and maintained by one person, this personFigure 1. Software maintenance process Request. Software maintenance begins with arequest to change the system, usually a requestby the user, on-site maintenance engineers ordevelopers to issue report card form.Need analysis. Responsible officer explain tohuman analysts, who analysis system changerequests which means issues report card,including the issue positioning, issues relatedto the specific product and the correspondingchange of scale, give a specific solution toissues related to documentation, test programsand strategies proposed and ultimately theformation of the problem analysis.Analysis review. The process is an importantmeans to ensure maintenance of quality, canmake early detection of problems and reducethe risk of maintenance problems laterdiscovered. Analysts question the degree ofdifficulty according to the problem involvesthe size of the change and the problem-solvingability to grasp and other factors, to decidewhich assessment method.Implementation modify. According to onereport to address personnel issues, problemanalysis report and product manuals related tothe modification of the product. It modifies thesoftware, must first understand the program,help complete the requirements; also modifySoftware Maintenance Process Model After Delivery With Qualified Output22

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106,is very familiar with the system, has the ability in theabsence of detailed documentation in the casemanagement system, whether changes can be made todetermine how to modify and maintain work quicklyand economic.Volume-3, Issue-8, Aug.-2015set of approved changes and the implementation ofchanges to a dedicated budget.From the functional point of view of production, themodel reflects the economics of investment and therelationship between earnings, reflecting a typicalphases: Investment stage. This is a low input ofresourcesandlow-incomestage,corresponding to an emergency there is astrong requirement to modify and enhance newsoftware product; High-return stage. Institutions throughsoftware products have been growing returns,the initial problem is resolved. At this stage,resources and efficiency to the document, theagency's rapid growth in the accumulation ofbenefits; Effective reduction stage. At a certain point intime, the accumulation of effective growth rategradually slows down. At the peak of theeffectiveness of the product, to change tobecome less and less economic stage. Boehmmodel focuses on the management decisionmaking, according to the approved changes tothe implementation of changes to maintenanceactivities in the balance between investmentand benefits from the perspective of economicinterest to drive the software maintenanceprocess. Based on this process, theorganization can develop a reasonablemaintenance strategy, maintenance efficiencyto meet the organization to make decisions.Figure 2. Quickly modify modelThere are many customers in the businessenvironment, this approach isn’t reliable, but thereare still many institutions using this model is due tosoftware maintenance are time and resourceconstraints. For example, customers request thecorrection of an error, but are not willing to wait forsoftware companies to change the cumbersomeprocess and risk analysis. If the software rely onquick changes with a long time, it will accumulate alot of problems, the software will becomeincreasingly difficult to maintain, maintenance costswill increase, it will lose use of rapid change in theinitial stages of the model to get any advantage. Toaddress this problem, using the strategy is to quicklymodify the model, into another, more sophisticatedmodels, rapid changes in external pressure as anemergency to change the way modifications arecompleted, according to the model requires some finemeasures.B. Boehm ModelDr. Barry W. Boehm bases on economic models andprinciple, proposes maintenance process model.Boehm's theory is models and principles ofeconomics can not only improve maintenanceproductivity, but also helps to understand themaintenance process. Model structure showC. IEEE ModelWith the development of software industry, isincreasingly recognized for the importance ofsoftware maintenance standards. Therefore, IEEEComputer Society software engineering standardsbranch, issued a "IEEE Software MaintenanceStandards" (IEEE 1219-1993), details the activities ofmanagement and implementation of the iterativeprocess of software maintenance, softwaremaintenance, including input, processing, control andoutput and so on. The standard that should be in theplanning of software development when the softwaremaintenance plan. Model show in figure 4.Figure 3. Boehm modelin figure 3. Model maintenance process is dividedinto management decision-making to achieve change,software delivery and evaluation of four stages,expressed as a closed loop to maintain the process bypromoting the maintenance management decisionmaking process. In management decision-makingstage, use of specific strategies, and proposed a set ofchanges for cost-effective assessment to determine aFigure 4. IEEE model Each stage of IEEE maintenance modelare described below: Classification and identification. Softwaremaintenance starts in by the user, developer ormanager's request to modify the software, andSoftware Maintenance Process Model After Delivery With Qualified Output23

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106, modifies the request to submit a single form.Change request can be any maintenancecategories (corrective maintenance, adaptivemaintenance, improve maintenance, preventivemaintenance), maintained by the agency todetermine what type, divided into theappropriate maintenance category, anddetermine the processing priority. Eachapplication is assigned a unique number, therequest content input to the database systemfor tracking. Collection, review and measurethe indicator from the stage.Analysis. First, maintenance of the feasibilityanalysis, and detailed analysis. Feasibilityanalysis of major changes to the software todetermine the impact of possible solutions andcosts, etc.; detailed analysis of the majorchanges is that a full requirementsspecification, identify the need to change theelements (modules), proposed testing programor policy development implementation plan.Finally, the Configuration Control Board(CCB), to review and decide whether toproceed with work.Design. Summarizes all the information inorder to review and change the design for thesoftware, including project documentation, theresults of the analysis phase, source code,knowledge base and other information.Baseline design analysis phase should beupdated, update the test plan, revised theresults of detailed analysis to verify themaintenance requirements.Implementation. Formulate plans for change tochange. Include the following process: codingand unit testing, integration, risk analysis, testpreparation review and update documentation.System testing. The interface between maintest program to ensure that the system meetsthe original requirements, as well as additionalchanges to demand. While regression testing toensure that does not introduce new errors.Acceptance testing. In complete systemintegration, by the user or third party. Mainlyto complete the following tasks: report testresults, functional configuration audit (todetermine the system functions to meet thedemand), the establishment of a new version ofthe software (or baseline), to prepare the finalversion of the software documentation(including system documentation and userdocumentation), etc.Delivery. The revised system give to user whoinstall and run it. Physical Configuration Auditshould be carried out, the backupdocumentation, installation and training work.After delivery, the system put into use.Compared with the previous model, IEEEmodel details the process of software Volume-3, Issue-8, Aug.-2015maintenance activities, as standard, can beapplied to all software maintenance process.However, different software, due to differentcharacteristics, maintenance procedures will bedifferent, IEEE is a large and comprehensivemodel specifications for different software, theprocess should be cut, while the process ofrefining some of the tasks.D. Iterative Enhancement ModelInitially the model is put forward as a developmentmodel, because the software developers usuallycannot fully understand the requirements, cannotbuild a perfect system, so it is suitable formaintenance. Made the basis of the model: thesoftware life cycle of software changes implemented,is an iterative process, and to iteratively enhancedsoftware system.Model requires a complete document, as thebeginning of each round of iteration, is actually threestages of the cycle, show in figure 5. According to theimpact of the change request document, the firstchange of each phase (requirements, design, coding,testing and analysis of the document), fulldocumentation of this change in the spread, and redesign systems.According to safeguard the environment to find quicksolutions. Usually use the "fastest" solution will leadto many problems, iterative model, other models ofassimilation itself, it can be in a structuredenvironment, the integrated model of rapid change,rapid change, identify problems, and Diego the nextround generation to specifically address these issues.Process Model MetricsMetrics involves time, money and numbers. Processmodel metrics for software maintenance encourageskeeping records of time spent on problem validation,document error rates, number of lines of correctivecode added, error rates by priority and type(generated and corrected) and document changes.Document changes include VDDs, training manualsand operation guidelines.CONCLUSIONSoftware maintenance process begins after thedelivery of software products to the end when thesoftware products is retired. However, softwaremaintenance issues on the software life cycle shouldbe developed in stages to be considered throughoutthe software life cycle, software maintenance andsoftware development are closely connected.Software maintenance problems in the software lifecycle consider the later, maintenance costs will begreater, the difficulty will be greater, result inexpensive software maintenance costs[9].Therefore,you should consider an early stage of softwaredevelopment software maintenance. The thesisprocess model for software maintenance research,focusing on software after delivery to retire betweenSoftware Maintenance Process Model After Delivery With Qualified Output24

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106,the software maintenance activities. With theacceleration of information technology, softwareproducts increasing, more and more importantsoftware maintenance, maintenance problems hasbecome increasingly evident. There are manydifferent maintenance models.Volume-3, Issue-8, Aug.-2015REFERENCES[1][2][3]Three representative ones are quick-fix which is an adhoc, firefighting approach; iterative enhancementwhich is based on the iterative nature of 90 SoftwareMaintenance: Concepts and Practice change to asystem; and reuse-oriented which sees maintenanceas an activity involving the reuse of programcomponents. The most pragmatic approach is givenby Osborne's model.[4][5][6][7]In this paper, researching the software maintenanceprocess model, has important theoretical and practicalsignificance to improve the software maintenanceprocess, guide maintenance activities, improve thequality of software maintenance to ensure the normalapplication software.[8][9]L. Erlikh, “Leveraging legacy system dollars forebusiness,”in IEEE IT Pro, 2000, pp. 17–23.Grubb P.A., Takang A.A., "Software Maintenance:Concepts and practice", SE, ISBN 978-981-238-425-6,World Scientific 2003.Y.C. Ren, T. Xing, L. Wang, B.Y. Zhao, “SoftwareProject,” Jilin University Press, 2011M. Bevilacqua, M. Braglia, The analytic hierarchy processapplied to maintenance strategy selection, ReliabilityEngineering and System Safety 70(2000) 71–83.Ricardo Valerdi " Impact and Contributions of MBASEonSoftware Engineering Graduate Courses " SystemArchitecting and Software Engineering (MBASE) concepts.X.W. Wang, X.D. Zhu, Y.G. Wang, “Software MaintenanceProcessManagement Based on CMM and Tools Study,”MicrocomputerInformation, vol. 21, no. 7-3, pp. 139-141,2005.Q. Lin, “Research on software re-engineering,” ComputerEngineering and Design, vol. 27, no. 1, pp. 83-85, 2008.J. He, Q. Su, J. Gao, M.Y. Li, “Systematic Model ofSoftwareMaintenance,” Application Research of Computer,vol. 22, no. 1, pp.16-19, 2005.G.R. Wei, “Research of Maintenance Process ofCoreTelecommunication Software and Implementation ofMaintenanceTools,” Master’s Beijing University of Postsand Telecommunications, Software Maintenance Process Model After Delivery With Qualified Output25

International Journal of Advanced Computational Engineering and Networking, ISSN: 2320-2106, Volume-3, Issue-8, Aug.-2015 Software Maintenance Process Model After Delivery With Qualified Output 21 SOFTWARE MAINTENANCE PROCESS MODEL AFTER DELIVERY WITH QUALIFIED OUTPUT SALEEM AL-ZOUBI Faculty of Information Technology, Irbid National University