home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!nntp1.radiomail.net!cronos!mandor!neff
- From: neff@mandor.metaphor.com (Randall Neff)
- Newsgroups: comp.object
- Subject: Re: OO Software Metrics: beyond lines of code
- Message-ID: <2427@cronos.metaphor.com>
- Date: 14 Aug 92 16:15:51 GMT
- References: <RHARMON.92Aug11164255@triton.srg>
- Sender: news@cronos.metaphor.com
- Distribution: comp.object
- Organization: Metaphor Computer Systems, Mountain View, CA
- Lines: 38
-
-
- Two Ignored Research Topics:
- (Watch out for people proposing software metrics unless they
- personally write large programs.)
-
-
- 1. There needs to be a metric that measures the quality/completeness of the
- documentation:
- Every method has its pre-conditions and post-conditions listed.
- Does the method change the object's internal state?
- Every parameter to every method has ranges listed (what about null
- pointers?).
- Every method has its exceptional behavior listed, its error conditions
- and what it does about them.
- Every method has a O() performance function.
- Every method describes any memory allocation (how many bytes) and
- memory deallocation. (This is very tricky with reference counted
- objects).
- Every object with internal state has invariants listed.
- The size of an object in bytes is listed (or a formula, watch out for
- what malloc really does in terms of allocation).
- Every class has a complete list of all (ALL!) methods that it supports,
- identifying which parent class each method is inherited from. This
- is extremely important for multiple inheritence.
-
-
- 2. There needs to be a metric on uniformity of methods (ie every class has
- a required set of methods):
- The class of every object can be determined at run time.
- Every object can print (or write/read to a file) its contents.
- The correctness of the contents of an object can be checked.
- Each object has deep and shallow copy, deep and shallow equality.
- It is possible to enumerate over all objects of a class.
-
-
- Randall Neff, Ph.D.
- (Personal opinion, not those of Metaphor.)
-
-