Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Language IDEs » Objectteams » Role migration - is it really needed?
Role migration - is it really needed? [message #567536] Thu, 14 January 2010 01:46 Go to next message
Eugene Hutorny is currently offline Eugene Hutorny
Messages: 109
Registered: January 2010
Senior Member
I noticed somewhere in your plans to support role migration.

Do you have a good example to illustrate role migration?
One which I seen in the literature IMHO is just wrong modelling:
Quote:
> Mary works for The System Enterprise and when she leaves the enterprise a newcomer should be able to continue her work at the state Mary has left it


It is modelled an Mary's role in The System Enterprise is transferred from one person to another. I think this model is missing one distinct entity - Established Post. With this entity the model will look like this:
The System Enterprise has zero one or more Established Post
Position has no behaviour, only state, e.g. it can not act.
When The System Enterprise hires Mary she takes one of vacant position - it can be modelled as a ternary relationship (Company as Employer,EstablishedPost as Position,Person as Employee) or two separate relationships.
When Mary leaves the company, she takes all her belongings but leaves all work-related state in the scope of position.
When a newcomer takes the same position he takes the state kept in EstablishedPost and continues.

What do you think?
Re: Role migration - is it really needed? [message #567563 is a reply to message #567536] Thu, 14 January 2010 10:36 Go to previous message
Stephan Herrmann is currently offline Stephan Herrmann
Messages: 984
Registered: July 2009
Senior Member
Eugene Hutorny wrote on Thu, 14 January 2010 01:46
> I noticed somewhere in your plans to support role migration.

Oh please, were did it say it's planned?
It's included since version 1.2.5 ;)
(see http://www.objectteams.org/def/1.2/s6.html#s6.2.e )
Quote:
> Do you have a good example to illustrate role migration?
> One which I seen in the literature IMHO is just wrong modelling:
> Quote:
> > Mary works for The System Enterprise and when she leaves the enterprise a newcomer should be able to continue her work at the state Mary has left it

My example would be similar: a Lecturer (role) owns a deck of slides.
As the Person falls ill, a substitute is called to act as "the same
Lecturer" with the same slides etc.
Quote:
> It is modelled an Mary's role in The System Enterprise is transferred from one person to another. I think this model is missing one distinct entity - Established Post. With this entity the model will look like this:
> The System Enterprise has zero one or more Established Post
> Position has no behaviour, only state, e.g. it can not act.
> When The System Enterprise hires Mary she takes one of vacant position - it can be modelled as a ternary relationship (Company as Employer,EstablishedPost as Position,Person as Employee) or two separate relationships.
> When Mary leaves the company, she takes all her belongings but leaves all work-related state in the scope of position.
> When a newcomer takes the same position he takes the state kept in EstablishedPost and continues.
>
> What do you think?

Your model obviously works, too. The difference is, whether or not you
are forced by the language to make EstablishedPost explicit.
It may just be very convenient to speak of "the Lecturer" owning the slides,
without explicit distinction whether I'm talking about the EstablishedPost
or the role associated with this post. The light-weight solution may still have
an implicit concept of established posts: these may be variables of the
enclosing team. (It's a common theme that variables can sometimes be
used as a light-weight concept for roles - without the need for
specific role types).

That said, I haven't yet seen any applications of role migration in real world
OT/J code.
Given that the solution uses a special type IBaseMigratable rather than
new syntax this is pretty light-weight and shouldn't bother those who
don't need it ;)

Or do you think this feature makes the language unneccessarily complex
and more difficult to understand?
Previous Topic:An idea on value bound classes
Next Topic:Binary (in)compatibility?
Goto Forum:
  


Current Time: Fri Aug 01 20:25:17 EDT 2014

Powered by FUDForum. Page generated in 0.04826 seconds