Sponsored Link •
A comment to an article by Craig Larman posted last year.
In this article, he says:
Getting a book or taking a course that focuses on UML, becoming certified in UML 2.0 notation, or knowing how to use a UML CASE tool has nothing to do with being able to think or analyze in objects or creating well-designed, object-oriented systems.
I mostly agree with him. My experience is that the tools often get in the way of the process. It's far too common to see people get lost in tools and notation, believing that this will somehow produce a good design.
I think the problem is that you have to really understand OO design to use the tools effectively -- at that point the tools become useful for communicating the design. But they don't help you create the design, they just help you talk about it.
The pitfall is that people have often come to believe that knowing UML would solve the problem of creating a good program. That's like saying that knowing some words and some grammar rules will solve the problem of writing good prose. It's necessary, but not sufficient.
|Bruce Eckel (www.BruceEckel.com) provides development assistance in Python with user interfaces in Flex. He is the author of Thinking in Java (Prentice-Hall, 1998, 2nd Edition, 2000, 3rd Edition, 2003, 4th Edition, 2005), the Hands-On Java Seminar CD ROM (available on the Web site), Thinking in C++ (PH 1995; 2nd edition 2000, Volume 2 with Chuck Allison, 2003), C++ Inside & Out (Osborne/McGraw-Hill 1993), among others. He's given hundreds of presentations throughout the world, published over 150 articles in numerous magazines, was a founding member of the ANSI/ISO C++ committee and speaks regularly at conferences.|