01.01.2015 Views

UML Weekend Crash Course™ - To Parent Directory

UML Weekend Crash Course™ - To Parent Directory

UML Weekend Crash Course™ - To Parent Directory

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Session 30—<strong>UML</strong> Modeling <strong>To</strong>ols 313<br />

about using your Class diagrams to create data models, perhaps in an entirely different tool.<br />

XMI is one facility that will support the sharing of models created in one product with many<br />

other products. XMI not only supports sharing of Class diagrams, but sharing of all the <strong>UML</strong><br />

diagrams.<br />

XMI uses standard XML to describe the diagrams. OMG specifies XMI via a <strong>UML</strong>.DTD,<br />

which is updated for every revision of the <strong>UML</strong> specs. Some modeling tools import/export<br />

XML to their own DTD. Because correct XMI support means the tool is supporting the <strong>UML</strong><br />

metamodel correctly, correct XMI import/export becomes a ‘kosher stamp’ on whether the<br />

tool is supporting <strong>UML</strong> well or not.<br />

The fact that XMI uses standard XML means that you can export your diagrams to a<br />

variety of tools that can exploit the information for other purposes like reporting, software<br />

metrics, and project management.<br />

Team development<br />

Many projects require a number of people to contribute to the modeling effort. This implies<br />

that they need to share the same diagrams, each working on different aspects but everyone<br />

sharing each other’s products. Vendors have come up with a variety of techniques to support<br />

such team development. Some require a check-out/check-in method where one person<br />

has exclusive access to the checked out portion of the model. Others provide diagram or<br />

even element-level locking so that many people may have the same diagram or element<br />

open, but only one person may modify the diagram or element until they release it.<br />

Evaluating <strong>UML</strong> Modeling <strong>To</strong>ols<br />

Since the release of the <strong>UML</strong> standard, the modeling tool market has exploded. The best single<br />

source I’ve found for a list of the current tools is a Web site at www.cetus-links.org.<br />

The Cetus Team is a group of private individuals who support the content of the site. The<br />

site has over 18,000 links to everything you ever wanted to know about object-oriented<br />

anything.<br />

On the first page, you’ll find a section on Architecture and Design. Under that heading,<br />

you’ll see OOAD <strong>To</strong>ols, which stands for Object-Oriented Analysis and Design <strong>To</strong>ols (what I<br />

have been calling modeling tools). The list provides everything from university and freeware<br />

projects like Argo<strong>UML</strong> to high-end products like System Architect, <strong>To</strong>gether Control Center,<br />

and Rational Rose. Be wary of the free stuff. Most of it is work in progress. But some of the<br />

less expensive products like Poseidon or MagicDraw might be everything you need.<br />

Unfortunately, I’ve never found a single source that contains reviews of all the currently<br />

available products. So you’re on your own. I suggest the following plan of attack:<br />

1. Identify your financial limits. These tools cover a range from $100 to $7,000 fully<br />

configured. Remember to look into site and concurrent user types of licenses. Be<br />

realistic about the number of people you expect to use the tool.<br />

2. Identify the features that are most valuable to you. Look over the list in this session<br />

and determine what you can’t live without, what would expedite the project,<br />

and what you can live without.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!