Feeds

Use case driven object modelling with UML: Theory and practice

Making software from use cases

Choosing a cloud hosting partner with confidence

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)!

Intelligent flash storage arrays

More from The Register

next story
Netscape Navigator - the browser that started it all - turns 20
It was 20 years ago today, Marc Andreeesen taught the band to play
UNIX greybeards threaten Debian fork over systemd plan
'Veteran Unix Admins' fear desktop emphasis is betraying open source
Sign off my IT project or I’ll PHONE your MUM
Honestly, it’s a piece of piss
Return of the Jedi – Apache reclaims web server crown
.london, .hamburg and .公司 - that's .com in Chinese - storm the web server charts
Chrome 38's new HTML tag support makes fatties FIT and SKINNIER
First browser to protect networks' bandwith using official spec
Admins! Never mind POODLE, there're NEW OpenSSL bugs to splat
Four new patches for open-source crypto libraries
Torvalds CONFESSES: 'I'm pretty good at alienating devs'
Admits to 'a metric ****load' of mistakes during work with Linux collaborators
prev story

Whitepapers

Forging a new future with identity relationship management
Learn about ForgeRock's next generation IRM platform and how it is designed to empower CEOS's and enterprises to engage with consumers.
Cloud and hybrid-cloud data protection for VMware
Learn how quick and easy it is to configure backups and perform restores for VMware environments.
Three 1TB solid state scorchers up for grabs
Big SSDs can be expensive but think big and think free because you could be the lucky winner of one of three 1TB Samsung SSD 840 EVO drives that we’re giving away worth over £300 apiece.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.