[GRASS5] New GRASS Quality Control System online

Antoniol antoniol at ieee.org
Wed Apr 19 10:00:38 EDT 2006


Dear Soren,

    at the moment the system subscription is still managed by hand. I
will immediately insert you
as one of the  GRASS  developers that will receive  the automatic
feedback upon
modification and cvs commit of C files.

I would also  uderline that we do very welcome any suggestion you think
will
improve the approach and make it more usefull to GRASS  developers.

All the very best

Giulio

Sören Gebbert wrote:

>Hi,
>
>On Tuesday 18 April 2006 18:19, Markus Neteler wrote:
>  
>
>>Dear all,
>>
>>I would like to suggest again the running quality control system. Developers
>>can receive personalized emails in quasi real time which indicate potential
>>problems or a big "OK". In my/our/ opinion an immediate notification is
>>good since memories are still fresh. Like this the ongoing introduction of
>>cloned code could be minimized. Also other features are available as
>>indicated below.
>>    
>>
>
>This is a great tool, thank you.
>I found a baby_monster that i have programmed .... maybe i can refract it ... . :)
>
>And i would like to remind that there is also a small test suite for grass availible.
>
>  
>
>>Please a few volunteers may subscribe to make it a useful system.
>>It only makes sense if GRASS developers use it and suggestion improvements.
>>    
>>
>
>How can i subscribe? Did i miss some informations?
>
>  
>
>>I am sure that quality control will save us time later...
>>    
>>
>
>Indeed! The quality control system and the test suite should be used.
>
>Best regards 
>soeren
>
>  
>
>>Markus
>>
>>Markus Neteler wrote:
>>
>>    
>>
>>>Dear GRASS developers and interested users,
>>>
>>>as you know, GRASS is a huge system with thousands of files and
>>>hundreds of thousands of lines of code. You are contributing to the
>>>development - but do you sometimes wonder how quality is ensured in
>>>such a big project? Sure, there is the commit mailing list which shows
>>>changes in real time. But probably more could be done.
>>>
>>>Today we want to propose a new system to you:
>>>At Ecole Polytechnique de Montreal a new software quality control
>>>system has been developed which checks the CVS changes as distributed
>>>by the GRASS commit mailing list for potential problems. We would like
>>>to invite you to try this new GRASS source code quality monitoring
>>>service. We, that are Giulio Antoniol, Ettore Merlo, Salah Bouktif and
>>>Markus Neteler. Based on Free Software tools and the software
>>>engineering knowledge of the people of Ecole Polytechnique de
>>>Montreal, this quality assessment system was realized as combined
>>>email notifier and Web dashboard.
>>>
>>>So, what do you and the GRASS project gain from that? Three principal
>>>services are provided to you and the community:
>>>
>>>- The first service analyzes and controls the complexity increase and
>>> potential quality declining;
>>>
>>>- The second supports distributed developers to perform safe evolution
>>> by sending them a feedback report after each contribution in order to
>>> avoid abnormal actions;
>>>
>>>- The third allows developers to learn about the big picture of the
>>> whole software by providing them with a dashboard of the project
>>> evolution.
>>>
>>>What could go wrong? The *first service* checks if new functions or
>>>modifications are getting too complex which renders them
>>>unmaintainable. The service also checks if a modified function,
>>>probably written by someone else, is already too complex and should
>>>better broken into pieces. Finally it checks if functions are cloned,
>>>i.e. that several code pieces are identical or nearly identical. In
>>>this case such clones should be removed (e.g. by moving the function
>>>to the related GRASS library).
>>>
>>>As *second service* this report is sent to the developer shortly after
>>>each CVS modification. Memory is still fresh and the developer is
>>>invited to act upon a newly introduced problem or invited to attack an
>>>old outstanding problem with legacy code in GRASS.
>>>
>>>The *third service* is a Web site which provides easy code navigation
>>>to better study clones or complex functions (we call them "baby
>>>monsters" or "monsters" and put them into the "monster garage" there
>>>for inspection). Also detailed graphs will be generated to better
>>>illustrate the problems identified.
>>>
>>>It is our goal to make the services a help and understandable even to
>>>the "hobby" programmer. And of course, to help to improve the code
>>>quality. Better code is easier to maintain - so please give the system
>>>a try.
>>>
>>>To receive the code monitoring messages of your contributions, please
>>>just send a mail to Markus that you are interested. To take a look at
>>>the dashboard, check here:
>>>
>>>http://web.soccerlab.polymtl.ca/grass-evolution/grass-browsers/grass-index-en.html
>>>
>>>To log into the GRASS restricted, enter:
>>>User: grass  (pw: "grass6")
>>>
>>>Our plan in the long term is to develop personalized services and
>>>different views for different developers. This is a beta test and we
>>>need your help to identify weaknesses and possible enhancements.
>>>
>>>For example, as suggested by Ettore, we could easily implement a
>>>service to check files/functions for quality indexes before performing
>>>the actual CVS commit, kind of preventive verification.
>>>
>>>We are happy to give more feedback! Let us know or simply try the
>>>new system out.
>>>
>>>Best regards
>>>
>>>Markus
>>>
>>>in collaboration with and grateful to:
>>> Giulio Antoniol <antoniol AT ieee.org>
>>> Salah Bouktif <salah.bouktif AT polymtl.ca>
>>> Ettore Merlo <ettore.merlo AT polymtl.ca>
>>>
>>>_______________________________________________
>>>grass5 mailing list
>>>grass5 at grass.itc.it
>>>http://grass.itc.it/mailman/listinfo/grass5
>>> 
>>>
>>>      
>>>
>>_______________________________________________
>>grass5 mailing list
>>grass5 at grass.itc.it
>>http://grass.itc.it/mailman/listinfo/grass5
>>
>>
>>    
>>
>
>  
>




More information about the grass-dev mailing list