
The Manage Entity Pattern is composed of three 
use cases, two extension relations and references the 
classes referenced by the aggregated use cases. And, 
as its instance has a concrete graphical symbol, that 
may be used as a construct in the use case model 
with the same semantics as the aggregated elements 
(use cases, use case relations, and referenced 
classes). As mentioned before, this allows 
substituting one by the others, in a use case model, 
simplifying the model by eliminating elements and 
substituting them by one, with the same semantics, 
which can be understood as being at a higher 
abstraction level. This rationale is applicable to all 
the other patterns introduced in section 3. 
The only constraint that must be observed by 
every use case pattern is that the classes (entities) 
referenced by the use case pattern must be the ones 
referenced by the use cases in the pattern. In OCL, 
this could be stated as: 
 
Context UseCasePattern inv: 
  self.entities->asSet() == 
  (self.useCases->collect(subject)) 
  ->flatten() 
  ->asSet() 
  
5 CONCLUSIONS 
In order to ease the construction of detailed fine 
grained use case models, this paper proposes a new 
use case pattern language. 
The proposed use case pattern language allows 
the modeling of fine grained use cases, without 
overcrowding the model with use cases and without 
losing the relation to the standard UML use case 
language. This enables using the proposed use case 
pattern language constructs intermingled with the 
standard UML use case notation, as every construct 
can be converted to a standard UML use case 
pattern, and vice-versa. 
Notice that the need for a consistent 
corresponding domain model is not changed. 
However, the proposed language emphasizes the 
association between use cases and the corresponding 
domain model entities, by stressing each use case 
pattern collaborating entity in the graphical 
construct. 
Future work will further formalize the new 
pattern language by addressing the forth and 
backwards transformation between models in the 
proposed pattern language and standard UML use 
case models. Another goal for future work is the 
development of a modeling tool that enables use 
case modeling, and pattern identification and 
substitution in the model. 
REFERENCES 
Cruz, A. M. R., Faria, J. P., 2009. Automatic generation of 
user interface models and prototypes from domain and 
use case models. In Proceedings of the ICSoft 2009, 
Sofia, Bulgaria, vol. 1, pp. 169–176. INSTICC Press. 
Cruz, A. M. R., Faria, J.P., 2010. A Metamodel-based 
Approach For Automatic User Interface Generation. 
In Proceedings of the 13
th
 ACM/IEEE  International 
Conference on Model Driven Engineering Languages 
and Systems (Models 2010), Part 1, LNCS 6394, 
pp.256-270, Oslo, Norway. Springer-Verlag Berlin 
Heidelberg. 
Cruz, A. M. R., 2010. Automatic generation of user 
interfaces from rigorous domain and use case models. 
PhD dissertation. FEUP, University of Porto, Portugal. 
Frankel, D. S., 2003. Model Driven Architecture - 
Applying MDA to Enterprise Computing. Wiley 
Publishing, Inc., Indianapolis. 
Jacobson, I., Booch, G., Rumbaugh, J., 1998. The Unified 
Software Development Process. Addison Wesley, 
Reading. 
OMG, 2011. OMG Unified Modeling Language (OMG 
UML), Superstructure. Version 2.4.1. Available in 
http://www.omg.org/spec/UML/2.4.1/Superstructure/ 
Vlissides, J., Coplien, J. and Kerth, N. (editors), 1996. 
Pattern Languages of Program Design, Volume 2, 
Addison Wesley, Pearson Education, Boston. 
Winn, T. and Calder, P., 2006. A Language Designer’s 
Pattern Language. Chapter in book Pattern Languages 
of Program Design 5. Volume 5, Addison Wesley, 
Pearson Education, Boston. 
MODELSWARD2014-InternationalConferenceonModel-DrivenEngineeringandSoftwareDevelopment
414