Code reviews were conducted on a regular basis both formally and informally during the various development iterations. Many issues were raised with the architecture, design, and coding style. Many of the issues were attributed to having a fresh group of individuals with very diverse coding backgrounds. We used information collected from metrics to target various portions of the code for these reviews. The original criteria that we defined was as follows:
Has the design properly been translated into code?
Are there misspellings and typos?
Has proper use of language conventions been made?
Is there compliance with coding standards for language style, comments, module prologue?
Are there incorrect or ambiguous comments?
Are comments useful or are they simply alibis for poor coding?
Are data types and data declarations proper?
Are there redundant operations for which there is no compensating benefit?
Has maintainability been considered?
Are all defined data used?
Are all non loop dependent computations kept out of loop?
Are all compound expressions defined once?
Are data grouped for efficient processing?
Are data indexed and referenced for efficient processing?
Is allocated memory de-allocated?
Following are the architecture and code reviews conducted during the sesmester: