Improving the Quality of Use Case Models and their Utilization in Software Development

  • Author / Creator
    El-Attar, Mohamed
  • Use Case modeling has been constantly gaining popularity as the technique of choice for eliciting and documenting functional requirements. The deployment of Use Case models in industry has resulted in many positive experience reports being published. The inclusion of Use Case modeling into the Unified Modeling Language (UML) (OMG 2005) has aided its widespread use in industry, especially within the object-oriented community. One of the most attractive aspects of Use Case modeling is its technical simplicity, allowing stakeholders with differing backgrounds, to have a common understanding of the requirements. This technical simplicity can be deceptive, as many modelers create models that are incorrect, inconsistent, and ambiguous and contain restrictive design decisions. In Use Case driven development processes, Use Case models are used to drive the design and test phases. While a number of techniques have been proposed to develop test cases from Use Case models, these techniques tend to suffer from two major shortcomings. The techniques are technically too complex to be effectively used by its potential users (business analysts and customers); and the inability to use these techniques in the early stages of development. This thesis describes work tackling these deficiencies. Support for developing higher quality Use Case models is achieved by developing a modeling syntax that ensures consistency when constructing Use Case models. A controlled experiment was performed to empirically evaluate the effectiveness of using the modeling syntax. In addition, a technique based on utilizing antipatterns to detect potentially defective areas in Use Case models was developed. The technique prompts modelers to revise and remedy poor design decisions, yielding superior quality models. Finally, a framework was developed, which utilizes Use Case models, to develop acceptance tests. The framework was designed to account for the technical abilities of its potential users.

  • Subjects / Keywords
  • Graduation date
  • Type of Item
  • Degree
    Doctor of Philosophy
  • DOI
  • License
    This thesis is made available by the University of Alberta Libraries with permission of the copyright owner solely for non-commercial purposes. This thesis, or any portion thereof, may not otherwise be copied or reproduced without the written consent of the copyright owner, except to the extent permitted by Canadian copyright law.
  • Language
  • Institution
    University of Alberta
  • Degree level
  • Department
    • Department of Electrical and Computer Engineering
  • Supervisor / co-supervisor and their department(s)
    • Dr. James Miller
  • Examining committee members and their departments
    • Dr. Jim Hoover (Computing Science)
    • Dr. Philipe Kruchten (University of British Columbia)
    • Dr. Alan Lynch (Electrical and Computer Engineering)
    • Dr. Scott Dick (Electrical and Computer Engineering)
    • Dr. Marek Reformat (Electrical and Computer Engineering)