A UML Pattern Language

I have a love hate relationship with UML. I love the idea of a modeling language for communicating complicated ideas, but in practice I've never found much value from the diagrams. The few times I have found them useful were as tools for myself to better understand the relationship of a complicated set of classes or objects. I've never really found that reading someone else's diagrams to be that useful. I think a lot of this confusion comes from most people's cursory knowledge of the language which leads to diagrams built from the elements of UML but that don't' follow their intended usages or best practices. I have no doubt my diagrams have suffered from this problem.



Unless you work in an environment with a skilled UML practitioner to act as a mentor, there's no feedback loop to guide your modeling development. This makes building models that are understandable to a large audience difficult. I recall when I learned C++, even with the feedback of the compiler and the running code, I never felt confident I was doing the right thing or using the tool in the right way until after I had read and applied the lessons in Scott Meyer's 'Effective C++' series of books. I've been looking for something similar to help with my UML techniques.



I finally lucked out this week and stumbled across a nice book on UML called A UML Pattern Language by Paul Evitts. The book uses the Christopher Alexander's pattern approach of specifying common UML problems and forces and then talks about the solution and provides examples. This was exactly the sort of feedback I've been looking for. I'm only half way through the book but I feel like I've gained some new insights into how to model more effectively.

Comments

Popular posts from this blog

Axis, Axes, Axii?

The Reading Life

I Feel Like Blogging Again