Stereotypical Encounters of the Third Kind
As one of the UML’s main extension mechanisms, stereotypes play a crucial role in the UML’s ability to serve a wide and growing base of users. However, the precise meaning of stereotypes and their intended mode of use has never been entirely clear and has even generated much debate among experts. Two basic ways of using UML stereotypes have been observed in practice: one to support the classification of classes as a means of emulating metamodel extensions, the other to support the classification of objects as a means of assigning them certain properties. In this paper we analyze these two recognized stereotype usage scenarios and explain the rationale for explicitly identifying a third form of usage scenario. We propose some notational concepts which could be used to explicitly distinguish the three usage scenarios and provide heuristics as to when each should be used. Finally, we conclude by proposing enhancements to the UML which could support all three forms cleanly and concisely.
KeywordsUsage Scenario Type Level Real World Scenario Instance Level Type Facet
Unable to display preview. Download preview PDF.
- Rebecca Wirfs-Brock, Brian Wilkerson, and Lauren Wiener. Responsibility-driven design: Adding to your conceptual toolkit. ROAD, 1(2):27–34, July–August 1994.Google Scholar
- OMG. Unified Modeling Language Specification, 2000. Version 1.4, OMG document ad00-11-01.Google Scholar
- Brian Henderson-Sellers. Notes on the use of subtypes and stereotypes in the UML metamodel. Journal of Database Management, 13(2):44–52, 2002.Google Scholar
- Stefan Berner, Martin Glinz, and Stefan Joos. A classification of stereotypes for object-oriented modeling languages. In Robert France and Bernhard Rumpe, editors, Proceedings of the 22 International Conference on the Unified Modeling Language, LNCS 1723, pages 249–264, Berlin, October 1999. Springer Verlag.Google Scholar
- Marcus Fontoura, Wolfgang Pree, and Bernhard Rumpe. The UML Profile for Framework Architectures. Addison-Wesley, 2002.Google Scholar
- Jim Conallen. Building Web Applications with UML. Addison-Wesley, Reading, MA, 2000.Google Scholar
- Colin Atkinson and Thomas Kühne. Strict profiles: Why and how. In Andy Evans, Stuart Kent, and Bran Selic, editors, Proceedings of the 3rd International Conference on the UML 2000, York, UK, pages 309–323, LNCS 1939, October 2000. Springer Verlag.Google Scholar
- Colin Atkinson, Thomas Kühne, and Brian Henderson-Sellers. To meta or not to meta—that is the question. Journal of Object-Oriented Programming, 13(8):32–35, December 2000.Google Scholar
- Stefan Sauer and Gregor Engels. UML-based behavior specification of interactive multimedia applications. In Proceedings of the IEEE Symposium on Human-Centric Computing Languages and Environments, pages 248–255. IEEE, September 2001.Google Scholar
- Bran Selic. Re: Ask about UML. email communication 10:15:56-0400, September 2001. email to third author and others.Google Scholar
- Colin Atkinson and Thomas Kühne. Meta-level independent modeling. In International Workshop Model Engineering (in Conjunction with ECOOP’2000). Cannes, France, June 2000.Google Scholar
- Colin Atkinson and Thomas Kühne. The essence of multilevel metamodeling. In Martin Gogolla and Cris Kobryn, editors, Proceedings of the 4th International Conference on the UML 2000, Toronto, Canada, LNCS 2185, pages 19–33. Springer Verlag, October 2001.Google Scholar