Issue 7607: UML 2 Super/Activities/Class-Activity association missing (uml2-superstructure-ftf) Source: Thematix Partners LLC (Mr. James J. Odell, email(at)jamesodell.com) Nature: Uncategorized Issue Severity: Summary: An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the “organizing” class. Resolution: Revised Text: Actions taken: July 30, 2004: received issue Discussion: End of Annotations:===== er-Agent: Microsoft-Entourage/10.1.4.030702.0 Date: Fri, 30 Jul 2004 12:34:02 -0400 Subject: UML 2.0 Superstructure FTF issue From: James Odell To: Juergen Boldt Hi Juergen, Can you assign an issue number and send this issue to UML 2.0 Super FTF? Thanks, Jim This is issue # nnnn From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the .organizing. class. To: James Odell Cc: uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Tue, 3 Aug 2004 16:26:48 -0400 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.0.2CF2|July 23, 2003) at 08/03/2004 16:26:48, Serialize complete at 08/03/2004 16:26:48 Jim, I don't understand this issue. A BehaviordClassifier can own any number of behaviors. A behavioral feature (of that classifeir) CAN designate one of those behaviors as its method. This could be an activity or a state machine or even an interaction. I really don't see a problem, but maybe I am misreading this. Bran Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the ā..organizingā. class. ================================= Jürgen Boldt Director, Member Services Object Management Group 250 First Avenue, Suite 100 Needham, MA 02494 Tel. +1 781 444 0404 ext. 132 Fax: +1 781 444 0320 email: juergen@omg.org www www.omg.org ================================ User-Agent: Microsoft-Entourage/10.1.4.030702.0 Date: Tue, 03 Aug 2004 16:57:35 -0400 Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue From: James Odell To: Branislav Selic CC: Bran, The issue arose when I was trying to associate an activity diagram as a method for a particular class. For example, a Accept Order activity diagram could be associated with an Order class with a method name of Accept Order. I cannot find a way to do that with the current metamodel. This could also apply to sequence diagrams, as well. Does that make sense? If so, should I resubmit the issue with a better description? Cheers, Jim On 8/3/04 4:26 PM, "Branislav Selic" indited: Jim, I don't understand this issue. A BehaviordClassifier can own any number of behaviors. A behavioral feature (of that classifeir) CAN designate one of those behaviors as its method. This could be an activity or a state machine or even an interaction. I really don't see a problem, but maybe I am misreading this. Bran Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the .organizing. class. ================================= Jürgen Boldt Director, Member Services Object Management Group 250 First Avenue, Suite 100 Needham, MA 02494 Tel. +1 781 444 0404 ext. 132 Fax: +1 781 444 0320 email: juergen@omg.org www www.omg.org ================================ Reply-To: From: "Conrad Bock" To: Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue Date: Tue, 3 Aug 2004 17:14:06 -0400 X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) Bran, > A BehaviordClassifier can own any number of behaviors. A behavioral > feature (of that classifeir) CAN designate one of those behaviors as > its method. This could be an activity or a state machine or even an > interaction. The metamodel supports it, but there isn't a notation for showing the method of a operation, especially if the method is a behavior diagram. The kernel doesn't have methods, and the notation sections in Common Behavior for Behavior and BehavioralFeature are empty. Conrad To: Cc: uml2-superstructure-ftf@omg.org Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Tue, 3 Aug 2004 17:33:10 -0400 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.0.2CF2|July 23, 2003) at 08/03/2004 17:33:11, Serialize complete at 08/03/2004 17:33:11 Yes, Jim and I just discussed that. One possibility we considered is to show a dashed line from the operation declartion in the appropriate class box to the activity diagram (with the activity declared as being owned by the class). This, of course, mixes diagram types, but I think that we will have to allow mixing of diagram types anyways. To repeat: the problem is that with no formal concrete syntax defined for UML, people will have to invent tricks to deal with situations that the spec did not cover. This is why I objected to Thomas' claim that if the spec did not show a notation it was not allowed. In the current situation, where many such notational capabilities are missing, that is not a viable option. Bran "Conrad Bock" 08/03/2004 05:14 PM Please respond to conrad.bock To cc Subject RE: issue 7607 -- UML 2.0 Superstructure FTF issue Bran, > A BehaviordClassifier can own any number of behaviors. A behavioral > feature (of that classifeir) CAN designate one of those behaviors as > its method. This could be an activity or a state machine or even an > interaction. The metamodel supports it, but there isn't a notation for showing the method of a operation, especially if the method is a behavior diagram. The kernel doesn't have methods, and the notation sections in Common Behavior for Behavior and BehavioralFeature are empty. Conrad User-Agent: Microsoft-Entourage/10.1.4.030702.0 Date: Tue, 03 Aug 2004 17:42:35 -0400 Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue From: James Odell To: Yes, I like Bran.s idea. Thanks bran for bring clarity to my muddy issue. -Jim On 8/3/04 5:33 PM, "Branislav Selic" indited: Yes, Jim and I just discussed that. One possibility we considered is to show a dashed line from the operation declartion in the appropriate class box to the activity diagram (with the activity declared as being owned by the class). This, of course, mixes diagram types, but I think that we will have to allow mixing of diagram types anyways. To repeat: the problem is that with no formal concrete syntax defined for UML, people will have to invent tricks to deal with situations that the spec did not cover. This is why I objected to Thomas' claim that if the spec did not show a notation it was not allowed. In the current situation, where many such notational capabilities are missing, that is not a viable option. Bran "Conrad Bock" 08/03/2004 05:14 PM Please respond to conrad.bock To cc Subject RE: issue 7607 -- UML 2.0 Superstructure FTF issue Bran, > A BehaviordClassifier can own any number of behaviors. A behavioral > feature (of that classifeir) CAN designate one of those behaviors as > its method. This could be an activity or a state machine or even an > interaction. The metamodel supports it, but there isn't a notation for showing the method of a operation, especially if the method is a behavior diagram. The kernel doesn't have methods, and the notation sections in Common Behavior for Behavior and BehavioralFeature are empty. Conrad From: "Thomas Weigert" To: "Branislav Selic" , Cc: Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue Date: Tue, 3 Aug 2004 16:48:07 -0500 X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) Bran, you misunderstood me. I am not saying to just because a notation is not described in the specification, that notation is illegal. I was just saying that in the specification itself we should only use notation that is explicitly defined, so as not to confuse people. Th. -----Original Message----- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, August 03, 2004 4:33 PM To: conrad.bock@nist.gov Cc: uml2-superstructure-ftf@omg.org Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue To repeat: the problem is that with no formal concrete syntax defined for UML, people will have to invent tricks to deal with situations that the spec did not cover. This is why I objected to Thomas' claim that if the spec did not show a notation it was not allowed. In the current situation, where many such notational capabilities are missing, that is not a viable option. Reply-To: Joaquin Miller X-Sender: jm-omg@sbcglobal.net@pop.sbcglobal.yahoo.com X-Mailer: QUALCOMM Windows Eudora Version 5.1 Date: Tue, 03 Aug 2004 15:18:32 -0700 To: Marko Boger , UML Superstructure FTF From: Joaquin Miller Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue ... the problem is that with no formal concrete syntax defined for UML, people will have to invent tricks to deal with situations that the spec did not cover. This is why I objected to [the] claim that if the spec did not show a notation it was not allowed. In the current situation, where many such notational capabilities are missing, that is not a viable option. Marko, how does this doctrine interact with the diagram interchange standard? To: Juergen Boldt Cc: issues@omg.org, uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue X-Mailer: Lotus Notes Release 6.0.2CF2 July 23, 2003 From: Jim Amsden Date: Fri, 6 Aug 2004 16:43:47 -0600 X-MIMETrack: Serialize by Router on D03NM119/03/M/IBM(Release 6.51HF338 | June 21, 2004) at 08/06/2004 16:43:49, Serialize complete at 08/06/2004 16:43:49 An Activity is a Behavior (it has parameters) and a Class (it can have state and other operations). An activity is therefore a packageable element and can be contained in a package or component, or nested within a structured classifier. An activity, like any behavior, can be the method of an operation which is the specification of the activity. This meta-association can be used to attach an activity to an operation of a class in order to specify how the operation is implemented. Does this do what you want? Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the ā..organizingā. class. ================================= Jürgen Boldt Director, Member Services Object Management Group 250 First Avenue, Suite 100 Needham, MA 02494 Tel. +1 781 444 0404 ext. 132 Fax: +1 781 444 0320 email: juergen@omg.org www www.omg.org ================================ From: "Thomas Weigert" To: "Jim Amsden" , "Juergen Boldt" Cc: , Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue Date: Sun, 8 Aug 2004 13:33:52 -0500 X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0)  Jim (Odell), Behaviors are owned by BehavioredClassifiers (and Class is a behaviored classifier in the composite structure package). There are several ways of them being invoked: (i) as classifier behavior, or (ii) as method associated with a behavioral feature, or (iii) directly through call behavior action. I assume you are aware that in UML the method concept from programming languages has two parts, the "API" expressed as behavioral feature (typically an operation), and the actual body or implementation of the method as some behavior associated with the behavioral feature (via the BehavioralFeature.method) metaassociation. So I am not sure what you are really asking for in your issue below. I think, but I may be wrong, that you are asking for a graphical way of associating a method with a BehavioredClassifier (NOT class)? If so, this issue is a duplicate. If not, please clarify. Th. -----Original Message----- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, August 06, 2004 5:44 PM To: Juergen Boldt Cc: issues@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue An Activity is a Behavior (it has parameters) and a Class (it can have state and other operations). An activity is therefore a packageable element and can be contained in a package or component, or nested within a structured classifier. An activity, like any behavior, can be the method of an operation which is the specification of the activity. This meta-association can be used to attach an activity to an operation of a class in order to specify how the operation is implemented. Does this do what you want? Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the ā..organizingā. class. User-Agent: Microsoft-Entourage/10.1.4.030702.0 Date: Mon, 09 Aug 2004 09:15:00 -0400 Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue From: James Odell To: Thomas and Jim, Thank you for your responses to my issue. My apologies for leaving out one word: representation. What I was trying to say was that we need a way to represent the association of a activity diagram with the class for which it is a method. Within activity diagrams, we can annotate actions with their assigned class, but there is not way to graphically do this with an activity diagram as a whole. As you have both quite rightly pointed out, we have the metamodel plumbing to support this. I would just like a notation for modelers to express this. For example, on 3 August, Bran offered the following suggestion: . One possibility we considered is to show a dashed line from the operation declaration in the appropriate class box to the activity diagram (with the activity declared as being owned by the class). This, of course, mixes diagram types, but I think that we will have to allow mixing of diagram types anyways." Another way would be just to annotate the class name within the activity frame in some way. Does that make sense? Cheers, Jim O On 8/8/04 2:33 PM, "Thomas Weigert" indited: Jim (Odell), Behaviors are owned by BehavioredClassifiers (and Class is a behaviored classifier in the composite structure package). There are several ways of them being invoked: (i) as classifier behavior, or (ii) as method associated with a behavioral feature, or (iii) directly through call behavior action. I assume you are aware that in UML the method concept from programming languages has two parts, the "API" expressed as behavioral feature (typically an operation), and the actual body or implementation of the method as some behavior associated with the behavioral feature (via the BehavioralFeature.method) metaassociation. So I am not sure what you are really asking for in your issue below. I think, but I may be wrong, that you are asking for a graphical way of associating a method with a BehavioredClassifier (NOT class)? If so, this issue is a duplicate. If not, please clarify. Th. -----Original Message----- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, August 06, 2004 5:44 PM To: Juergen Boldt Cc: issues@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue An Activity is a Behavior (it has parameters) and a Class (it can have state and other operations). An activity is therefore a packageable element and can be contained in a package or component, or nested within a structured classifier. An activity, like any behavior, can be the method of an operation which is the specification of the activity. This meta-association can be used to attach an activity to an operation of a class in order to specify how the operation is implemented. Does this do what you want? Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the .organizing. class. From: "Thomas Weigert" To: "James Odell" , Subject: RE: issue 7607 -- UML 2.0 Superstructure FTF issue Date: Mon, 9 Aug 2004 10:21:35 -0500 X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) Thanks. This issue than duplicates issue 6150 which we have already deferred. Th. -----Original Message----- From: James Odell [mailto:email@jamesodell.com] Sent: Monday, August 09, 2004 8:15 AM To: uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue Thomas and Jim, Thank you for your responses to my issue. My apologies for leaving out one word: representation. What I was trying to say was that we need a way to represent the association of a activity diagram with the class for which it is a method. Within activity diagrams, we can annotate actions with their assigned class, but there is not way to graphically do this with an activity diagram as a whole. As you have both quite rightly pointed out, we have the metamodel plumbing to support this. I would just like a notation for modelers to express this. For example, on 3 August, Bran offered the following suggestion: . One possibility we considered is to show a dashed line from the operation declaration in the appropriate class box to the activity diagram (with the activity declared as being owned by the class). This, of course, mixes diagram types, but I think that we will have to allow mixing of diagram types anyways." Another way would be just to annotate the class name within the activity frame in some way. Does that make sense? Cheers, Jim O On 8/8/04 2:33 PM, "Thomas Weigert" indited: Jim (Odell), Behaviors are owned by BehavioredClassifiers (and Class is a behaviored classifier in the composite structure package). There are several ways of them being invoked: (i) as classifier behavior, or (ii) as method associated with a behavioral feature, or (iii) directly through call behavior action. I assume you are aware that in UML the method concept from programming languages has two parts, the "API" expressed as behavioral feature (typically an operation), and the actual body or implementation of the method as some behavior associated with the behavioral feature (via the BehavioralFeature.method) metaassociation. So I am not sure what you are really asking for in your issue below. I think, but I may be wrong, that you are asking for a graphical way of associating a method with a BehavioredClassifier (NOT class)? If so, this issue is a duplicate. If not, please clarify. Th. -----Original Message----- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, August 06, 2004 5:44 PM To: Juergen Boldt Cc: issues@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue An Activity is a Behavior (it has parameters) and a Class (it can have state and other operations). An activity is therefore a packageable element and can be contained in a package or component, or nested within a structured classifier. An activity, like any behavior, can be the method of an operation which is the specification of the activity. This meta-association can be used to attach an activity to an operation of a class in order to specify how the operation is implemented. Does this do what you want? Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the .organizing. class. User-Agent: Microsoft-Entourage/10.1.4.030702.0 Date: Mon, 09 Aug 2004 11:32:14 -0400 Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue From: James Odell To: C.est la vie. Thanks. Sorry I missed the duplication. -Jim On 8/9/04 11:21 AM, "Thomas Weigert" indited: Thanks. This issue than duplicates issue 6150 which we have already deferred. Th. -----Original Message----- From: James Odell [mailto:email@jamesodell.com] Sent: Monday, August 09, 2004 8:15 AM To: uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue Thomas and Jim, Thank you for your responses to my issue. My apologies for leaving out one word: representation. What I was trying to say was that we need a way to represent the association of a activity diagram with the class for which it is a method. Within activity diagrams, we can annotate actions with their assigned class, but there is not way to graphically do this with an activity diagram as a whole. As you have both quite rightly pointed out, we have the metamodel plumbing to support this. I would just like a notation for modelers to express this. For example, on 3 August, Bran offered the following suggestion: . One possibility we considered is to show a dashed line from the operation declaration in the appropriate class box to the activity diagram (with the activity declared as being owned by the class). This, of course, mixes diagram types, but I think that we will have to allow mixing of diagram types anyways." Another way would be just to annotate the class name within the activity frame in some way. Does that make sense? Cheers, Jim O On 8/8/04 2:33 PM, "Thomas Weigert" indited: Jim (Odell), Behaviors are owned by BehavioredClassifiers (and Class is a behaviored classifier in the composite structure package). There are several ways of them being invoked: (i) as classifier behavior, or (ii) as method associated with a behavioral feature, or (iii) directly through call behavior action. I assume you are aware that in UML the method concept from programming languages has two parts, the "API" expressed as behavioral feature (typically an operation), and the actual body or implementation of the method as some behavior associated with the behavioral feature (via the BehavioralFeature.method) metaassociation. So I am not sure what you are really asking for in your issue below. I think, but I may be wrong, that you are asking for a graphical way of associating a method with a BehavioredClassifier (NOT class)? If so, this issue is a duplicate. If not, please clarify. Th. -----Original Message----- From: Jim Amsden [mailto:jamsden@us.ibm.com] Sent: Friday, August 06, 2004 5:44 PM To: Juergen Boldt Cc: issues@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: issue 7607 -- UML 2.0 Superstructure FTF issue An Activity is a Behavior (it has parameters) and a Class (it can have state and other operations). An activity is therefore a packageable element and can be contained in a package or component, or nested within a structured classifier. An activity, like any behavior, can be the method of an operation which is the specification of the activity. This meta-association can be used to attach an activity to an operation of a class in order to specify how the operation is implemented. Does this do what you want? Juergen Boldt 08/03/2004 03:42 PM To issues@omg.org, uml2-superstructure-ftf@omg.org cc Subject issue 7607 -- UML 2.0 Superstructure FTF issue This is issue # 7607 From: James Odell UML 2 Super/Activities/Class-Activity association missing An activity diagram is a graphical form of method, however there is no way to assign them to a class that would contain such a method. This may be more general than activity diagrams. For example, the same could apply to sequence diagrams. Since organizing structure and behavior by class is a fundamental OO concept, we need to have a way to associate UML-expressed methods to the .organizing. class.