[mary-dev] Error Handling in MARY TTS: Start of new guidelines for writing code in MARY TTS

Marc Schroeder marc.schroeder at dfki.de
Mon Dec 6 10:05:05 CET 2010


Hi Herwin,

thanks a lot for your feedback and especially for the additional 
pointers. I will have a look at them.

Cheers,
Marc

On 02.12.10 15:21, H.vanWelbergen at ewi.utwente.nl wrote:
> Hi all,
>
> Interesting talk, a lot of the design/programming guidelines match with Elckerlyc's (see draft in attachment). Have you given any thought to (unit) testing guidelines?
>
> We use all the tools mentioned below (see http://hudson.ewi.utwente.nl:8080/job/Hmi/ for a peek at Elckerlyc's Hudson server). I would definatly recommend at least using findbugs every now and then.
>
> Some other static analysis tools we use:
> - Checkstyle (http://checkstyle.sourceforge.net/, also has a eclipse plugin), used to enforce certain programming style guidelines (ours are very basic, like: never use tabs, document at least the class with javadoc, use all uppercase for constants, etc).
> - pmd (http://pmd.sourceforge.net/, also has a eclipse plugin) checks for potential coding problems. I'm not a huge fan of their general code checking, but I love the copy-paste detector.
> - NCSS (http://javancss.codehaus.org/): To brag about the lines of code in Elckerlyc :) Lines of code on their own are not that informative, lines of code over time (as stored by Hudson) could be though. You want your lines of code to go generally up, with brief moments of them going down during refactoring sessions in which you improve quality (getting rid of duplicate code, unnecesary code, etc).
> - Looking into Jdepend and Infinitest now
>
> Cheers,
> Herwin
>
>> -----Original Message-----
>> From: mary-dev-bounces at dfki.de
>> [mailto:mary-dev-bounces at dfki.de] On Behalf Of Marc Schroeder
>> Sent: Friday, November 12, 2010 3:06 PM
>> To: Nickolay V. Shmyrev
>> Cc: mary-dev
>> Subject: Re: [mary-dev] Error Handling in MARY TTS: Start of
>> new guidelines for writing code in MARY TTS
>>
>> Hi Nickolay,
>>
>> thanks for the feedback and for these pointers. I will
>> certainly look them up and try them out.
>>
>> I fully agree that tools and processes are needed to help
>> verify that the good intentions are maintained throughout ;-)
>> Much to do there, we are only getting started, in a way.
>>
>> More pointers certainly welcome. For CI, I was thinking to
>> use cruise control, but will have a look at Hudson since you
>> recommend it.
>>
>> Never heard of Eclemma before, will have a look.
>>
>> Thanks and best,
>> Marc
>>
>> On 12.11.10 13:23, Nickolay V. Shmyrev wrote:
>>> Hello Marc
>>>
>>> While everything you presented is very reasonable and very
>> much needed
>>> I wonder if you thought about extending the development tool set to
>>> ensure software quality. In QA not only styles and guidelines are
>>> important, quite signficant parts of QA are processes and tools.
>>> Process make sure the guarantees you want to provide are indeed
>>> provided as for tools they help you in this task. To list a few of
>>> them
>>>
>>> 1) FindBugs (http://findbugs.sourceforge.net) will help you
>> to ensure
>>> code style, function contracts, etc
>>> 2) Hudson (http://hudson-ci.org) continuous integration ensures all
>>> your builds are in shape
>>> 3) Eclemma (www.eclemma.org/) helps to improve test
>> coverage and find
>>> rare paths in application.
>>>
>>>
>>> 2010/11/12, Marc Schroeder<marc.schroeder at dfki.de>:
>>>> Code quality is an important goal, and MARY TTS sometimes
>> falls short
>>>> of it. The MARY TTS core team is now (ten years late, I know...)
>>>> defining guidelines for how to write code in MARY TTS.
>>>>
>>>> Introducing these new principles is a process; we start with a
>>>> central issue, Error Handling. Please have a look at the
>> following set of slides:
>>>>
>>>> http://mary.opendfki.de/repos/trunk/doc/ErrorHandling.pdf
>>>>
>>>> I am sure the ideas in these slides are not the perfect
>> "right thing"
>>>> to do; but they seem like a good step in the right direction.
>>>>
>>>> All *new code* submitted to the MARY TTS repository, in
>> the trunk and
>>>> in all branches, should please observe the new guidelines.
>> Old code
>>>> will be updated as time permits.
>>>>
>>>>
>>>> If there are concerns, comments or questions about these
>> guidelines,
>>>> feel free to discuss on this list.
>>>>
>>>> Best regards,
>>>> Marc
>>>>
>>>>
>>>> --
>>>> Dr. Marc Schröder, Senior Researcher at DFKI GmbH
>> Coordinator EU FP7
>>>> Project SEMAINE http://www.semaine-project.eu Project
>> leader for DFKI
>>>> in SSPNet http://sspnet.eu Project leader PAVOQUE
>>>> http://mary.dfki.de/pavoque Associate Editor IEEE Trans. Affective
>>>> Computing http://computer.org/tac Editor W3C EmotionML
>> Working Draft
>>>> http://www.w3.org/TR/emotionml/ Portal Editor
>>>> http://emotion-research.net Team Leader DFKI TTS Group
>>>> http://mary.dfki.de
>>>>
>>>> Homepage: http://www.dfki.de/~schroed
>>>> Email: marc.schroeder at dfki.de
>>>> Phone: +49-681-85775-5303
>>>> Postal address: DFKI GmbH, Campus D3_2, Stuhlsatzenhausweg
>> 3, D-66123
>>>> Saarbrücken, Germany
>>>> --
>>>> Official DFKI coordinates:
>>>> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
>>>> Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany
>>>> Geschaeftsfuehrung:
>>>> Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender)
>> Dr. Walter
>>>> Olthoff Vorsitzender des Aufsichtsrats: Prof. Dr. h.c.
>> Hans A. Aukes
>>>> Amtsgericht Kaiserslautern, HRB 2313
>>>> _______________________________________________
>>>> Mary-dev mailing list
>>>> Mary-dev at dfki.de
>>>> http://www.dfki.de/mailman/cgi-bin/listinfo/mary-dev
>>>>
>>
>> --
>> Dr. Marc Schröder, Senior Researcher at DFKI GmbH Coordinator
>> EU FP7 Project SEMAINE http://www.semaine-project.eu Project
>> leader for DFKI in SSPNet http://sspnet.eu Project leader
>> PAVOQUE http://mary.dfki.de/pavoque Associate Editor IEEE
>> Trans. Affective Computing http://computer.org/tac Editor W3C
>> EmotionML Working Draft http://www.w3.org/TR/emotionml/
>> Portal Editor http://emotion-research.net Team Leader DFKI
>> TTS Group http://mary.dfki.de
>>
>> Homepage: http://www.dfki.de/~schroed
>> Email: marc.schroeder at dfki.de
>> Phone: +49-681-85775-5303
>> Postal address: DFKI GmbH, Campus D3_2, Stuhlsatzenhausweg 3,
>> D-66123 Saarbrücken, Germany
>> --
>> Official DFKI coordinates:
>> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
>> Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany
>> Geschaeftsfuehrung:
>> Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender) Dr.
>> Walter Olthoff Vorsitzender des Aufsichtsrats: Prof. Dr. h.c.
>> Hans A. Aukes Amtsgericht Kaiserslautern, HRB 2313
>> _______________________________________________
>> Mary-dev mailing list
>> Mary-dev at dfki.de
>> http://www.dfki.de/mailman/cgi-bin/listinfo/mary-dev
>>

-- 
Dr. Marc Schröder, Senior Researcher at DFKI GmbH
Coordinator EU FP7 Project SEMAINE http://www.semaine-project.eu
Project leader for DFKI in SSPNet http://sspnet.eu
Project leader PAVOQUE http://mary.dfki.de/pavoque
Associate Editor IEEE Trans. Affective Computing http://computer.org/tac
Editor W3C EmotionML Working Draft http://www.w3.org/TR/emotionml/
Portal Editor http://emotion-research.net
Team Leader DFKI TTS Group http://mary.dfki.de

Homepage: http://www.dfki.de/~schroed
Email: marc.schroeder at dfki.de
Phone: +49-681-85775-5303
Postal address: DFKI GmbH, Campus D3_2, Stuhlsatzenhausweg 3, D-66123 
Saarbrücken, Germany
--
Official DFKI coordinates:
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany
Geschaeftsfuehrung:
Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender)
Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313


More information about the Mary-dev mailing list