Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Recommended by Editor Recommended by Reviewer Recommended by Reader
Search
Measuring the strength of information flows in programs
Masri W., Podgurski A.  ACM Transactions on Software Engineering and Methodology 19 (2): 1-33, 2009. Type: Article
Date Reviewed: Feb 2 2010

A detailed analysis of the use of correlation and entropy measures to examine the relationship between data and control variables, as accessed by different programs, is presented in this paper. The idea is to see if, by exhaustively testing only certain segments of a program that frequently reference the same data, we can still obtain reasonably trustworthy software. Unfortunately, the answer is shown to be no.

The following conclusions are presented: “dynamic program dependence is not necessarily indicative of actual information flow in real programs”; “the length of an information flow is not indicative of its strength (importance)”; and “long flows are not generally less significant than short flows and should not be dismissed without further (extensive) examination.”

The paper is scholarly and seems complete, with appropriate cautions about the few programs examined. The authors use an interesting three-way triangulation to bind their results. Unless you are fascinated by the insightful approach first laid out by software theory giants Dorothy and Peter Denning, accept the conclusion that you must examine the entire program to make sure it works; there are no shortcuts.

The authors write clearly and their introduction and conclusion sections are erudite and wonderful. If you are working in this software engineering field, the paper is worth studying. If you are a practitioner who is looking for ways to skip software analysis and testing, you will be disappointed. It’s too bad that Masri and Podgurski’s truly professional analysis has not yielded breakthrough results, but they confirm what practitioners already know: namely, that it is vital to test and examine the test cases derived from the requirements and the use case scenarios. The nature of software execution remains chaotic and small errors in infrequently referenced shared data or control structures can lead to catastrophic results.

Reviewer:  Larry Bernstein Review #: CR137691 (1006-0596)
  Reviewer Selected
Editor Recommended
 
 
Information Flow Controls (D.4.6 ... )
 
 
Software/ Program Verification (D.2.4 )
 
 
Statistical Methods (D.2.4 ... )
 
 
Testing And Debugging (D.2.5 )
 
 
Testing Tools (D.2.5 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Information Flow Controls": Date
Perfect storm: the insider, naivety, and hostility
Thompson H., Ford R.  Queue 2(4): 58-65, 2004. Type: Article
Aug 16 2005
Forensic discovery
Farmer D., Venema W.,  Addison Wesley Professional, 2004.Type: Book
May 3 2005
Buffer overflow and format string overflow vulnerabilities
Lhee K., Chapin S.  Software--Practice & Experience 33(5): 423-460, 2003. Type: Article
Aug 4 2003
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright © 2000-2010 Reviews.com
Terms of Use
| Privacy Policy