A Classical Fuzzy Approach for Software Effort Estimation on Machine Learning Technique



Similar documents
An Intelligent Approach to Software Cost Prediction

A FUZZY LOGIC APPROACH FOR SALES FORECASTING

A New Approach For Estimating Software Effort Using RBFN Network

A HYBRID FUZZY-ANN APPROACH FOR SOFTWARE EFFORT ESTIMATION

Hybrid Neuro-Fuzzy Systems for Software Development Effort Estimation

A HYBRID INTELLIGENT MODEL FOR SOFTWARE COST ESTIMATION

An Evaluation of Neural Networks Approaches used for Software Effort Estimation

Fuzzy Expert-COCOMO Risk Assessment and Effort Contingency Model in Software Project Management

Intuitionistic fuzzy load balancing in cloud computing

A Novel Fuzzy Clustering Method for Outlier Detection in Data Mining

Software Development Cost and Time Forecasting Using a High Performance Artificial Neural Network Model

Fuzzy Logic based framework for Software Development Effort Estimation

ANALYSIS OF SIZE METRICS AND EFFORT PERFORMANCE CRITERION IN SOFTWARE COST ESTIMATION

Extending Change Impact Analysis Approach for Change Effort Estimation in the Software Development Phase

An Empirical Study of Software Cost Estimation in Saudi Arabia Software Industry

Keywords : Soft computing; Effort prediction; Neural Network; Fuzzy logic, MRE. MMRE, Prediction.

Software Cost Estimation using Function Point with Non Algorithmic Approach

FLBVFT: A Fuzzy Load Balancing Technique for Virtualization and Fault Tolerance in Cloud

A Fuzzy Logic Based Approach for Selecting the Software Development Methodologies Based on Factors Affecting the Development Strategies

DESIGN AND STRUCTURE OF FUZZY LOGIC USING ADAPTIVE ONLINE LEARNING SYSTEMS

EXTENDED ANGEL: KNOWLEDGE-BASED APPROACH FOR LOC AND EFFORT ESTIMATION FOR MULTIMEDIA PROJECTS IN MEDICAL DOMAIN

Fuzzy Logic Based Revised Defect Rating for Software Lifecycle Performance. Prediction Using GMR

INTEROPERABLE FEATURES CLASSIFICATION TECHNIQUE FOR CLOUD BASED APPLICATION USING FUZZY SYSTEMS

Prototype-based classification by fuzzification of cases

EMPLOYEE PERFORMANCE APPRAISAL SYSTEM USING FUZZY LOGIC

Software Cost Estimation: A Tool for Object Oriented Console Applications

IMPLEMENTATION OF FUZZY EXPERT COOLING SYSTEM FOR CORE2DUO MICROPROCESSORS AND MAINBOARDS. Computer Education, Konya, 42075, Turkey

Efficient Indicators to Evaluate the Status of Software Development Effort Estimation inside the Organizations

Filtering Noisy Contents in Online Social Network by using Rule Based Filtering System

Project Plan. Online Book Store. Version 1.0. Vamsi Krishna Mummaneni. CIS 895 MSE Project KSU. Major Professor. Dr.Torben Amtoft

Keywords Software Cost; Effort Estimation, Constructive Cost Model-II (COCOMO-II), Hybrid Model, Functional Link Artificial Neural Network (FLANN).

Introduction to Fuzzy Control

Degree of Uncontrollable External Factors Impacting to NPD

Fuzzy Candlestick Approach to Trade S&P CNX NIFTY 50 Index using Engulfing Patterns

Online k-means Clustering of Nonstationary Data

Hathaichanok Suwanjang and Nakornthip Prompoon

INTERNATIONAL JOURNAL FOR ENGINEERING APPLICATIONS AND TECHNOLOGY. Ameet.D.Shah 1, Dr.S.A.Ladhake 2.

CSSE 372 Software Project Management: Software Estimation With COCOMO-II

A Concise Neural Network Model for Estimating Software Effort

Software cost estimation. Predicting the resources required for a software development process

Mining the Software Change Repository of a Legacy Telephony System

A New Approach in Software Cost Estimation with Hybrid of Bee Colony and Chaos Optimizations Algorithms

SINGULAR SPECTRUM ANALYSIS HYBRID FORECASTING METHODS WITH APPLICATION TO AIR TRANSPORT DEMAND

Fast Fuzzy Control of Warranty Claims System

Topics. Project plan development. The theme. Planning documents. Sections in a typical project plan. Maciaszek, Liong - PSE Chapter 4

JAVA FUZZY LOGIC TOOLBOX FOR INDUSTRIAL PROCESS CONTROL

Incorporating Data Mining Techniques on Software Cost Estimation: Validation and Improvement

A Fuzzy System Approach of Feed Rate Determination for CNC Milling

INCORPORATING VITAL FACTORS IN AGILE ESTIMATION THROUGH ALGORITHMIC METHOD

ASSESSMENT OF THE EFFECTIVENESS OF ERP SYSTEMS BY A FUZZY LOGIC APPROACH

Optimization of Fuzzy Inventory Models under Fuzzy Demand and Fuzzy Lead Time

Enhancing Quality of Data using Data Mining Method

Chapter 23 Software Cost Estimation

Keywords Software development Effort Estimation, MMRE, Pred, BRE, RSD, RMSE, GMF, Tri MF and Trap MF,

Design of Prediction System for Key Performance Indicators in Balanced Scorecard

Performance Appraisal System using Multifactorial Evaluation Model

Types of Degrees in Bipolar Fuzzy Graphs

Real Time Traffic Balancing in Cellular Network by Multi- Criteria Handoff Algorithm Using Fuzzy Logic

Linguistic Preference Modeling: Foundation Models and New Trends. Extended Abstract

KNOWLEDGE-BASED IN MEDICAL DECISION SUPPORT SYSTEM BASED ON SUBJECTIVE INTELLIGENCE

About the NeuroFuzzy Module of the FuzzyTECH5.5 Software

On Development of Fuzzy Relational Database Applications

Pragmatic Peer Review Project Contextual Software Cost Estimation A Novel Approach

Project Plan 1.0 Airline Reservation System

ISSN: ISO 9001:2008 Certified International Journal of Engineering and Innovative Technology (IJEIT) Volume 3, Issue 3, September 2013

Forecasting of Economic Quantities using Fuzzy Autoregressive Model and Fuzzy Neural Network

Impact of Uncertainty Factors in Cost Estimation Substantiation through Normal Distribution Curve

Volume 2, Issue 12, December 2014 International Journal of Advance Research in Computer Science and Management Studies

A MACHINE LEARNING APPROACH TO FILTER UNWANTED MESSAGES FROM ONLINE SOCIAL NETWORKS

Threat Modeling Using Fuzzy Logic Paradigm

E-COCOMO: The Extended COst Constructive MOdel for Cleanroom Software Engineering

Fuzzy Logic Approach for Threat Prioritization in Agile Security Framework using DREAD Model

A Comparative Study of the Pickup Method and its Variations Using a Simulated Hotel Reservation Data

Cost Estimation Driven Software Development Process

SOFT COMPUTING TECHNIQUES FOR SOFTWARE PROJECT EFFORT ESTIMATION

DEVELOPMENT OF FUZZY LOGIC MODEL FOR LEADERSHIP COMPETENCIES ASSESSMENT CASE STUDY: KHOUZESTAN STEEL COMPANY

NTC Project: S01-PH10 (formerly I01-P10) 1 Forecasting Women s Apparel Sales Using Mathematical Modeling

Fuzzy regression model with fuzzy input and output data for manpower forecasting

AN IMPROVED PERFORMANCE ANALYSIS OF PRIORITY SCHEDULING ALGORITHM IN MODIFIED AD HOC GRID LAYER

QOS Based Web Service Ranking Using Fuzzy C-means Clusters

Fuzzy Methods in Machine Learning and Data Mining: Status and Prospects

An Experimental Approach Towards Big Data for Analyzing Memory Utilization on a Hadoop cluster using HDFS and MapReduce.

Software project cost estimation using AI techniques

An Empirical Approach - Distributed Mobility Management for Target Tracking in MANETs

Predicting the Risk of Heart Attacks using Neural Network and Decision Tree

Knowledge-Based Systems Engineering Risk Assessment

MTAT Software Economics. Lecture 5: Software Cost Estimation

Cloud Computing for Agent-based Traffic Management Systems

Optimization under fuzzy if-then rules

Transcription:

www.ijcsi.org 249 Classical Fuzzy pproach for Software Estimation on Machine Learning Technique S.Malathi 1 and Dr.S.Sridhar 2 1 Research Scholar, Department of CSE, Sathyabama University Chennai, Tamilnadu, India 2 Research Supervisor, Department of CSE and IT, Sathyabama University Chennai, Tamilnadu, India bstract Software Cost Estimation with resounding reliability, productivity and development effort is a challenging and onerous tas. This has incited the software community to give much needed thrust and delve into extensive research in software effort estimation for evolving sophisticated methods. Estimation by analogy is one of the expedient techniques in software effort estimation field. However, the methodology utilized for the estimation of software effort by analogy is not able to handle the categorical data in an explicit and precise manner. new approach has been developed in this paper to estimate software effort for proects represented by categorical or numerical data using reasoning by analogy and fuzzy approach. The existing historical datasets, analyzed with fuzzy logic, produce accurate results in comparison to the dataset analyzed with the earlier methodologies. Keywords: software effort, nalogy, Fuzzy logic, categorical data, datasets. 1. Introduction The software environment has evolved significantly in the last 30 years. To estimate software development effort, the use of the neural networs has been viewed with septicism by maority of the cost estimation community. Even though neural networs have exposed their strengths in solving multifarious problems, their limitation of being 'blac boxes' has limited their usage as a common practice for cost estimation [4]. Some models carry a few advantageous features of the neuro-fuzzy approach, such as learning capability and excellent interpretability, while maintaining the qualities of the COCOMO model [6]. Estimation by nalogy is simple and flexible, compared to algorithmic models. nalogy technique is applied effectively even for local data which is not supported by algorithmic models [2], [8]. It can be used for both qualitative and quantitative data, reflecting closer types of datasets found in real life. nalogy based estimation has the potential to mitigate the effect of outliers in a historical data set, since estimation by analogy does not rely on calibrating a single model to suit all the proects. Unfortunately, it is difficult to assess the preliminary estimation as the available information about the historic proect data during early stages is not sufficient [11]. The proposed method effectively estimates the software effort using analogy technique with the classical fuzzy approach. The research paper is organized as follows: Section 2 deals with some of the recent research wors related to the proposed technique. Section 3 describes the proposed technique and Section 4 discusses about the experimentation and comparative results with necessary tables and graphs and Section 5 concludes the paper. 2. Related Wor The proposed technique elucidates the effective estimation of effort. Several researchers have carried out researches in the field of effort estimation for the software proects using various techniques [9]. few of the significant researches have been highlighted here for iris recognition. Fuzzy logic has been applied to the COCOMO using membership functions such as Symmetrical Triangles and Trapezoidal Membership Function (TMF) to signify the cost drivers. The limitation of the latter function is that a few attributes were assigned the maximum degree of compatibility instead of lower degree. To overcome this drawbac, Ch. Satyananda Reddy et al. [7] proposed the usage of Gaussian Membership Function (GMF) for the cost drivers by studying the behaviour of COCOMO cost drivers. COCOMO dataset has been used in the proposed methodology and the experiments envisage the scientific approach and compare the same with the standard version of the COCOMO. It is adduced that the Gaussian function performs better than the trapezoidal function as the latter facilitates a smooth transition in its intervals and the achieved results are closer to the actual effort.

www.ijcsi.org 250 hmeda and Muzaffar [6] dealt with the imprecision and uncertainty in the inputs of effort prediction. M.Kazemifard et al. [1] uses a multi agent system for handling the characteristics of the team members in fuzzy system. There are many studies that utilized the fuzzy systems to deal with the ambiguous and linguistic inputs of software cost estimation [3]. Wei Lin Du et al. [5] proposed an approach combining the neuro-fuzzy technique and the SEER-SEM effort estimation algorithm. The continuous rating values and linguistic values are the inputs of the proposed model for avoiding the deviation in estimation among similar proects. The performance of the proposed model has been improved by designing and evaluated with data from published historical proects. The evaluation results indicate that the estimation with the proposed fuzzy model containing analogy reasoning produce better results in comparison with the existing estimated results [4] that uses feature selection algorithm. 3. Proposed Methodology 3.1 Estimation Fuzzy logic is based on human behaviour and reasoning. It has an affinity with fuzzy set theory and applied in situations where decision maing is difficult. Fuzzy set can be defined as an extension of classical set theory by assigning a value for an individual in the universe between the two boundaries that is represented by a membership function. = ( x) / x x µ (1) Where x is an element in X and ( x) µ is a membership function. Fuzzy set is characterized by a membership function that has grades between the interval [0, 1] called grade membership function. There are different types of membership function, namely, triangular, trapezoidal, Gaussian etc. Fuzzy logic consists of the following three stages: 1. Fuzzification 2. Inference Engine 3. Defuzzification The Fuzzifier transforms the inputs into a membership value for the linguistic terms. The function of inference engine is to develop the complexity matrix for producing a new linguistic term to determine the productivity rate by using fuzzy rules. defuzzifier carries out the Defuzzification process to combine the output into a single label or numerical value as required. 3.2 Fuzzy nalogy Fuzzification of classical analogy procedure is Fuzzy analogy. It comprises the following procedures, viz., 1) Identification of cases, 2) Retrieval of similar cases and 3) Case adaptation. Each step is the fuzzification of its equivalent classical analogy procedure. 3.2.1 Identification of cases The goal of this step is the characterization of all software proects by a set of attributes. Selecting attributes, which will describe software proects, is a complex tas in the analogy procedure. Indeed, the selection of attributes depends on the obective of the CBR system. In this case, the obective is to estimate the software proect effort. Consequently, the attributes must be relevant for the effort estimation tas. The obective of the proposed Fuzzy nalogy approach is to deal with categorical data. So, in the identification step, each software proect is described by a set of selected attributes which can be measured by numerical or categorical values. These values will be represented by fuzzy sets. In the case of numerical value x, its fuzzification will be 0 done by the membership function which taes the value of 1 when x is equal to x and 0 otherwise. For categorical 0 values, M attributes are considered and for each attribute M, a measure with linguistic values is defined ( ). Each linguistic value is represented by a fuzzy set with a membership function ( µ ). It is preferable that these fuzzy sets satisfy the normal condition. The use of fuzzy sets to represent categorical data, such as 'very low' and 'low', is similar to how humans interpret these values and consequently it allows dealing with imprecision and uncertainty in the case identification step. 3.2.2 Retrieval of Similar Cases This step is based on the choice of software proect similarity measure. In this method, a set of candidate measures for software proect similarity has been proposed

www.ijcsi.org 251 for software proect similarity. These measures assess the overall similarity of two proects P and P, d 1 2 ( P ) 1,P 2 by combining all the individual similarities of associated with the various linguistic variables P, ( ) P and P 1 2 describing the proect P and 1 d P 2 1,P 2. fter an axiomatic validation of some proposed candidate measures for the individual distances d ( P 1,P 2 ), two measures have been retained [14]. Where max min( µ ( P1 P ), µ ( 2 )) max min aggregation d ( ) P1, P2 = µ ( P1 ) µ ( P2 ) sum product aggregation (2) are the fuzzy sets associated with and µ are the membership functions representing fuzzy sets. Scale factors (SF) are understanding product obectives, flexibility, team coherence, etc., multipliers (EF) are software reliability, database size, reusability, complexity, etc. The imprecision of the cost drivers significantly affects the accuracy of the effort estimates which are derived from effort estimation models. Since the imprecision of software effort drivers cannot be overlooed, a fuzzy model gains advantage in verifying the cost drivers by adopting fuzzy sets. B+ 0.01 ( ) SFi SIZE i = = N N i= 1 EM 1 (3) Where and B are constants, SF is the scale factor and EM is effort multipliers. By using the above formula the effort is estimated. The cost drivers are fuzzified using triangular and trapezoidal fuzzy sets for each linguistic value such as very low, low, nominal, high etc. as applicable to each cost driver. Rules are developed with cost driver in the antecedent part and corresponding effort multiplier in the consequent part. The defuzzified value for each of the effort multiplier is obtained from individual Fuzzy Inference Systems after matching, inference aggregation and subsequent Defuzzification. Total is obtained after multiplying i them together. The high values for the cost drivers lead an effort estimate that is more than three times the initial estimate, whereas low values reduce the estimate to about one third of the original. This highlights the vast differences between different types of proects and the difficulties of transferring experience from one application domain to another 3.2.3 Case adaptation The obective of this step is to derive an estimate for the new proect by using the now effort values of similar proects. We are not convinced in fixing the number of analogies in this step. In our proposed method, all the proects in a dataset are used to derive the new proect estimate. Each historical proect will contribute, in the calculation of the effort of the new proect according to the similarity. 4. Results and Discussion The datasets used in the study is the Desharnais dataset [15], NS 93 [12] and COCOMO NS dataset shown in Table 1 and Table 2. Table 1: Desharnais proect features ariable Description Type ExpEquip Experience of Equipment ExpPro Experience of Proect Man Manager Trans Transactions Raw FP Raw Function Points d. Technology Factor dustment Factor d.fp dusted Function Points Dev Env Development Environment Year Fin Year Finished Entities Number of entities ctual effort Table 2: Nasa93 proect features ariable Description Type cap nalysts Capability

www.ijcsi.org 252 Pcap exp Modp Programmers Capability pplication Experience Modern Programming Practices Tool Use of Software tools exp irtual Machine Experience Lexp Language Experience Sced Schedule Constraint Stor Main Memory Constraint Data Database Size Time Time Constraint for CPU Turn Turnaround time irt Machine olatility Rely Required Reliability Cplx Process Complexity Loc Line of Code DevEff Development Table 3, summarizes the number of proects collected under each dataset with the max effort which is compared with the estimated From this table, it is inferred that the datasets have a very low max effort when compared to the actual max effort for the proposed Datasets Table 3 Comparison of actual max effort With estimated max effort No of proects ctual Max Estimated Max Nasa60 60 3240 1594 Desharnais 77 23,940 10,950 Nasa93 93 8211 1290 Figure 1: Comparative results of actual and estimated maximun efforts In this method, 30% of test data sets is taen from NS60, NS93 and Desharnais to measure the average effort in comparison with the actual values. From the comparative results given in Table 4, it is predicted that the existing average effort using the selected features is very high compared to the proposed method for each dataset while considering the full-fledged features sets. Table 4. Comparative results of average effort and actual effort Proposed ctual Existing Method Test Method Datasets vg set No. of vg. No. of vg. Feature Feature Nasa60 16 340.49 3 354.66 16 284.34 Desharnais 22 5119.3 2 4852.17 10 2428.9 Nasa93 26 734.03 4 722.96 16 640.65 Figure 2 represents the graphical plot of the datasets versus the average effort among the existing and the proposed Figure.1 represents the graphical plot of the datasets versus the max effort of the estimated and the proposed Figure 2: Comparative results of avg. effort in existing and proposed method

www.ijcsi.org 253 Therefore, it is concluded that by taing all the features into consideration for all the datasets, the average effort will be low in the proposed method in comparision to the existing method [4]. 5. Conclusions new classical approach has been proposed in this paper to estimate the average software proect effort. This approach is based on reasoning by analogy, fuzzy logic and linguistic quantifiers, which can be effectively used when the software proects are described by categorical and or numerical data. The new approach improves the classical analogy procedure while using the categorical data. In the fuzzy analogy approach, both categorical and numerical data are represented by fuzzy sets. The advantage of this method is that it can handle the imprecision and the uncertainty quite vividly while describing the software proect. From the implementation of the results, it is observed that the proposed method has effectively estimated the average effort for the software proect datasets. References [1] M.Kazemifard,.Zaeri, N.ghasem-ghaee, M..Nematbahsh, F.Marduhi, Fuzzy Emotional COCOMO II Software Cost Estimation (FECSCE) using Multi-gent Systems, pplied Soft Computing, Elsevier, pg.2260-2270, 2011. [2] Erem Kocaguneli, Tim Menzies, yse Bener,Jacy W.Keung, Exploiting the Essential ssumptions of nalogy-based Estimation, Journal of IEEE Transactions on Software Engineering, ol.34, No.4, pp. 471-484, July 2010. [3] Iman ttarzadeh and Siew Hoc Ow, Improving the ccuracy of Software Cost Estimation Model Based on a new Fuzzy Logic Model, World applied sciences Journal, ol. 8, No. 2, pp. 177-184, 2010. [4] Pichai Jodpimai, Peraphon Sophatsathit and Chidchano Lursinsap, Estimating Software with Minimum Features using Neural Functional pproximation, ICCS.2010. [5] Wei Lin Du, Danny Ho and Luiz Fernando Capretz, "Improving Software Estimation Using Neuro- Fuzzy Model with SEER-SEM, Global Journal of Computer Science and Technology, ol. 10, No. 12, Pp. 52-64, Oct 2010. [6] M.. hmeda, Z. Muzaffar, Handling imprecision and uncertainty in software development effort prediction: a type-2 fuzzy logic based framewor, Information and Software Technology 51 (2009) 640 654. [7] Ch. Satyananda Reddy and KSN Rau, "n Improved Fuzzy pproach for COCOMO s Estimation using Gaussian Membership Function", Journal Of Software, ol. 4, No. 5, Pp. 452-459, July 2009. [8] J.Keung, Empirical evaluation of analogy-x for software cost estimation, in ESEM 08: Proceedings of the second CM-IEEE international symposium on Empirical engineering and measurement. New Yor, NY, US: CM, 2008, pp.294-296. [9] M.Jorgensen and M.Shepperd, systematic review of software development cost estimation studies, IEEE Trans.Softw.Eng., vol.33, no.1, pp.33-53, 2007. [10] Xishi Huang, Danny Ho, Jing Ren and Luiz F. Capretz, "Improving the COCOMO model using a neuro-fuzzy approach", pplied Soft Computing, ol. 7, Pp.29 40, 2007 [11] Hasan l-saran, Software Cost Estimation Model Based on Integration of Multi-agent and Case-Based Reasoning", Journal of Computer Science, ol. 2, No. 3, Pp. 276-282, 2006 [12] Sayyad Shirabad, J. and Menzies, T.J. (2005) The PROMISE Repository of Software Engineering Databases. School of Information Technology and Engineering, University of Ottawa, Canada. vailable: http://promise.site.uottawa.ca/serepositor y [13] li Idri, Taghi M.Khoshgoftaar and lain bran, "Can Neural Netwos be easily Interpreted in Software Cost Estimation?", 2002 World Congress on computational intelligence, honolulu, Huwaii, pp. 1-8, May 12-17, 2002. [14].Idri and. bran, "Towards Fuzzy Logic Based Measures For Software Proect similarity", In Proc. of the 7th International Symposium on Software Metrics, England, pp.85-96, 2001. [15] M.J.Shepperd, C.Schofield and B.Kitchenham, Estimating Software Proect Using nalogies, IEEE Trans. Software Eng., vol. 23, pp. 736-743, 1997.