RFC 3.2: Autogeneration of Koha UML diagrams
Hi to all, from first day of October 2008 CILEA is going to support a project about Koha as student stage (followd by me). We want to improve tecnical documentation about Koha 3.0 (I hope to have a stable release for october !!). Starting from perl scripts avaible from internet we want to develop a script that read Koha API (C4 dir) and write a .xmi file with an UML rappresentation of classes, methods and usage of methods. In fact a work like this is possible only if API are written in a precise standard of coding. It thimk it s , as I know. But this is also a good check. We will report all problems we found, to be fixed in 3.2 We also write complete E-R diagrams for Koha DB and a specific document for every table But now the .xmi file in fact needs to be sligthy different for every UML tool. We can work with two Open source tool, ArgoUML and Umbrello We can usa also Rational Rose (the biggest commercial tool for UML). Which tool do you prefer ? If you think it is a useful project, I will insert it into RFCs for Koha 3.2 <http://wiki.koha.org/doku.php?id=en:development:rfcs3.2> Bye Zeno Tajoli CILEA - Segrate (MI) tajoliAT_SPAM_no_prendiATcilea.it (Indirizzo mascherato anti-spam; sostituisci quanto tra AT con @)
Zeno Tajoli a écrit :
Hi to all,
from first day of October 2008 CILEA is going to support a project about Koha as student stage (followd by me). We want to improve tecnical documentation about Koha 3.0 (I hope to have a stable release for october !!).
There's many possibilities to contribute. That's one. Good thing !
But now the .xmi file in fact needs to be sligthy different for every UML tool. We can work with two Open source tool, ArgoUML and Umbrello We can usa also Rational Rose (the biggest commercial tool for UML). Which tool do you prefer ?
According to me, the rule to follow is "it's forbidden to oblige someone to use a proprietary software". So : - if RR can export the resulting datas in a format that can be read by free softwares, then I don't mind what you use. - if it can't (don't want) : don't use it, otherwise, others won't be able to re-use your work. others may have different opinion. -- Paul POULAIN http://www.biblibre.com Expert en Logiciels Libres pour l'info-doc NOUVEAU TELEPHONE : 04 91 81 35 08
On Thu, Jul 31, 2008 at 4:24 AM, Zeno Tajoli <tajoli@cilea.it> wrote:
Hi to all,
from first day of October 2008 CILEA is going to support a project about Koha as student stage (followd by me). We want to improve tecnical documentation about Koha 3.0 (I hope to have a stable release for october !!). Starting from perl scripts avaible from internet we want to develop a script that read Koha API (C4 dir) and write a .xmi file with an UML rappresentation of classes, methods and usage of methods.
Hi Zeno - This sounds very useful. Here are two pages of documentation generated from the code that may help foster some ideas for you: http://blog.bigballofwax.co.nz/2008/05/24/creating-a-programmers-manual-for-... http://arwen.metavore.com/~acm/kohadocs/
In fact a work like this is possible only if API are written in a precise standard of coding. It thimk it s , as I know. But this is also a good check. We will report all problems we found, to be fixed in 3.2
This may be a tough part for you. We're working on making it better, but most of the code isn't actually object oriented, and doesn't maintain very good encapsulation. I'm interested in seeing what results you produce! Thanks, -Andy
Hi to all, here: http://wiki.koha.org/doku.php?id=en:development:rfcs3.2:rfc32_koha_api_uml_d... you can find the RFC about the Autogeneration of Koha UML diagrams and E-R diagrams. Comments wellcame, but attention: I will answer only after 01/sep/2008. Cheers Zeno Tajoli CILEA - Segrate (MI) tajoliAT_SPAM_no_prendiATcilea.it (Indirizzo mascherato anti-spam; sostituisci quanto tra AT con @)
Hello, On Thu, Jul 31, 2008 at 11:24:28AM +0200, Zeno Tajoli wrote:
Starting from perl scripts avaible from internet we want to develop a script that read Koha API (C4 dir) and write a .xmi file with an UML rappresentation of classes, methods and usage of methods.
Just some thoughts: - Objects that exists in the koha code comes from low level libraries used by koha and are just arguments to the functions of the koha API which uses a procedural paradigm. - there is no strong separation of the model (as the M in MVC pattern) in the API. so i see no easy way to parse the code to obtain a clean vision of the data structures. - even the schema isn't 3NF so you can't automatically distinguish every objects while parsing it. So if i were your student, i would be a little bit nervous: - the work is very hard - the result would be A better work could be: - read the code - propose a class model to implement with - strong M/C separation - a business abstraction - propose fixes on the schema to respect the goals fixed (for example: be 3NF compliant)
We also write complete E-R diagrams for Koha DB and a specific document for every table
always for myself: i think this is a very important think! i also think that it would be great to patch the sql file which creates the schema to use the 'description' keyword on every table and column! i was really desapointed the first time i typed describe tablename; into mysql to find help. schema description can help (not only new koha contributors, i guess). For the both jobs: i think there is no way to expect a parser to get the job done. regards -- Marc Chantreux BibLibre, expert en logiciels libres pour l'info-doc http://biblibre.com
Hi to all,
On Thu, Jul 31, 2008 at 11:24:28AM +0200, Zeno Tajoli wrote:
Starting from perl scripts avaible from internet we want to develop a script that read Koha API (C4 dir) and write a .xmi file with an UML rappresentation of classes, methods and usage of methods.
Just some thoughts:
- Objects that exists in the koha code comes from low level libraries used by koha and are just arguments to the functions of the koha API which uses a procedural paradigm. - there is no strong separation of the model (as the M in MVC pattern) in the API. so i see no easy way to parse the code to obtain a clean vision of the data structures. - even the schema isn't 3NF so you can't automatically distinguish every objects while parsing it.
So if i were your student, i would be a little bit nervous: - the work is very hard - the result would be
the mission of this task is to have a better documentation of the API. We will do the best as possible. Cheers Zeno Tajoli Zeno Tajoli CILEA - Segrate (MI) tajoliAT_SPAM_no_prendiATcilea.it (Indirizzo mascherato anti-spam; sostituisci quanto tra AT con @)
participants (4)
-
Andrew Moore -
Marc Chantreux -
Paul POULAIN -
Zeno Tajoli