On 04/18/2013 10:44 AM, Petros Apotsos wrote:
Dear Matthias and list members,
According to my POV, documentation is of fundamental importance to software
development!
I have sent messages to this list at least 2 times in the past, regarding
aspects of this particular subject. The responses I got: 0!!!
What I have learned in my Postgraduate Studies is that BEFORE, but also
WHILE developing a Software Project (like QGIS) or a Database (like a GIS)
it is essential to build a conceptual model of the system. This should be
done both on static and functional basis.
My immediate concern at this time is the model of Geometric Networks. I want
to build some fleet tracking tools that use sequential GPS signals to
calculate vehicle passes through points, trajectories, routing etc. So, I
started modelling the QGIS library classes that I thought were relevant to
my subject. This is an ongoing work, and I have modelled a few classes,
their relationships, but also some use cases and functions. I am using UML
notation for this task.
Note, that I am not using UML to automatically produce code. This is a
misconception, I think, of UML and its purpose in developing systems. I use
modeling purely for overview and documentation reasons, as I am not a
hard-core coder, but rather a GIS designer/engineer.
These being said, I think this modeling process can help with various issues
of QGIS development, including (but not limited to):
- Layers and sublayers programmatical handling
- Grouping and programmatical access of tools like SEXTANTE (and also other
plugins)
- API documentation (not the automatic one, but rather a manually updated
one, addressing all relevant issues to specific classes and methods).
- Connection between classes of different libraries (GDAL, QGIS, Qt etc.)
I hope that was a neat introduction to my thoughts about how GIS systems
should be documented! I also REALLY hope it gets some attention this time!
IF any of you think we can do some introductory work on QGIS documentation
(be it the actual API, GUI elements or any other part of the project) using
modern UML annotation and tools, please feel free to contact me with details
and ideas. I am willing to volunteer a few hours each week towards making
the QGIS project better, and documentation is the first step.
I am also open to conversations on this subject (a blog/forum would be
REALLY helpful there) and opinion sharing.
Hoping this message will strike some strings,
Petros Apotsos
Petros,
Can you share some example diagrams you've made already and explain how
they could integrate with the QGIS API and it's auto diagrams. I don't
think anyone opposes your ideas but it's something you're going to have
to get started and see if others want to help/continue the method.
Obviously we can host/incorporate such diagrams into the existing
documentation.
Keep in mind there is a learning curve to UML and tools for UML, so
simplification and recommendations are helpful there.
Thanks,
Alex
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer