B.1. What Is a Profile?Profiles are a lightweight way to adapt UML to a particular platformJ2EE, .NET, etc.or domainmedical, financial, aerospace, etc. Profiles are made up of stereotypes, tagged values, and a set of constraints. They capture a vocabulary commonly used across a domain or platform and allow that vocabulary to be applied to your model's elements to make them more meaningful. Even better, code generation tools can use profiles to generate artifacts specific to a platform or environment. A component labeled with an EJB stereotype could be converted to the classes and interfaces it takes to implement an EJB. In earlier versions of UML, you could make up stereotypes on the fly. This led to confusion about when to use stereotypes and modelers were left to informally standardize and reuse a common set of stereotypes. UML 2.0 fixed this problem by declaring that stereotypes and tagged values (see "Tagged Values" later in this chapter) should be created in a profile. |