UML?

Joomla! Documentation Workgroup

Moderator: Documentation

Locked
J_A_X
Joomla! Fledgling
Joomla! Fledgling
Posts: 1
Joined: Mon Apr 16, 2007 3:12 pm

UML?

Post by J_A_X » Mon Apr 16, 2007 3:15 pm

I can't seem to find any UML diagrams of the code itself in the documentation.  Can someone please point me in the right direction?

I really need this...

User avatar
Chris Davenport
Joomla! Ace
Joomla! Ace
Posts: 1370
Joined: Thu Aug 18, 2005 8:57 am
Location: Shrewsbury, Shropshire, United Kingdom

Re: UML?

Post by Chris Davenport » Mon Apr 16, 2007 9:00 pm

Hi J_A_X,

The nearest we have is on the Dev Site starting here: http://dev.joomla.org/content/view/1137/80/

Unfortunately now rather out-of-date.  :'(

Regards,
Chris.
Chris Davenport

Davenport Technology Services http://www.davenporttechnology.com/
Lion Coppice http://www.lioncoppice.org/

User avatar
ianmac
Joomla! Virtuoso
Joomla! Virtuoso
Posts: 4784
Joined: Sat Sep 24, 2005 11:01 pm
Location: Toronto, Canada

Re: UML?

Post by ianmac » Wed May 09, 2007 2:50 pm

You can find somewhat recent UML diagrams in the SVN at:
http://joomlacode.org/gf/project/joomla ... mla.uml%2F

Ian

User avatar
gustavo
Joomla! Explorer
Joomla! Explorer
Posts: 427
Joined: Fri Aug 19, 2005 12:51 pm
Location: Argentina
Contact:

Re: UML?

Post by gustavo » Wed May 09, 2007 3:05 pm

You can find somewhat recent UML diagrams in the SVN at:
http://joomlacode.org/gf/project/joomla ... mla.uml%2F

Ian
Hi Ian,

Excellent work! very useful

Have a nice day
gustavo
Comunidad Joomla: Maintenance, support, translation and distribution for the Joomla!. Help site online. Member of the Spanish [es_ES] Joomla Translation Team. http://comunidadjoomla.org

User avatar
jmfavre
Joomla! Apprentice
Joomla! Apprentice
Posts: 11
Joined: Thu Dec 18, 2008 3:15 pm

Re: UML?

Post by jmfavre » Wed Jan 14, 2009 9:03 pm

Hi there,
we are planning to work on creating an up-to-date version of the uml documentation. It seems that the last update was in May 2007. Am I right ?
Jean-marie

http://megaplanet.org/jean-marie-favre Jean-Marie Favre
Software Language Archeologist and Software Anthropologist
University of Grenoble - LIG - ACONIT - France
Signature rules - Literal URL's Only.


User avatar
ianmac
Joomla! Virtuoso
Joomla! Virtuoso
Posts: 4784
Joined: Sat Sep 24, 2005 11:01 pm
Location: Toronto, Canada

Re: UML?

Post by ianmac » Wed Jan 14, 2009 9:31 pm

Yes, end of May 2007 is latest. I don't currently have any plans to make new ones, but I don't think they have changed too much since then.

Ian

User avatar
jmfavre
Joomla! Apprentice
Joomla! Apprentice
Posts: 11
Joined: Thu Dec 18, 2008 3:15 pm

Re: UML?

Post by jmfavre » Wed Jan 14, 2009 11:43 pm

Hi ian;
Here is a message I've just sent to chris davenport, but it might make sens to post it in the forum. I'm professor at the university of grenoble (france) and I've been using joomla for some years now.

I give lectures lectures on software engineering at the graduate level, and I'm about to define a project in which master students will have to contribute documentation for Joomla!1.5. Since this is in the context of a reverse engineering course, they will have to deal with various tools and concepts. They are trained in UML.

The proposal is to create
- an up-to-date set of UML diagram describing the database at the implementation level (that is, with keys and other sql details)
- the same thing at the conceptual level (with associations and higher level of abstraction)
- with links to (site/backend) screens pages.

We use staruml which is a free (windows only :-( ) uml tool. (Students are used to it and it is a commercial-quality tool with no limitation because the company release it as open source before collapsing).

The idea would be to include these images both in the wiki and links in the phpdoc.

Some parts of the are just stubs or do not seems up-to-date and since there are quite disconnected from the api, I'm wondering if it would not be nice to add
links in the docphp documentation so that it refers to the wiki and back
again (with links to the images and to the screens).

In practice
1) I would like to know if this make sense to you
2) if there are similar efforts currently (I spent a various hours in the
forum and web site, wiki, but though they are some attempts to have UML
diagrams from time to time, I didn't see if there were some "official" UML diagrams).
3) Will it make sense to submit patches with docbook modification only
(such as adding links in docbook)
4) Do you have some kind of automatic tools to create some part of the wiki
?
5) I can't find too much information about quality ensurance tools for joomla. I mean they are various tools around to compute metrics, to enforce code style, unit testing, etc. I'm wondering how we can help to get in touch with the right people wrt to that.

I've various classrooms, with about 15 to 20 master students in software
engineering, and since the courses are about software engineering and reverse engineering in practice, I think that working on an open source software like joomla is a good opportunity for them to learn team work and apply their knowledge.

Let me know if this make sense to you, and if you have some pointers ro
relevant information or to people to contact.

May the fun be with you
Jean-marie

http://megaplanet.org/jean-marie-favre

ps. As you can notice as many other french guys we mostly speak broken english, so the proposal is more about contributing diagrams, traceability links, tools support, etc, rather than writing english prose.

http://megaplanet.org/jean-marie-favre Jean-Marie Favre
Software Language Archeologist and Software Anthropologist
University of Grenoble - LIG - ACONIT - France
Signature rules - Literal URL's Only.


User avatar
Chris Davenport
Joomla! Ace
Joomla! Ace
Posts: 1370
Joined: Thu Aug 18, 2005 8:57 am
Location: Shrewsbury, Shropshire, United Kingdom

Re: UML?

Post by Chris Davenport » Thu Jan 15, 2009 3:00 pm

Hi Jean-Marie,

This sounds really interesting and it could help us a great deal in an area of the project where we are always short of volunteers.

The plan is (and has been for at least three years now) that we will create two complementary and interlinked resources: the automatically generated http://api.joomla.org and the manually created API Reference which has recently been moved to http://docs.joomla.org/Framework, such as it is. The idea is that every (public) class and method in the Joomla Framework will have its own page on the wiki at a predictable URL. Each such page will contain a link to the appropriate location on http://api.joomla.org and a corresponding link back to the wiki will be embedded as a @link tag in the Joomla code. Putting the API Reference on a wiki lowers barriers to participation and we want to encourage users to contribute sample code and notes about their experience. The model for this is the PHP reference manual (eg. http://php.net/strlen).

Despite recent attempts to encourage more people to get involved with making this happen (see http://docs.joomla.org/API_Reference_Project) progress has been very slow with only a handful of the 170+ classes having any kind of reasonable documentation.

As for the database, there have been sporadic attempts to diagram/document it, but documenting the API has always taken priority.

I think it would be great to have an up-to-date set of UML diagrams, either for the database or the code (or both). We have had such diagrams before but it has not been possible to update them, mainly because of a lack of suitable tools, but also due to the usual time shortages. The biggest problem we encountered was that it was not possible to port diagrams from one tool to another and since there were no usable open source cross-platform tools available at the time, this created a substantial artificial barrier to maintaining them.

To answer your specific questions:-
1. Yes, it makes sense.
2. As far as I am aware no-one else is currently working on UML diagrams.
3. If you can create a set of patches to insert the phpdoc @link statements to the wiki class/method pages, then please go ahead. This can probably be done programmatically. Send patches to the Bug Squad and to me; I will check they make sense from a documentation standpoint; they will check they don't break anything and get them committed.
4. Not at present.
5. Contact the development team. Try Wilco Jansen, Andrew Eddie or Anthony Ferrara.

It is important that any material contributed to the documentation can be maintained in the future. It needs to be possible for others, outside of your group, to be able to pick up the work that has been done and continue it, adapt it, or simply maintain it, on a long-term basis. We can make infrastructure available to assist with that. So, for example, although contributing diagrams in PNG format would be helpful, we would also ask that the sources for those diagrams be available too. The sources may be tool-specific, which is unfortunate, but as long as the tool is freely available and open source then that is fine. Staruml looks nice; it's a real shame it only runs on Windows. I prefer not to erect artificial barriers to participation so would it be possible for you to switch to a cross-platform tool?

Please feel free to contact me directly at chris dot davenport at joomla dot org.

Regards,
Chris.
Chris Davenport

Davenport Technology Services http://www.davenporttechnology.com/
Lion Coppice http://www.lioncoppice.org/

User avatar
jmfavre
Joomla! Apprentice
Joomla! Apprentice
Posts: 11
Joined: Thu Dec 18, 2008 3:15 pm

Re: UML?

Post by jmfavre » Thu Jan 22, 2009 12:26 am

Thanks chris for your detailed answer!
Chris Davenport wrote: The biggest problem we encountered was that it was not possible to port diagrams from one tool to another and since there were no usable open source cross-platform tools available at the time, this created a substantial artificial barrier to maintaining them.
Yes, everybody have the same issue with UML.
Chris Davenport wrote: It is important that any material contributed to the documentation can be maintained in the future. It needs to be possible for others, outside of your group, to be able to pick up the work that has been done and continue it, adapt it, or simply maintain it, on a long-term basis.
Totally agree with that. The lecture is about software evolution, so ...

Chris Davenport wrote:Staruml looks nice; it's a real shame it only runs on Windows. I prefer not to erect artificial barriers to participation so would it be possible for you to switch to a cross-platform tool?
I understand ;-) Unfortunately for this year we will have to stay with StarUML (though I'm planning to migrate for next academic year). The reason is that we are going to develop plugins for staruml to automate some part of the documentation process and that students are already trained with that (in the first semester they realized generators from UML diagrams).
I've seen that developer's tutorial ("how to set up your workstation") are based on Windows platform and XAMP, so I guess that joomla developers are openminded.

My plan is to produce something that should be valuable enough to convince windows reluctant guys that what is done with staruml is worth. Staruml is free and opensource. Again I'm planning to move to another tool but this will be for next year with a new class. As the lecture is about software evolution and migration, this really makes some sense ;-)

Here is what we are planning to do in the 3 next months :
  • creating a phpDocumenter converter to reverse engineer information from php source code, and to apply this to joomla source code
  • generating from there staruml class diagrams including documentation of methods, etc.
  • creating a reverse engineering plugin that will create the backbone of the database schema from mysql tables in the form of class diagram
  • adding links to wiki pages for existing elements.
  • adding links to screenshot, and making these screenshots clickable.
  • creating a staruml plugin to generating uml class diagrams as clickable images with imagemap, to be integrated in the web site.
This directly fits in the topic of my software evolution / reverse engineering courses. In the last years I was doing similar things but in the context of java, and with toy examples (which is quite boring). This year we move to php and joomla! ( :-) ). I officialy informed the students on tuesday. We are going to start on next monday.
More later.
Jean-marie

(early feedback welcomed)

http://megaplanet.org/jean-marie-favre Jean-Marie Favre
Software Language Archeologist and Software Anthropologist
University of Grenoble - LIG - ACONIT - France
Signature rules - Literal URL's Only.


User avatar
Chris Davenport
Joomla! Ace
Joomla! Ace
Posts: 1370
Joined: Thu Aug 18, 2005 8:57 am
Location: Shrewsbury, Shropshire, United Kingdom

Re: UML?

Post by Chris Davenport » Thu Jan 22, 2009 12:11 pm

jmfavre wrote:I understand ;-) Unfortunately for this year we will have to stay with StarUML (though I'm planning to migrate for next academic year). The reason is that we are going to develop plugins for staruml to automate some part of the documentation process and that students are already trained with that (in the first semester they realized generators from UML diagrams).
I've seen that developer's tutorial ("how to set up your workstation") are based on Windows platform and XAMP, so I guess that joomla developers are openminded.
It's all about lowering barriers to participation. Fortunately Windows is widely available so it's not a big barrier. If you had said it only runs on Sun workstations that would have been a different matter. :)

It sounds like this will be a very valuable contribution to the documentation and I can't wait to see what you come up with. If you need any help, just ask.

Regards,
Chris.
Chris Davenport

Davenport Technology Services http://www.davenporttechnology.com/
Lion Coppice http://www.lioncoppice.org/

User avatar
ianmac
Joomla! Virtuoso
Joomla! Virtuoso
Posts: 4784
Joined: Sat Sep 24, 2005 11:01 pm
Location: Toronto, Canada

Re: UML?

Post by ianmac » Thu Jan 22, 2009 2:58 pm

Chris Davenport wrote:
jmfavre wrote:I understand ;-) Unfortunately for this year we will have to stay with StarUML (though I'm planning to migrate for next academic year). The reason is that we are going to develop plugins for staruml to automate some part of the documentation process and that students are already trained with that (in the first semester they realized generators from UML diagrams).
I've seen that developer's tutorial ("how to set up your workstation") are based on Windows platform and XAMP, so I guess that joomla developers are openminded.
It's all about lowering barriers to participation. Fortunately Windows is widely available so it's not a big barrier. If you had said it only runs on Sun workstations that would have been a different matter. :)

It sounds like this will be a very valuable contribution to the documentation and I can't wait to see what you come up with. If you need any help, just ask.

Regards,
Chris.
Also note: http://appdb.winehq.org/objectManager.p ... n&iId=4823

StarUML has a Platinum rating with wine. I'll have to give it a try.

Ian

VincentPow
Joomla! Fledgling
Joomla! Fledgling
Posts: 1
Joined: Tue Mar 17, 2009 2:46 pm

Re: UML?

Post by VincentPow » Tue Mar 17, 2009 3:17 pm

Hi,
I'm one of the master student of JMFavre. I work actually on the phpdoc generation. I succeed to generate the documentation with uml class diagrams as clickable images with imagemap.
Now, the problem is that i do not have the official template of joomla to generate the documentation as we can see at "http://api.joomla.org/Joomla-Framework/JRoute.html".
May you send me the template at "powazny at gmail dot com" or post a link which permit me to download it.
PS: until now, I work with the template phpdoc "frame:earthli" which is similar to web site api.joomla.org but the difference is earthli uses frames.

Vincent

User avatar
jmfavre
Joomla! Apprentice
Joomla! Apprentice
Posts: 11
Joined: Thu Dec 18, 2008 3:15 pm

Re: UML?

Post by jmfavre » Tue Mar 24, 2009 11:51 am

VincentPow wrote:uml class diagrams as clickable images with imagemap.
Hi there,
as vincent said, we are working on extending PhPdoc to include UML diagram into php file. How can we get access to the template used for the joomla doc generation process ?
Thanks in advance.

ps. we are going to show soon some nice UML diagrams ;-)

http://megaplanet.org/jean-marie-favre Jean-Marie Favre
Software Language Archeologist and Software Anthropologist
University of Grenoble - LIG - ACONIT - France
Signature rules - Literal URL's Only.


User avatar
JGustavo
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Mon Mar 29, 2010 11:47 pm
Location: Buenos Aires, Argentina

Re: UML?

Post by JGustavo » Tue Mar 30, 2010 12:09 am

Hello,

Does anyone know where to find UML diagrams for Joomla 1.5?

thank you very much for your help!

alud
Joomla! Fledgling
Joomla! Fledgling
Posts: 2
Joined: Fri Apr 09, 2010 12:42 am

Re: UML?

Post by alud » Fri Apr 09, 2010 12:56 am

Hello, I read all the thread it look a a bit old but it still seems to be some interest on it so here my opinion: I think if we have better documentation more joomla fans, like me, would be able to make development contributions to the community. And in order to keep the philosophy aligned with the joomla values, and the values of the majority of the community I think we should choose a UML CASE Tools, open source and if it possible cross platform.
you can choose the tools you want you have a list of its here: http://case-tools.org/multi_platform.html and here http://case-tools.org/open_source.html
and in order to migrate and interoperate with the documentation created in other tools like staruml you just have to export the model to XMI http://en.wikipedia.org/wiki/XMI and then import it to your new tool.

kind regards,
mike


Locked

Return to “docs.joomla.org - Feedback/Information”