UML Diagrams
Class Diagram
O/R Mapping
Mac OS X
Tips and Tricks
VP Suite
Change Log

Class Diagram Notation

Class Diagram


The followings are the notation supported by the class diagram.

Name Image Description
ClassClass A class is a classifier that has objects as its instances. A class provide the template from which objects are created (instantiated). It also defines its attributes and operations.
InterfaceInterface An interface is a kind of classifier that define a set of related public operations and responsibilities.
EnumerationEnumeration An enumeration is used for defining a data type whose values are enumerated.
PrimitivePrimitive A primitive class is used for defining a predefined data type without any relevant substructure.
ORM-Persistable ClassORM-Persistable Class An ORM Persistable class is capable of manipulating the persistent data with the relational database. It support the generation of persistent code, and should be used in object modeling.
Entity BeanEntity Bean An entity bean represents a business object in a persistent storage mechanism.
GeneralizationGeneralization Generalization A generalization relationship relates a more general classifier and a more specific classifier.
RealizationRealization A realization relationship link up the specification and the implementation of that specification.
UsageUsage A usage relationship in which one classifier require another classifier for its operation or implementation.
AssociationAssociation As association specifies a relationship that appear between two classifiers.
AggregationAggregation An aggregation association indicates that there is a shared aggregation between the connected classes.
CompositionComposition A composition association indicates that the composite object has responsibility for the existence and storage of the composed objects.
N-ary AssociationN-ary Association A N-ary association is used for representing two or more aggregations to the same aggregate.
Association ClassAssociation Class An association class has both association and class properties. It also defines features that belong to the association itself and not to any connected classifiers.
DependencyDependency A dependency is a relationship implying that a classifier requires other another classifier for its specification or implementation.
Binding DependencyBinding Dependency A binding dependency is a relationship between a template and the element generated from the template.
PermissionPermission A permission relationship is a dependency that grants a classifier permission to access classifiers in another namespace.
AccessAccess An access is a kind of dependency that represents the supplier will access the client.
ImportImport An import is a kind of dependency that allows the supplier to refer to the client without qualification.
MergeMerge A merge defines how the contents of one package are extended by another one’s content.
InstantiationInstantiation An installation is a kind of dependency specifying that the client create the instances of the supplier.
SubstitutionSubstitution A substitution is a relationship between two classifiers, implying that the instances of substituting classifier are runtime substitutable by contract classifier.
AbstractionAbstraction An abstraction is a relationship that relates two classifiers by the same concept but at different levels of abstract or viewpoints.
DeriveDerive A derive specifies that the client may be computed from the supplier.
RefineRefine A refinement is a relationship between two classifiers that is at different semantic levels, such as analysis and design.
TraceTrace A trace is a relationship between two classifiers mainly used for tracking requirements.
CollaborationCollaboration A collaboration is used to describe the structure of collaborating elements.
ModelModel Model is an abstraction drawn from the system being modeled to provide a presentation of information for human comprehension.
NoteNote A Note is a textual explication that can be attached to set of elements.
AnchorAnchor An anchor is a connection between note and elements.
ConstraintConstraint A constraint specifies condition or restriction that expressed in natural language or machine readable language for declaring some of the semantics of an element.
ContainmentContainment A containment represents a contain relationship between package and members.
PackagePackage A package groups elements and provide them with namespaces.

Related Articles


Last modified: 2007/03/22 15:11
Home | Recent Topics | Highlights | UML Diagrams | Tips and Tricks | Object-Relational Mapping Home | Training Center | UML Center | VP Gallery | Discussion Forum | UML Open Directory