Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Computational intelligence and quantitative software engineering
Pedrycz W., Succi G., Sillitti A., Springer Publishing Company, Incorporated, New York, NY, 2016. 207 pp. Type: Book (978-3-319259-62-8)
Date Reviewed: Mar 25 2016

An overview of the current state of the art in the use of computational intelligence in software engineering is presented in this book. It is important to note that the term computational intelligence as used by the editors refers to the use of numerically intensive methods from artificial intelligence. Included in this term are neural networks, evolutionary techniques, and fuzzy set techniques. The book consists of nine chapters.

Chapter 1 is an introduction to the role that computational intelligence can play in quantitative software engineering, and chapter 2 gives an introduction to computational intelligence. These two chapters are followed by seven chapters that discuss applications of computational intelligence in software engineering.

The introduction uses the example of making a cup of cappuccino to motivate the book’s material. The authors of the chapter conclude that computational intelligence is particularly suited to the handling of uncertainty, complexity, and what the authors call nonreversibility, which is a consequence of the nonlinearity of solutions in software engineering. The chapter introducing computational intelligence provides a high-level overview of the methods of computational intelligence. A bibliography provides for further reading.

The seven chapters describe a number of applications. The titles of the chapters are all quite descriptive, so it is worth mentioning them here with brief descriptions for each one.

“Towards Bench Marking Feature Subset Selection Methods for Software Fault Prediction” considers several examples of systems for reducing the number of features considered for the prediction of software faults. The authors consider information gain; relief, an instance-based attribute ranking algorithm; principal component analysis; correlation-based feature selection; and genetic programming as feature reduction methods. These are compared on five datasets.

In “Evolutionary Computing for Software Product Line Testing: An Overview and Open Challenges,” a product line is a collection of modules that can be configured to provide a number of different products. The idea here is to find testing methods for the modules and their interconnections that will be effective and less overwhelming than testing the complete products. The goal is to find a set of test suites for products in the line that cover all the modules. A graphics package is used as a concrete instance of a product line, which helps the reader understand the authors’ intentions.

In “Metaheuristic Optimisation and Mutation-Driven Test Data Generation,” a mutant is a version of a program with small syntactic changes. The quality of a test can be measured in terms of its ability to catch mutants. The author provides an algorithm for evolving improved tests as well as discussing a swarm intelligence approach. The metaheuristics are compared based on empirical studies. A useful table summarizes the studies.

The author of “Measuring the Utility of Functional Based Software Using Centroid-Adjusted Class Labeling,” describes how a strategy of adjusting the class labels assigned by an external reference compensates for imprecision in the external assignment. The method has been applied to a biomedical data analysis software system written in a functional programming style. The functional style allows for a compositional view of the software.

The authors of “Toward Accurate Software Effort Prediction Using Multiple Classifier Systems” tested a number of techniques for combining classifiers, such a boosting, bagging, stacking, and others, to improve the accuracy of classification on ten industrial datasets. The authors conclude that boosting and bagging are effective techniques in this context.

“Complex Fuzzy Logic Reasoning-Based Methodologies for Quantitative Software Requirements Specifications” makes use of complex numbers to model fuzzy classes where there are two degrees of membership being considered. The use of complex numbers is a simple bookkeeping device as no use is made of their multiplicative structure. However, the fuzzy logical connectives are generalized to this complex situation.

The authors of “Possibilistic Assessment of Process-Related Disclosure Risks in the Cloud” provide an overall methodology that uses possibility theory to assess risk in cloud-based applications. The significance of using possibility rather than probability is its use of two dual evaluations, possible and necessary, to weigh risks. The authors describe how possibilities may be computed in the context of the cloud.

Each application chapter concludes with a comprehensive bibliography. Thus, each application chapter serves as an introduction to the use of some computational intelligence techniques for a measurement problem in software engineering. The reader will need to invest further effort to make use of the ideas.

The book can be recommended to practitioners interested in improving their quantitative evaluations in the field of software engineering.

Reviewer:  J. P. E. Hodgson Review #: CR144260 (1606-0371)
Bookmark and Share
  Reviewer Selected
Featured Reviewer
 
 
Metrics (D.2.8 )
 
 
Applications And Expert Systems (I.2.1 )
 
 
Knowledge Representation Formalisms And Methods (I.2.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Metrics": Date
A comparison of time domains for software reliability models
Musa J., Okumoto K. Journal of Systems and Software 4(4): 277-287, 1984. Type: Article
May 1 1985
On software equations
Král J. Information Processing Letters 19(4): 191-196, 1984. Type: Article
Jun 1 1985
Software metrics: establishing a company-wide program
Grady R., Caswell D., Prentice-Hall, Inc., Upper Saddle River, NJ, 1987. Type: Book (9789780138218447)
Apr 1 1988
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy