Feeds

Sequence diagramming that's fit for purpose

Illustrate your point

Secure remote control for conventional and virtual desktops

Book extract, part 4 In this, the final part of our series of experts from Use Case Driven Object Modeling with UML: Theory and Practice Matt Stephens and Doug Rosenberg show you how to draw lean, purposeful sequence diagrams that are driven from the use cases and preliminary design.

As before, this chapter opens with the following "you are here" diagram of the ICONIX Process, showing in red the area about to be covered.

Iconix Process sequence diagram

Mapping sequence and behavior

All the steps in the process so far have been preparing the use cases for the detailed design activity. By this time, your use case text should be complete, correct, detailed, and explicit. In short, your use cases should be in a state where you can create a detailed design from them.

If you figure that preliminary design is all about object discovery, then detailed design is, by contrast, about behavior allocation - that is, allocating the software functions you've identified into the set of classes you discovered during preliminary design.

When you draw sequence diagrams, you're taking another sweep through the preliminary design, adding in detail. You use sequence diagrams to drive the detailed design. We advocate drawing your sequence diagrams in a minimal style.

Here is our final 10-point checklist for successful sequence diagramming. As with all our lists, pay attention because there will be questions:

Top 10 sequence diagramming guidelines

10. Clean up the static model before proceeding to the next step

9. "Prefactor" your design on sequence diagrams before coding

8. Review your class diagrams frequently while you're assigning operations to classes, to make sure all the operations are on the appropriate classes

7. Assign operations to classes while drawing messages. Most visual modeling tools support this capability

6. Don't spend too much time worrying about focus of control

5. Make sure your use case text maps to the messages being passed on the sequence diagram. Try to line up the text and message arrows.

4. Use the sequence diagram to show how the behavior of the use case is accomplished by the objects

3. Start your sequence diagram from the boundary classes, entity classes, actors, and use case text that result from robustness analysis

2. Do a sequence diagram for every use case, with both basic and alternate courses on the same diagram

1. Understand why you're drawing a sequence diagram, to get the most out of it

Choosing a cloud hosting partner with confidence

More from The Register

next story
Microsoft on the Threshold of a new name for Windows next week
Rebranded OS reportedly set to be flung open by Redmond
'In... 15 feet... you will be HIT BY A TRAIN' Google patents the SPLAT-NAV
Alert system tips oblivious phone junkies to oncoming traffic
Apple: SO sorry for the iOS 8.0.1 UPDATE BUNGLE HORROR
Apple kills 'upgrade'. Hey, Microsoft. You sure you want to be like these guys?
SMASH the Bash bug! Apple and Red Hat scramble for patch batches
'Applying multiple security updates is extremely difficult'
ARM gives Internet of Things a piece of its mind – the Cortex-M7
32-bit core packs some DSP for VIP IoT CPU LOL
Lotus Notes inventor Ozzie invents app to talk to people on your phone
Imagine that. Startup floats with voice collab app for Win iPhone
prev story

Whitepapers

Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
Intelligent flash storage arrays
Tegile Intelligent Storage Arrays with IntelliFlash helps IT boost storage utilization and effciency while delivering unmatched storage savings and performance.
Beginner's guide to SSL certificates
De-mystify the technology involved and give you the information you need to make the best decision when considering your online security options.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.