Software design is concerned with problem specification and analysis, and the design of robust software solutions to satisfy the requirements and meet the specification. Modern software design focuses on applying object-oriented techniques, architectural mechanisms, component technologies, reuse, design patterns, and other proven best practices to the design and implementation of software systems.
This course focuses on fundamental object-oriented analysis and design (OOAD) methods with an emphasis on software architecture topics and design patterns.
The class meetings will typically be made up of three distinct parts:
Students will work in teams to complete one or more non-trivial, software projects.
Upon completion you will be able to do the following:
There are several possible learning objectives from any course. The essential objectives for this course are:
Two other objectives are important in this class:
All programming work will be done using the Java programming language. If you do not know Java, I will be available for help sessions, but you should expect that you will need to spend extra time to hone your Java programming skills.. You may also consult the Java resources for information on learning Java. You are responsible for being, or becoming, a competent Java programmer.
There is one required textbook for the class: Applying UML and Patterns, 2d edition, Craig Larman, Prentice-Hall, 2002, ISBN 0-13-092569-1.
A recommended text, especially if you need to develop your Java expertise is Objects First With Java, David J. Barnes and Michael Kölling, Prentice Hall, 2003,ISBN 0-13-044929-6. This text describes how to use BlueJ, a development environment that is easy to start with if you are new to Java.
There are several references that you might find useful about design patterns. You can find pointers on my interest page for software engineering.
Gary Pollice, Professor of Practice, FL143
Office hours:
M: 2:30-4:00
Th: 5:00-6:00
My office door will almost always be open. If you want to stop by for help or a chat, just stick your head in. I may have to tell you to come back, but it's worth a try. If you need to see me outside of the hours above, send me email, call, or contact me by instant messenger, which you can usually do any time. My instant messenger contact information is: gpollice (AOL Instant Messenger), gpollice@rcn.com (MSN Messenger).
Modified:
17-Apr-2004
Gary Pollice