IBM Journal of Research and Development
IBM Skip to main content
  Home     Products & services     Support & downloads     My account  

  Select a country  
Journals Home  
  Systems Journal  
Journal of Research
and Development
    Current Issue  
    Recent Issues  
    Papers in Progress  
    Recent publications  
    Author's Guide  
  Contact Us  
  Related links:  
     IBM Research  

IBM Journal of Research and Development  
Volume 28, Number 1, Page 15 (1984)
Software Quality
  Full article: arrowPDF   arrowCopyright info


Combined Network Complexity Measures

by N. R. Hall, S. Preiser
Most of the considerable work that has been done in the measurement of software complexity during the past several years has addressed complexity measurement of source code or design languages. Here we describe techniques to measure the complexity of large (>100,000 source lines of code) systems during the software architecture phase, before major design decisions have been made. The techniques to measure and reduce complexity are intuitively reasonable, easy to apply, and produce consistent results. Methods developed include (1) an extension of the graph-theoretic measure developed by McCabe to software architecture, as represented by networks of communicating modules, (2) a general technique that allows the complexity associated with allocation of resources (CPU, tape, disk, etc.) to be measured, and (3) a method that combines module complexity and network complexity, so that design trade-offs can be studied to determine whether it is advantageous to have separate modules for service functions, such as mathematical subroutines, data management routines, etc.
Related Subjects: Complexity; Programming, programs, and programming languages; Software reliability