From: Mark Wilson Date: 2003-01-14T14:51:53+09:00 Subject: Re: UML tool for Linux? My $0.02: I'm relatively new to serious programming and started looking at UML soon after starting to work with Ruby. As I understand it, UML has two main purposes: (1) to facilitate communication about design decisions, particularly for large projects, and (2) to provide visual aids in the analysis and design process. There are also some technologies that will transfer rigorous UML diagrams to code (or preliminary code) in at least some programming languages. Being a learner of programming, item (1) is not that important to me. I tend to think in visual terms, so item (2) is helpful to me and using UML seems more sensible than inventing my own notation, particularly since UML reflects and incorporates some time-tested principles of object-oriented analysis and design. I found the books UML Explained and UML Distilled to be useful. On Tuesday, January 14, 2003, at 12:18 AM, Dmitri Colebatch wrote: > My uninvited 2c: > > Tim Bates wrote: >> On Tue, 14 Jan 2003 03:23 pm, Phil Tomson wrote: >>> What good is UML? I mean, it seems to me that especially with >>> languages >>> like Ruby you could just code your OO system and then refactor as >>> needed. >> I haven't actually used UML before, which is why I'm only just >> looking for software for it. The reason is, I come from a strong >> engineering background (father was an engineer, I'm now studying >> engineering myself) and as such I find it helpful (sometimes even >> necessary) to get my ideas on paper, draw diagrams etc. > > I find exactly the same thing - I go through forests of paper just > scribbling static class diagrams when modelling problems. But I dont > use any tools, and wouldn't suggest them to anyone (I'd also be > interested to hear of reasons for using them). > > > I'm currently trying to get my head around the relationships >> between a significant number of classes and modules. Being a fairly >> visual person, I want diagrams, but rather than try and do it with >> conventional pen-and-paper methods, and end up as I usually do with >> lots of lines and scribble and crossings-out, I thought I'd give UML >> a shot. > > Remember that UML is a language, not a process (as I understand it). > The process of taking UML and generating code is a proprietory thing. > Having said that, I know of a java tool called uml2ejb (I think its > http://uml2ejb.sf.net) that could easily output Ruby code if you > wanted to go that way. Note that this (afaik) doesn't actually > generate the UML for you. > > > It's designed for >> this sort of thing and has the advantage that I can check it into CVS >> along with the code... It may work, it may not. > > what then happens when you change the code? you have uml in cvs with > one design and code with another.... unless you're going to be the > first person I've come into contact who actually does go back and > update the UML... > > cheers > dim > >