Title :
Use cases considered harmful
Author :
Simons, Anthony J H
Author_Institution :
Dept. of Comput. Sci., Sheffield Univ., UK
Abstract :
This article traces the unstable semantics of use cases from Jacobson to UML 1.3. The UML 1.1 metamodel formally defined the “uses” and “extend” use case relationships as stereotypes of generalisation, yet both received interpretations that varied between inheritance and composition, reflecting a large degree of confusion among developers. The recently revised UML 1.3 has quietly dropped these in favour of new “include” and “extend” relationships, which are styled instead as kind of dependency. Despite this change, the deployment of use case diagrams encourages analysts to correspondence and develop models which conceal arbitrary jumps in the flow of control, corresponding to goto and come from statements, and in which unpleasant non-local dependencies exist across modules. A discussion of examples reveals how a conscientious designer must disassemble use case models completely to produce properly-structured code. A radical solution is proposed
Keywords :
diagrams; formal specification; object-oriented methods; programming language semantics; Jacobson use cases; UML 1.1 metamodel; UML 1.3; come from statements; composition; control flow; extend relationships; generalisation; goto statements; include relationships; inheritance; nonlocal dependencies; properly-structured code; unstable semantics; use case diagrams; use cases; Computer aided software engineering; Computer science; Jacobian matrices; Object oriented modeling; Software systems; Unified modeling language; Yarn;
Conference_Titel :
Technology of Object-Oriented Languages and Systems, 1999. Proceedings of
Conference_Location :
Nancy
Print_ISBN :
978-0-7695-0275-5
DOI :
10.1109/TOOLS.1999.779012