• DocumentCode
    2332690
  • Title

    Structural conformance checking with design tests: An evaluation of usability and scalability

  • Author

    Brunet, João ; Serey, Dalton ; Figueiredo, Jorge

  • Author_Institution
    Dept. of Comput. Sci./DSC, Software Practices Lab./SPLab, Paraíba, Brazil
  • fYear
    2011
  • fDate
    25-30 Sept. 2011
  • Firstpage
    143
  • Lastpage
    152
  • Abstract
    Verifying whether a software meets its functional requirements plays an important role in software development. However, this activity is necessary, but not sufficient to assure software quality. It is also important to check whether the code meets its design specification. Although there exists substantial tool support to assure that a software does what it is supposed to do, verifying whether it conforms to its design remains as an almost completely manual activity. In a previous work, we proposed design tests - test-like programs that automatically check implementations against design rules. Design test is an application of the concept of test to design conformance checking. To support design tests for Java projects, we developed DesignWizard, an API that allows developers to write and execute design tests using the popular JUnit testing framework. In this work, we present a study on the usability and scalability of DesignWizard to support structural conformance checking through design tests. We conducted a qualitative usability evaluation of DesignWizard using the Think Aloud Protocol for APIs. In the experiment, we challenged eleven developers to compose design tests for an open-source software project. We observed that the API meets most developers´ expectations and that they had no difficulties to code design rules as design tests. To assess its scalability, we evaluated DesignWizard´s use of CPU time and memory consumption. The study indicates that both are linear functions of the size of software under verification.
  • Keywords
    Java; application program interfaces; conformance testing; formal specification; program diagnostics; program testing; program verification; public domain software; software performance evaluation; software quality; API; DesignWizard; JUnit testing framework; Java projects; Think Aloud Protocol; design tests; functional requirements; open-source software project; software design specification; software development; software quality; software scalability evaluation; software usability evaluation; software verification; structural conformance checking; Calculators; Java; Protocols; Scalability; Testing; Usability; design test; strucutural conformance checking;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Maintenance (ICSM), 2011 27th IEEE International Conference on
  • Conference_Location
    Williamsburg, VI
  • ISSN
    1063-6773
  • Print_ISBN
    978-1-4577-0663-9
  • Electronic_ISBN
    1063-6773
  • Type

    conf

  • DOI
    10.1109/ICSM.2011.6080781
  • Filename
    6080781