Evaluating Software Development by Error Analysis. The Data from the Architecture Research Facility.

Abstract

In software engineering, it is easy to propose techniques for improving software development but difficult to test the claims made for such techniques. This report suggests an error analysis technique for use in gathering data concerning the effectiveness of different software development methodologies. The principal features of the error analysis technique described are formulating questions of interest and a data classification scheme before collection begins, and interviewing of system developers concomitant with the development process to verify the accuracy of the data. The data obtained by using this technique during the development of a medium-size software development project are presented. This project was known as the Architecture Research Facility (ARF) and took about 10 months and 192 man-weeks of effort to develop. The ARF designers used the information-hiding principle to modularize the system, and interface specifications and high-level language coding specifications to express the design. Several error-detection aids were designed into the system to help detect run-time errors. In addition, quality control rules were established that required specification review before coding, and code review after compilation but prior to testing. A total of 143 errors was reported. Analysis of these errors showed that there were few problems caused by intermodule interfaces, that error corrections rarely required knowledge of more than one module, that most errors took less than a few hours to fix, and that error-detection aids detected more than half the errors that were potentially detectable by them. (Author)

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 22, 1978
Accession Number
ADA062922

Entities

People

  • David M. Weiss

Organizations

  • United States Naval Research Laboratory

Tags

Communities of Interest

  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Accuracy
  • Computer Programming
  • Computer Programs
  • Computers
  • Data Analysis
  • Debugging
  • Detection
  • Engineering
  • High Level Languages
  • Instruction Set Architecture
  • Programming Languages
  • Project Management
  • Quality Control
  • Research Facilities
  • Simulations
  • Software Development
  • Test And Evaluation

Fields of Study

  • Computer science
  • Engineering

Readers

  • Software Engineering.
  • Systems Analysis and Design