3C Clear Clean Concise  UML                       Previous   Contents   Next
communityUML 2torial

5.5.1               Possibility

Possibility is used to indicate that some part of a model represents what is permitted, but not required by that model. A statement that an element is possible is used to specify that what is represented by that element may exist or happen in the system, given a certain situation.

A model uses possibility to declare that something specified by the model is optional.

In UML 2, possibility is expressed using the connective, or. The specification of a choice between possibilities is expressed using the connective, xor.


Q:  Why do you want to add concepts like this?  

A:  As with time, possibility is in most models.

A UML 1 state machine represents possible sequences of actions. In the UML action semantics, possibility was used in the definition of ConditionalAction. A UML 1 multiplicity prescribes the possible number of elements in an association.

The RFP calls for the infrastructure to include the concepts required to specify UML itself.  We don't see how to specify UML exactly, without possibility.

Q:  But you say this is expressed with or and xor.   So it is not really an additional concept, is it?

A:  Busted again.  To say that something is optional or that one of several choices must be made is so central to modelling, that we felt it was best to mention this concept and then say how it can be expressed using the underlying logical machinery.

Q:  A few examples?

A:  The number of interface types implemented by a class may be zero or more. A file close action with a file may happen after a file open action with that file. Every object is either local or remote.


 

Previous   Contents   Next        RunningExample

  DA.gif (4367 bytes)

The OMG mark, ‘UML,’  is a trademark of Object Management Group, Inc. (OMG). 


During development of this web site, please send comments to Joaquin Miller. mailto:joaquin@acm.org    
Copyright © 2000 Financial Systems Architects