Dear All,
this Friday, a Fame sprint will take place in Bern.
Program
- 11:00 rehearsal of Models at Runtime presentation.
- Afterwards, happy hacking and pair programing.
Links
- http://www.iam.unibe.ch/~akuhn/d/Kuhn-2008-MRT-Fame.pdf
- http://smallwiki.unibe.ch/fame/issues
You are welcome to participate and/or attend the rehearsal.
@Moose - if you have feature requests, please reply to this mail or
add them on the wiki page! For example, I have seen that you are
about to impl a visitor, this sounds like a nice job for Fame code
generation.
cheers,
Adrian
--
Adrian Kuhn
Software Composition Group
University of Bern, Switzerland
http://www.iam.unibe.ch/~akuhn
Hi all,
I would like to add some properties in the list "Select properties to
add:" when I push "+" button.
I have added this in my fonction in FamoosClass :
<property: #LCOM1
longName: 'Lake of cohesion'
description: 'Lake of cohesion'
>
but it don't appear in the list.
Thanks for help
Jannik
On 22 Sep 2008, at 16:37 , Holger Guhl wrote:
> The project is for company CAST that has software for software
> quality assessment.
I know them, that's cool!
> I have a simple question: Do you have more analysis methods and
> metrics that are not yet published with Moose?
You can find a pre-release of (some of) my current work here
http://www.iam.unibe.ch/~akuhn/d/Kuhn-2008-WCRE-SoftwareMap.pdf
> And how about correctness of the measured values? The class comment
> states: "Right now only Number of MessageSends is computed in a
> correct manner." On the first glance, I cannot see which of the
> measured values could be wrong. Any hint on inappropriate
> computation or improvement would be appreciated. The only thing I
> see a bit confusing is the computation of two McCabe numbers
> #cyclomaticNumber and #cyclomaticNumber2. Unfortunately, the class
> comment does not tell enough.
Correctness of measured values is a big issue. The correctness of the
numbers that Moose produces is unknown. Even such simple measurements
as the number of classes or method invocations might be wrong! Why?
Moose uses the FAMIX model that has the aim to be language
independent, which can only be achieved at the cost of less
precision. Famix is this a lossy representation of software rather
than precise, think JPEG vs PNG. For that reason I suggested some
time ago to add an error range to all numbers, and started to take a
look at some of the numbers. That is why there are two diff McCabe
measurements. As far I recall, #cyclomaticNumber2 is more correct
than #cyclomaticNumber. I only looked at McCabe and found it is not
correct, so I guess other measurements need careful review too. But
alas, I did not have time to complete that work...
cheers,
AA
Hi All,
I would like to use iplasma and I have some questions about it :
- is it always maintained ?
- is there any important bugs ?
- have you any idea about its future evolution ?
Thanks
Jannik
Hi all
in FAMIX2Class I have
metamodelBelongsTo
^(Property
name: #belongsTo
type: FAMIX2Namespace)
strategy: MooseStrategy;
oppositeName: #class;
isComposite: true;
yourself
What is a MooseStrategy: an object that controls the way objects are
stored
but it looks like only used in Meta.
Stef
Hi all
I have
metamodelBelongsTo
^(Property
name: #belongsTo
type: FAMIX2Namespace)
strategy: MooseStrategy;
oppositeName: #class;
isComposite: true;
yourself
But Property is a Meta related entity so should we remove Property and
the methods using it?
Who said that it was obvious :(
Stef
Hello Jacopo,
You cannot model initializers in FAMIX (neither field initialization,
nor instance or static initialization blocks). The same applies for
doublebrace initialization, and many other features of Java. The main
reason why is that Famix is supposed to be language independent and
thus a lossy model of software rather than a precise one, think of
JPEG vs GIF. Which is okay as long Famix is used for coarse-grained
high-level analysis, it is obvious that Famix would be a bad choice
for eg program transformation.
But you best address this question to the Moose mailing list (see
foward in CC). Fame is about the (meta)metamodeling-infrastructure
only, not about concrete metamodels such as Famix. I have left the
Moose team start fo this year, and maybe what I just said above is
obsolete in the meantime...
cheers,
AA
On 16 Sep 2008, at 12:11 , Jacopo Malnati wrote:
> Hello everybody,
>
> still in the context of exporting Java code to MSE, I don't know
> how to handle a dependency that comes from the initialization of a
> class field.
>
> Let's say that a class has a field "myField" of type "MyType" and
> that it gets declared in the body of the class and initialized with
> a constructor, in place.
> Something like:
>
> MyClass {
> MyType myField = new MyType(...)
>
> }
>
> Now, this is an invocation (of a constructor) but in Famix 2.2 an
> invocation is between 2 AbstractBehaviouralEntity and in this case,
> it's not. In fact the initialization of a class field can be
> outside any method, therefore I don't know how to model this
> dependency.
>
> Is there any way I can model it? Or Famix 2.2 doesn't allow me to
> model this situation?
>
> Thanks :)
>
> Jacopo