CS 4233: Object Oriented Analysis and Design - PowerPoint PPT Presentation

About This Presentation
Title:

CS 4233: Object Oriented Analysis and Design

Description:

I want to keep a linked list of the books in my collection. ... several categories of books, including Science Fiction, Fantasy, Fiction, ... – PowerPoint PPT presentation

Number of Views:44
Avg rating:3.0/5.0
Slides: 18
Provided by: georgeh1
Learn more at: http://web.cs.wpi.edu
Category:

less

Transcript and Presenter's Notes

Title: CS 4233: Object Oriented Analysis and Design


1
CS 4233 Object Oriented Analysis and Design
  • 9-Jan-2003
  • Lecture 1

2
Outline
  • Previous Business
  • none
  • Course Introduction
  • Mini-design Example

3
Course Introduction
  • CS 4233 Object-oriented Analysis Design
  • Prof. Heineman (heineman_at_cs), FL 137
  • Office hours
  • Tuesday 1000 1100 AM
  • Thursday 500 600 PM
  • my.wpi.edu web site available

4
Course Structure
  • Core of five design assignments (50)
  • Midterm exam, Friday January 31st (20)
  • Final exam, Thursday February 27th (20)
  • Class participation (10)
  • as evidenced by questions/answers in class,
    visits to office hours, communication on
    my.wpi.edu

5
Course Goals
  • Understand, develop, and critique UML models
  • Utilize use cases to identify and describe
    requirements and specifications of a software
    system
  • Generate a detailed design document for a
    software system
  • Understand the use of design patterns within
    complex designs
  • Describe and illustrate the use of design patterns

6
Course Focus
  • Lay a foundation for OO design
  • too much OO programming is done without first
    focusing on the design
  • Educate in best practices of OO design
  • hands-on experience
  • Challenge you
  • Seven weeks of thinking design

7
Basic Terms (from TAOO)
  • Object an abstraction of a physical entity or
    conceptual thing
  • Class the abstract descriptorof a set of
    object instances
  • How are classes defined? Through analysis.

ClassData Operations
8
OO Requirements Analysis (RA)
  • Identify objects that are necessary for the
    context of a desired software application
  • Typically precedes OO Design (OOD)
  • OORA specifies externally visible characteristics
    of a system
  • OOD specifies internal structure of system

9
Design Example
  • Client makes the following request
  • I want to keep a linked list of the books in my
    collection. There are several categories of
    books, including Science Fiction, Fantasy,
    Fiction, NonFiction, Literature, and Reference. I
    frequently buy and sell books, and need monthly
    reports of my collection broken down by category.

10
Requirements Analysis
  • ltltidentify nounsgtgt
  • I want to keep a linked list of the books in my
    collection. There are several categories of
    books, including Science Fiction, Fantasy,
    Fiction, NonFiction, Literature, and Reference. I
    frequently buy and sell books, and need monthly
    reports of my collection broken down by category.

11
Analysis Model V0
  • Critique RoadMap
  • Summarize the design
  • Identify the design decisions
  • Explain correct decisions
  • Critique flawed decisions

1
nextFantasy
Book
nextLiterature
1
12
Analysis Model V1
Collection
Book
1

13
Analysis Model V2
Collection
Category
Book
1

1

14
Why doesnt the JDK have
  • Some Basic classes?
  • Person
  • User
  • Book
  • Why do its classes seem too much
  • Currency (JDK 1.4 only)
  • Collection not a class but an interface
  • String 11 constructors (2 deprecated), 55
    methods (1 deprecated)

15
  • public String toLowerCase(Locale locale)
  • int len count
  • int off offset
  • char val value
  • int firstUpper
  • / Now check if there are any characters
    that need to be changed. /
  • scan
  • for (firstUpper 0 firstUpper lt
    len firstUpper)
  • char c valueofffirstUpper
  • if (c ! Character.toLowerCase(c))
    break scan
  • return this
  • char result new charcount
  • / Just copy the first few lowerCase
    characters. /
  • System.arraycopy(val, off, result, 0,
    firstUpper)

16
Friday Assignments
  • Read TAOO Chapter 1
  • Complete Constructor Challenge Quiz
  • Do exercise 1-2

17
References
  • JDK online documentation.
  • Currency
  • IMF special Basket,
Write a Comment
User Comments (0)
About PowerShow.com