Feeds

Use case driven object modelling with UML: Theory and practice

Making software from use cases

3 Big data security analytics techniques

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

SANS - Survey on application security programs

More from The Register

next story
This time it's 'Personal': new Office 365 sub covers just two devices
Redmond also brings Office into Google's back yard
Oh no, Joe: WinPhone users already griping over 8.1 mega-update
Hang on. Which bit of Developer Preview don't you understand?
Microsoft lobs pre-release Windows Phone 8.1 at devs who dare
App makers can load it before anyone else, but if they do they're stuck with it
Half of Twitter's 'active users' are SILENT STALKERS
Nearly 50% have NEVER tweeted a word
Internet-of-stuff startup dumps NoSQL for ... SQL?
NoSQL taste great at first but lacks proper nutrients, says startup cloud whiz
Next Windows obsolescence panic is 450 days from … NOW!
The clock is ticking louder for Windows Server 2003 R2 users
Ditch the sync, paddle in the Streem: Upstart offers syncless sharing
Upload, delete and carry on sharing afterwards?
Microsoft TIER SMEAR changes app prices whether devs ask or not
Some go up, some go down, Redmond goes silent
Batten down the hatches, Ubuntu 14.04 LTS due in TWO DAYS
Admins dab straining server brows in advance of Trusty Tahr's long-term support landing
prev story

Whitepapers

SANS - Survey on application security programs
In this whitepaper learn about the state of application security programs and practices of 488 surveyed respondents, and discover how mature and effective these programs are.
Combat fraud and increase customer satisfaction
Based on their experience using HP ArcSight Enterprise Security Manager for IT security operations, Finansbank moved to HP ArcSight ESM for fraud management.
The benefits of software based PBX
Why you should break free from your proprietary PBX and how to leverage your existing server hardware.
Top three mobile application threats
Learn about three of the top mobile application security threats facing businesses today and recommendations on how to mitigate the risk.
3 Big data security analytics techniques
Applying these Big Data security analytics techniques can help you make your business safer by detecting attacks early, before significant damage is done.