[Modeling] Modeling an Agent Class- change of classes
Dr. Hong Zhu
Mon, 30 Jun 2003 10:22:09 +0100
I agree that there are some complications in the so called 'external model'.
To simplify the situation, let's first focus on the 'internal' model'. In
this case, each person has is associated to one instance of Company. The
consequence of deleting the instance of Company, say Enron, will result in
that the person is no longer a member of the Employee but the person will
still exist in the system as a member of Person. My point is that this kind
of part-whole relationship is not covered by UML's aggregate or composite
In an external model, I think that you are quite right for saying that there
is a problem. However, I think the model is OK, but there is a problem in my
definition of the congregation part-whole relation. Therefore, I revise the
definition to the following. In a congregation part-whole relation between
two castes, an instance of the part caste will automatically quit from the
part caste, if it is not associated to any instance of the whole caste
through the part-whole relation.
I think this will solve the problem and appliable to both internal model and
external model. Am I right?
----- Original Message -----
From: "Wagner, G.R." <G.R.Wagner@tm.tue.nl>
To: "Dr. Hong Zhu" <firstname.lastname@example.org>; "ModelingTC" <email@example.com>
Sent: Monday, June 30, 2003 9:08 AM
Subject: RE: [Modeling] Modeling an Agent Class- change of classes
> > Woops, I should have added that the person must be a member
> > of the Employee caste when it helds a part-whole relation
> > with an instance of the Company caste, say Enron. A person
> > can be an instance of both caste Person and
> > Employee. Moreover, the membership may change at run-time.
> > The part-whole relationsip is betweem Company and Employee,
> > while Employee is a subcaste of Persons.
> If "subcaste" means the same thing as "subclass", then
> your example model is flawed, as I have pointed out in
> our previous exchange. You will probably only notice
> this if you try to populate your model (please try it!).
> Modeling mailing list