I certainly classify myself as a stone-thrower within the glass house who has no better material from which to build my abode...
I have not attempted to see whether what MS is doing with "domain-specific languages" in VSTS is actually as complete a solution as they might hope it would (or will) be. If it's extensible without difficulty, it may be on the road to nirvana -- but I don't even know if they've documented it (vs making it totally proprietary, "usable" by the rest of us only to the extent that reverse engineering gives the info we need). Calling a diagram UML does have some advantages over an identical-looking diagram not so labelled. However, the best "quick overview" for an app needs to be constructed by someone who can make sure that there's more emphasis on the important parts rather than on the parts that are proximate to other things in an automated diagram. If you can't see two patterns X and Y in the UML and understand (e.g.) which class is the "pattern" class, vs the cooperating class(es), having them on the diagram is not likely to give a newcomer any useful information. I confess to wanting to believe that the camp that says "the best / only reliable documentation is the code, so you need to write in an extremely expressive language like Ruby" is right. I consider that pretty close to "proven true" for relatively small apps. I have yet to see anything "big" that has up-to-date reliable documentation that would be able to take suggest that UML (or anything else) can really make things better for larger problems. The approach of TenFold Corp. is also very interesting; the fact that it's not obviously the best way to build apps after 10 (or is it 15?) years of development speaks to the fact that we're involved in what is normally called "a hard problem." I do agree with "[UML] doesn't have to be complete to be [somewhat] useful"; I used the term "useless" more because it fit the acronym than my real view. "Somewhat useful" rather than "universal" would be better a better beginning. At 03:54 AM 5/28/2006, Fabian Schmied wrote >>I was trying to say (without being as blunt as in this message) that "naked" >>UML could stand for Useless Markup Language. > >Just because some design patterns might have similar UML class >diagrams, I wouldn't infer UML is useless. Even if UML was "simply not >expressive enough to fully support software development", it can be >used for many scenarios, e.g.: >- getting a quick overview over an application's class structure >(class diagrams), >- understanding how a certain algorithm involves different objects >(sequence diagrams), >- documenting an underlying state machine (state diagrams), etc. > >A modelling language doesn't need to be complete in order to be very >useful for communication and documentation. And although I'm not a fan >of totally UML-based software development, I consider it a great tool >for these purposes. > >And the question is: what would you suggest instead? Use text instead >of pictures to explain application design? Use some home-brewn >graphical method instead of UML? What's the alternative? > >Fabian J. Merrill / Analytical Software Corp =================================== This list is hosted by DevelopMentorĀ® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com
