Modeling design/coding factors that drive maintainability of software systems
It is cost-effective for software practitioners to monitor and control quality of software systems from the early phases of development. Assessing and modeling the effects of design and coding factors on software system maintainability can help provide heuristics to human designers and programmers to reduce maintenance costs and improve quality. This paper presents a study based on intuitive and experimental analyses that use a suite of twenty design/code measures to obtain indications of their effect on maintainability. This paper lists several important contributions of the work, one of which is the investigation of an unprecedentedly large number of systems (fifty) in a single study. The previous related studies on the other hand, have investigated 2-8 systems. The results reported in this paper using experimental procedures are unique, many of which have not been empirically established in the previous literatures, and are interesting because they are not normally intuitively obvious in most cases. The study also serves to empirically validate those results that seem to be intuitive. The results of the study indicate a number of promising effects of design and coding factors on system maintainability. The use of the results from the relatively early phases of software development could significantly help practitioners to improve the quality of systems and thus optimize maintenance costs.
modeling maintainability software quality metrics regression correlation