• DocumentCode
    746847
  • Title

    Theory of Modules

  • Author

    Gannon, John D. ; Hamlet, Richard G. ; Mills, Harlan D.

  • Author_Institution
    Department of Computer Science and the Institute for Advanced Computer Studies, University of Maryland
  • Issue
    7
  • fYear
    1987
  • fDate
    7/1/1987 12:00:00 AM
  • Firstpage
    820
  • Lastpage
    829
  • Abstract
    Because large-scale software development is a struggle against internal program complexity, the modules into which programs are divided play a central role in software engineering. A module encapsulating a data type allows the programmer to ignore both the details of its operations, and of its value representations. It is a primary strength of program proving that as modules divide a program, making it easier to understand, so do they divide its proof. Each module can be verified in isolation, then its internal details ignored in a proof of its use. This paper describes proofs of module abstractions based on functional semantics, and contrasts this with the Alphard formalism based on Hoare logic.
  • Keywords
    Abstract data types; functional semantics; modules; program specifications; program verification; programming methodology; Computer languages; Computer science; Concrete; Encapsulation; Functional programming; Large-scale systems; Logic programming; Milling machines; Programming profession; Software engineering; Abstract data types; functional semantics; modules; program specifications; program verification; programming methodology;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.1987.233493
  • Filename
    1702293