Issue 10896: Behavioral Features (odm-ftf) Source: NIST (Dr. Conrad Bock, conrad.bock(at)nist.gov) Nature: Clarification Severity: Significant Summary: Behavioral Features. In Secton 16.6.1 (Behavioral Features), first paragraph is about a number of things other than behavioral features, and much of it is incorrect or uses incorrect terminology. Behavioral features only declare capabilities or services, not resources. They aren't the "program" that implements the service (called Behavior in UML). Behavioral features can be used in OCL that defines a derivation of a property, but the behavioral feature isn't directly related to the derived property. Operations include the parameters (including return value). A "method" in UML is the behavior that implements the operation on a particular class. Responsibility in UML is only a standard stereotype of a usage dependency. It isn't a well-developed part of UML class modeling. Qualified associations are more accurately described as a special kind of ternary relation. An abstract can have operations and methods like any other class. Abstract classes cannot have direct instances. Interfaces specify features of classes, including operation features. They aren't interfaces of operations themselves. Resolution: Replace text as described below Revised Text: The following is the current contents of this paragraph: UML allows the specification of behavioral features, which declare capabilities or resources. One use of behavioral features is to calculate property values. Behavioral features can be used in the OCL that derives properties. Facilities of UML supporting programs include operations, which describe the parameters of methods; static operations, which are operations attached to a class like static attributes; interface classes, which specify among other things operation features; qualified associations, which are a special kind of ternary relation; and active classes, which are classes each instance of which controls its own thread of execution control. Replace this paragraph with the following: UML allows the specification of behavioral features, which declare capabilities and dynamic aspects of the system. OCL can be used to restrict derived properties. Facilities of UML that can be used to describe application programs include operations, which describe the parameters of methods; static operations, which have a shared implementation for all subclasses; interface classes, which specify an interface to a set of attributes and operations that could be implemented by one or more classes; and active classes, which are classes that have a separate thread of execution control for each instance. Actions taken: March 30, 2007: received issue January 19, 2009: closed issue Discussion: Defer to 2nd FTF End of Annotations:===== m: webmaster@omg.org Date: 30 Mar 2007 01:10:36 -0500 To: Subject: Issue/Bug Report -------------------------------------------------------------------------------- Name: Conrad Bock Company: NIST mailFrom: conrad.bock@nist.giv Notification: No Specification: Ontology Definition Metamodel Section: Chapter 16 FormalNumber: ptc/06-10-11 Version: RevisionDate: Page: Nature: Revision Severity: Significant HTTP User Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.2) Gecko/20040804 Netscape/7.2 (ax) Description Behavioral Features. In Secton 16.6.1 (Behavioral Features), first paragraph is about a number of things other than behavioral features, and much of it is incorrect or uses incorrect terminology. Behavioral features only declare capabilities or services, not resources. They aren't the "program" that implements the service (called Behavior in UML). Behavioral features can be used in OCL that defines a derivation of a property, but the behavioral feature isn't directly related to the derived property. Operations include the parameters (including return value). A "method" in UML is the behavior that implements the operation on a particular class. Responsibility in UML is only a standard stereotype of a usage dependency. It isn't a well-developed part of UML class modeling. Qualified associations are more accurately described as a special kind of ternary relation. An abstract can have operations and methods like any other class. Abstract classes cannot have direct instances. Interfaces specify features of classes, including operation features. They aren't interfaces of operations themselves.