• DocumentCode
    2697251
  • Title

    Tool support for design by contract

  • Author

    Plosch, Reinhold

  • Author_Institution
    Doppler Lab. for Software Eng., Johannes Kepler Univ., Linz, Austria
  • fYear
    1998
  • fDate
    3-7 Aug 1998
  • Firstpage
    282
  • Lastpage
    294
  • Abstract
    Numerous experience reports indicate that prototyping is a serious and successful development strategy. The author believes that it is not sufficient to provide graphical notations for object-oriented analysis, but that the notation of contracts in conjunction with prototyping i.e., building executable models, is the proper technique for mastering complexity and gaining insights into a problem domain. He therefore developed a set of tools that is especially suitable for functional prototyping and for architectural prototyping. The underlying prototyping model is based on object orientation and assertions. The infrastructure tools are implemented with the object-oriented programming language, Python, while the high-level tools (assertion browser and graphically oriented debugger for assertions) are implemented in C++. The two parts of the system are tightly connected by means of the API provided by Python. Although the tool support provided covers the core tasks for functional prototyping and for architecture prototyping, additional support for evolutionary software development and for higher level techniques for requirements elicitation, e.g., for scenario oriented (use case oriented) analysis is desired
  • Keywords
    formal specification; functional programming; object-oriented methods; object-oriented programming; software prototyping; software tools; API; C++ language; Python object-oriented programming language; architectural prototyping; assertions; complexity; design by contract; evolutionary software development; functional prototyping; high-level tools; infrastructure tools; object orientation; object-oriented analysis; prototyping; prototyping model; requirements elicitation; scenario oriented analysis; tool support; Buildings; Computer architecture; Computer languages; Contracts; Electrical capacitance tomography; Job shop scheduling; Laboratories; Prototypes; Software prototyping; User interfaces;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Technology of Object-Oriented Languages, 1998. TOOLS 26. Proceedings
  • Conference_Location
    Santa Barbara, CA
  • Print_ISBN
    0-8186-8482-8
  • Type

    conf

  • DOI
    10.1109/TOOLS.1998.711020
  • Filename
    711020