• DocumentCode
    2003679
  • Title

    Design tests: An approach to programmatically check your code against design rules

  • Author

    Brunet, JoÃo ; Guerrero, Dalton ; Figueiredo, Jorge

  • Author_Institution
    Dept. of Comput. Sci., Fed. Univ. of Campina Grande, Campina Grande
  • fYear
    2009
  • fDate
    16-24 May 2009
  • Firstpage
    255
  • Lastpage
    258
  • Abstract
    Assuring that a program conforms to its specification is a key concern in software quality assurance. Although there is substantial tool support to check whether an implementation complies to its functional requirements, checking whether it conforms to its design remains as an almost completely manual activity. In this paper, we present the concept of design tests, which are test-like programs that automatically check whether an implementation conforms to a specific design rule. Design rules are implemented directly in the target programming language in the form of tests. As a proof of concept, we present DesignWizard, an API developed to support design tests for Java programs as JUnit test cases. We applied design tests in two case studies and observed that our approach is suitable to check conformance automatically. Moreover, we observed that designers and programmers appreciate design tests as an executable documentation that can be easily kept up to date.
  • Keywords
    Java; application program interfaces; formal specification; program testing; program verification; software quality; API; DesignWizard; JUnit test case; Java program; code checking; design test; functional requirement; software quality assurance; Algorithm design and analysis; Automatic testing; Computer languages; Computer science; Documentation; Java; Programming profession; Software quality; Software testing; XML;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering - Companion Volume, 2009. ICSE-Companion 2009. 31st International Conference on
  • Conference_Location
    Vancouver, BC
  • Print_ISBN
    978-1-4244-3495-4
  • Type

    conf

  • DOI
    10.1109/ICSE-COMPANION.2009.5070995
  • Filename
    5070995