Hi Andre,
I see that you worked again on the Bunch Cohesion and Coupling. Could you give us a pointer on what these metrics mean in practice? Cheers, Doru -- www.tudorgirba.com "Presenting is storytelling." _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi Doru,
Pointers: Using Automatic Clustering to Produce High-Level System Organizations of Source Code (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=693283) Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) Legacy Software Restructuring: Analyzing a Concrete Case. N. Anquetil and J. Laval. CSMR2011 Cheers, On Wed, Jan 19, 2011 at 9:28 PM, Tudor Girba <[hidden email]> wrote: Hi Andre, -- Andre Hora _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
It would be fun to see if these algo for automatic partitioning gives something different than we have for Moose and Mondrian.
Alexandre On 19 Jan 2011, at 18:08, Andre Hora wrote: > Hi Doru, > > Pointers: > > Using Automatic Clustering to Produce High-Level System Organizations of Source Code (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=693283) > > Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) > > Legacy Software Restructuring: Analyzing a Concrete Case. N. Anquetil and J. Laval. CSMR2011 > > Cheers, > > On Wed, Jan 19, 2011 at 9:28 PM, Tudor Girba <[hidden email]> wrote: > Hi Andre, > > I see that you worked again on the Bunch Cohesion and Coupling. Could you give us a pointer on what these metrics mean in practice? > > Cheers, > Doru > > > > -- > www.tudorgirba.com > > "Presenting is storytelling." > > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev > > > > -- > Andre Hora > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
What do you mean? What do we have in Moose and Mondrian for partitioning?
Btw Andre, do you use these metrics for any clustering? Cheers, Doru On 19 Jan 2011, at 22:46, Alexandre Bergel wrote: > It would be fun to see if these algo for automatic partitioning gives something different than we have for Moose and Mondrian. > > Alexandre > > > On 19 Jan 2011, at 18:08, Andre Hora wrote: > >> Hi Doru, >> >> Pointers: >> >> Using Automatic Clustering to Produce High-Level System Organizations of Source Code (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=693283) >> >> Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) >> >> Legacy Software Restructuring: Analyzing a Concrete Case. N. Anquetil and J. Laval. CSMR2011 >> >> Cheers, >> >> On Wed, Jan 19, 2011 at 9:28 PM, Tudor Girba <[hidden email]> wrote: >> Hi Andre, >> >> I see that you worked again on the Bunch Cohesion and Coupling. Could you give us a pointer on what these metrics mean in practice? >> >> Cheers, >> Doru >> >> >> >> -- >> www.tudorgirba.com >> >> "Presenting is storytelling." >> >> >> _______________________________________________ >> Moose-dev mailing list >> [hidden email] >> https://www.iam.unibe.ch/mailman/listinfo/moose-dev >> >> >> >> -- >> Andre Hora >> >> _______________________________________________ >> Moose-dev mailing list >> [hidden email] >> https://www.iam.unibe.ch/mailman/listinfo/moose-dev > > -- > _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: > Alexandre Bergel http://www.bergel.eu > ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. > > > > > > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev -- www.tudorgirba.com "Problem solving efficiency grows with the abstractness level of problem understanding." _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
>>> Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) They provide ways to assess the quality of a modularization (Figure 1). There are some automatic partition of dependent C files. I would be curious to see if what their clustering algo says about the modularization of our tools. Will they provide a better distribution of classes among the packages (which I doubt). Cheers, Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
In reply to this post by Tudor Girba
No Doru. The idea, for now, is only provide these metrics to the user, every time that exits a group of class (i.e., FAMIXPackage, FAMIXNamespace and FAMIXClassGroup).
On Wed, Jan 19, 2011 at 10:57 PM, Tudor Girba <[hidden email]> wrote: What do you mean? What do we have in Moose and Mondrian for partitioning? -- Andre Hora _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
In reply to this post by Alexandre Bergel
On 19 janv. 2011, at 23:13, Alexandre Bergel wrote: > >>>> Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) > > They provide ways to assess the quality of a modularization (Figure 1). There are some automatic partition of dependent C files. > > I would be curious to see if what their clustering algo says about the modularization of our tools. Will they provide a better distribution of classes among the packages (which I doubt). They certainly would be better according to the metrics they use for clustering :) I guess that Nicolas has more than one idea about what to do with this work... -- Simon Denier _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Hi all,
glad you are interested in this stuff. So first thing: the metrics implemented by Andre are used to do automatic re-structuring of classes into packages as Alex said. But they are only the metrics, you need an algorithm to do the actual regrouping of class in packages. The algorithms uses the metrics to know what classes are "closer" one to the other. Without this algorithm (not very difficult to implement) there is always the possibility to use the metrics as quality metrics for existing packages. However I would be cautious about that. Actually, I started to implement them (and Andre took the flag recently) to experiment more formaly their real interest. My impression is, actually, that they are not that much interesting for this purpose, that people do not really group classes based on cohesion/couopling considerations, but rather or higher level consideration (like all UI goes there, and all security code goes there, ...) If you are still interested, I can provide more details :-) BTW, jannik did a related work with DSM, except he was looking at cycles, i.e. he used another metric. nicolas ----- Mail original ----- > De: "Simon Denier" <[hidden email]> > À: "Moose-related development" <[hidden email]> > Envoyé: Jeudi 20 Janvier 2011 10:03:45 > Objet: [Moose-dev] Re: bunch cohesion and coupling > On 19 janv. 2011, at 23:13, Alexandre Bergel wrote: > > > > >>>> Bunch: A Clustering Tool for the Recovery and Maintenance of > >>>> Software System Structures > >>>> (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) > > > > They provide ways to assess the quality of a modularization (Figure > > 1). There are some automatic partition of dependent C files. > > > > I would be curious to see if what their clustering algo says about > > the modularization of our tools. Will they provide a better > > distribution of classes among the packages (which I doubt). > > > They certainly would be better according to the metrics they use for > clustering :) > > I guess that Nicolas has more than one idea about what to do with this > work... > > -- > Simon Denier > > > > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
> So first thing: the metrics implemented by Andre are used to do automatic re-structuring of classes into packages as Alex said.
> But they are only the metrics, you need an algorithm to do the actual regrouping of class in packages. The algorithms uses the metrics to know what classes are "closer" one to the other. > Without this algorithm (not very difficult to implement) there is always the possibility to use the metrics as quality metrics for existing packages. > > However I would be cautious about that. > Actually, I started to implement them (and Andre took the flag recently) to experiment more formaly their real interest. Cool! I would be interested to see this. > My impression is, actually, that they are not that much interesting for this purpose, that people do not really group classes based on cohesion/couopling considerations, but rather or higher level consideration (like all UI goes there, and all security code goes there, ...) This is what happen most of the time. You may see a strong coupling between Seaside and Pier, but they live in different packages. And you have JComponent and JButton both in Swing, while JComponent does not reference JButton that much. > BTW, jannik did a related work with DSM, except he was looking at cycles, i.e. he used another metric. Which metric? Cheers Alexandre > > ----- Mail original ----- >> De: "Simon Denier" <[hidden email]> >> À: "Moose-related development" <[hidden email]> >> Envoyé: Jeudi 20 Janvier 2011 10:03:45 >> Objet: [Moose-dev] Re: bunch cohesion and coupling >> On 19 janv. 2011, at 23:13, Alexandre Bergel wrote: >> >>> >>>>>> Bunch: A Clustering Tool for the Recovery and Maintenance of >>>>>> Software System Structures >>>>>> (http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=792498) >>> >>> They provide ways to assess the quality of a modularization (Figure >>> 1). There are some automatic partition of dependent C files. >>> >>> I would be curious to see if what their clustering algo says about >>> the modularization of our tools. Will they provide a better >>> distribution of classes among the packages (which I doubt). >> >> >> They certainly would be better according to the metrics they use for >> clustering :) >> >> I guess that Nicolas has more than one idea about what to do with this >> work... >> >> -- >> Simon Denier >> >> >> >> >> _______________________________________________ >> Moose-dev mailing list >> [hidden email] >> https://www.iam.unibe.ch/mailman/listinfo/moose-dev > > _______________________________________________ > Moose-dev mailing list > [hidden email] > https://www.iam.unibe.ch/mailman/listinfo/moose-dev -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
> > So first thing: the metrics implemented by Andre are used to do > > automatic re-structuring of classes into packages as Alex said. > > But they are only the metrics, you need an algorithm to do the > > actual regrouping of class in packages. The algorithms uses the > > metrics to know what classes are "closer" one to the other. > > Without this algorithm (not very difficult to implement) there is > > always the possibility to use the metrics as quality metrics for > > existing packages. > > > > However I would be cautious about that. > > Actually, I started to implement them (and Andre took the flag > > recently) to experiment more formaly their real interest. > > Cool! I would be interested to see this. Sure, whatever you want, just ask :-) We have a paper as CSMR 2011, if this is what you mean ? > > My impression is, actually, that they are not that much interesting > > for this purpose, that people do not really group classes based on > > cohesion/couopling considerations, but rather or higher level > > consideration (like all UI goes there, and all security code goes > > there, ...) > This is what happen most of the time. You may see a strong coupling > between Seaside and Pier, but they live in different packages. And you > have JComponent and JButton both in Swing, while JComponent does not > reference JButton that much. > > BTW, jannik did a related work with DSM, except he was looking at > > cycles, i.e. he used another metric. > Which metric? his metric is: "how much dependency cycles are there between packages?" he tries to lower this metrics just as one can try to lower coupling (bunch coupling or any other). We don't pretend Bunch cohesion/cooupling metrics are better than other, it is just that Bunch is a well known tool. There are many other metrics and I personnaly believe that they are all more or less equivalent (in quality, not in results). I think we should look for some other metrics, more conceptual probably, ... ? nicolas _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
>> Cool! I would be interested to see this.
> > Sure, whatever you want, just ask :-) > We have a paper as CSMR 2011, if this is what you mean ? Ah yes. Please, send it to me. I was not able to find it online. Alexandre -- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;. _______________________________________________ Moose-dev mailing list [hidden email] https://www.iam.unibe.ch/mailman/listinfo/moose-dev |
Free forum by Nabble | Edit this page |