• DocumentCode
    1652952
  • Title

    Formal verification of requirements using SPIN: a case study on Web services

  • Author

    Kazhamiakin, Raman ; Pistore, Marco ; Roveri, Marco

  • Author_Institution
    DIT, Trento Univ., Italy
  • fYear
    2004
  • Firstpage
    406
  • Lastpage
    415
  • Abstract
    In this paper we describe a novel approach for the formal specification and verification of distributed processes in a Web service framework. The formal specification is provided at two different levels of abstraction. The strategic level describes the requirements of the Web service domain, in terms of the different actors participating to it, with their goals and needs and with their mutual dependencies and expectations. The process level shows how these requirements are operationalized into communicating processes running on the different Web servers. We model the strategic level exploiting Formal Tropos (FT), a language for the formal definition of the requirements of agent-oriented systems which is based on linear time logic. We model the process level using Promela, a language designed to describe communicating concurrent processes and amenable to formal verification. We exploit the SPIN model checker to perform V&V tasks. At the strategic level, requirements are validated against queries formulated by the designer while at the process level the Promela specifications are verified against the requirements. The implementation of these V&V tasks requires the definition of a novel procedure to encode the FT requirements in Promela. The experiments described in the paper show that the approach is effective in revealing possible flaws both in the strategic and in the process models.
  • Keywords
    Internet; distributed processing; formal specification; formal verification; object-oriented programming; specification languages; Formal Tropos; Promela language; Promela specification; SPIN model checker; V&V tasks; Web servers; Web services; agent-oriented systems; communicating concurrent process; distributed processes; formal specification; linear time logic; process level; process model; requirement formal verification; Computer aided software engineering; Formal specifications; Formal verification; Logic; Natural languages; Performance analysis; Programming; Software engineering; Web server; Web services;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering and Formal Methods, 2004. SEFM 2004. Proceedings of the Second International Conference on
  • Print_ISBN
    0-7695-2222-X
  • Type

    conf

  • DOI
    10.1109/SEFM.2004.1347546
  • Filename
    1347546