Literature DB >> 23572866

Which factors affect software projects maintenance cost more?

Sayed Mehdi Hejazi Dehaghani1, Nafiseh Hajrahimi.   

Abstract

INTRODUCTION: The software industry has had significant progress in recent years. The entire life of software includes two phases: production and maintenance. Software maintenance cost is increasingly growing and estimates showed that about 90% of software life cost is related to its maintenance phase. Extraction and considering the factors affecting the software maintenance cost help to estimate the cost and reduce it by controlling the factors.
METHODS: In this study, the factors affecting software maintenance cost were determined then were ranked based on their priority and after that effective ways to reduce the maintenance costs were presented. This paper is a research study. 15 software related to health care centers information systems in Isfahan University of Medical Sciences and hospitals function were studied in the years 2010 to 2011. RESULTS AND DISCUSSION: Among Medical software maintenance team members, 40 were selected as sample. After interviews with experts in this field, factors affecting maintenance cost were determined. In order to prioritize the factors derived by AHP, at first, measurement criteria (factors found) were appointed by members of the maintenance team and eventually were prioritized with the help of EC software. Based on the results of this study, 32 factors were obtained which were classified in six groups. "Project" was ranked the most effective feature in maintenance cost with the highest priority. By taking into account some major elements like careful feasibility of IT projects, full documentation and accompany the designers in the maintenance phase good results can be achieved to reduce maintenance costs and increase longevity of the software.

Entities:  

Keywords:  AHP model; Cost; Effective factors; Health information systems; Software maintenance

Year:  2013        PMID: 23572866      PMCID: PMC3610582          DOI: 10.5455/AIM.2012.21.63-66

Source DB:  PubMed          Journal:  Acta Inform Med        ISSN: 0353-8109


1. INTRODUCTION

Software production and maintenance issues, costs estimation, project schedule and knowledge of the process have always been complicated cases in software engineering (1-8). Cost depends on the creation and maintenance of the software. Thus, continuous monitoring and control of maintenance costs, and software optimization, are really important. Taking into account this statistic, also leads to careful software maintenance to reduce costs. Software maintenance costs are rising and based on the estimations about 90% of the cost related to the software life is in the maintenance phase. The estimations show 50 percent increase over the past two decades (5, 6). This increase is shown in the Figure 1.
Figure 1.

Development of Software maintenance costs as percentage of total cost [Floris and Harald, 2010]

In another study, the relative costs of maintenance and software development management were estimated more than 90% of the total cost of the software life (9, 10). Floris and Harald, in their study introduced incomplete documentation and low maintenance as the factor to increase the cost. Therefore the defect makes it difficult for the maintenance team to expand or rebuild the product. Because the production team members may have left the company, be retired or replaced by another person who are unaware of the production process (2). Since quality improvement and reduced software lifecycle time are among rapid application development techniques, the use of common-sense approach in the production shows that using individual techniques is not a threat to high availability, acceptable performance and quality of projects (4). In a study researchers introduced support and maintenance software to estimate the maintenance effort. In these researchers’ point of view support and maintenance software were a set of activities to support IT. Magne Jorgensen came to this conclusion that 43 to 44% of the estimations are mentally done by the experts and using such models results in the estimations complexity (10). Therefore in this research a software is introduced that due to the simplicity and ease of use is a replacement for the estimation models and experts’ mental estimations. Because the design and implementation of medical software is growing in Iran, and today most medical centers and health centers like to set up this system, it seems to be a growing and effective trend in automation of hospitals and medical and healthcare centers. Mr. Boehm studied the various cost factors in the simple or complex public systems (1). The results of his research are published in details in the book (Software Architectures: Critical Success Factors and Cost Drivers) (14). Many researchers focused on models and different methods of cost estimation. But what is important is to update and review each model factors. These models include analog models such as the Delphi method or estimations based on professional experience, models such as analysis of performance indicators and models of machine learning algorithms including neural networks, genetic programming, fuzzy logic, and many other models (11, 12, 13). Henry Raymond (2007) in a study used the estimation techniques along with the knowledge of the project team, project manager and the president to design a predictive model for estimating the software. This model suggests that the maintenance plays an important role in the success of IT projects. Though the effective use of technology for estimating the time and cost is necessary but is not sufficient. To predict the exact time and cost, the management needs the knowledge, knowledge integration and sharing it.

2. HISTORICAL PERSPECTIVE TO THE STUDIES WITH AIM OF ESTIMATING THE EFFORT

A thesis of the University of California, with the aim of improving the volume and effort estimation models for software maintenance (12). A study by Magne Jørgensen considering results of Simula Research Laboratory with an overview of studies in estimating software development effort (3). Studies evaluation of Jyvaskyla Research Institute and University by Jussi Koskinena et al to estimate the costs of software, support modernization, repair and maintenance (5). Václav Macinka thesis from the University of Brno, with the aim to provide methods for determining the cost of software projects (8). Taking into account the importance of software maintenance costs, Isfahan University of Medical Sciences, is pursuing the following objectives in this paper: Identify the factors affecting the cost of software maintenance. Prioritize each of the factors affecting the cost of software maintenance. Provide solutions to reduce the maintenance costs of medical software

3. METHODOLOGY

The scope of this study is all the software produced in the years 2010 to 2011. 15 maintenance team members were kept as a community in this study. After sampling 40 members were selected randomly. In this study, a checklist- designed based on software engineering standards, researcher’s experiences and experts’ confirmation- was used for data collection. SPSS software and Expert Choice software were used for data analysis.

4. RESULTS

Environments to run 14 software were Windows and 1 other one was DOS. System operational dates were from 2000 until 2011 and the operational period has been variable from 20 months to 102 months. Current status of all systems was active, and only one of them had been disabled. The results of the first research objectives are as follow: * Based on studies from reputable books and literature in the field of software engineering, well-known sites and interviews with informatics experts, 32 effective factors were obtained and examined in the software maintenance cost estimations. Cost factors were classified in 6 groups, which are as follow: In line with the second goal (to prioritize each of the factors affecting the cost of medical software maintenance) the following results were obtained: * For prioritization of the factors, at first and before modeling, the measurement criteria are needed to be identified. Then six found characteristics and their measurement criteria should be estimated and finally entered into the EC application. To achieve this goal, the first measurement criteria (32 factors) were determined based on the importance in the software maintenance. This questionnaire was prepared for a five-degree Likert scale and distributed among specialists in this field. After naming and ordering the information, the information was entered in the software. The list of measurement criteria and results after the interview are presented. Ranking of the influencing factors are displayed in Table 4 with the help of EC software. The following results obtained regarding the third objective of the study: * Based on the results of the current study and deficits in production and maintenance process, it seems that by following the guidelines that have been mentioned, one can reduce the cost of software maintenance to achieve desired results found in increasing productivity as well as making benefit of limited financial resources and manpower available in the country.

1) Providing an effective tool for Software Maintenance:

* Use appropriate language for system maintenance (especially in developing application systems) and develop tools to use these languages. * Optimal use of system implementation such as CASE tools. * The use of programming standards and protocols. * The use of the principles, methods and modern programming techniques.

2) Using proper techniques in software development:

* Designing on the basis of independent modules. * Designing and programming using methods consistent with the effective software engineering principles in software development. * Prototyping before making the full system.

3) Having the right people for the software maintenance:

Select professionals familiar with the project language and programming language. * Enough familiarity of project group with the host machine and the target machine. * Having experienced group to offset the effect of the product increasing complexity on development and maintenance costs. * Selecting individuals with the ability to adequately analyze the project and coordinate teamwork. * Having individuals with experience in the similar work like this project and the host machine. * Having individuals aware of the application and familiar with the expectations of the system.

4) Considering future

* Consider the program structure and acceptability of changes. * Careful analysis of the needs based on the present situation and future trends for software maintenance. * Doing changes in environment regarding software conditions, the efficiency increase rate and maintenance costs. When the COCOMO model was accurately described the use of structured programming was not like today and software tools were not much available. Nowadays use of tools, has increased and structured techniques are common. Therefore, the factors that may have initially been defined are not important anymore. So some of the factors identified by Mr. Boehm (1) (such as computer memory limitations factor) are outdated, but the overall coefficients of the product categories, computer, personnel and project are still fit. Given that all HIS systems are linked in a network, computer network factor has been added. Bohemia took these factors into consideration at his time, but today with such the technology, no scholar has examined and updated these factors. In this study we updated factors extracted by Boehm. According to the results, the validity of all these factors were confirmed and importance of the factors related to “project” and “computer network” was higher than other attributes, this means that project managers must estimate the cost of maintenance software, taking into account these two characteristics.

5. CONCLUSION

Based on interviews, 32 factors were identified in the cost estimation of medical software maintenance and were approved by informatics specialists. Using AHP model parameters, 6 groups were ranked. Since in each research a problem is stated and examined and at the end solutions are proposed, in this study, we also provide solutions to reduce maintenance costs. What the Informatics experts agree on for reducing maintenance costs, is that “with respect to some important factors such as accuracy in HIS projects feasibility, along with complete documentation and helping the design and implementation mechanisms in the maintenance phase ,favorable results can be achieved in reducing the cost.“ Generally we can conclude that for an accurate assessment and reduce the cost of software maintenance, software maintenance factors determining is essential. This will lead to the longer life of software. Evaluation of these factors and their influence on each of the maintenance costs, help the project manager in making decisions and planning, and is essential in the success of software maintenance. Project managers must consider these factors for success in their projects and decisions: * HIS software is generally in a network and for giving a better service to applicants, data collection is done on the central server. As a result, software should be developed in a network and maintainers should give their service in a network. In other words, if the software is Single that costs less, but for network applications, computer network costs are added to the costs. So in designing this software these costs should also be noted. * To reduce maintenance costs and increase the longevity of HIS software determining the cost estimation factors is necessary, this can help to increase productivity and provide a native model to estimate the system maintenance cost. It will make the project manager able to estimate the real cost at any time in the system.
Table 1.

List the factors affecting the cost of software maintenance

RowIndexes Related to the Information of Cost Factors
1Product Characteristics
2Required Software Reliability
3Database Size
4Complexity Product
5Computer Characteristics
6Execution Time Constraint
7Main Storage Constraint
8Virtual Machine Volatility
9Computer Turnaround Time
10Personnel Characteristics
11Annalist Capability
12Application Experience
13Programmer Capability
14Virtual Machine Experience
15Programming Language Experience
16Project Characteristics
17Modern Programming Practices
18Use of Software Tools
19Schedule Project Constraint
20Factors of Project maintenance
21Software Experience
22Application Understanding
23Software Development reference Access to Technical
24Document Quality
25Software Old
26Group Capability
2?Environment Dependency
28Structure Independency
29Costs of Computer Networks
30Security
31Back up Data
32Computer’s Virus
Table 2.

The list of measurement criteria and results after the interview

Indexes Related to the Information of Cost FactorsVery LittleLittleNormalMuchVery Much
Product Characteristics
 Required Software Reliability7.57.557.527.50
 Database Size403020100
 Product Complexity02.5104047.5
Computer Characteristics
 Execution Time Constraint002.53067.5
 Main Storage Constraint17.5802.500
 Virtual Machine Volatility51542.5352.5
 Computer Turnaround Time104535100
Personnel Characteristics
Annalist Capability0004060
Application Experience051532.545
Programmer Capability02.542.54020
Virtual Machine Experience47.53517.500
Programming Language Experience1527.542.5150
Project Characteristics
 Modern Programming Practices0151542.552.5
 Use of Software Tools02027.53542.5
 Schedule Project Constraint47.537.51500
Factors of Project maintenance
 Software Experience007.527.565
 Application Understanding0053560
 Software Development reference Access to Technical00154045
 Document Quality0502570
 Software Old7.527.56050
 Group Capability0027.51557.5
 Environment Dependency45352000
 Structure Independency527.567.500
Costs of Computer Networks
 Security0001090
 Back up Data0042.53522.5
 Computer’s Virus02.553557.5
Table 3.

Prioritized strategies

AbbreviatedRank5 factors influencing maintenance costs
A11Project
A22Maintenance Project
A33Personnel
A46Product
A55Computer
A63Computer Networks
  2 in total

1.  [Expert systems in gastroenterology].

Authors:  Izet Masic; Mehmed Gribajcević; Haris Pandza
Journal:  Med Arh       Date:  2002

2.  Medical informatics between technology, philosophy and science.

Authors:  Izet Masic
Journal:  Med Arh       Date:  2004
  2 in total
  2 in total

1.  Software engineering principles to improve quality and performance of R software.

Authors:  Seth Russell; Tellen D Bennett; Debashis Ghosh
Journal:  PeerJ Comput Sci       Date:  2019-02-04

2.  Biosignals reflect pair-dynamics in collaborative work: EDA and ECG study of pair-programming in a classroom environment.

Authors:  Lauri Ahonen; Benjamin Ultan Cowley; Arto Hellas; Kai Puolamäki
Journal:  Sci Rep       Date:  2018-02-16       Impact factor: 4.379

  2 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.