The University of Auckland

Project #33: Essential Use Case Management System



An Essential Use Case (EUC) is a simplified, abstract, generalized use case that captures the intentions of a user in a technology and implementation-independent manner. A problem that often occurs when expressing requirements is that the client embeds what are really implementation-specific details to the requirements. E.g. "The user should select the choice of (something) from a drop-down menu" specifies the use of a drop-down menu, when another user-interface element may result in a more usable interface (e.g. radio buttons). Really such details should not appear in the requirements specification at all. The EUC equivalent for the above example would be "User makes choice of (something)".

EUCs tend to be much shorter than standard use cases, and consequently there are typically many more EUCs that need to be described than standard use cases (40-50 for even a small system). This means specifying requirements using EUCs requires quite a lot of effort. Furthermore, many EUCs for the a system are similar, meaning their development can quite tedious. EUCs have not been widely accepted, possibly because of the amount of tedious effort required, and also the need to manage such a large number. Having tool support for capturing EUCs may mean they get used more. However it is not obvious what such a tool might look like, nor whether it is efficient enough to making EUCs manageable.

Recently a research paper was published describing a set of patterns that could be used to generate a large proportion of EUCs for a system. If these patterns are in fact useful, then they could be used as the basis for a tool that can semi-automatically generate many of the necessary EUCS.

The research goal of this project is determine whether tool support for EUC is feasible, that it can be made usable enough to reduce to effort required to describe requirements using EUCs. In particular, this project will address the question as to whether the proposed patterns can be used to semi-automatically generate EUCs.


Development of a web-based tool and studies demonstrating its value.


Must be a SOFTENG student (ie completed SOFTENG306, and ideally SOFTENG325).








Lab allocations have not been finalised