scispace - formally typeset

Proceedings ArticleDOI

FULSOME: a fuzzy logic modeling tool for software metricians

10 Jun 1999-pp 263-267

TL;DR: While there are many tools available for developing fuzzy models, it is suggested that before there will be real adoption of such techniques by project managers there will need to be suitable tools that support their particular workflows and that use appropriate terminology.

AbstractThere has been a growing body of literature suggesting that some of the problems faced by software development project managers can be at least partially overcome by using fuzzy logic techniques. However, one issue that has been generally overlooked in this recommendation is the means by which these "software metricians" can collect data for, develop, and interpret fuzzy logic models in practice. We describe a freely available system that has been built with this in mind called FULSOME (FUzzy Logic for SOftware MEtrics). While there are many tools available for developing fuzzy models, it is suggested that before there will be real adoption of such techniques by project managers there will need to be suitable tools that support their particular workflows and that use appropriate terminology. Another requirement will be the development of some standard procedures and definitions for such models. Issues involved with membership function elicitation and extraction are also discussed as a first step towards this second goal.

Topics: Fuzzy logic (63%), Software development (58%), Membership function (58%), Software metric (58%), Project management (52%)

...read more

Content maybe subject to copyright    Report

Citations
More filters

Journal ArticleDOI
TL;DR: An adaptive fuzzy logic framework for software effort prediction that tolerates imprecision, explains prediction rationale through rules, incorporates experts knowledge, offers transparency in the prediction system, and could adapt to new environments as new data becomes available is presented.
Abstract: Algorithmic effort prediction models are limited by their inability to cope with uncertainties and imprecision present in software projects early in the development life cycle. In this paper, we present an adaptive fuzzy logic framework for software effort prediction. The training and adaptation algorithms implemented in the framework tolerates imprecision, explains prediction rationale through rules, incorporates experts knowledge, offers transparency in the prediction system, and could adapt to new environments as new data becomes available. Our validation experiment was carried out on artificial datasets as well as the COCOMO public database. We also present an experimental validation of the training procedure employed in the framework.

110 citations


Cites background from "FULSOME: a fuzzy logic modeling too..."

  • ...Both COCOMO and SLIM take number of lines of code (about which least is known very early in the project) as the major input to their models....

    [...]


Proceedings ArticleDOI
15 Jul 2002
TL;DR: It is shown how CI --- based models contribute to the methodology of constructing models of software processes and products, and several selected examples (including software cost estimation, quality, and software measures) are included.
Abstract: Software Engineering is inherently knowledge intensive. Software processes and products are human centered. The technology of Computational Intelligence (CI) intensively exploits various mechanisms of interaction with humans and processes domain knowledge with intent of building intelligent systems. As commonly perceived, CI dwells on three highly synergistic technologies of neural networks, fuzzy sets (or granular computing, in general) and evolutionary optimization. As the software complexity grows and the diversity of software systems skyrocket, it becomes apparent that there is a genuine need for a solid, efficient, designer-oriented vehicle to support software analysis, design, and implementation at various levels. The research agenda makes CI a highly compatible and appealing vehicle to address the needs of knowledge rich environment of Software Engineering. The objective of this study is to identify and discuss synergistic links emerging between Software Engineering and Computational Intelligence. We show how CI --- based models contribute to the methodology of constructing models of software processes and products. Several selected examples (including software cost estimation, quality, and software measures) are included.

51 citations


Journal ArticleDOI
TL;DR: This study considers the applicability of fuzzy logic modeling methods to the task of software source code sizing, using a previously published data set and suggests that fuzzy predictive models can outperform their traditional regression-based counterparts.
Abstract: Knowing the likely size of a software product before it has been constructed is potentially beneficial in project management: for instance, size can be an important factor in determining an appropriate development/integration schedule, and it can be a significant input in terms of the allocation of personnel and other resources. In this study we consider the applicability of fuzzy logic modeling methods to the task of software source code sizing, using a previously published data set. Our results suggest that, particularly with refinement using data and knowledge, fuzzy predictive models can outperform their traditional regression-based counterparts.

49 citations


Cites methods from "FULSOME: a fuzzy logic modeling too..."

  • ...Our own work (Gray and MacDonell 1997b; MacDonell et al. 1999) has similarly indicated the applicability of fuzzy logic methods to this domain – one of the aims of the work described here is to provide empirical evidence in support of this....

    [...]

  • ...We used our TEST samples to assess the predictive accuracy of the models, first by applying our regression models and then using the FUzzy Logic for SOftware MEtrics (FULSOME) module of FUZZYMANAGER to produce first-cut estimates of SIZE....

    [...]

  • ...Our own work (Gray and MacDonell 1997b; MacDonell et al. 1999) has similarly indicated the applicability of fuzzy logic methods to this domain – one of the aims of the work described here is to provide empirical evidence in support of this....

    [...]

  • ...We used the BUILD sample to develop complementary predictive models, using standard linear regression and fuzzy logic modeling (via our toolset FUZZYMANAGER (MacDonell et al. 1999))....

    [...]

  • ...The clustering and rule extraction activities were undertaken using the CLUESOME (CLUster Extraction for SOftware MEtrics) component of our FUZZYMANAGER toolset (MacDonell et al. 1999)....

    [...]


Patent
18 Aug 2004
Abstract: A system and method for software estimation. In one embodiment, the software estimation system comprises a pre-processing neuro-fuzzy inference system used to resolve the effect of dependencies among contributing factors to produce adjusted rating values for the contributing factors, a neuro-fuzzy bank used to calibrate the contributing factors by mapping the adjusted rating values for the contributing factors to generate corresponding numerical parameter values, and a module that applies an algorithmic model (e.g. COCOMO) to produce one or more software output metrics.

43 citations


Proceedings ArticleDOI
18 Oct 2008
TL;DR: The aim of this survey is to analyze the use of fuzzy logic in the existing models and to provide in depth review of software and project estimation techniques existing in industry and literature, its strengths and weaknesses.
Abstract: Most of the software estimates should be performed at the beginning of the life cycle, when we do not yet know the problem we are going to solve. Effort estimation is used to predict how many hours of work and how many workers are needed to develop a project. The effort invested in a software project is probably one of the most important and most analyzed variables in recent years in the process of project management. Estimating the effort with a high grade of reliability is a problem which has not yet been solved and even the project manager has to deal with it since the beginning. Fuzzy systems try to emulate cognitive processes of the brain with a rule base. The basic concept is inspired by the human processes where the decisional criteria are not clear cut, but blurred and it is difficult to find objective to make the decisions more precise and clear. Fuzzy decision systems are based on fuzzy logic that tries to reproduce the fuzzy human reasoning. The aim of this survey is to analyze the use of fuzzy logic in the existing models and to provide in depth review of software and project estimation techniques existing in industry and literature, its strengths and weaknesses.

43 citations


Cites background or methods from "FULSOME: a fuzzy logic modeling too..."

  • ...One of the major researches into fuzzy logic application to cost estimation is that of MacDonell et al.[21]....

    [...]

  • ...FULSOME was developed [20, 21, 22] using fuzzy logic to help software metricians in data acquisition, model expression and knowledge gathering issues....

    [...]


References
More filters

Book
01 Jan 2013
TL;DR: The Second Edition of Software Metrics provides an up-to-date, coherent, and rigorous framework for controlling, managing, and predicting software development processes.
Abstract: From the Publisher: The Second Edition of Software Metrics provides an up-to-date, coherent, and rigorous framework for controlling, managing, and predicting software development processes. With an emphasis on real-world applications, Fenton and Pfleeger apply basic ideas in measurement theory to quantify software development resources, processes, and products. The book offers an accessible and comprehensive introduction to software metrics, now an essential component of software engineering for both classroom and industry. Software Metrics features extensive case studies from Hewlett Packard, IBM, the U.S. Department of Defense, Motorola, and others, in addition to worked examples and exercises. The Second Edition includes up-to-date material on process maturity and measurement, goal-question-metric, planning a metrics program, measurement in practice, experimentation, empirical studies, ISO9216, and metric tools.

2,781 citations


"FULSOME: a fuzzy logic modeling too..." refers background in this paper

  • ...Software metrics is the field of research and practice that involves investigating the characteristics of and relationships between sets of attributes associated with software development projects, usually in terms of products, processes, and resources [1]....

    [...]


Journal ArticleDOI
TL;DR: The use of regression analysis to derive predictive equations for software metrics has recently been complemented by increasing numbers of studies using non-traditional methods, such as neural networks, fuzzy logic models, case-based reasoning systems, and regression trees.
Abstract: The use of regression analysis to derive predictive equations for software metrics has recently been complemented by increasing numbers of studies using non-traditional methods, such as neural networks, fuzzy logic models, case-based reasoning systems, and regression trees. There has also been an increasing level of sophistication in the regression-based techniques used, including robust regression methods, factor analysis, and more effective validation procedures. This paper examines the implications of using these methods and provides some recommendations as to when they may be appropriate. A comparison of the various techniques is also made in terms of their modelling capabilities with specific reference to software metrics.

196 citations


Journal ArticleDOI
TL;DR: A new consistent and robust method called the least-squares of inverted balanced relative errors (LIRS) is proposed and its superiority to the ordinary least-Squares method is demonstrated by use of five actual data sets.
Abstract: To develop a good software estimation model fitted to actual data, the evaluation criteria of goodness of fit is necessary. The first major problem discussed here is that ordinary relative error used for this criterion is not suitable because it has a bound in the case of under-estimation and no bound in the case of overestimation. We propose use of a new relative error called balanced relative error as the basis for the criterion and introduce seven evaluation criteria for software estimation models. The second major problem is that the ordinary least-squares method used for calculation of parameter values of a software estimation model is neither consistent with the criteria nor robust enough, which means that the solution is easily distorted by outliers. We propose a new consistent and robust method called the least-squares of inverted balanced relative errors (LIRS) and demonstrates its superiority to the ordinary least-squares method by use of five actual data sets. Through the analysis of these five data sets with LIRS, we show the importance of consistent data collection and development standarization to develop a good software sizing model. We compare goodness of fit between the sizing model based on the number of screens, forms, and files, and the sizing model based on the number of data elements for each of them. Based on this comparison, the validity of the number of data elements as independent variables for a sizing model is examined. Moreover, the validity of increasing the number of independent variables is examined.

171 citations


"FULSOME: a fuzzy logic modeling too..." refers background in this paper

  • ...Even once sufficient quantities of data are available, data purity is generally difficult to ascertain – necessitating some treatment of unusual observations [4]....

    [...]


Proceedings ArticleDOI
21 Sep 1997
TL;DR: Software metrics are measurements of the software development process and product that can be used as variables (both dependent and independent) in models for project management and the use of alternative techniques, especially fuzzy logic, is investigated and some usage recommendations are made.
Abstract: Software metrics are measurements of the software development process and product that can be used as variables (both dependent and independent) in models for project management. The most common types of these models are those used for predicting the development effort for a software system based on size, complexity, developer characteristics, and other metrics. Despite the financial benefits from developing accurate and usable models, there are a number of problems that have not been overcome using the traditional techniques of formal and linear regression models. These include the nonlinearities and interactions inherent in complex real-world development processes, the lack of stationarity in such processes, over-commitment to precisely specified values, the small quantities of data often available, and the inability to use whatever knowledge is available where exact numerical values are unknown. The use of alternative techniques, especially fuzzy logic, is investigated and some usage recommendations are made.

84 citations


"FULSOME: a fuzzy logic modeling too..." refers background in this paper

  • ...Fuzzy logic has recently gained a greater amount of attention in the software metrics literature as a means for solving some of these long-standing problems [2, 3]....

    [...]