Tuesday, June 5, 2007

Applying UML and Patterns

Ted Larman's book, Applying UML and Patterns, started a flood of good books on UML, Java and Object Oriented deign. Jacquie Barkers's good Java overview, Java Objects followed and then a whole deluge. Yet Larman's book is not just a survey and analysis of UML as applied to patterns but rather an overview of object design and project development in general.In fact this book, introduces OOAD-Object Oriented Analysis and Design as part and parcel of good project management.

For example, readers are introduced to agile and iterative development practices as some of the compelling reasons for OO design. Then readers are carried through a project using the Unified Process (obviously followng Rational's Process but adapted and watch as UML, OO Design and Patterns are used iteratively to arrive at better approximations to the evolving system design. What is really fascinating here is how flexible the design process can be to changing requirements. This is the bain of development - the need to respond to changing requirements yet the need to guarantee that the design is iterating towards a solution - not just cycling or spiraling out of control. Larman has some but not a definitive set of controls against such jeopardy. However the book is rich in examples of how to turn domain models and use case analysis into the fore-runners of design Then there are a variety of patterns available for assigning the resulting roles, requirements and responsibilities into design sets. It is this process and the iterative testing behind it that is at the core of Larman's book. Its sort of like a mathematical proof - QED that which is required is demonstrated. Well organized, good read.

No comments: