Appendix B. Adapting UML: Profiles
This book has used Java code examples to demonstrate UML concepts, but the UML model elements shown apply to almost any object-oriented system, regardless of the language (e.g., Java, C++, or Smalltalk), platform you’re targeting (e.g., J2EE or .NET), or domain you’re working with (e.g., medical or aerospace).
Object-oriented systems share many common characteristics structurally and behaviorally: they have classes, interactions among classes, and so on. But when it comes to platforms and domains, object-oriented systems often have many differences in terminology. For example, the J2EE platform has EJBs, JARs, and JSPs, whereas the .NET platform has ADOs, assemblies, and ASPs.
When you create your UML model, it is helpful if you label your model elements with the terminology specific to the environment or platform you’ve chosen. In other words, wouldn’t it be great to be able to specify that a component is in fact going to be an EJB, instead of just calling it a component?
Trying to make UML target every possible platform or domain would be a losing battle and not really in the spirit of a general purpose modeling language. The group behind UML, the Object Management Group (OMG), realized this and built a mechanism by which UML can be adapted and tailored to meet your own specific needs. That mechanism was the profile.
What Is a Profile?
Profiles are a lightweight way to adapt UML to a particular platform—J2EE, .NET, etc.—or domain—medical, financial, ...
Get Learning UML 2.0 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.