[ESO Logo]

Technical Division SW Department Object Oriented Working Group


Recommended Readings: for OOSE, UML, Corba, C++ and Java

OOSE and UML

Books:

The ultimate reference books of the "three Amigos" are the basic references and starting reading for UML and the Unified Software Development Process:

The Unified Modeling Language User Guide
Grady Booch, James Rumbaugh, Ivar Jacobson
1998, Addison Wesley Pub Co; ISBN: 0201571684
The Unified Modeling Language Reference Manual
James Rumbaugh, Ivar Jacobson, Grady Booch
1998, Addison Wesley Pub Co; ISBN: 020130998X
The Unified Software Development Process
Ivar Jacobson, Grady Booch, James Rumbaugh
1998, Addison Wesley Pub Co; ISBN: 0201571692

Object-Oriented Analysis and Design With Applications
G.Booch
1993, Addison Wesley Pub Co; ISBN: 0805353402
The book to start with when going to object oriented analysis and design;
Objectifying Real-Time Systems
J.R.Ellis
1994, Prentice Hall; ISBN: 0131255509
The CRC Card Book
David Bellin, Susan Suchman Simone, Grady Booch
1997, Addison-Wesley Pub Co; ISBN: 0201895358
Real-Time Uml : Developing Efficient Objects for Embedded Systems
Bruce Powel Douglass
1997, Addison Wesley Pub Co; ISBN: 0201325799
Uml Distilled : Applying the Standard Object Modeling Language
Martin Fowler, Kendall Scott
1997, Addison Wesley Pub Co; ISBN: 0201325632
Applying Use Cases : A Practical Guide (Addison-Wesley Object Technology Series)
Geri Schneider, Jason P. Winters, Ivar Jacobson
1998, Addison-Wesley Pub Co; ISBN: 0201309815
A System of Patterns
Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad
1996, John Wiley & Son Ltd; ISBN: 0471958697
Papers:

The Quality Approach: is it delivering?
Communications of the ACM, Jun '97

An interesting special report on software quality and on the application of the Capability Maturity Model. It includes also a paper describing a study on how software development is carried out at Microsoft, using a mixed approach implementing techniques imported from the "hacker" mindset, but that seems to work in order to have a faster and more dynamic development cycle.
Writing Effective Use Cases and Introducing Collaboration Cases
L.Mattingly H.Rao
JOOP, Oct '98

A very good introduction to Use Cases with some interesting extension. We have used this paper as the base for our work.
Structuring Use Cases with Goals
A.Cockburn JOOP, Sep-Oct '97 and Nov-Dec '97

A real milestone on Use Cases.

C++

Books:

C++ Primer
Stanley B. Lippman, Josee Lajoie
1998, Addison Wesley Pub Co; ISBN: 0201824701
The Design and Evolution of C++
Bjarne Stroustrup
1994, Addison-Wesley Pub Co; ISBN: 0201543303
Advanced C++ Programming Styles and Idioms
James O. Coplien
1991, Addison-Wesley Pub Co; ISBN: 0201548550
Technical papers:

Thread Synchronization with Reference-Counting Handles
B.Reck
C/C++ User Journal, Feb. '98
An interesting technique to provide thread-safe access to representation objects.

Java

Books:

Core Java 1.1 : Fundamentals
Cay S. Horstmann, Gary Cornell
1997, Prentice Hall Computer Books; ISBN: 0137669577
Core Java 1.1 : Advanced Features
Cay S. Horstmann, Gary Cornell
1997, rentice Hall Computer Books; ISBN: 0137669658
Concurrent Programming in Java : Design Principles and Patterns (Java Series)
Doug Lea
1996, Addison-Wesley Pub Co; ISBN: 0201695812
Developing Java Beans
Robert Englander, Rob Englander, Mike Loukides (Editor)
1997, O'Reilly & Associates; ISBN: 1565922891
Java Beans
G.Hamilton (Editor)
1997, Sun Microsystems
Standards and Code Conventions:

Java Code Conventions
1997, Sun Microsystems
ChiMu OO and Java Development. Guidelines and Resources
1997-1998, ChiMu Corporation
Introductory papers:

The Java Factor Communicatons of the ACM, June 1998
This issue of Communications of the ACM contains a special section dedicated to the Java programming language. In particular there are couple of general papers pointing out the good and bad of Java and a couple of interesting papers on the usage of Java in specific application fields. The following are the most interesting:
  • The Java Factor
    S.Singhal, B.Nguyen

  • Why are we using Java again?
    P.Tyma

  • Adding Real-Time capabilities to Java
    K.Nilsen

    A proposal for a real-time extension of the Java language. Tha author claims that minor additions to the standard Java libraries and small extensions to the language itself make it possible the implementation of real-time applications.

Corba

Books:

The Essential CORBA: Systems Integration Using Distributed Objects
Thomas J., Phd Mowbray, Ron Zahavi (Contributor)
1995, John Wiley & Sons; ISBN: 0471106119
Client/Server Programming with Java and CORBA, Second Edition
Robert Orfali, Dan Harkey
1998, John Wiley & Sons; ISBN: 047124578X
Introductory papers:

The CORBA Connection Communicatons of the ACM, October 1998
This issue of Communications of the ACM contains a special section dedicated to the CORBA "conceptual software bus", i.e. a software architecture "that allows applications to communicate with each other, regardless of who designed them, the platform they are running on, the language they are written in and where they are executing". The following are the most interesting papers:
  • The CORBA Connection
    K.Seetharaman

  • CORBA and the OMA in Enterprise Computing
    J.Siegel

  • New Features for CORBA 3.0
    S.Vinoski

  • Binding, migration and scalability in CORBA
    M.Henning

Introduction to CORBA Distributed Objects
R.Resendes M.Laukien
Dr.Dobb's Journal, Apr. '98

A short but clear introduction to the basic concept behind the CORBA architecture

Note: A copy of all the papers, books and documents in this list is available in G.Chiozzi and R.Karban office.


[ ESO | VLT software | SW Department OOWG | ]
Send comments on this document to G.Chiozzi, <gchiozzi@eso.org>
Last modified: Mon Jan 3 18:44:02 MET 2000