Ulterior Motive Lounge

UML Comics and more from Martin L. Shoemaker (The UML Guy),
Offering UML Instruction and Consulting for your projects and teams.
posts - 110, comments - 72, trackbacks - 0

My Links

News

Twitter












Archives

Post Categories

Image Galleries

About Martin L. Shoemaker

Tech Blogs

Ulterior Motive Lounge Episode 26: Aboard the Helicopters

Continuing The Project That Time Forgot, a UML case study in comic strip form... (Click picture for a larger image.)

Ulterior Motive Lounge Episode 26

This is the first we've seen of Deployment Diagrams in the Lounge; but they're enough like Class Diagrams that I think you should find them easy to read. Here's the diagram above, larger and more readable:

Logical Deployment Diagram

The cubes represent nodes within the system. By default, they represent Processors: computers where you'll deploy code. The <<device>> stereotype here indicates devices that your system talks to, but you don't actually deploy any code there. The lines connecting the nodes represent paths of communication. Recall from our Class Diagrams that we use arrows to indicate which end of a relationship is a "controller or "owner" in the relationship; but if the ends are "peers" -- or if we just haven't decided the details yet -- we use simple lines, not arrows. Lines are more common in Deployment Diagrams.

As in Class Diagrams, the triangle-headed arrow indicates generalization or inheritance. In this example, a Windows Mobile Phone is a more-specific example of a cell phone, one where we can deploy Windows Mobile apps.

Processors and devices are physical things. Stakeholders who haven't a clue what Classes they need will commonly have strong opinions of what nodes they need. "We're going to have PCs at all these stations, and a server back here, and two printers over here, and a connection to the Internet here, and..." So a Deployment Diagram is often part of their requirements, not just their design. (Of course, the design may result in deployment changes...) Drawing the Deployment Diagram is a good starting point for discussing the system.

To make these diagrams even more readable to the stakeholders, it's common to add specific icons for specific kinds of nodes:

Logical Deployment Diagram with node icons

What we've seen so far are logical Deployment Diagrams: these are the nodes that must communicate to carry out requirements, but not the full picture. A physical Deployment Diagram adds the hardware that connects these nodes, and also describes the connections:

Physical Deployment Diagram

Some stakeholders -- particularly IT staff and network admins -- will prefer the physical Deployment Diagrams; but most will prefer to know where work is done, without reference to how the nodes connect.

Note also some added detail here: besides Windows Mobile Phones, we have two other kinds of cellular devices. The Tablet PCs are equipped with Cellular Modems; and the GPS Locators use cell signals to broadcast their locations. Hmmm... That means the cellular network is very close to being a single point of failure. if that went down, it would be bad...

 Other notes from today's Episode:

  • Dog refused to be left home. She's pretty stubborn sometimes.
  • WiMAX is becoming a very popular solution for wide-range wireless networking. But darn it, they still don't have a tower that can reach my house!
  • Stick Boy is a gamer geek. He never goes anywhere without his wizard staff.
  • Hacker Girl's shirt reads, "What-EVER!" in pink on blackl.

And finally: yes, despite his admonitions, The UML Guy just overlooked some vital information. He's not kidding: we all have blind spots, and we need each other to review and catch what we miss. Even knowing that, he didn't listen to Dog. She's always barking about something, so this can't be important, right?

Everyone on the team and every stakeholder has a unique perspective. Think of your problem as a giant abstract sculpture in a dark room; and you're supposed to recreate that sculpture. Everyone has a flashlight. Some are broad beams, and some are narrow, but none is large enough to encompass the entire sculpture. Oh, sure, if you stand back at a distance, you can play your beam over the wole thing; but then you're too far away to see details. So you need everyone, every light, to see angles and perspectives that you overlook. Even with all the beams, you'll miss some details; so go out of your way to get as many beams as possible, and have everyone look from multiple angles.

Of course, most of us would probably overlook Dog as a stakeholder, so I'll cut The UML Guy a little slack. But if only he had listened...

 

Print | posted on Tuesday, December 02, 2008 8:59 AM | Filed Under [ Ulterior Motive Lounge It's all about communication. UML ]

Feedback

No comments posted yet.
Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification:
 
 

Powered by: