Software Engineering Principles 3-14 August 1981,

Abstract

This is the notebook from the updated edition of the well-received course originated by the Naval Research Laboratory and taught annually for the past six years. It is a two-week technical course for personnel managing a software project or designing software. The purpose of the course is to improve the participant's ability to evaluate software requirements, specifications, design, correctness, and maintainability. Its purpose is not to transform the participant into an expert software designer. The course concentrates on technical problems of software design. It introduces generally accepted design practices, as well as software design research that may result in practical design applications in the near future. Design for ease of maintenance is emphasized. All course material is unclassified. Topics covered include information-hiding modules (modules that isolate the effects of changes), abstract interfaces (a technique for designing the interfaces of information-hiding modules), responses to undesired events, cooperating sequential processes (in real-time systems, software tasks in which scheduling and resource allocation decisions are not embedded), disciplined documentation techniques, techniques for formal specification, and designing systems with useful subsets. (Author)

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Aug 01, 1981
Accession Number
ADA113415

Entities

People

  • C. L. Heitmeyer
  • D. L. Parnas
  • K. L. Britton
  • L. J. Chmura
  • P. C. Clements

Organizations

  • United States Naval Research Laboratory

Tags

Communities of Interest

  • C4I
  • Ground and Sea Platforms
  • Sensors
  • Space
  • Weapons Technologies

DTIC Thesaurus Topics

  • Assembly Languages
  • Complex Systems
  • Computer Languages
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Data Acquisition
  • Data Storage Systems
  • Language
  • Memory
  • Message Processing
  • Programming Languages
  • Software Development
  • Students
  • Systems Engineering
  • Test And Evaluation

Fields of Study

  • Computer science
  • Engineering

Readers

  • Academic Conference Management
  • Database Systems and Applications
  • Systems Analysis and Design