IS 375
Object-Oriented Analysis and Design
Useful Information
Table of Contents
- Textbooks
- On-line articles, documents and references of Interest for Instructor and Students
- Lean Programming
- Robert Martin Articles
- Software Development Magazine Articles
- Project Advice
- Project Ideas and Homework Information
- CASE Tools for Use
- Project Forms and Documents
- Web Pages of Interest
- Object Oriented Technology
- UML Information
Textbooks
Required:
![]()
Developing Software with UML, Second Edition, Bernd Oestereich, Addison-Wesley, 2002, ISBN 0-201-75603-X. The Rational Unified Process An Introduction, Third Edition, Philippe Kruchten, Addison-Wesley, 2003, ISBN: 0-321-19770-4. Other resources of interest (for reference only - you need not purchase these!):
UML Distilled: A Brief Guide to the Standard Object Modeling Language, Third Edition, Martin Fowler, Addison-Wesley, 2004, ISBN: 0-321-19368-7
Applying Use Cases: A Practical Guide, Second Edition, G. Schneider and J.P. Winters. Addison-Wesley, 2001.
Applied Java Patterns, S. Stelting and O. Maassen, Prentice Hall, 2002. The Unified Process Explained, Kendall Scott, Addison-Wesley, 2002. ![]()
The Unified Software Development Process, I. Jacobson, G. Booch, and J. Rumbaugh. Addison-Wesley, 1999. On-line articles, documents and references of Interest for Instructor and Students
These articles come from several sources: Larman's Company (Object by Design), Software Development Magazine (on-line), and web pages by Alistair Cockburn:
- Larman's UML Process
- Enhancing the Unified Process
- Software Life Cycle Models
- From Waterfall to Iterative Development
- June 2001: Give Them What They Want
- SD Agile Modeling: 19 Tips for Better Requirements
- January 2001: Driving Design: The Problem Domain
- December 1999: Capturing Business Rules
- Tracing Your Design
- November 2000: Driving Design with Use Cases
- February 1996: Capturing Requirements with Use Cases
- February 2001: Top Ten Use Case Mistakes
- January 2000: Features: How to Avoid Use Case Pitfalls
- Using CRC Cards
- Responsibility-based Modeling
- Function-Class Decomposition
- March 2001: Successful Robustness Analysis
- April 2001: Sequence Diagrams: One Step at a time
- Objects by Design: Choosing a UML Modeling Tool
- Objects by Design: UML Modeling Tool
- Concepts for Simpler Design
- Debunking Modeling Myths
Lean Programming
- Lean Programming - Part I
- Lean Programming - Part II
- The Agile Manifesto
- Agile Modeling and eXtreme Programming (XP)
- Agile Modeling - How Much Proof Do You Need?
- The Agile Modeling Newsletter: Leading Edge Agile Books
- What is Extreme Programming?
- Setting the Record Straight: Modeling and XP
- Making Sense of Modeling
- Scott Ambler's Agile Modeling Newsletter
Robert Martin Articles
UML Class Diagrams (local mirror)
Robert C. Martin
C++ Report, 1997
This article describes how to draw Class diagrams in UML. It presents these diagrams in the form of a case study, and discusses design principles as well.
UML Collaboration Diagrams (local mirror)
Robert C. Martin
C++ Report, 1998
This article uses case studies to describe how to use Collaboration diagrams in UML.
UML Sequence Diagrams (local mirror)
Robert C. Martin
C++ Report, 1998
This article uses case studies to describe UML sequence diagrams. It also talks about principles of good object oriented design. UML Finite State Machine Diagrams (local mirror)
Robert C. Martin
C++ Report, 1998
This article employs case studies to demonstrate the principles and notation of UML finite state machines.
UML Tutorial -- Use Cases (local mirror)
Robert C. Martin
C++ Report, 1998
This article uses several case studies to show the reader how to use Use Cases in UML. Walking through a UML Design (local mirror)
Robert C. Martin , James W. Newkirk
1998This article walks the reader through a fairly complex UML design. Many design principles and patterns are described.
Iterative and Incremental Development I (local mirror)
Robert C. Martin
C++ Report, 1999
This article, a forerunner to the now famous tale of Rufus and Rupert, describes the woes of a project that uses waterfall.
Iterative and Incremental Development II (local mirror)
Robert C. Martin
C++ Report, 1999
This article describes the fundamentals of Iterative and Incremental Development. Iterative and Incremental Development III - Faking It (local mirror)
Robert C. Martin
C++ Report, 1999
This article discusses how to use an iterative and incremental development process in a company that expects waterfall.
Principles and Patterns (local mirror)
Robert C. Martin
objectmentor.com, 2000
"What goes wrong with software?" A brief explanation of the ten Principles of OOD with supporting patterns.
RUP vs. XP (local mirror)
Robert C. Martin
objectmentor.com, 2001
A description of XP as a minimal instance of RUP.
Design Principles articles by Robert Martin explaining each of his ten design principles. See Principles and Patterns above as well.
Software Development Magazine Articles
Software Development Online
Project Ideas and Homework Information
Project Advice
CASE Tools for Use
- Rational Software
- TogetherSoft
- TogetherSoft -Download demo version
- UML Stencils for Visio
- UML Stencils for Visio found on www.Navision.com. These stencils provide class objects, associations, etc. These aren't provided by standard Visio.- http://www.navision.com/hq/view.asp?categoryid=368&documentid=428,4
- Another source is P. Hruby from MicroSoft Denmark
- Enterprise Architect from Sparx Systems: www.sparxsystems.com.au/ea.htm
- a software program for UML
- they offer an evaluation copy for 30 days
- Poseidon for UML - Freeware
Web Pages of Interest
Queens University Course
- CSC 210 - Software Engineering
- CSC 210 (Queens College) Links
- CSC 210 (Queens College) Lecture Notes
Project Forms and Documents
Forms for use
- Sample Required Functions
- Required Functions
- Requirements
- Business Rules
- Extended Use Case
- High-level Use Case Description
- Concept Check List (Larman) pp. 92 - 93
- Association Check List
- Contract Sample
- Project document check list
Other templates that might be adapted
- status-reports.html
- requirements.html
- requirements-assessment.html
- project-plan.html
- project-plan-assessment.html
- presentation.html
- design.html
Object Oriented Technology
My thoughts on Object Oriented TechnologyUML Information