International Journal of Engineering Trends and Technology (IJETT) – Volume 10 Number 1 - Apr 2014 ISSN: 2231-5381 http://www.ijettjournal.org Page 8 Fuzzy Based Approach for Predicting Software Maintainability Vishal Choudhary #1 and Dr.P.K Bharti #2 Department of MCA AIMT,Knowledge Park-3 Greater Noida-(India) Abstract-Software maintenance is a process of modifying existing operational software while leaving its primary functions intact. Software maintenance encompasses a broad range of activates, like error correction, enhancement of capabilities, deletion of obsolete capabilities and optimization.sofwtare maintainability assessment is major issue these days. producing software that is easy to maintain may save large costs in industries. the maintenance of existing software can account for 70% of the total efforts put- in application development[Pres05].the value of software can be enhanced by meeting additional requirements, making it easier to use, improving efficiency and employing newer technologies. this paper discusses various issues and challenges, related with the maintainability assessment of software systems. The present work proposes a fuzzy logic based approach for quantification of maintainability of software system based on combined effect of four major aspects of software. i.e average number of live variables ,average life span of variables, average cyclomatic complexity and the comment ratio. Classroom projects are considered to estimate and validate the proposed maintainability model. Keyword: Cylomatic complexity, comment ratio, maintainability, triangular fuzzy number 1. METRICS FOR MAINTAINABILITY ASSESSMENT Researcher have tried to quantify maintainability in different types of measures[12,13,14].here we consider four major aspects of software to assess maintainability,i.e average number of live variables, average life span of variables, average cyclomatic complexity and comment ratio. a) AVERAGE NUMBER OF LIVE VARIABLES(ALV): a variable is live at a particular statement only if a certain number of statements reference it before or after that statement. the average number of live variable is the sum of the count of live variables divided by the count of executable statements. the higher, the average number of live variables, the more difficult it would be to develop and to maintain the software. b) THE AVERAGE LIFE SPAN OF VARIABLES(ALS): The life span of a variable is defined as the number of statements between two successive references of the same variable. The average life span of variable is the Ratio of the sum of life spans to number of variables. C) COMMENT RATIO(CR): The comment ratio is defined as CR=(S+C)/C------------------- (1) Where S denotes total line of code C represents total number of comment lines.