Capital Budgeting Spreadsheet Code Inspection at NYNEX

Information Supplied by Lee Hicks, Staff Director, Capital Management, NYNEX

Writeup by Ray Panko, University of Hawaii

 

This report describes the 3-person team code inspection of a spreadsheet developed at NYNEX, the largest regional telecommunications company in the Northeastern part of the United States.

This very large spreadsheet was developed to plan NYNEX's annual capital budget. In an organization the size of NYNEX, this involves billions of dollars annually. The spreadsheet was carefully developed by a team of four, with the help of mathematicians. After the spreadsheet was developed Lee Hicks, carefully studied the spreadsheet for errors and compared results with historical data, finding and fixing several errors.

When the development was complete, the spreadsheet was thoroughly code inspected by teams of three, which included the developer, someone else from inside the development group, and someone from outside the development group. Code inspection was done module by module. There were six modules. This report describes the code inspection of the largest module. The inspection was done in 1995.

During the code inspection, the developer explained the worksheet and how it related to the model as a whole. The developer then explained the logic in detail. The team verified formulas and checked cell references. Most submodules had 23 rows. In each column, one row's cell was studied in detail and the others were checked for consistency. At times, test data were used to study portions of the submodule. The audit make extensive use of Excel's auditing features, including the showing of arrows pointing to precedents and descendants.

This module had a number of submodule. This report includes data from the code inspection of the largest module, which contained 3,856 cells. There were 19 submodules, ranging from 46 cells to 667 cells. Their average size was 203 cells.

Here are the results

Did the inspection find all the errors in the module? In team code inspection in programming, it is common to catch about 80% of all errors. This suggests that if the team found 45 errors, there is a good chance that it missed a few others.

Here is the error data by submodule:

 

Module

Cells

Errors

5

46

0

9

92

4

13

92

0

15

92

0

6

115

0

11

115

0

19

115

0

7

130

0

12

138

7

14

138

0

2

161

0

3

161

0

17

161

2

18

207

0

16

276

0

4

345

0

1

391

16

10

414

0

8

667

16

Total

3856

45