Issue 6241: Actors that are outside and inside the system (uml2-superstructure-ftf) Source: oose Innovative Informatik eG (Mr. Tim Weilkiens, tim.weilkiens(at)oose.de) Nature: Uncategorized Issue Severity: Summary: There is a fundamental problem with the Actor element. It is defined as "An Actor models a type of role played by an entity that interacts with the subject (e.g., by exchanging signals and data), but which is external to the subject." Now put your modeling focus on a subsystem. Use cases of that subsystem can have external subsystems as actors. Let A be an actor of a use case. A is an external subsystem. But now put your modeling focus on the whole system. Now A isn't an actor anymore, but a subsystem. The same "real world" entity is defined twice in my model: as an actor and as a subsystem. It depends on my modeling focus, but that's more a topic of the view and not of the model. The problem is common in business process modeling. In the BPM view a employee is a stereotyped class, e.g. business worker. In the system analysis view (for a system that should support parts of my business processes) the employee is an actor of the system. We solved that problem by not using actors, but stereotyped classes. But I'm not feel happy with that solution, because it just a workaround. Any ideas? Resolution: Revised Text: Actions taken: September 9, 2003: received issue March 9, 2005: closed issue Discussion: This problem pertains to the relationship between two (or more) models. In the example cited, the first model is the one where A is an actor. The second model is the one where A is a subsystem of a bigger system. Note that these are distinct models of two different systems. Relating an element in one model to one or more elements in another (in this case containing model) can be done in a variety of ways (e.g., using dependencies, trace relationships, etc.) and is a methodological issue that is deemed outside the scope of the UML specification. Disposition: Closed, no change End of Annotations:===== ubject: RE: Ballot 4 Adaptive votes YES but NO to 6241 Date: Tue, 20 Jan 2004 04:55:47 -0500 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Ballot 4 Adaptive votes YES but NO to 6241 Thread-Index: AcPVBgEeqSrB5stDQnqPzRBXuCD1vAKMq+Dw From: "Pete Rivett" To: "Branislav Selic" , Adaptive votes YES to all the proposed resolutions in Ballot 4 EXCEPT 6241 for which the vote is 'NO'. I do believe it should be within the scope of UML to say how the same modeled real-world element represented in 2 models at different levels of abstraction should be related: in the example the two models are not totally distinct but different levels of abstraction of the same system: IMHO the resolution is a cop-out by saying it's a "methodological issue". Support of different levels of abstraction is important to MDA and there should be a standard representation of the different aspects. Note that if you agree with me, even if you have voted already you can change your vote until the deadline. As a general comment for the future I would like to see a better separation (via separate subheadings) between genuine discussion and the actual resolution - e.g. in 6161 the 'Discussion' section has both. Regards Pete Pete Rivett (mailto:pete.rivett@adaptive.com) Consulting Architect, Adaptive Inc. Dean Park House, 8-10 Dean Park Crescent, Bournemouth, BH1 1HL, UK Tel: +44 (0)1202 449419 Fax: +44 (0)1202 449448 http://www.adaptive.com -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Wednesday, January 07, 2004 10:03 AM To: uml2-superstructure-ftf@omg.org Cc: ocl2-ftf@omg.org; mu2i-ftf@omg.org Subject: Ballot 4 Attached, please find ballot 4. The vote commences today at 10 am EST and completes exactly two weeks later (10 am EST on January 21). All the instructions are in the ballot. The only rule that I would like to highlight here is that if you miss two votes in a row, you will be automatically kicked off the FTF. So, unless you want that, don't forget to vote. As a reminder, the following companies missed the last vote: Popkin Software Project Technologies Cheers, Bran Selic To: "Pete Rivett" Cc: uml2-superstructure-ftf@omg.org Subject: RE: Ballot 4 Adaptive votes YES but NO to 6241 X-Mailer: Lotus Notes Release 6.0.2CF1 June 9, 2003 From: Branislav Selic Date: Tue, 20 Jan 2004 06:23:50 -0500 X-MIMETrack: Serialize by Router on D25ML05/25/M/IBM(Release 6.0.2CF1|June 9, 2003) at 01/20/2004 06:23:52, Serialize complete at 01/20/2004 06:23:52 Pete, Several comments to your issues: As the author of the resolution to 6241, I have to say that I do not like much your qualification of it as a "cop out", because that was definitely not the intent. We certainly could put something in UML that can help us deal specifically with the issue of relating two models at different levels of abstraction -- it is certainly a common problem. However, although it is a common problem, there are no agreed on established solutions that we could standardize. Over the years, I have seen numerous and diverse dissertations on the topic and new ones seem to be cropping up every day. As far as I am concerned, this is still a research topic and I see no reason to favour one particular approach. For example, what should the semantics of such a relationship between models be? Formal or informal? If formal, then in what way? (invariant preserving? how do I specify invariants? which mechanisms do I use to ensure their preservation? etc.). The problem of model refinement and tracing is complex and the solution depends n the nature of the refinement and the process that was used to produce it (in some places it is quite strict in others loose and informal/agile). In UML, we have provided minimal support for this using something called <> and <>, which people can then refine (using stereotypes) all they like. I think that this is sufficient and do not think it is our job to go beyond that, at least not until our industry is more mature. On a process note: it is generally better if any discussions regarding issue resolutions happen before the resolution is put up for a vote. This gives your objections a better chance of being noticed and discussed. It also makes the vote processing a lot easier. One more reason to let proposed solutions soak for a couple of weeks before being submitted to a vote. Concerning separate subheadings for "discussion" versus "resolution", I am hesitant to add more bureaucracy (i.e., a separate heading) to the process when the vast majority of issues incorporate just one discussion item in them (i.e., the resolution itself). In fact, I suggest doing the exact opposite: change the heading from "discussion" to just "resolution" and only include that in the official ballot and final report. Discussions should be stored in the full issues database and not clutter up the FTF report -- some of those can be quite long while most others are empty because no one had the time to fill all of that in (and never will -- let's not fool ourselves that we can change this practice by introducing a separate heading). I realize that this is a politically incorrect argument, but I feel that it is an honest one. Regards, Bran "Pete Rivett" 01/20/2004 04:55 AM To: Branislav Selic/Ottawa/IBM@IBMCA, cc: Subject: RE: Ballot 4 Adaptive votes YES but NO to 6241 Adaptive votes YES to all the proposed resolutions in Ballot 4 EXCEPT 6241 for which the vote is 'NO'. I do believe it should be within the scope of UML to say how the same modeled real-world element represented in 2 models at different levels of abstraction should be related: in the example the two models are not totally distinct but different levels of abstraction of the same system: IMHO the resolution is a cop-out by saying it's a "methodological issue". Support of different levels of abstraction is important to MDA and there should be a standard representation of the different aspects. Note that if you agree with me, even if you have voted already you can change your vote until the deadline. As a general comment for the future I would like to see a better separation (via separate subheadings) between genuine discussion and the actual resolution - e.g. in 6161 the 'Discussion' section has both. Regards Pete Pete Rivett (mailto:pete.rivett@adaptive.com) Consulting Architect, Adaptive Inc. Dean Park House, 8-10 Dean Park Crescent, Bournemouth, BH1 1HL, UK Tel: +44 (0)1202 449419 Fax: +44 (0)1202 449448 http://www.adaptive.com -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Wednesday, January 07, 2004 10:03 AM To: uml2-superstructure-ftf@omg.org Cc: ocl2-ftf@omg.org; mu2i-ftf@omg.org Subject: Ballot 4 Attached, please find ballot 4. The vote commences today at 10 am EST and completes exactly two weeks later (10 am EST on January 21). All the instructions are in the ballot. The only rule that I would like to highlight here is that if you miss two votes in a row, you will be automatically kicked off the FTF. So, unless you want that, don't forget to vote. As a reminder, the following companies missed the last vote: Popkin Software Project Technologies Cheers, Bran Selic Subject: RE: Ballot 4 Adaptive votes YES but NO to 6241 Date: Tue, 20 Jan 2004 13:56:59 -0500 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Ballot 4 Adaptive votes YES but NO to 6241 Thread-Index: AcPfSHGI/+Tr2kwsQ/uVl6QzcvzfKgAEIQ3A From: "Pete Rivett" To: "Branislav Selic" Cc: Hi Bran, See below Pete Pete Rivett (mailto:pete.rivett@adaptive.com) Consulting Architect, Adaptive Inc. Dean Park House, 8-10 Dean Park Crescent, Bournemouth, BH1 1HL, UK Tel: +44 (0)1202 449419 Fax: +44 (0)1202 449448 http://www.adaptive.com -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Tuesday, January 20, 2004 11:24 AM To: Pete Rivett Cc: uml2-superstructure-ftf@omg.org Subject: RE: Ballot 4 Adaptive votes YES but NO to 6241 Pete, Several comments to your issues: As the author of the resolution to 6241, I have to say that I do not like much your qualification of it as a "cop out", because that was definitely not the intent. We certainly could put something in UML that can help us deal specifically with the issue of relating two models at different levels of abstraction -- it is certainly a common problem. However, although it is a common problem, there are no agreed on established solutions that we could standardize. Over the years, I have seen numerous and diverse dissertations on the topic and new ones seem to be cropping up every day. As far as I am concerned, this is still a research topic and I see no reason to favour one particular approach. [Pete Rivett] If they are all reasonably equivalent then does it matter which one is chosen? - having one common approach has a benefit in itself. When I used 'cop out' I didn't intend to trivialize the problem or the resolution, but strongly feel it is one in scope of UML and that it should address - or MDA's in real trouble. However I would grant that maybe it's too much to take on this time round and it should be 'Deferred' rather than 'Close no change'. For example, what should the semantics of such a relationship between models be? Formal or informal? If formal, then in what way? (invariant preserving? how do I specify invariants? which mechanisms do I use to ensure their preservation? etc.). The problem of model refinement and tracing is complex and the solution depends n the nature of the refinement and the process that was used to produce it (in some places it is quite strict in others loose and informal/agile). In UML, we have provided minimal support for this using something called <> and <>, which people can then refine (using stereotypes) all they like. I think that this is sufficient and do not think it is our job to go beyond that, at least not until our industry is more mature. [Pete Rivett] I agree in principle, but in particular cases the relationship between particular elements will be more precise e.g. in this Actor<-->Subsystem example there will be a more precise <> relationship. On a process note: it is generally better if any discussions regarding issue resolutions happen before the resolution is put up for a vote. This gives your objections a better chance of being noticed and discussed. It also makes the vote processing a lot easier. One more reason to let proposed solutions soak for a couple of weeks before being submitted to a vote. [Pete Rivett] Yes, sorry about that - I do try to comment on the draft resolutions in areas where I have an interest - this one sneaked through my radar since I was not expecting such a general issue to be under use cases (which normally is not one of my focus areas). And in this case I was unable to scan the draft ballot in the couple of days before it was issued. Concerning separate subheadings for "discussion" versus "resolution", I am hesitant to add more bureaucracy (i.e., a separate heading) to the process when the vast majority of issues incorporate just one discussion item in them (i.e., the resolution itself). In fact, I suggest doing the exact opposite: change the heading from "discussion" to just "resolution" and only include that in the official ballot and final report. Discussions should be stored in the full issues database and not clutter up the FTF report -- some of those can be quite long while most others are empty because no one had the time to fill all of that in (and never will -- let's not fool ourselves that we can change this practice by introducing a separate heading). I realize that this is a politically incorrect argument, but I feel that it is an honest one. [Pete Rivett] I'm not trying to be bureaucratic, honest - and I'm trying to make life easier including for reviewers (speaking with my AB hat on when we review an FTF report we need clarity on exactly what resolution was voted on on and whether it has been applied). I don't want to formally constrain people but think as a 'best practice' people should be encouraged to separate out Discussion and Resolution using their judgment. In some cases, such as 'closed no change' then only Discussion is relevant (I agree with Joaquin's suggestion a while back that 'no change' closures should be justified which in general we have been doing). Regards, Bran "Pete Rivett" 01/20/2004 04:55 AM To: Branislav Selic/Ottawa/IBM@IBMCA, cc: Subject: RE: Ballot 4 Adaptive votes YES but NO to 6241 Adaptive votes YES to all the proposed resolutions in Ballot 4 EXCEPT 6241 for which the vote is 'NO'. I do believe it should be within the scope of UML to say how the same modeled real-world element represented in 2 models at different levels of abstraction should be related: in the example the two models are not totally distinct but different levels of abstraction of the same system: IMHO the resolution is a cop-out by saying it's a "methodological issue". Support of different levels of abstraction is important to MDA and there should be a standard representation of the different aspects. Note that if you agree with me, even if you have voted already you can change your vote until the deadline. As a general comment for the future I would like to see a better separation (via separate subheadings) between genuine discussion and the actual resolution - e.g. in 6161 the 'Discussion' section has both. Regards Pete Pete Rivett (mailto:pete.rivett@adaptive.com) Consulting Architect, Adaptive Inc. Dean Park House, 8-10 Dean Park Crescent, Bournemouth, BH1 1HL, UK Tel: +44 (0)1202 449419 Fax: +44 (0)1202 449448 http://www.adaptive.com -------------------------------------------------------------------------------- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Wednesday, January 07, 2004 10:03 AM To: uml2-superstructure-ftf@omg.org Cc: ocl2-ftf@omg.org; mu2i-ftf@omg.org Subject: Ballot 4 Attached, please find ballot 4. The vote commences today at 10 am EST and completes exactly two weeks later (10 am EST on January 21). All the instructions are in the ballot. The only rule that I would like to highlight here is that if you miss two votes in a row, you will be automatically kicked off the FTF. So, unless you want that, don't forget to vote. As a reminder, the following companies missed the last vote: Popkin Software Project Technologies Cheers, Bran Selic