software development effort estimation using fuzzy … · software development effort estimation...

7

Click here to load reader

Upload: lamduong

Post on 20-May-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

15

Software Development Effort Estimation using Fuzzy Logic

Framework- An Implementation

1Rshma Chawla,

2Deepak Ahlawat

1,2MMICTBM, MMU Mullana

Email: [email protected],

[email protected]

Abstract: Software development effort estimation is very

important and critical task when we have to develop new

or reusable software. The main objective of this research

paper is to provide a technique for software cost estimation

technique that performs better than other techniques on

the accuracy of effort estimation.This study proposed to

extend the Constructive Cost Model (COCOMO) by

incorporating the concept of fuzziness into the

measurements of size, mode of development for projects

and the cost drivers contributing to the overall

development effort. This study explores four fuzzy logic

membership functions: Fuzzy Triangular Membership

Function, GBell Membership Function, Gauss2

Membership Function and Trapezoidal Membership

Function for Software development effort estimation.

Implementation is done by taking estimated effort of

Intermediate COCOMO.

Index Terms:COCOMO Model, Trapezoidal MF, TMF,

GBell MF, Gauss2 MF.

I. INTRODUCTION

1.1. Software Development

Software development is the computer programming,

documenting, testing, and bug fixing involved in

creating and maintaining applications and frameworks

involved in a software release life cycle and resulting in

a software product [32].

Various Phases in Software Development

a. Requirements specification.

b. Planning.

c. Design.

d. Construction.

e. Testing.

f. Debugging.

g. Deployment.

h. Maintenance.

1.2. Software Effort Estimation

Software effort estimation is the prediction of the likely

amount of cost, time, and staffing levels required to

build a software system at an early stage during a

project. It is difficult to obtain the effort estimate during

the preliminary stages, because of the limited resources

available at that time [2].

Need for effort estimation

It would facilitate increased control of time and

overall cost benefit in software development life cycle.

Software development effort estimates are the

basis for project bidding and planning.

Software effort estimation has even been

identified as one of the three most demanding challenges

in software application areas. During the development

process, the cost and time estimates are useful for the

initial rough validation and monitoring of the project’s

completion process. And in addition, these estimates

may be useful for project productivity assessment

phases.

1.3. Size Estimation

The estimation of size is very critical and difficult area

of project planning. It has been recognized a crucial step

from the very beginning. Many Effort estimation models

take size as basic unit for calculating effort.

Methods of Size Estimation:

a. Lines of Code: It is software metric used to

measure the size of a software program by counting the

number of lines in the text of the program’s source code.

A line of code is any line of program text that is not a

comment or a blank line, regardless of the number

ofstatements or fragment of statements on the line. This

specially includes all lines containing program header,

declarations, and executable and non-executable

statements.Unit of measurement is KLOC/ KSLOC/

KDLOC (1000 lines of code).

There are several cost, schedule, and effort estimation

models which use LOC as an input parameter, including

the widely-used Constructive Cost Model (COCOMO)

invented by Barry Boehm [2].

It can be calculated by:

a1. Define the statement of scope.

a2. Historical data.•

a3. Prepare some rough coding(it may be misleading but

have to be done when there is no previous experience).

Page 2: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

16

a4. Automated tools are available.

b. Function Points: A function point is a unit of

measurement to express the amount of business

functionality an information system (as a product)

provides to a user. Function points measure software

size. The cost of a single unit is calculated from past

projects [1].

It can be calculated as:

b1. Internal Logical files (ILF).

b2. External Interface files (EIF).

b3. External Input (EI).

b4. External Output (EO).

b5. External Inquiry (EQ).

II. COCOMO MODEL

The Constructive Cost Model (COCOMO) is an

algorithmic software cost estimation model developed

by Barry W. Boehm.COCOMO was first published in

Boehm’s 1981 book Software Engineering Economics

as a model for estimating effort, cost, and schedule for

software projects [2]. COCOMO is a model that allows

one to estimate the cost, effort, and schedule when

planning a new software development activity.This

model estimates the total effort in terms of “person –

months” of the technical project staff. COCOMO is a

hierarchy of software cost estimation models, which

include basic, intermediate and detailed sub models.

Boehm proposed 3 modes of projects:

1. Organic mode – simple projects that engage small

teams working in known and stable environments.

2. Semi-detached mode– projects that engage teams with

a mixture of experience. It is in between organic and

embedded modes.

3. Embedded mode– complex projects that are

developed under tight constraints with changing

requirements.

BASIC MODEL:

Equation for effort calculation

DE= a * (SIZE)b

Where, DE is development effort.

Constants a and b are dependent upon the mode of the

project.

INTERMEDIATE MODEL:

Ei= a * (SIZE)b

Where, Ei = Estimated effort

Table 2.1 gives the value of a and b for different modes

[29].

Table 2.1: Intermediate COCOMO nominal effort

estimating equations

Development Mode Nominal Effort Equation Ei

Organic

Semi-Detached

Embedded

(MM)NOM = 3.2(KDLOC)1.05

(MM)NOM = 3.0(KDLOC)1.12

(MM)NOM = 2.8(KDLOC)1.20

Development Effort = EAF * Ei

EAF is effort adjustment factor, which can be calculated

from 15 different factors or cost drivers.

Table 2.2: Effort multipliers for different cost drivers

S. no Cost Driver Symbol Very Low Low Nominal High Very High Extra High

1 RELY 0.75 0.88 1.00 1.15 1.40 -

2 DATA - 0.94 1.00 1.08 1.16 -

3 CPLX 0.70 0.85 1.00 1.15 1.30 1.65

4 TIME - - 1.00 1.11 1.30 1.66

5 STOR - - 1.00 1.06 1.21 1.56

6 VIRT - 0.87 1.00 1.15 1.30 -

7 TURN - 0.87 1.00 1.07 1.15 -

8 ACAP - 0.87 1.00 1.07 1.15 -

9 AEXP 1.29 1.13 1.00 0.91 0.82 -

10 PCAP 1.42 1.17 1.00 0.86 0.70 -

11 VEXP 1.21 1.10 1.00 0.90 - -

12 LEXP 1.14 1.07 1.00 0.95 - -

13 MODP 1.24 1.10 1.00 0.91 0.82 -

14 TOOL 1.24 1.10 1.00 0.91 0.83 -

15 SCED 1.23 1.08 1.00 1.04 1.10 -

III. FUZZY LOGIC

Four basic concepts [17], [18], [21]:

a) Fuzzy Sets – sets with smooth boundaries. “Jane is

old” [0,1]

b) Linguistic variables – consider the sentence “The

amount of trading is heavy” uses a fuzzy set “Heavy” to

describe the quantity of the stock market trading in one

day. More formally, this can be expressed as

Trading Quantity is Heavy.

Here Trading Quantity is linguistic variable.

Page 3: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

17

c) Possibility distribution – constraints on the value of

a linguistic variable imposed by assigning it a fuzzy set.

Age (suspect) = [20, 30].

d) Fuzzy if-then rules – a knowledge representation

scheme for describing a functional mapping or a logic

formula that generalizes an implication in two-valued

logic.

Figure 3.1: Fuzzy System

3.1. Fuzzy Inference Process

i) Fuzzification:

Membership Functions

A membership function (MF) is a curve that defines how

each point in the input space is mapped to a membership

value (or degree of membership) between 0 and 1. The

input space is sometimes referred to as the universe of

discourse, a fancy name for a simple concept.

ii) Logical Operators and if-then Rules:

Fuzzy sets and fuzzy operators are the subjects and

verbs of fuzzy logic. These if-then rule statements are

used to formulate the conditional statements that

comprise fuzzy logic. A single fuzzy if-then rule

assumes the form

if x is A then y is B

Where A and B are linguistic values defined by fuzzy

sets on the ranges (universes of discourse) X and Y,

respectively. The if-part of the rule “x is A” is called the

antecedent or premise, while the then-part of the rule “y

is B” is called the consequent or conclusion.

iii) Defuzzification: We can implement two types of

fuzzy inference systems in the toolbox: Mamdani-type

and Sugeno-type.

Mamdani’s fuzzy inference method is the most

commonly seen fuzzy methodology. Mamdani-type

inference, as defined for the toolbox, expects the output

membership functions to be fuzzy sets. After the

aggregation process, there is a fuzzy set for each output

variable that needs defuzzification. Mamdani method

finds the centroid of a two-dimensional function [25],

[26], [27].

We use Mamdani-Type inference system.

IV. FUZZY LOGIC FOR SOFTWARE

DEVELOPMENT EFFORT ESTIMATION

Available data in the initial stages of project is often

incomplete, inconsistent, uncertain and unclear [8], [34].

A fuzzy model is more apt when the systems are not

suitable for analysis by conventional approach or when

the available data is uncertain, inaccurate or vague [35],

[36], [37]. The major difference between our work and

previous works is that four fuzzy logic functions will be

used for software development effort estimation on

COCOMO model and then it’s validated with gathered

data. The advantages of fuzzy logic are combined and

learning ability and good generalization are obtained.

The main benefit of this approach is it has good

interpretability by using the fuzzy rules. The effort

predicted using four fuzzy logic functions will be

compared with Intermediate COCOMO.

V. DEVELOPMENT TOOLS AND

TECHNIQUES

MATLAB 7.5

MATLAB is a high-performance language for technical

computing. It integrates computation, visualization, and

programming in an easy-to-use environment where

problems and solutions are expressed in familiar

mathematical notation. Typical uses include

• Math and computation

• Algorithm development

• Data acquisition

• Modeling, simulation, and prototyping

• Data analysis, exploration, and visualization

• Scientific and engineering graphics

• Application development, including graphical user

interface building.

The Matlab System:

→ Development Environment.

→ The MATLAB Mathematical Function Library.

→ The MATLAB Language.

→ Graphics.

→ The MATLAB Application Program Interface

(API).

Fuzzy Logic Toolbox

Figure 5.1: GUI Tools of Fuzzy LogicToolbox

Page 4: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

18

VI. IMPLEMENTATION

1. This research will implement Constructive Cost

Model (COCOMO) using Mamdani Fuzzy

Inference System (FIS).

2. Fuzzy Triangular membership (trimf) function,

Trapezoidal membership function (trapmf),

generalized bell (Gaussian Bell) membership

function (gbellmf) and two-sided gaussian curve

built in membership function (gauss2mf) are used

with NASA63 dataset for software effort

estimation.

3. The results were analyzed using the criterion –

MMRE (Mean Magnitude of Relative Error).

4. Less MMRE means the result is more accurate [5,

6].

6.1. Research Methodology Used

1. Select a particular type of Fuzzy Inference System

(Mamdani).

2. Define the input variables and output variable.

3. Set the type of the membership functions for input

variables.

4. Set the type of the membership function for output

variable.

5. Write the rules in Rule Editor.

6. The data is now translated into a set of if–then

rules written in Rule editor.

7. A certain model structure is created, and

parameters of input and output variables can be

tuned to get the desired output.

6.2. Fuzzy rules applied[6]

• If MODE is Organic and SIZE is S1 then EFFORT

is EF1

• If MODE is Semidetached and SIZE is S1 then

EFFORT is EF2

• If MODE is Embedded and SIZE is S1 then

EFFORT is EF3

• If MODE is Organic and SIZE is S2 then EFFORT

is EF4

• If MODE is Semidetached and SIZE is S2 then

EFFORT is EF5

• If MODE is Embedded and SIZE is S3 then

EFFORT is EF5

• If MODE is Embedded and SIZE is S4 then

EFFORT is EF3

• If MODE is Organic and SIZE is S3 then EFFORT

is EF4

• If MODE is Embedded and SIZE is S5 then

EFFORT is EF6

• If MODE is Organic and SIZE is S4 then EFFORT

is EF4

6.3. Fuzzy Framework Used

Figure 6.1: Fuzzy Framework

6.4. Experimental Results

1. Trapezoidal Membership Function

Figure 6.2: Output 1

Calculated Fuzzy Effort for Trap MF = Fuzzy Nominal

Effort * EAF

= 768 * 2.72

= 2088.96 = 2089

2. Triangular Membership Function

Figure 6.3: Output 2

Calculated Fuzzy effort for TMF = 2.72 * 763 = 2075

3. GBell Membership Funtion

Figure 6.4: Output 3

Calculated Fuzzy Effort for Gbell MF = 715 * 2.72 =

1945

4. Gauss2 Membership Function

Figure 6.5: Output 4

Calculated Fuzzy Effort for Gauss2 MF = 718 * 2.72=

1956

Page 5: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

19

Table 6.1: Developmental Effort Estimate using various Techniques

S.

No.

Project

id

MODE SIZE EAF Actual

Effort

Intermediate

COCOMO

Nominal

Effort

Intermediate

COCOMO

Est. Effort

Est. Effort

using Trap

MF

Est.

Effort

using

TMF

Est.

Effort

using

GBell

MF

Est.

Effort

using

Gauss2

MF

1 1 1.2 E 113 2.72 2040 814.4 2215.24 2089 2075 1945 1956

2 10 1.2 E 18 2.38 321 89.9 213.83 201.6 200.4 187.8 188.73

3 13 1.2 E 24 0.85 79 127 107.85 102 101.15 94.35 95.2

4 19 1.2 E 966 0.73 6600 10694 7806.45 7373 7329.2 6854.7 6891.2

5 22 1.2 E 109 0.94 724 780 733.16 690.9 687.14 643.9 646.72

6 43 1.05 O 28 0.96 83 105.8 101.61 95.71 95.14 89.2 89.6

7 49 1.12 SD 91 0.36 156 469 168.87 159.12 158.04 148.32 149

8 63 1.2 E 10 0.39 15 44.36 17.3 16.3 16.22 15.17 15.25

Table 6.1 shows Estimated Effort for fuzzy logic

functions, four membership functions namely

Trapezoidal Membership Function (Trapmf), Triangular

Membership Function (TMF), Guass Bell Membership

Function (GBellMF), Gauss2mf - Gaussian curve built-

in Membership Function. These are obtained in Fuzzy

logic Toolbox by selecting the appropriate MF. Inputs to

the FIS are MODE and SIZE. Range of MODE should

be selected among 1.05, 1.12, 1.2. Range of SIZE can be

noted from examining the project id. Fuzzy rules are

applied and then select the Nominal Effort of COCOMO

as the range of Fuzzy Nominal Effort.

Estimated Fuzzy Effort = Fuzzy Nominal Effort * EAF.

6.5. Comparison

The main parameter for the evaluation of cost estimation

models is the Magnitude of Relative Error (MRE) which

is defined as follows

MRE: Mean Relative Error,

MRE =│Actual Effort – Estimated Effort │

Actual Effort ……. (1)

The MRE value is calculated for each observation i

whose effort is predicted.

Table 6.2: Comparison of MRE

S.

No

MRE

using

Inter.

COCOMO

Model

MRE

using

TRAP

MF

MRE

using

TMF

MRE

using

GBell

MF

MRE

using

Gauss2

MF

1 0.0859 0.0240 0.0171 0.0465 0.0411

2 0.3339 0.3719 0.3757 0.4149 0.4120

3 0.3651 0.2911 0.2803 0.1943 0.2050

4 0.1828 0.1171 0.1105 0.0385 0.0386

5 0.0126 0.0457 0.0509 0.1106 0.1067

6 0.2242 0.1531 0.1462 0.0746 0.0795

7 0.0825 0.0200 0.0130 0.0492 0.0448

8 0.1533 0.0866 0.0813 0.0113 0.0166

Σ 1.4403 1.0638 1.0750 0.9399 0.9444

Table 6.3: Computation of MMRE

Estimation Technique MMRE

Intermediate COCOMO 0.1800

FL Trapezoidal MF 0.1329

FL Triangular MF 0.1344

FL GBell MF 0.1175

FL Gauss2 MF 0.1180

Figure 6.6: Comparison of MMRE

VII. CONCLUSION

We can conclude that the introduction of fuzzy logic in

the process of Software Development Effort Estimation

yields more accurate results than the previous Empirical

Model Approach. Trapezoidal Membership function

gives more accurate estimate of Effort as compare to

Triangular Membership Function. GBell MF gives more

accurate result than Gauss2 MF. Gaussian Curve MF’s

are more accurate than the simple straight line

Membership functions. Between five techniques that we

used in our research GBell MF has the lowest value of

MMRE. So, it has highest accuracy.

00.020.040.060.08

0.10.120.140.160.18

0.2

MM

RE

Estimation Technique

Comparison of MMRE

Page 6: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

20

VIII. FUTURE WORK

The above research work can be easily employed in the

software industries.By applying some more effort there

is the possibility to develop other customized

membership functions, which represents inputs more

closely to tolerate uncertainty and imprecision in inputs,

and hence restricting the same to be propagated to the

outputs. Today various softwares are available in the

market to make use of COCOMO model; the above

research can be deployed on COCOMO II, with experts

on the subject providing required information for

developing fuzzy sets and appropriate rules. This work

can be extended by integrating with neural networks to

take the advantage of its features, such as learning

ability and good interpretability. Thus, a promising line

of future work is to extend to the neuro-fuzzy approach

that allows the integration of numerical data and expert

knowledge.

REFERENCES

[1] Albrecht A.J., and J.E. Gaffney, “Software

function, source lines of code, and development

effort prediction: a software science validation,”

IEEE Transactions on Software Engineering, pp.

639-648, November1983.

[2] B. W. Boehm, “Software Engineering

Economics”, Englewood Cliffs, NJ, Prentice

Hall, 1981.

[3] B. W. Boehm, C. Abts and S.Chulani, “Software

Development Cost Estimation Approaches- A

Survey”, Technical Reports, University of

Southern California Centre for Software

Engineering, usccse 2000-505.

[4] Boetticher, G.D., “An assessment of metric

contribution in the construction of a neural

network-based effort estimator”, Proceedings of

Second International Workshop on Soft

Computing Applied to Software Engineering,

2001.

[5] Ch. Satyananda Reddy, KvsvnRaju, “Improving

the Accuracy of Effort Estimation through Fuzzy

Set Combination of Size and Cost Drivers”,

Wseas Transactions on Computers, ISSN: 1109-

2750, Vol. 8, No. 6, June 2009.

[6] Ch. Satyananda Reddy, KVSVN Raju.,“An

Improved Fuzzy Approach for COCOMO’s

Effort Estimation using Gaussian Membership

Function”, Journal of Software, Vol. 4, No. 5,

July 2009.

[7] Exforsys, “Software Project Planning”, Dec

2005.

[8] GeetikaBatra and MahimaTrivedi, “A Fuzzy

Approach for Software Effort Estimation”,

International Journal on Cybernetics &

Informatics (IJCI), Vol.2, No.1, pp. 9-15,

February 2013.

[9] ImanAttarzadeh and Siew Hock Ow, “Software

Development Effort Estimation based on a New

Fuzzy Logic Model”, International Journal of

Computer Theory and Engineering, Vol. 1, No. 4,

October 2009.

[10] ImanAttarzadeh and Siew Hock Ow, “A Novel

Algorithmic Cost Estimation Model Based on

Soft Computing Technique”, Journal of

Computer Science 6 (2): ISSN 1549-3636 ©

2010 Science Publications, pp. 117-125, 2010.

[11] Jones C., “Software Estimating Rules of Thumb”,

Computers, pp. 116-118, March 1996.

[12] Jones C., “Programming Productivity”, McGraw-

Hill, 1986.

[13] Jones C., “Applied Software Measurement”,

McGraw-Hill, 1991.

[14] Jones C., “Estimating Software Costs”, McGraw-

Hill, 1998.

[15] Krishanmoorthy Srinivasan and Douglas Fisher,

“Machine Learning Approaches to Estimating

Software Development Effort”, IEEE

Transactions on Software Engineering, Volume

21, No. 2, pp. 126-137, February 1995.

[16] L. H. Putnam, “A general empirical solution to

the macro software sizing and estimating

problem”. IEEE Transactions on Software

Engineering, SE-4(4), pp. 345-361, 1978.

[17] Lotfi A. Zadeh, “Fuzzy sets”,Information and

Control, Vol. 8, pp. 338–353, 1965.

[18] Lotfi A. Zadeh, “Fuzzy Algorithms”,Information

and Control, Vol. 12, pp. 94-102, 1968.

[19] Lotfi A. Zadeh, “A fuzzy-set-theoretical

interpretation of linguistic hedges”, Journal of

Cybernetics, Vol. 2, pp. 4–34, 1972.

[20] Lotfi A. Zadeh, “Outline of a new approach to

the analysis of complex systems and decision

processes”, IEEE Trans. Systems, Man and

Cybernetics, Vol. 3, No. 1, pp. 28–44, 1973.

[21] Lotfi A. Zadeh, “Making Computers Think like

People”, IEEE Spectrum, 8, pp. 26- 32, 1984.

[22] Lotfi A. Zadeh, “Fuzzy Logic, Neural Networks

and Soft Computing”, Communication of ACM

37(3): pp. 77-84, 1994.

[23] Lofti A. Zadeh, “The Future of Soft Computing”,

In Joint 9th IFSA World Congress and 20th

NAFIPS International Conference, Vancouver,

Canada,2001.

[24] Lofti A. Zadeh, “Knowledge representation in

fuzzy logic,” IEEE Transactions on Knowledge

and Data Engineering, Vol. 1, pp. 89-100, 1989.

[25] Mamdani, E.H. and S. Assilian, “An experiment

in linguistic synthesis with a fuzzy logic

Page 7: Software Development Effort Estimation using Fuzzy … · Software Development Effort Estimation using Fuzzy ... Software development effort estimation is ... paper is to provide

International Journal On Advanced Computer Theory And Engineering (IJACTE)

________________________________________________________________________________________________

________________________________________________________________________________________________

ISSN (Print): 2319-2526, Volume -4, Issue -4, 2015

21

controller”, International Journal of Man-

Machine Studies, Vol. 7, No. 1, pp. 1-13, 1975.

[26] Mamdani, E.H., “Advances in the linguistic

synthesis of fuzzy controllers,” International

Journal of Man-Machine Studies, Vol. 8, pp. 669-

678, 1976.

[27] Mamdani, E.H., “Applications of fuzzy logic to

approximate reasoning using linguistic

synthesis,” IEEE Transactions on Computers,

Vol. 26, No. 12, pp. 1182-1191, 1977.

[28] Moon Ting Su, TeckChaw Ling,

KeatKeongPhang, Chee Sun Liew, Peck Yen

Man, “Enhanced Software Development Effort

And Cost Estimation Using Fuzzy Logic Model”,

Malaysian Journal of Computer Science, Vol. 20,

No. 2, 2007.

[29] PankajJalote, “An Integrated Approach to

Software Engineering”, Third Edition, Narosa

Publishing House, 2006.

[30] Parvinder S. Sandhu, PorushBassi, and

Amanpreet Singh Brar, “Software Effort

Estimation Using Soft Computing Techniques”,

World Academy of Science, Engineering and

Technology, 46, 2008.

[31] RshmaChawla, Deepak Ahlawat, “Improved

Software Development Effort Estimation Based

on Four Fuzzy Logic Functions”, International

Journal on Advanced Computer Theory and

Engineering (IJACTE), IRD India, ISSN (Print):

2319-2526, Vol. 4, No. 2, pp. 9-13, March 2015.

[32] Roger S Pressman, “Software Engineering-A

Practitioner’s Approach”, Tata McGraw-Hill

Edition 2010.

[33] RoheetBhatnagar, Vandana Bhattacharjee, Mrinal

Kanti Ghose, “ A Proposed Novel Framework for

Early Effort Estimation using Fuzzy Logic

Techniques”, Vol. 10, No. 14 (Ver. 1.0), pp. 66,

November 2010.

[34] Rahul Kumar Yadav,Dr. S. Niranjan , “Software

Effort Estimation Using Fuzzy Logic: A

Review”, International Journal of Engineering

Research & Technology (IJERT) Vol. 2, No. 5,

ISSN: 2278-0181, pp. 1377-1384, May 2013.

[35] RoheetBhatnagar, MrinalKanti Ghose, Vandana

Bhattacharjee, “Predicting the Early Stage

Software Development Effort using Mamdani

FIS”, Roheet Bhatnagar et al, (IJCSIT)

International Journal of Computer Science and

Information Technologies, Vol. 2, No. 4, pp.

1675-1678, ISSN:0975 – 9646, 2011.

[36] S.G MacDonell, and A.R Gray, “A comparison

of modelling techniques for software

development effort prediction”, Proceedings of

the International Conference on Neural

Information Processing and Intelligent

Information Systems, Dunedin, New Zealand,

Springer-Verlag, pp. 869–872, 1997.

[37] S.G MacDonell, and A.R Gray, “Fuzzy Logic for

Software Metric Models throughout the

Development Life-Cycle”, The Information

Science Discussion Paper Series, Number 99/20,

ISSN 1172-6024, September 1999.

[38] Xu, Z., Khoshgoftaar, T.M., “Identification of

fuzzy models of software cost estimation”,

Elsevier Fuzzy Sets and Systems 145 (1), pp.

141–163, 2004.

[39] Zikmund, Babin, Carr, Adhikari, and Griffin,

“Business Research Methods”, 8e, CENGAGE

Learning, 2013.