Path: utzoo!utgpu!water!watmath!clyde!rutgers!husc6!necntc!dandelion!ulowell!apollo!marc From: marc@apollo.uucp (Marc Gibian) Newsgroups: comp.software-eng Subject: Re: program complexity metrics Summary: current complexity metrics do NOT improve code Message-ID: <392487e8.fed5@apollo.uucp> Date: 18 Dec 87 18:05:00 GMT References: <561@ndsuvax.UUCP> <3850002@wdl1.UUCP> <242@pedsga.UUCP> Reply-To: marc@apollo.UUCP (Marc Gibian) Organization: Apollo Computer, Chelmsford, MA Lines: 31 The current crop of complexity measures do NOT improve the code. There is an excellent article in a past ACM Communications on this issue. The conclusions of the acticle match the experiences of a major software organization in Raytheon. I will take the liberty here to summarize the ACM article since I forget the issue number. The basic conclusion of the article is that no complexity measure currently exists that has been designed specifically for the purpose for which it is being used by software developers. Secondly, current complexity measures do not validate when tested against these software development goals. The application of complexity measures at Raytheon, required by almost every software contract there, is usually accomplished by requiring that every module (however a module is defined) has a set of complexity values less than some arbitrary number. Unfortunately, the process of reducing the measured complexity of a module most often decreased the quality of the module, made it harder to maintain, harder to understand, and generally did not accomplish the intended goal. I can provide specific examples if anyone is interested. I believe that a measure designed specifically to accomplish software development goals, and validated against those goals, could be quite helpful. In the meantime, I think it is very dangerous to use the current instruments since they mislead management and customers into believing they have a good means of measuring some aspects of their software. Marc S. Gibian Software Engineer Apollo Computer email: marc@apollo.UUCP