Skip Navigation | ANU Home | Search ANU | Search FEIT | Feedback
The Australian National University
Faculty of Engineering and Information Technology (FEIT)
Printer Friendly Version of this Document

COMP 2100 and COMP2500
Software Construction
Software Construction for Software Engineers

Reading and reference materials

Reference Documents

See the online documents and links in comp2100 Reference Documents List.

Textbooks

There is no required textbook for COMP2100. That means you can save a great deal of your money. But you should also consider the benefit of having your own copy of a book you can read in chunks, go back and forwards, reflect on and use for reference in later courses.

This website does contain useful notes, but this is the minimum material. It doesn't replace what you can learn from coming to lectures, and it certainly doesn't replace what you learn by doing the programming examples and really reading other people's programs.


Useful reference books

There are lots of useful and relevant books, but they tend to be expensive and not easily available in libraries (because they're too new). Here is a short list. I'll try to add to this as we go along. Some, but not all, of these are available from the Hancock library, some in short loan. For those books I have given the library reference to save you the trouble.

The first four books on this list are “recommended books”.

  • Data Structures and Software Development in an Object-Oriented Domain, Java edition
    Jean-Paul Tremblay & Grant A. Cheston
    Prentice-Hall, 2003.

  • Introduction to the Personal Software Process
    Watts Humphrey
    Addison Wesley, 1997.

  • The Pragmatic Programmer
    Andrew Hunt & David Thomas
    Addison Wesley, 2000.

  • Code Complete
    Steve McConnell
    Microsoft Press, 1993.


  • Object-Oriented Software Construction (2nd edition)
    Bertrand Meyer
    Prentice-Hall, 1997. QA76.64.M493 1997 (5 copies)

  • Design Patterns and Contracts by Jean-Marc Jézéquel, Michel Train & Christine Mingins, Addison-Wesley, Reading, Massachusetts, 1999. QA76.76.D47 J49 2000 (3 copies)

  • A Practical Introduction to Software Design with C++ by Steven P. Reiss, Wiley, New York, 1999.

  • Object-Oriented Programming in Eiffel (Second Edition) by Pete Thomas and Ray Weedon, Addison-Wesley, Harlow, England, 1997. QA76.64 .T495 1998 (2 copies)

  • The Reflective Practitioner by Donald A. Schön, Basic Books, New York, 1983. CHIFLEY HD8038.A1.S35

  • The Software Conspiracy: Why Software Companies Put Out Faulty Products, How They Can Hurt You, and What You Can Do About It by Mark Minasi, McGraw-Hill, 2000.

  • Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides, Addison-Wesley, 1995. QA76.64 .D47 1995

  • Human Factors in Software Development by Bill Curtis. Hancock Large Books QA76.76.D47T88 1985

If you have not programmed in Java before, or you need a reference, you may find it helpful to purchase a book specifically about Java. There are literally hundreds of these available and they range from the excellent to the truly awful (incorrect, out of date, just poorly written). I don't have a particular recommendation, but you might find one of the textbooks set for COMP1100 useful. Preferably look for one that is recent enough to include Java 1.5.

  • Big Java by Cay S. Horstmann, edition 2006, John Wiley and Sons, Inc.
    Set for comp1110

  • Java in a Nutshell, David Flanagan, O'Reilly 2005
    cheaper, and more compact for use as a reference


There is no Information Pack

Every professional needs a reference library, and some of the documents you refer to in this course will be the start of your collection. I will provide references or copies in this site in the comp2100 Reference Documents List.

You can choose which documents to print for yourself (so you can scribble in the margins or whatever) or which ones you want to keep referring to online. There is no printed Information Pack (“brick”) available for purchase.

Page updated: 16 Jan 2007 cwj