ObjectOriented Design Notation - PowerPoint PPT Presentation

About This Presentation
Title:

ObjectOriented Design Notation

Description:

counters. 5. FastFoodCounter. totalcash. totalorders. Example: Use Case Diagram. Facilitate Checkout. Facilitate Return. Search for Book. LIBRARY SYSTEM. Borrower ... – PowerPoint PPT presentation

Number of Views:73
Avg rating:3.0/5.0
Slides: 17
Provided by: johnpaul3
Category:

less

Transcript and Presenter's Notes

Title: ObjectOriented Design Notation


1
Object-OrientedDesign Notation
  • CS 123/CS 231

2
References
  • Main Reference UML Distilled, by Martin Fowler
  • Chapters 3, 4, 6, and 8
  • Supplementary References
  • Chapter 14 of Sommerville
  • Chapter 22 of Pressman

3
Component Design and Detailed Design
  • Component Design
  • For each subsystem determine components, and
    services/interface per component
  • OO Design components are classes
  • Detailed Design
  • Determine attributes of classes and relationships
    between the classes
  • Determine functionality of each class and
    interactions between classes

4
Object-Oriented Modeling
  • UML Unified Modeling Language
  • OO Modeling Standard
  • Booch, Jacobson, Rumbaugh
  • What is depicted?
  • Class details and static relationships
  • System functionality
  • Object interaction
  • State transition within an object

5
Some UML Modeling Techniques
  • Class Diagrams
  • Use Cases/Use Case Diagrams
  • Interaction Diagrams
  • State Diagrams

6
ExampleClass Diagram
FastFoodCounter totalcash totalorders
PriceChecker getPrice()
pc
counters
5
FastFood (Restaurant)
7
ExampleUse Case Diagram
LIBRARY SYSTEM
Facilitate Checkout
Search for Book
Borrower
Librarian
Facilitate Return
8
ExampleInteraction Diagram
2 checkIfAvailable()
Checkout Screen
Book
1 checkIfDelinquent() 3 borrowBook()
4 setBorrower()
Borrower
9
ExampleState Diagram (Book)
start
Reserved
Borrowed
New
Librarian activates book as available
Borrower returns book
Available
10
Object-Oriented Design Models
  • Static Model
  • Class Diagrams
  • Dynamic Model
  • Use Cases, Interaction Diagrams, State Diagrams,
    others

11
OO Static Model
  • Classes and Class Diagrams
  • Relationships
  • Association
  • Aggregation/Composition
  • Inheritance
  • Dependencies
  • Attribute and Method names

12
OO Dynamic Model
  • Goal Represent
  • Object behavior
  • Object interaction
  • Traditional/Procedural Dynamic Modeling
  • Data Flow Diagrams (DFDs)
  • Problem Processes separate from data
  • Need modeling notation that highlight tight
    relationship between data processes

13
DFD Example(Inventory Management)
Accept and Post Delivery
Delivery info
Transaction
Item Master
14
OO CounterpartObject Interaction
new (delivery info)
Encoder
Transaction
post (item count)
Item Master
15
Building anOO Dynamic Model
  • Identify use cases
  • Describe each use case through an interaction
    diagram
  • For more complex objects, provide a state diagram
    per class
  • Derive implied methods (and attributes)

16
Whats Next?
  • Need to understand the notation
  • Make sure it helps the software development
    process
  • When to use the UML techniques
  • Primarily when specifying OO design
  • Formal means of communication across the
    different software development stages
Write a Comment
User Comments (0)
About PowerShow.com