next up previous
Next: Background Up: Use Case Cards and Previous: Use Case Cards and

Introduction

We have been exploring ways to improve the techniques we use in the early stages of object-oriented development. In particular, we have been investigating how to better determine use cases that capture requirements and can drive design. We were looking for techniques that would ensure active engagement by team members, provide more operational guidance, and also make the techniques more accessible to learners and system stakeholders. This paper presents a technique we have developed using index cards and roleplay.

A use case describes a sequence of interaction between a user and a system. Identification and employment of use cases is now common practice in software development, and the use case is now a recognised concept in modeling languages and in development processes. As with many other aspects of object-oriented analysis, however, use cases require understanding and experience before they begin to deliver their potential. Moreover, these activities need techniques that are lightweight, inclusive, and flexible, so to best ensure insight and agreement about desirable system behaviour.

The paper is organised as follows. In the next section we provide some background, discussing use cases and their role in object-oriented development, and also reviewing the CRC card design technique we adapted to use cases. In section 3 we describe the technique itself, and in section 4 we review our experience. In section 5 we explain our use of essential use cases, and the implications. In the final section we present our conclusions.



Robert Biddle
Sun May 20 12:15:22 NZST 2001