• Title of article

    Translation of Z specifications to executable code: Application to the database domain

  • Author/Authors

    Khalafinejad ، Fatemeh نويسنده Post graduate Student, Orthodontic Research Center, School of Dentistry, Shiraz University of Medical Sciences, Shiraz, Iran. , , Saeed and Mirian-Hosseinabadi، نويسنده , , Seyed-Hassan، نويسنده ,

  • Issue Information
    ماهنامه با شماره پیاپی سال 2013
  • Pages
    28
  • From page
    1017
  • To page
    1044
  • Abstract
    AbstractContext well-known that the use of formal methods in the software development process results in high-quality software products. Having specified the software requirements in a formal notation, the question is how they can be transformed into an implementation. There is typically a mismatch between the specification and the implementation, known as the specification-implementation gap. ive aper introduces a set of translation functions to fill the specification-implementation gap in the domain of database applications. We only present the formal definition, not the implementation, of the translation functions. se Z, SQL and Delphi languages to illustrate our methodology. Because the mathematical foundation of Z has many properties in common with SQL, the translation functions from Z to SQL are derived easily. For the translation of Z to Delphi, we extend Delphi libraries to support Z mathematical structures such as sets and tuples. Then, based on these libraries, we derive the translation functions from Z to Delphi. Therefore, we establish a formal relationship between Z specifications and Delphi/SQL code. To prove the soundness of the translation from a Z abstract schema to the Delphi/SQL code, we define a Z design-level schema. We investigate the consistency of the Z abstract schema with the Z design-level schema by using Z refinement rules. Then, by the use of the laws of Morgan refinement calculus, we prove that the Delphi/SQL code refines the Z design-level schema. s oposed approach can be used to build the correct prototype of a database application from its specification. This prototype can be evolved, or may be used to validate the software requirements specification against user requirements. sion ore, the work presented in this paper reduces the overall cost of the development of database applications because early validation reveals requirement errors sooner in the software development cycle.
  • Keywords
    Software Development , graphical user interface , PROTOTYPING , DATABASE , formal methods
  • Journal title
    Information and Software Technology
  • Serial Year
    2013
  • Journal title
    Information and Software Technology
  • Record number

    2375117