Last Thursday happened the 1st Eclipse DemoCamp in Vancouver. It was a very dynamic event, with nine short talks packed into little more than one and a half hours. Attendance was high, I was really amazed to see such a great turnaround. The audience saw a diverse range of interesting Eclipse-based projects being developed in Vancouver/Victoria.
I demoed the TextUML Toolkit and got good feedback and some very interesting questions. The idea of a using a textual notation for creating UML models is still not a very easy sell, and that continues to surprise me. Being a developer, I find working with a textual notation so much more natural than a graphical one that it makes it hard for me to see things from other people’s shoes. I plan to go over the issue of textual versus graphical notations on a future post.
All in all, it was a great event. Many thanks to Tasktop‘s Robert Elves and Mik Kersten for organizing it, to the Eclipse Foundation for sponsoring the event, and congrats to all presenters.
Ed MerksDecember 8, 2007 at 5:35am
I’ll be interested to hear more about the issue of textual verses graphical notations. I suppose some will argue that a picture is worth a thousand words, but even in that case, wouldn’t a human readable notation as the serialized form be significantly better than semi-readable XML verbosity we have to put up with today? It always strikes me as unfortunate the extent to which XML has stifled progress on human readable notations…
I still miss Vancouver a lot but I’ll be there to visit family after the coming week’s board meetings…
Chris AniszczykDecember 8, 2007 at 9:55am
Keep pushing TextUML, I personally find graphical models just confusing. I guess that’s just me, I would prefer to parse a very simple textual notation over a large graphic. Being able to go between the two would be key, because than I could at least produce graphics for people who need a graphical model
IanDecember 8, 2007 at 1:18pm
I would have really liked to attend that event, but the ferry ride from Victoria to Vancouver was a little too much for me on Thursday.
Ed, I think the text vs. graphical notation comes down to how you want to exploit our cognitive abilities. Humans are very good an interpreting relationships between elements when presented graphically, however, in the case of UML I think we are often more concerned with the specification of the classes rather than the relationships between them.
rchavesDecember 8, 2007 at 1:52pm
Ed, I am a separation of concerns freak. I find the people behind UML did a great job at completely isolating semantics from syntax. So, regardless the syntax, if the semantics is preserved, we are good. That has interesting implications:
1) multiple user oriented notations: one notation will be better than another for different people, or at different tasks. There is no point in forcing everyone to use the same notation, for all tasks. Why not use the one the best suits your personal preferences, or that is more appropriate for the task at hand?
2) decoupling between serialization format and user oriented notation: the serialization format is just that, a way a program chooses to represent information in a unidimensional way. The main requirement here is to be able to easily parse that representation, regardless the environment you are. My take is that XML is the best thing we have in that sense (XMI incompatibilities aside). In my opinion, it would not make sense to expect people to be writing TextUML (or Emfatic) parsers just to be able to load a UML (or EMF) model into memory. Machine readability and human readability are conflicting forces, there is no way around that. Tools have needs that are very different from people and as such my take is that trying to use the same syntax for serialization and as a user-facing notation is not the right thing to do, as it will favor one kind audience at the expense of the other for no good reasons, given that the semantics is all that matters.
rchavesDecember 8, 2007 at 2:10pm
Chris Aniszczyk Says:
> Being able to go between the two would be key, because than
> I could at least produce graphics for people who need a
> graphical model
Oh yeah, I am with you on that one – this seems to be one of the recurring conclusions every time I see the textual vs. graphical debate.
The toolkit has a graphical viewer that is very immature/raw right now, but should look much better when I adopt UMLGraph as the rendering engine. But it will be just a viewer, not an editor.
For a graphical editor, users will have to look elsewhere. But given that the models created by TextUML are serialized using UML2, there are a few choices of graphical tools now (such as Eclipse UML2 Tools) and there will be more in the future as UML2 gains more traction. This is not supported yet, but I plan to have an editor for TextUML that will read and save UML models natively instead of saving the source code as-is and generating the UML model as the object code, as it is now. That would allow different team members to collaborate (read/modify) on the same models using their notation of choice.
rchavesDecember 8, 2007 at 2:28pm
> I would have really liked to attend that event, but
> the ferry ride from Victoria to Vancouver was a little
> too much for me on Thursday.
Yeah, I am in Victoria too, and the ferry sure is a hassle, but it was really worth it. If you have where to stay, that helps keeping the costs down too. Next time, propose to present – it helps with the motivation. And if that is not enough, think of the free beer.
I completely agree with you on the graphical notation being better for showing relationships, and that the textual notation is better for detailing the classes. Going even further, I believe the graphical notation is completely unsuitable for detailing behavior, such as describing activities. You are bound to use text for that.
Thank you guys for all the interesting opinions and ideas. With all this material, writing that post on textual vs. graphical notations (and internal representation vs. user-facing notations) should be a breeze now.
rchavesDecember 8, 2007 at 4:02pm
Ed, I think I missed your actual question about what the issues were, but it is basically the wrong assumption that if it is easier to get the big picture (no pun intended) of the model by using a graphical view, one should use a graphical view for everything.
AndreasDecember 10, 2007 at 1:34pm
since Rafael asked me here are some of my thoughts on the topic:
From the point of view of a tool vendor, using text to manipulate the structural aspects of a UML model seems not the right approach to me.
(As I understand Rafael plans to make TextUML part of a commercial product).
Mik’s Blog » Blog Archive » There’s something about VancouverJanuary 29, 2008 at 9:44pm
[...] Rafael Chaves of Abstratt Technologies presented a new approach to UML editing called TextUML Toolkit. There’s an interesting discussion on it in Rafael’s blog. [...]
Lightning Talks at April’s VIJUG meeting | abstratt: news from the frontDecember 6, 2008 at 2:45am
[...] next VIJUG meeting will follow the Lightning Talks format. Last December, I attended the Eclipse Democamp in Vancouver which had a similar format and it was quite dynamic and fast-paced. I am looking [...]
A reader’s “Thoughts about TextUML” | abstratt: news from the frontDecember 6, 2008 at 2:46am
[...] presentation notation and the persistence format are completely unrelated concerns (exactly, see my previous comment on [...]