Article Preview
Top1. Introduction
Numerous studies have indicated the importance of identifying correct, adequate and unambiguous requirements for the success of software systems development (Lamsweerde, 2001; Vessay & Conger, 1994; Yeo, 2002; Valenti et al., 1998). Shemer (1983) stated that “ Requirements specification should reflect an understanding of a system, guide the subsequent design and programming phases, and serve as a basis for all communications concerning the software system being developed (e.g., users should be able to verify that their needs are answered and to plan acceptance tests”. Various methods and techniques have been developed for requirements specification and many research suggest the need for empirical evidence of the ease of interpretation and understandability of these methods (Wand & Weber, 2002).
The unified modeling language (UML) is the modeling language for object oriented systems development. It is widely acknowledged that UML has become the standard for modeling object oriented software systems since its adoption by the Object Management Group (OMG) in 1997 (Kobryn, 2002). Use cases are the technique in the unified modeling language that is used to capture the functional requirements of software and validate them with the system users in the early phases of system development. Use case models serve as basis for deriving other UML conceptual models. Thus, it is important to ensure the quality of these models. Little empirical research is found on how we can make the best use of use case modeling (Dobing & Parsons, 2006).
In order to make full use of these, establishment of communication and understanding between the system developers and the novice users is of paramount significance. This points to the need to investigate how the current formats of use case models assist user’s understanding of system requirements.
There was a variety of formats for use cases (Schneider & Winter, 2001; Cockburn, 2001; Constantine & Lockwood, 2000). Some researchers used use case narratives (either structured or unstructured text) while others used diagrams with the text. The use case diagram does not show the step by step interactions within use cases, but it provides an overview of the use cases and the relationships between them. Little attention has been paid to the role of use case diagrams in supporting user understanding when accompanying the text. Although the effect of pictures on facilitating text comprehension is well known in literature, few empirical work has been undertaken to investigate the cognitive processes underlying the understanding of use case models. In a survey on UML current usage, Dobing and Parsons (2005) found that use case narratives had the highest score for verifying and validating requirements with client representatives on the project team. Their results also showed that clients were often involved in developing, reviewing and approving use case narratives and the use case diagram, and much more so than for other kinds of UML diagrams. They pointed out to the fact that how UML diagrams were used among non-experts remains unexplored.