Accession Number : ADA113415

Title :   Software Engineering Principles 3-14 August 1981,


Personal Author(s) : Chmura,L J ; Clements,P C ; Heitmeyer,C L ; Britton,K L ; Parnas,D L

PDF Url : ADA113415

Report Date : Aug 1981

Pagination or Media Count : 581

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)

Descriptors :   *Computer programming, *Instruction manuals, *Teaching methods, Computer program documentation, User manuals, Test and evaluation, Specifications, Corrections, Maintainability, Training, Decision making, Interfaces, Sequences, Real time, Scheduling, Allocations, Resource management

Subject Categories : Humanities and History
      Computer Programming and Software

Distribution Statement : APPROVED FOR PUBLIC RELEASE