Path: utzoo!utgpu!water!watmath!clyde!rutgers!ukma!psuvm.bitnet!uh2 From: UH2@PSUVM.BITNET (Lee Sailer) Newsgroups: comp.software-eng Subject: Re: program complexity metrics Message-ID: <28001UH2@PSUVM> Date: 18 Dec 87 14:26:39 GMT References: <561@ndsuvax.UUCP> <3850002@wdl1.UUCP> <242@pedsga.UUCP> <2252@dasys1.UUCP> Organization: The Pennsylvania State University - Computation Center Lines: 22 This is an interesting topic. How would YOU "measure" the complexity of a module? How can we "validate" the measures? The thru a module doesn't impress me at all. A very simple module constructed from a sequence of big CASE or SWITCH statements will have many paths, but is easy to understand. How 'bout a measure based on the *hierarchy* of Data Flow Diagrams? For example, some modules might have a simple top level, with increasing complexity as you break down each level. Another module might have a complex top level, but the lower levels might be simple. Which is more complex overall, the first or the second? My *guess* is that the first is simpler, overall, on the principle that it hides the complexity. Yet, it probably has more paths, more tokens, more ifs, ands, and whiles (fewer gotos?). The main point is that the COMPLEXITY of a module depends to some extent on how detailed an understanding of the module you want or need. lee