Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Measuring the strength of information flows in programs
Masri W., Podgurski A. ACM Transactions on Software Engineering and Methodology19 (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)
Bookmark and Share
  Reviewer Selected
Editor Recommended
Featured Reviewer
 
 
Information Flow Controls (D.4.6 ... )
 
 
Statistical Methods (D.2.4 ... )
 
 
Testing Tools (D.2.5 ... )
 
 
Software/ Program Verification (D.2.4 )
 
 
Testing And Debugging (D.2.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Information Flow Controls": Date
Protecting privacy using the decentralized label model
Myers A., Liskov B. ACM Transactions on Software Engineering and Methodology 9(4): 410-442, 2000. Type: Article
Apr 1 2001
Buffer overflow and format string overflow vulnerabilities
Lhee K., Chapin S. Software--Practice & Experience 33(5): 423-460, 2003. Type: Article
Aug 4 2003
A Hookup Theorem for Multilevel Security
McCullough D. IEEE Transactions on Software Engineering 16(6): 563-568, 1990. Type: Article
Apr 1 1991
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