Roy MacLean, Susan Stepney, Simon Smith, Nick Tordoff, David Gradwell, Tim Hoverd, Simon Katz.
Analysing Systems: determining requirements for object-oriented development.

BCS Practitioner Series. Prentice-Hall, 1994.

ISBN 0-13-301433-9

ORCA (Object-oriented Requirements Capture and Analysis—one of the few OO acronyms to use only a single ‘O’!) was a collaborative UK DTI-IED project in the early 1990s. The partners were Logica Cambridge Ltd, the University of York, and Data Dictionary Systems Ltd.

Many books purporting to be about OO analysis are actually about design: they conveniently start from a mythical ‘statement of requirements’. ORCA addresses the problem of producing such a statement, possibly the most difficult stage of any development process.

This book describes the ORCA method, applicable across a wide range of application domains from information systems to complex real-time control systems. A large part of the book is dedicated to a Weaving Factory case study, to illustrate ORCA’s Basic Process. Several smaller case studies are used to illustrate how this Basic Process can be tailored for different situations.

This is a book for anyone who finds object-oriented anything a concern or an interest. It might even benefit those who don’t, because it represents a valid thought process regardless of paradigm.

-- John W. Horch,
Bookshelf: a Whale of a Book on Analysis and How to Make It Work
IEEE Software 13(2):119, March 1996.

The book should prove stimulating to academics who are interested in systems modelling and who are looking for a more discursive view of an OO method than those found in texts aimed exclusively at the software engineer. Practitioners looking for an OO based analysis and specification approach will find ideas in the book which will help them define a method to suit their particular requirements.

-- A J Wakefield,
Reviews: Analysing Systems
The Computer Bulletin 7(3):28, June 1995.

Table of Contents

  1. Introduction to ORCA
    1. Why ORCA?
    2. ORCA by example
    3. ORCA’s key ideas
  2. The Basic Process
    1. Introduction to the case study—NIMWeC
    2. Preliminary analysis
    3. Process Design
    4. Old World Purpose
    5. Old World Behaviour
    6. Pathology and Prescriptions
    7. Specifying the New World
  3. Using the Modelling Languages
    1. Purpose and Behaviour
    2. Behavioural modelling
    3. Do’s and don’ts
  4. Tailoring the Process
    1. Introduction to tailoring
    2. Organising the organisation—National Parks
    3. Shaking up the business—Just in Time
    4. A new Purpose in life—the Paperless Map
    5. No Old World—spreadsheets and telephony
    6. Nothing new under the sun—a lending library
    7. No-one to talk to—Ahab applied to NIMWeC
  5. Wider Issues
    1. Putting together an analysis project
    2. Life after ORCA—onward into development
  6. Appendices
    1. Defining modelling languages
    2. Grampus—the Puposive modelling language
    3. Beluga—the Behavioural modelling language
    4. Glossary
    5. Bibliography
    6. Index

Analysing Systems’ publisher, Prentice Hall, have allowed it to go out of print, and have returned the publishing rights. So I have made the full text available here.

Please note that the copyright of this work is not in the public domain. However, permission is granted to make copies of the whole work for any purpose except direct commercial gain. The copyright holder retains all other rights, including but not limited to the right to make translations and derivative works, and the right to make extracts and copies of parts of the work. Fair quotation is permitted according to usual scholarly conventions.

I have provided the text as a PDF file. This has slightly different pagination from the printed version, and has a few minor typos corrected, but is otherwise identical.

  author = "Roy MacLean and Susan Stepney and Simon Smith and Nick Tordoff
            and David Gradwell and Tim Hoverd and Simon Katz",
  title = "Analysing Systems: determining requirements for object-oriented development",
  publisher = "Prentice-Hall",
  year = 1994