Gonzalo Génova, Juan Llorens. "The Emperor’s New Use Case", Journal of Object Technology, 4(6): 81-94, Aug 2005.

 

Full text

 

Abstract

Use cases are intended to specify system behavior from the user’s point of view. In UML, use cases are meta-modeled as classifiers, trying to fit them within the general object-oriented paradigm. Classifiers specify a set of instances, and use case instances are said to be occurrences of emergent behaviors, that is, concrete system-actor interactions. This idea poses some difficulties, since it is not clear how an interaction can have classifier features such as attributes, operations and associations. Therefore, we challenge the notion that use case instances are interactions. On the other side, if we proceed on to the complete specification of system behavior by means of use cases, we reach a notion of use case (a coordinated use of system operations) that is very close to the traditional role with an associated protocol interface, therefore concluding that use cases and protocols are not essentially different things.

Resumen

Los casos de uso deben servir para especificar el comportamiento del sistema desde el punto de vista del usuario. En UML los casos de uso son meta-modelados como clasificadores, en un intento de encajarlos en el paradigma general de la orientación a objetos. Un clasificador especifica un conjunto de instancias, y las instancias de un caso de uso serían ocurrencias de comportamientos emergentes, esto es, interacciones concretas actor-sistema. Esta idea plantea algunas dificultades, ya que no está claro cómo una interacción puede tener características de clasificador tales como atributos, operaciones y asociaciones. Así pues, nos oponemos a la noción de que las instancias de caso de uso sean interacciones. Por otra parte, si completamos la especificación del comportamiento del sistema mediante casos de uso, alcanzaremos una noción de caso de uso (uso coordinado de operaciones del sistema) que está muy próxima al tradicional rol con un protocolo de interfaz asociado, concluyendo por tanto que los casos de uso y los protocolos no son cosas esencialmente diferentes.