UML References

Motivation: UML Starting References

In getting up to speed in UML means one of three approaches. You can start with one of the OMG standards documents and see why W3C's coverage of XML is so much better; yet even that would not be wished on anyone casually. Or you could take on one of the distinguished tomes like Robert Martin's Agile Software Development. But typically these books presuppose a lot of ground work understanding of OO concepts and analysis and design trade-offs. the final appraoch I am recommending is a two stage introduction to UML.

The first involves reading a UML introductory that spends some time getting at the major OO, System Design, Database Modeling, and UML concepts. i have yet to find a text that does a superb job of this. However, there is an early UML text that covers 3 of 4.

Instant UML by Piere Alain Muller from Wrox Press was an early entry in what has become the UML deluge of books. Yet Instant UML still retains value because it covers a number of UML, system design and basic Object Oriented concepts well. The book starts with a review of modeling and object design principles. Some of the latest OO concepts such as contracts, roles, and responsiibilities are only touched on - but the fundamental review is very solid. Finally, at page 60, readers get a concise summary of UML diagrams, syntax and notation - many will do like me: scan chapter 3 first, then start from the beginning.

Chapter 4 looks at the complexity of software development and establishes the value of Use Cases in UML design. This chapter shows how and where UML gets tied into early design and development processes. The last chapter looks at a case study and is the most interesting. In designing a building access control system, the author uses collaboration diagrams as often as use cases to build the initial object and data models. This contrasts with many recent texts that alternate between use cases and class/object diagrams. In effect, the collaboration diagram is being used like the old, structured programming dataflow diagram. Collaboration diagrams also provide a more natural step into sequence and statechart diagrams - that is from the static object and players to the dynamic players requiring coding actions to events, messages and exceptions. In sum, this is not only a solid intro into UML but also slightly ahead of its time.



Top of Page  Tutorials Home