Feeds

Use case driven object modelling with UML: Theory and practice

Making software from use cases

Boost IT visibility and business value

While the methodology wars continue to flourish, and advocates of this process versus that process slug it out to show that they alone are following the one true path, there is one technique that all seem to agree on: the use case.

While extreme programmers prefer the term user story, (and still others talk about storyboards), in reality we are talking about a set of similar techniques for describing the interaction between a user and a system. However, once you’ve got your use case, how do you turn it into a working piece of software? What steps do you take to identify the objects, properties and methods required to implement the interactions described? Where does the architecture fit in? These are the sort of questions tackled by Doug Rosenberg and Matt Stephens in the snappily entitled ‘Use Case Driven Object Modeling with UML: Theory and Practice’.

There’s no short answer to these questions, of course. But the key issue that the authors identify is at the core of many of the problems with software development as an industry. For all their apparent simplicity, use cases – and user stories and whatever other label we attach to the usage scenarios – are ambiguous. Software development proceeds by addressing the ambiguities, yielding progressively clearer specifications and a shared understanding between client and developer. It is this process, which the authors call ‘disambiguating’, that this book so clearly documents.

Using the ICONIX software development process, which sits somewhere between RUP and extreme programming, the authors walk through a single realistic worked example of a software development project. The project, to build an internet book shop, is complex enough to fully exercise the reader and yet common enough that just about every developer will understand the domain. The project is walked through from start right through to coding, testing and review.

The book aims to be a self-teaching guide rather than a basic tutorial, so to this end there are lots of examples, exercises, checklists, questions and so on. Unlike many other books that tackle this sort of subject, the emphasis is very much on the practical application of ideas rather than the handing down of beautifully crafted theories. That’s not to say that there aren’t plenty of good ideas covered in the text, there are plenty of those, from the use of the ‘robustness diagram’ (not part of UML 2.0) for mapping from the use case to objects to sound advice on testing; the emphasis is firmly on moving the development process forward in a structured and coherent manner.

On the technology side of things, there’s very much a Java flavour to the book. Not simply because the example application is coded in Java, but also because the application the authors build uses the Spring framework, they mention JUnit in the section on testing and so on. However, in many ways all of this is incidental. While the authors use Java and related technologies, the techniques they describe apply to all object-oriented development platforms and languages.

Finally, it’s worth mentioning that the book scores highly in terms of clarity of writing, good design (and use of colour) and in providing a high-level of content.

Use Case Driven Object Modeling with UML: Theory and Practice

Verdict: An excellent and informative book that is highly recommended.

Author: Doug Rosenberg and Matt Stephens

Publisher: Apress

ISBN: 1590597745

Media: Book

List Price: £37.99

Current Reg price: £34.19 inc. VAT (discount 10%

Buy this book at Register Books at Reg Developer's special discounted price (subject to change)!

Boost IT visibility and business value

More from The Register

next story
KDE releases ice-cream coloured Plasma 5 just in time for summer
Melty but refreshing - popular rival to Mint's Cinnamon's still a work in progress
Leaked Windows Phone 8.1 Update specs tease details of Nokia's next mobes
New screen sizes, dual SIMs, voice over LTE, and more
Secure microkernel that uses maths to be 'bug free' goes open source
Hacker-repelling, drone-protecting code will soon be yours to tweak as you see fit
Mozilla keeps its Beard, hopes anti-gay marriage troubles are now over
Plenty on new CEO's todo list – starting with Firefox's slipping grasp
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
Another day, another Firefox: Version 31 is upon us ALREADY
Web devs, Mozilla really wants you to like this one
prev story

Whitepapers

Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Consolidation: The Foundation for IT Business Transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.
Backing up Big Data
Solving backup challenges and “protect everything from everywhere,” as we move into the era of big data management and the adoption of BYOD.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Why and how to choose the right cloud vendor
The benefits of cloud-based storage in your processes. Eliminate onsite, disk-based backup and archiving in favor of cloud-based data protection.