Feeds

Use case driven object modelling with UML: Theory and practice

Making software from use cases

Providing a secure and efficient Helpdesk

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

Secure remote control for conventional and virtual desktops

More from The Register

next story
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
Not appy with your Chromebook? Well now it can run Android apps
Google offers beta of tricky OS-inside-OS tech
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
Greater dev access to iOS 8 will put us AT RISK from HACKERS
Knocking holes in Apple's walled garden could backfire, says securo-chap
NHS grows a NoSQL backbone and rips out its Oracle Spine
Open source? In the government? Ha ha! What, wait ...?
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
prev story

Whitepapers

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.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
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.