Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The structure and value of modularity in software design
Sullivan K., Griswold W., Cai Y., Hallen B. ACM SIGSOFT Software Engineering Notes26 (5):99-108,2001.Type:Article
Date Reviewed: Jun 10 2002

The authors propose a way to determine the optimum choice of module design for a new computer system. This process is an augmentation of work that was done by Parnas in 1972 [1]. Both Parnas’s work and this document are based on the philosophy that if you design modules in an optimum fashion, you will minimize rework and maximize reuse if the system is later modified. Such modification happens either because of a change in the problem statement, or because a better algorithm becomes available.

The premise is that one constructs a design structure matrix (DSM) that identifies the alignment of modules and parameters. This matrix will show when a single parameter needs to be visible in more than one module. One then adjusts the module design, and adds additional parameters, with the intent of having each single parameter only visible in one module. Using this strategy, changing one module never affects others.

I agree with the authors’ premises, and, in reading the paper, the process seems to make sense. However, when reading the practical example (how to modularize a key word in context (KWIC) algorithm), it was not clear what the modules were, how they were chosen, or what the manipulations were. It is possible that if one went back to the paper by Parnas [1], all would become clear, but this paper does not stand by itself.

The research is important, but, without better elucidation, it probably will be hard to utilize in practice. The other obvious question is one of scalability. Even if this practice of design is clearly understood, it’s not clear that it could be used for any commercial offerings, most of which are far more complex than a KWIC algorithm.

Reviewer:  Charles W. Bash Review #: CR126141 (0208-0441)
1) Parnas, D.L. On the criteria to be used in decomposing system into modules. On the criteria to be used in decomposing system into modules 15, 12(1972), 1053–1058.See CR Rev. 25,197 (June 1973).
Bookmark and Share
 
Modules And Interfaces (D.2.2 ... )
 
Would you recommend this review?
yes
no
Other reviews under "Modules And Interfaces": Date
Putting a new face on APL2
Jensen J., Beaty K. IBM Systems Journal 30(4): 469-489, 1991. Type: Article
Dec 1 1993
An Ada/Fortran interfacing exercise
Ranier S. Journal of Pascal, Ada & Modula-2 6(1): 43-49, 1987. Type: Article
Jun 1 1988
C interfaces and implementations
Hanson D. (ed), Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1996. Type: Book (9780201498417)
Sep 1 1997
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