On Fri, Oct 28, 2011 at 6:55 PM, Nicolas Anquetil <nicolas.anquetil(a)inria.fr
wrote:
> what are the metrics?
> - cycloLoc is cyclomatic / loc ?
> - locNom = loc / #method ?
> - nomNoc = avergae number of method per class ?
> - nocNop = avergae number of class per package ?
> - callNom = average # of calls each methods makes?
> - fanoutCalls = the ratio between external calls to total calls -- shows
> the coupling of the system
> - andc ? -- average number of derived classes
> - ahh ? -- average hierarchy height
>
> nicolas
>
> ------------------------------
>
> *De: *"Ciprian Teodorov" <ciprian.teodorov(a)univ-brest.fr>
> *À: *"Moose-related development" <moose-dev(a)iam.unibe.ch>
> *Envoyé: *Vendredi 28 Octobre 2011 18:21:47
> *Objet: *[Moose-dev] Re: OverviewPyramid smalltalk thresholds?
>
>
> Hi all,
>
> During the last days I've been trying to get some statistical thresholds
> about smalltalk to use with the OverviewPyramid Moose visualisation.
>
> So here are the numbers I've got so far:
> MetricName Low Average High #cycloLoc 0,18 0,22 0,26 #locNom 5,59
> 6,91 8,89 #nomNoc 9,28 11,24 14,18 #nocNop 6,38 8,57 12,62 #callNom
> 3,59 5,46 7,33 #fanoutCalls 0,18 0,23 0,31 #andc 0,41 0,60 0,76 #ahh
> 1,72 2,22 2,98
> The number were computer based on the evaluation of 20 smalltalk projects.
> The Metacello configuration of each project was used to get the particular
> composing packages. The Projects in question are:
>
> 'SmallDude' 'Gofer' 'Magma' 'Pier2'
'Merlin' 'Seaside30'
> 'Magritte2' 'Fame' 'DSM' 'Filesystem'
'HelpSystem' 'EyeSee'
> 'Metacello' 'Fuel' 'Glamour' 'MooseAlgos'
'Kumpel' 'Mondrian'
> 'PetitParser' 'XMLSupport'
> Please let me know what do you think about the quality of the results...
> I'm open to suggestions especially in terms other projects which could be
> includes. The constraint being that I need to have the Metacello
> configuration for the package.
>
> As for the code used to get these results I'll make it available on the
> squeaksource repository, once I clean it up a little bit.
>
> Have a great day,
> Ciprian
>
> On Tue, Oct 25, 2011 at 12:36 AM, Ciprian Teodorov <
> ciprian.teodorov(a)univ-brest.fr
wrote:
>
>>
>>
>> On Tue, Oct 25, 2011 at 12:10 AM, Tudor Girba <tudor(a)tudorgirba.com>wrote;wrote:
>>
>>> Hi,
>>>
>>> Going purely the Metacello way is less proper for your purpose because
>>> you are looking for a statistics, and due to project dependencies, you will
>>> get to measure common projects multiple times.
>>>
>> yep ... you are right
>>
>>>
>>> However, if you have a Metacello configuration, you can easily obtain the
>>> packages involved and their respective repositories. You can then use this
>>> information with the Monticello importer. At least theoretically :)
>>>
>>> ok I will look into that... for now I have an MonticelloImporter that
>> works .... well almost ... ;)
>>
>>> Cheers,
>>> Doru
>>>
>>>
>>> On 24 Oct 2011, at 23:47, Ciprian Teodorov wrote:
>>>
>>> > That's cool ... from my perspective I think a metacello importer
will
>>> do a better job... since it is closer to the idea of a project than the
>>> monticello repositories which sometimes are very fine grained.
>>> >
>>> > So if you manage to get a working version of the metacello importer
>>> please let me know. Meanwhile I'll try to figure this out using the
>>> monticello importer - importing either the whole repository or just selected
>>> packages following a handcrafted, subjective heuristic ;)
>>> >
>>> > On Mon, Oct 24, 2011 at 11:18 PM, Alexandre Bergel <
>>> alexandre.bergel(a)me.com
wrote:
>>> > I am currently working on a metacello importer. I have been
slow on
>>> this due to numerous deadlines. Having someone bothering me regularly will
>>> definitely help reshuffling my todo list :-)
>>> >
>>> > Cheers,
>>> > Alexandre
>>> >
>>> >
>>> >
>>> > Le 24 oct. 2011 à 17:58, Tudor Girba <tudor(a)tudorgirba.com> a
écrit :
>>> >
>>> > > Hi Ciprian,
>>> > >
>>> > > That is precisely what I had in mind when I said that we need
someone
>>> to do it :).
>>> > >
>>> > > For a list of projects, I would indeed do it like Alex is saying:
by
>>> traversing projects from squeaksource. One idea is to use the
>>> MonticelloImporter to do it from Moose. The only thing would be to implement
>>> the relevant metrics for this importer.
>>> > >
>>> > > Cheers,
>>> > > Doru
>>> > >
>>> > >
>>> > > On 24 Oct 2011, at 22:47, Ciprian Teodorov wrote:
>>> > >
>>> > >> Hi Doru,
>>> > >>
>>> > >> Thank you for your answer... It's too bad we don't have
these
>>> figures... What do you say about creating a list of projects that could be
>>> used to create such a baseline. I don't really have a precise idea about
the
>>> number of projects that we might need to compute this thing ... but I think
>>> starting such a list might be a good idea. And then based on that we can
>>> eventually try to get the results.
>>> > >>
>>> > >> In the Book: Object-oriented Metrics in Practice the authors
used 45
>>> java and 37 c++ systems to get these numbers ... so I think we have to find
>>> at least 30 projects maybe.
>>> > >>
>>> > >> I am not promising anything but maybe I will find some time
over the
>>> next few weeks that I can dedicate to doing this.
>>> > >>
>>> > >> What do you guys say?
>>> > >>
>>> > >>
>>> > >> On Mon, Oct 24, 2011 at 10:27 PM, Tudor Girba
<tudor(a)tudorgirba.com>
>>
wrote:
>>>
> >> Hi,
>>> > >>
>>> > >> We do not have those thresholds for Smalltalk, yet. It would
be
>>> interesting to get them, though. We only need someone to do it :)
>>> > >>
>>> > >> Cheers,
>>> > >> Doru
>>> > >>
>>> > >> On 24 Oct 2011, at 22:03, Ciprian Teodorov wrote:
>>> > >>
>>> > >>> Thanks for your prompt answer.
>>> > >>>
>>> > >>> On Mon, Oct 24, 2011 at 9:13 PM, Alexandre Bergel <
>>> alexandre.bergel(a)me.com
wrote:
>>> > >>> No idea about the threshold. I find system
complexity and class
>>> blueprint quite useful to get a first impression of a system. I then usually
>>> visualize the dependencies.
>>> > >>> If I really want to understand the system, then writing
unit tests
>>> will do the thing.
>>> > >>>
>>> > >>> I completely agree with you on these points...
>>> > >>> but from my point of view I think that the overviewpyramid
can be a
>>> very good visualisation
>>> > >>> to quickly present your system's complexity to
others... especially
>>> during a presentation...
>>> > >>> and then you can freely dive into more detailed aspect with
the
>>> system complexity and
>>> > >>> class blueprint - to show specific points. However, without
a
>>> statistically significant smalltalk baseline (the threshold)
>>> > >>> the pyramid doesn't convey much information especially
to an
>>> external viewer...
>>> > >>>
>>> > >>> so my point is, since we have the java and c++ cases, why
not get
>>> some smalltalk (or maybe pharo-specific)
>>> > >>> numbers also - especially since Moose is implemented in
smalltalk.
>>> > >>>
>>> > >>> regards,
>>> > >>> ciprian
>>> > >>>
>>> > >>> Alexandre
>>> > >>>
>>> > >>>
>>> > >>> On 24 Oct 2011, at 16:06, Ciprian Teodorov wrote:
>>> > >>>
>>> > >>>> Hi all,
>>> > >>>>
>>> > >>>> I'm new to using moose for analyzing a rather large
smalltalk
>>> project developed during the last 16-17 years.
>>> > >>>> I hope that using Moose framework will give positive
insights on
>>> the hot-spots of the system in order to improve its structure, and make it
>>> more maintainable.
>>> > >>>> The project name is Madeo (
>>>
http://stiff.univ-brest.fr/BINIOU/MADEO) a FPGA design-automation
>>> toolkit developed mainly by one of my PhD supervisors (Loic Lagadec).
>>> > >>>>
>>> > >>>> To start the evaluation I believe that the overview
pyramid is a
>>> very good starting point in order to get a generic idea about the system.
>>> > >>>> However, I was not able to find any smalltalk threshold
values in
>>> the moose image.
>>> > >>>>
>>> > >>>> So my question is if there is somebody having some idea
about the
>>> > >>>> smalltalk threshold values for the OverviewPyramid.
>>> > >>>>
>>> > >>>> If yes, could you provide me these figures, and
eventually point
>>> me to a scientific paper presenting these results.
>>> > >>>> If not, I'm willing to try to get these figures
myself... however
>>> I don't really know which smalltalk projects I could use to get good
>>> results.
>>> > >>>>
>>> > >>>> Thank you very much for your attention.
>>> > >>>>
>>> > >>>> Best wishes,
>>> > >>>> --
>>> > >>>> PhDc Ciprian TEODOROV
>>> > >>>> Lab-STICC/AS CNRS UMR 3192
>>> > >>>> University of Brest
>>> > >>>>
>>> > >>>> phone: (+33)(0) 6 08 54 73 48
>>> > >>>> mail: ciprian.teodorov(a)univ-brest.fr
>>> > >>>>
www.teodorov.ro
>>> > >>>> _______________________________________________
>>> > >>>> Moose-dev mailing list
>>> > >>>> Moose-dev(a)iam.unibe.ch
>>> > >>>>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> > >>>
>>> > >>> --
>>> > >>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>>> > >>> Alexandre Bergel
http://www.bergel.eu
>>> > >>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>> _______________________________________________
>>> > >>> Moose-dev mailing list
>>> > >>> Moose-dev(a)iam.unibe.ch
>>> > >>>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> > >>>
>>> > >>>
>>> > >>>
>>> > >>> --
>>> > >>> PhDc Ciprian TEODOROV
>>> > >>> Lab-STICC/AS CNRS UMR 3192
>>> > >>> University of Brest
>>> > >>>
>>> > >>> phone: (+33)(0) 6 08 54 73 48
>>> > >>> mail: ciprian.teodorov(a)univ-brest.fr
>>> > >>>
www.teodorov.ro
>>> > >>> _______________________________________________
>>> > >>> Moose-dev mailing list
>>> > >>> Moose-dev(a)iam.unibe.ch
>>> > >>>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> > >>
>>> > >> --
>>> > >>
www.tudorgirba.com
>>> > >>
>>> > >> "Next time you see your life passing by, say 'hi'
and get to know
>>> her."
>>> > >>
>>> > >>
>>> > >>
>>> > >>
>>> > >> _______________________________________________
>>> > >> Moose-dev mailing list
>>> > >> Moose-dev(a)iam.unibe.ch
>>> > >>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> > >>
>>> > >>
>>> > >>
>>> > >> --
>>> > >> PhDc Ciprian TEODOROV
>>> > >> Lab-STICC/AS CNRS UMR 3192
>>> > >> University of Brest
>>> > >>
>>> > >> phone: (+33)(0) 6 08 54 73 48
>>> > >> mail: ciprian.teodorov(a)univ-brest.fr
>>> > >>
www.teodorov.ro
>>> > >> _______________________________________________
>>> > >> Moose-dev mailing list
>>> > >> Moose-dev(a)iam.unibe.ch
>>> > >>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> > >
>>> > > --
>>> > >
www.tudorgirba.com
>>> > >
>>> > > "What we can governs what we wish."
>>> > >
>>> > >
>>> > >
>>> > >
>>> > > _______________________________________________
>>> > > Moose-dev mailing list
>>> > > Moose-dev(a)iam.unibe.ch
>>> > >
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> >
>>> > _______________________________________________
>>> > Moose-dev mailing list
>>> > Moose-dev(a)iam.unibe.ch
>>> >
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>> >
>>> >
>>> >
>>> > --
>>> > PhDc Ciprian TEODOROV
>>> > Lab-STICC/AS CNRS UMR 3192
>>> > University of Brest
>>> >
>>> > phone: (+33)(0) 6 08 54 73 48
>>> > mail: ciprian.teodorov(a)univ-brest.fr
>>> >
www.teodorov.ro
>>> > _______________________________________________
>>> > Moose-dev mailing list
>>> > Moose-dev(a)iam.unibe.ch
>>> >
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>
>>> --
>>>
www.tudorgirba.com
>>>
>>> "Quality cannot be an afterthought."
>>>
>>>
>>> _______________________________________________
>>> Moose-dev mailing list
>>> Moose-dev(a)iam.unibe.ch
>>>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>>>
>>
>>
>>
>> --
>> PhDc Ciprian TEODOROV
>> Lab-STICC/AS CNRS UMR 3192
>> University of Brest
>>
>> phone: (+33)(0) 6 08 54 73 48
>> mail: ciprian.teodorov(a)univ-brest.fr
>>
www.teodorov.ro
>>
>
>
>
> --
> PhDc Ciprian TEODOROV
> Lab-STICC/AS CNRS UMR 3192
> University of Brest
>
> phone: (+33)(0) 6 08 54 73 48
> mail: ciprian.teodorov(a)univ-brest.fr
>
www.teodorov.ro
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev(a)iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
>
>
> _______________________________________________
> Moose-dev mailing list
> Moose-dev(a)iam.unibe.ch
>
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
>
>
--
PhDc Ciprian TEODOROV
Lab-STICC/AS CNRS UMR 3192
University of Brest
phone: (+33)(0) 6 08 54 73 48
mail: ciprian.teodorov(a)univ-brest.fr
www.teodorov.ro