Hi Adrian,
First, what does the 'stub' field from
ModelRoot means?
"stub" refers to those entities that are not part of the system under
analysis, but that you want present for the model to be complete. For
example, if I have a class A that inherits from Object, and I only
want to analyze A, I will have in the model both A and Object because
like this I can reason about the inheritance of A.
Second, how do i know which fields do i have to write
in a MSE
file? For example, from the LAN sample model, Class has belongsTo -
> aPackage
belongsTo is to a Namespace, not to a Package. A Class is packagedIn
a Package.
and Package has definedClass -> someClasses; these
2 fields are
redundant. But for example at Class the method field doesn't
appear. So, how do i know which fields i have to write to make a
valid MSE file?
In general, in the case of a 1-to-n relationship the MSE should
rather state the n end of the relationship. So, in the above case,
you should should state the Class belongsTo, and packagedIn, rather
then adding the pointer to the class in the Namespace class, or
Package definedClass.
The properties that are not required are described as derived. In the
above case, Package definedClass is a derived property (actually, it
was not, but I corrected this in the latest version of Moose). To see
only the derived properties from FAMIX, you should use "Tools/Moose
Utilities/UML of Strict FAMIX meta-model" menu entry from the VW
launcher.
I also updated the picture from the Wiki with the strict one:
http://smallwiki.unibe.ch/moose/famixmetamodel/
Doru
--
Tudor Girba
www.iam.unibe.ch/~girba
www.iam.unibe.ch/~girba/blog/
"No matter how many recipes we'll know, we'll still value a chef."