George Blank
University Lecturer
CS 602
Java and the Web
Object Oriented Software Development
Using Java
Chapter 2
• Modeling is a planning activity, and good
planning is essential for quality software.
• To fail to plan is to plan to fail.
• Prior Planning Prevents Poor Performance
Plans must change!
• Army slogan: No (battle) plan survives the first
encounter with the enemy!
• AT&T slogan: Planning is everything—plans are
• The army has the enemy, business has competitors,
and software has scope change, all working to
defeat your plan.
• When the situation changes, change the plan!
• Prior to the development of the Unified
Modeling Language, there were dozens of
methodologies in common use for planning
and modeling software systems.
• Rational Software, a maker of modeling
systems, was formed as a cooperative effort
by some of the best known modeling
methodology authors. The result is UML.
Applying UML
• UML is just a standard diagramming notation.
It is just a tool, not a skill that will guarantee
you a good job. Knowing UML helps you
communicate with others in creating software,
but this course is about Object-Oriented
Programming, not how to draw diagrams.
Homework Assignments
• I want to see some documentation
demonstrating that you have planned each
assignment in this course. There are several
acceptable methodologies—use cases,
pseudo code, UML, CRC cards or another.
But keep it simple. Time is money, and
companies don’t want to spend $1000
planning $100 worth of work.
Sample Planning Models for
• The lecture on Course Assignments has
examples of acceptable documentation for
• Another source is the Agile Modeling website.
• Note that Use Cases (text) are a preferred
method, but Use Case Diagrams are not
• Jia, Xiaoping, Object Oriented Software
Development Using Java. Addison Wesley,