Object-Oriented Analysis and Design

Download Report

Transcript Object-Oriented Analysis and Design

Object-Oriented Software
Analysis and Design
MISM/MSIT, CMU
Fall 2002
Prerequisites


Knowledge of at least one objectoriented programming language (C++,
Smalltalk, Java, etc.)
Or, chutzpah!
Goals





Learn at least one O-O A&D methodology
Understand why a methodology is useful for
real software projects
Understand the roles and limitations of CASE
tools
Be aware of other issues like privacy, metrics,
CMM
Build something that illustrates the concepts
Administrative







Monday-Wednesday 11:00-12:20, or Tuesday
5:30-8:30.
Course syllabus pointed to on Blackboard:
www.cmu.edu/blackboard/
Use the Bb Discussion Forum for questions.
Email: [email protected]
My office: HbH 2101A
(412) 268-8783 (email is better)
Everything is attached to the syllabus. Don’t
look for assignments, etc. on Blackboard. Look
at the syllabus!
Organizational Details





Course notes will usually be in PowerPoint; I’ll
add them to the syllabus the day before class.
If you decide to print them, please print them
at least 3-per-page to save paper.
Handouts distributed in class.
There will sometimes be additional notes;
check out Bb every week, at least.
The Bb Announcements and Discussion Forum
are official parts of the class. Please read
them before sending me mail.
Organization (cont.)

Grading:





Homework (50%)
Midterm project (20%)
Final project (30%)
Projects may be done in groups of three; each
group member receives the same grade
(hopefully)
A questionnaire on efforts of your partners will
be completed by each student (unless you
work alone)
Homework





Seven altogether (including the Extreme
Programming presentation), front-loaded
Submission via hardcopy and/or diskette;
instructions included for each assignment
Allow one week for grading
Written work, A&D using CASE tools, some
code
No late homework!@#!
Individual Presentation





One of our textbooks is “Extreme Programming
Explained.”
Each student will be assigned one (short)
chapter. I’ll make the assignments at random.
Each student will give a 4-minute presentation
on this chapter.
Graded like a homework assignment: important
factors are insight into concepts, quality of
execution.
You will show up for these!
Individual Presentation


If we run out of “Extreme Programming”
chapters, I will assign chapters from
“Patterns in Java” by Mark Grand.
The same rules apply.
Books



“Fundamentals of Object-Oriented Design in
UML,” by Meilir Page-Jones (required).
“Extreme Programming Explained,” by Kent
Beck (required).
Other books of interest (not required):



“The Unified Modeling Language Reference
Manual,” by J.Rumbaugh, I. Jacobson and G.
Booch.
“Patterns in Java,” by Mark Grand
“Dynamics of Software Development” by Jim
McCarthy
Software

Together 6
Educational license is free. Send mail to
heinz.computing to get this software.
 Be sure to have this in place well before
the homework assignments are due. This
is your responsibility!


Java (note Together is a Java
programming environment, so includes
JDK).
Course Outline

Requirements analysis




Interviews and JAD
Functional requirements
Quality requirements
The object model





Classes and objects
Associations
Interactions
Notation for all this
Tools
Course Outline (cont.)








The object modeling process
Some more sophisticated O-O theory
Measuring the software process, O-O metrics
Extreme Programming
Design patterns
Privacy considerations
Process models (SEI)
Guest speakers
Administrative Details (cont.)

Teaching assistants:






Abhi Anantharaman
Min Huo
Kapildev Khosla
Lei Lai
Zhe Zhou
TA’s hours announced to Bb soon, my office
hours by appointment
Administrative Details (cont.)




Attendance is not required, but…
…you are responsible for everything said
in class.
I encourage you to ask questions in
class.
This is America…you are supposed to
ask questions. Don’t guess, ask a
question!
My Policy on Cheating




You may discuss homework problems with
classmates (although it is not usually to your
advantage to do so).
You can use ideas from the literature (with
proper citation).
You can use anything from the textbook/notes.
The material you submit must be written
completely by you.
Policy on Cheating




Cheating is submitting someone else’s work
without attribution.
Penalty: Expulsion from the program, or fail the
course. This doesn’t help your job prospects.
Of course you can talk to your friends. Of
course you can use the class notes.
If you print something to a communal printer,
make sure you pick it up.
Even More On Cheating

“In addition to any penalties imposed by the
instructor, including failing the course, all
cheating and plagiarism infractions will be
reported in writing to the Associate Dean for
the program, the Associate Dean of Faculty, the
Dean of Student Affairs, and the Dean. They
will review and determine if expulsion should
be recommended. The report will become part
of the student’s permanent record.”
Course Etiquette





Etiquette is “conduct in polite society”
No cell phones
No random comings and goings
If you are sleepy, go home
If you want to read email or surf the
Web, please do it elsewhere