Entretian Model for Software Maintenance Priya K Betala Department of Computer Science, M.O.P Vaishnav College For Women kpriyapari@gmail.com Soniya Jhamad Department of Computer Science, M.O.P Vaishnav College For Women soniya.vasanth6@gmail.com Sakthi Kumaresh Asso. Prof, Dept of Computer Science, MOP Vaishnav College for Women, Chennai, India sakthimegha@yahoo.co.in Abstract Maintenance refers to the act of modifying the software after putting in use in order to maintain its usability.[1]. In other words, Software maintenance can be defined as; it is the process of providing services to the customers after the delivery of the software. Despite the fact that maintaining software is very challenging, it is the most important routine that must be carried out in the development cycle. If the software is not maintained efficiently it may lead to the death of the software. Maintenance of software may be carried out in two ways. The first one is called In-house maintenance and the second one is called Transition maintenance. The latter faces the drastic challenges when compared to former, as one team may not provide complete source code to the other, leading to unstructured code, lack of appropriate technique and knowledge about the functioning of the current software. There are a few aspects of software maintenance that set it apart from the other phases. Software maintenance cost comprises more than half of the total software development cost. Also, without software maintenance, it is impossible to change the problems within the product after its release, and many disasters can happen because of immature software. Recognising the importance of software maintenance, this paper proposes a model called ENTRETIAN MODEL (Entretian, a French word meaning Maintenance) which consists of six basic steps to follow while maintaining software system. This model overcomes certain misconceptions about maintenance phase and it is highly beneficial to the Maintenance Support Team (MST) to handle their maintenance activities systematically and efficiently. By employing the proposed model, the MST is able to overcome the technical and managerial issues that are faced earlier in the maintenance phase. The advantage of using Entretian Model is best illustrated in this paper with the help of the ERP package. 1. Introduction Software maintenance is the process of modifying the software component to correct flaws, improve performance according to new technology and to enhance the software. More than one fifth of the maintenance activities are modifications requested by the users. Maintenance not only occurs after delivery but also during the software development. Software maintenance takes as much as 90%of the total effort. It requires activities to provide costeffective support to the software. Figure 1. Shows the existence of maintenance in two forms The maintenance phase comes into existence in two forms, first one is when the company which creates the software, handles the maintenance. This is called in-house maintenance. And the second is called maintenance through Transition, it comes into effect 276
when one company develops a software and the other company takes over it for maintenance ie, when two different companies are involved in maintenance. Maintenance is done to enhance the usage of software. It is done to prevent the software from getting deteriorated. As the technology and requirements grow rapidly, people wish to make use of advanced technologies in various fields like business, education, arts, science, entertainment etc. They need to manage their works with the help of efficient software. This calls for the need of regularly updating the existing software. This kind of updation is also a part of maintenance. The legal aspects also affect the software and software has to be modified accordingly. The major need for maintenance is the industrial and technological improvements. People percept that work is over after delivering the software to the customers but the real test is done only after delivering it to the customers. The customers use the software in real world and encounter bugs, fault, this gives rise to need of the maintenance activity. During maintenance both the client and MST face a lot of challenges. The rationale is that software does not wear out and so it need not be maintained. But that is not the case. It should be maintained to increase the efficiency, reliability, usability etc. The challenges faced during maintenance are searching the right people for right job, handover problem i.e., in a transition maintenance, after developing the software one company does not give complete details about the software to the other company, meeting the client expectation and the communication gap between customers and the maintenance officer, code over-writing, updating changes in the Software Requirement Specification (SRS), managing the workload, ripple effect, unstructured code, inappropriate Service Level Agreement (SLA). The maintenance phase also takes place with two or more company simultaneously which results in lack of coordination and resource sharing. These challenges are faced due to seven reasons: non-availability of time, developer ineffectiveness and poor quality of the product, software limitations, inefficient user training, unreliable operations, and lack of user knowledge. Therefore, according to the current scenario, the maintenance phase takes double the time when compared to software development and the cost associated with it is also very high. In order to overcome the challenges and the time factor, ENTRETIAN MODEL is proposed in this study. This model has six phases namely: change request, feasibility study and estimation, client approval, software modifications, pre-production, production. Hence the main aim of this model is to make the modified software adapt the changing requirement of the users. 2. Proposed work In this study, an Entretian model is proposed to overcome the challenges faced in the maintenance phase of software development life cycle. As the majority of the time, cost and effort are dispensed for maintenance phase, utmost care is taken to evolve at this model as the maintenance of the software is the crucial part of software development. If the steps that are proposed in this model are followed effectively and correctly, it will be cost beneficial both for the organisation and the clients/user. Figure 2. Entretian model Entretian Model An Overview: Change Request: The maintenance team gets a request in a prescribed format from the client to 277
make some changes. MST identifies the type of request and assigns it a unique identification number. Then it is submitted to the Change Control Authority (CCA), which decides whether or not the changes are to be accepted. If change is approved by the CCA, it is applied to the software. Feasibility test and Estimation: This phase is devoted to estimate the time and effort and cost required to make the changes. It is bit difficult to make exact estimates. However the goal is to create reasonable estimates of time, effort and cost. A series of feasibility tests are conducted on the software to test whether all change requirements can be implemented in the software. If it can be incorporated then approximate cost incurred will be calculated and intimated to the clients. Client Approval: In this phase, the estimates made in the previous step are given to the clients to check whether their change request is addressed properly and to check if they are convinced about the estimates. If the client approves, it goes into the next phase, software modification else it iterates back from the beginning so that the customer requirements and modifications are made exactly. Software Modification: Once the estimates and changes are approved by the user then the source Code, design documents are recreated accordingly. Changes are incorporated in the software and modified software is developed using the software development life cycle models. Pre-Production: once modified, the changes are incorporated and tested to see if any errors or ripple effect encountered and if encountered the errors are rectified. Production: The final coding is implemented in the existing software to be used. Advantages of the Entretian model: The model integrates feasibility study phase where the supporters examine whether the changes requested by the client can be incorporated in the existing software or not. The model demands for client participation during maintenance process to approve the feasibility study and time and cost and effort estimation. The model calls for unit and system testing before the updated software is delivered to the customers for use. The model analyses the request made by the client and help the supporter s to reduce the effort rate. Table 1: Comparative Study 278
Criteria Taute Maintenance Model Boehm s Model Entretian Meaning Taute Maintenance model is a Software Maintenance model that includes 8 phases in a cycle fashion.(2) Boehm s model is one of the Traditional models of software maintenance that includes 4 phases. Boehm represents the process as a closed loop cycle. (3) Entretian model is a Software maintenance model which includes 6 phases. The request made by the client is tested for feasibility. Steps of the model (4) (5) When a Taute Maintenance model is implemented in the maintenance of software, the changes are implemented without analyzing the feasibility of the request, though it is the most crucial factor. When Boehm s model is implemented, the change requested by the client is updated and software is put to use before evaluation. This might result in the damage of the existing software. Entretian model incorporates Feasibility analysis phase that helps the supporters to analyze whether the change requested by the client can be implemented to the existing software without affecting the performance of the software. Features After estimating the effort and time factor, it is not given to the client for approval. The client must be aware of the time and effort required for implementing the changes. Boehm s model fails to determine the time estimation. The client may demand to know the approximate time required for incorporating the changes. Entretian model incorporates a feature in the phases of maintenance lifecycle to test the feasibility of the software before proceeding with the modifications. The client can modify the change request if the feasibility study and estimation differs from their expectation. 3. ERP-an overview ERP software is a software package that is developed for vendors in order to carry out day to day transactions relating to sales, purchases, inventory, billing, and Accounts etc in an organization or a departmental store. The major problems that are encountered with existing ERP software are deletion of modules that are no longer used by the organization or addition of new modules that are needed by the vendors or altering the existing modules that are causing problems in the organization. 279
Here the company which developed the ERP software may carry out the maintenance phase or it may outsource the maintenance activities for the software. ERP softwares usually come with validity periods. The research paper projects an example of ERP software that undergoes maintenance phases and various problems that are encountered while carrying out the maintenance. When an organization outsources the ERP package for maintenance, the following problems arise: A clear picture of the software will not be known to the maintenance team Correct and factual source code may be missing Product details The client desires to add a new module invoice and delete an existing module named branch details. These modifications are implemented using the traditional method of maintenance process. Once the changes are made, supporters test the software to check for errors and rectify it. Later, the software is handed over to the client for use. The management team in the client s company evaluates the modified software to check if the desired modifications are incorporated. Table 2: Maintenance using Traditional Model Contradiction in understanding the new requirements of the customer. The maintenance team may not know where the problem lies and are not able to draw conclusions to the problems faced by the customer in using the software. PARAMETERS DEVELOPMENT TIME COST INCURRED LINES OF CODE VALUES 60 Days 80 K 90KLOC When the company that has developed the ERP software engages in the maintenance activities of the software, the problems faced by the maintenance team are less when compared to the problems faced by the organization who maintain existing software. But there are also many challenges that are faced by the developing and maintenance team. Some of the major challenges include: Problem in understanding the requirement of the customer. Users new requirement is applicable or not. Changing the source code. Encounter ripple effect. Case Study 1 Calcutta canvas developed as ERP package sized 250 kloc, with the development team size of 25 members. The project was undertaken over a period of 18 months. The maintenance of this software was carried out with traditional maintenance model and the software has the following modules: Import-export billing Stock Branch details Observation:.NUMBER SUPPORTERS INVOLVED OF 11.EFFORT 270.49 The Traditional model fails to analyze the feasibility of the desired request by the client. This leads to high rate of effort, as the supporters try to implement changes that are not applicable in the existing software. This in return affects the cost factor and the development time. Case Study 2 Consider another ERP package name Lata Super Stores which is of size 200 Kloc developed by 20 developers over the span of 15 months with the development effort of 625.59 at the cost of 3.5L.This ERP has the following modules: Sales Purchases Accounting Inventory 280
Billing And it is assumed that the owner of the ERP software needs to add two other modules to the existing software named Credit Sales and Stocks. The process of maintenance is carried out by the same organization that has developed the ERP package for the owner. As mentioned earlier, the challenges are faced by the maintenance team while carrying out the changes leading to delay in the delivery of the product after maintenance. Thus considering these challenges a maintenance model, Entretian Model, is prescribed in this research paper helps to overcome the problems encountered. A step by step explanation of the various phases of the model with respect to the Lata Super stores ERP package is given below. Change Request: The organization that enters into the maintenance of the ERP package is provided with the changes that are to be incorporated into the existing software in a prescribed manner. In the case example, the software Lata Super stores ERP package is to be updated by a way of adding two new modules in the software. These change requests made by the client are further examined for feasibility study and time and cost estimation. Feasibility Study and Estimation: Once the supporters receive the change request, they test for feasibility and estimate the time and cost that will be incurred to incorporate the changes. Feasibility study analyzes whether the modules can be added to the existing software, without affecting the other existing modules of the package. The approximate time and cost that will be incurred in order to make changes to the software is estimated and a proposal is drafted by the maintenance team. The proposal is then handed over to the client for approval. Client s Approval: The client receives the feasibility study and estimation document. The document reveals the cost that will be incurred to establish the changes. The tentative time within which the updated software will be delivered to the customer along with the effort rate is mentioned. If the client is satisfied with cost, time and effort estimates, the approved proposal is sent back to the supporters for development. If the customer calls for further changes, then modifications are made to the document accordingly and resent to the client for approval. Software Modification: Once the proposal is approved, the supporters carry out the changes in a step by step process of a SDLC Model. First, the SRS is modified. The new requirements are added to the existing SRS, in order to make it complete and correct. Once SRS is changed, SDD is altered by adding two new modules. Once SRS and SDD are altered, the supporters develop the coding for the two new modules credit sales and stocks. Once the code is built, it is sent to the pre-production phase. Pre-Production Phase: In the pre-production phase of Entretian Model, both unit and integration testing is carried out by developing test cases to check for errors, if any. In Unit testing, the two new modules are tested individually to check if any errors are encountered. These modules are then integrated with the existing ERP software to do system testing. This testing tells the supporter if any problem has occurred and if it causes a ripple effect in the modules. If errors are encountered, then new test suites are created to find out the source of errors and are rectified and tested again. Once the testing is done, the software is again put to work. Production Phase: Once the testing is done and errors are rectified, the working of the software is checked. If all the above constrains are satisfied and the requirements are met, the software package is then handed over to the client to resume their work, with the two new modules credit sales and stock added, according to their request to the existing software. TABLE 3: Maintenance using Entretian Model PARAMETERS DEVELOPMENT TIME COST INCURRED.LINES OF CODE NUMBER SUPPORTERS INVOLVED OF VALUES 45 Days 60 K 80KLOC.EFFORT 239.031 The below mentioned points justifies that implementation of Entretian Model to carry out maintenance of the ERP software overcomes all major problems that are encountered during the maintenance phase of the software development lifecycle. 7 281
Users new requirement is applicable or not. The request made by the client is analyzed to check, if the request is feasible to be incorporated without damaging the existing software. Changing the source code. The supporters may not incorporate the changes in SRS and SDD which results in incomplete and incorrect SRS and SDD. This is overcome in the Software Modification phase, where changes are made in SRS and SDD to make IT complete and correct. Encounter ripple effect. Once the modules are created they are tested individually and then integrated with the existing software to test if there is any ripple effect. If any error occurs, they are rectified and then handed over to the customers. Observation: ERP 2- Lata Super Stores (Using Entretian Model) 239.031 60 80 45 Entretian model helps the supporters to analyze whether the particular change request made by the owner of Lata super stores can be implemented into the existing software without much effort, cost and time utilization. The study makes both the supporters and client clear about the implementation of the requirements. The supporters need not put efforts to implement requests which cannot be implemented in the existing software. This will reduce the effort rate, cost factor and the maintenance phase can be carried out in the less time. Figure 3: Change in Effort (Person Month) using Traditional model and Entretian model TABLE 4: Factors considered during maintenance using Traditional Model and Entretian Model PARAME TERS EFFORT (PERSON MONTH) COST INCU RRED (Thous and) LINES OF CODE (KLOC) DEVELO PMENT TIME (Days) Figure 4: Comparative Chart to show the change in Cost Incurred (in Thousands) and Lines Of Code (KLOC) ERP 1- Calcutta Canvas (Traditio nal method) 270.49 80 90 60 4. Conclusion Software maintenance is a broad activity that includes improving process efficiency or performance or restructuring the software to improve changeability. But In general, maintaining 282
software after delivering it to the customers is assumed to be an easy task. But the fact is, maintenance is the most important and challenging phase of an SDLC model. The maintenance of software differs from one application domain to the other. Though the change request varies from one project to another depending on the desires of the client, the development time, cost incurred and effort of the project can be compared as parameters in order to arrive at conclusions The minimum development effort required is also calculated in prior without affecting the time and cost estimations. From Table (4) we infer that the effort in person months, cost incurred and lines of code of an ERP are drastically reduced if the newly designed Entretian model is used for maintenance. The traditional maintenance method holds good only for software packages with less complexity. But if the software is large, the complexity and challenges gradually increases which calls for an effective maintenance model like Entretian model, to reduce the development effort, cost and other development factors. An ERP can even be maintained using the traditional models but usage of Entretian model will overcome many challenges and also help in reducing the time and cost effectively. This maintenance model is highly recommended for the maintenance support team to handle most of the challenges faced during maintenance of software. 9. References (1)http://www.ehow.com/about_6643440_softwaremaintenance-definition.html (2)K.K Aggarwal, Professor and Vice Chancellor, Yogesh Singh Professor and Dean, University School of information Technology, Guru Gobind Singh Indraprastha University, Delhi. (3)K.K Aggarwal, Professor and Vice Chancellor, Yogesh Singh Professor and Dean, University School of information Technology, Guru Gobind Singh Indraprastha University, Delhi. (4)http://www.tutorhelpdesk.com/homeworkhelp/Comput er-science-/taute-software-maintenance-model- Assignment-Help.html (5)https://www.google.co.in/search?newwindow=1&biw= 1137&bih=677&q=boehm%20maintenance%20model&u m=1&ie=utf8&hl=en&tbm=isch&source=og&sa=n&ta b=wi&ei=y91curbeeyeqrqebnogocg#facrc=_&imgdi i=_&imgrc=i2xqvnmjjs8xm%3a%3bt1pa5pi9d0hrw M%3Bhttp%253A%252F%252Fwww.tutorhelpdesk.com %252FUserFiles%252Fbohshm's%252520software%2525 20model.JPG%3Bhttp%253A%252F%252Fwww.tutorhel pdesk.com%252fhomeworkhelp%252fcomputer- Science-%252FBoehms-Software-Model-Assignment- Help.html%3B460%3B248 (6) http://arthurdejong.org/cocomo/cocomo.html 283