Specifying and Checking Protocols of Multithreaded Classes

C. Hurlin

    Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

    9 Citations (Scopus)

    Abstract

    In the Design By Contract (DBC) approach, programmers specify methods with pre and postconditions (also called contracts). Earlier work added protocols to the DBC approach to describe allowed method call sequences for classes. We extend this work to deal with a variant of generic classes and multithreaded classes. We present the semantical foundations of our extension. We describe a new technique to check that method contracts are correct w.r.t. to protocols. We show how to generate programs that must be proven to show that method contracts are correct w.r.t. to protocols. Because little support currently exists to help writing method contracts, our technique helps programmers to check their contracts early in the development process.
    Original languageUndefined
    Title of host publicationProceedings of the 24th Annual ACM Symposium on Applied Computing
    Place of PublicationNew York
    PublisherAssociation for Computing Machinery (ACM)
    Pages587-592
    Number of pages6
    ISBN (Print)978-1-60558-166-8
    DOIs
    Publication statusPublished - 9 Mar 2009
    Event24th Annual ACM Symposium on Applied Computing, SAC 2009 - Honolulu, United States
    Duration: 8 Mar 200912 Mar 2009
    Conference number: 24
    https://www.sigapp.org/sac/sac2009/

    Publication series

    Name
    PublisherACM

    Conference

    Conference24th Annual ACM Symposium on Applied Computing, SAC 2009
    Abbreviated titleSAC
    CountryUnited States
    CityHonolulu
    Period8/03/0912/03/09
    Other8-12 March 2009
    Internet address

    Keywords

    • Protocols
    • Object Orientation
    • EWI-15320
    • METIS-263831
    • Design By Contract
    • Multithreading
    • IR-65479

    Cite this

    Hurlin, C. (2009). Specifying and Checking Protocols of Multithreaded Classes. In Proceedings of the 24th Annual ACM Symposium on Applied Computing (pp. 587-592). [10.1145/1529282.1529407] New York: Association for Computing Machinery (ACM). https://doi.org/10.1145/1529282.1529407