ood - principles design class diagrams chapter 10 pp. 295-298; 304-314; 317-320 1

Post on 17-Dec-2015

219 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1

OOD - Principles Design Class Diagrams

Chapter 10pp. 295-298; 304-314; 317-320

2

Where are we?

Design ChaptersCh 7 Designing User & System Interfaces

Ch 10 OO Design – Principles Ch 11 OO Design – Use Case RealizationsCh 12 Databases, Controls & Security

3

OOD: Object-Oriented Design

From "Domain Classes" to "Programming Classes"Specify objects to carry out each use case

4

From Requirements (Analysis) to Design…

Ch10

Ch11

5

Defining a Single Design Class

6

Domain Class vs. Design Class

7

Design Class: Things to Know

Elaborate attributes

Define Method types

Write Method Signatures

Identify Instance-Level and Class-Level Attributes & Methods

8

Elaborating Attributes

visibility attributeName: dataType {property}

VisibilityPublic or Private

Data typeNumbers: integer, doubleText: stringTrue/False: booleanDates: dateTime

Propertykey

9

Method Types

3 Method typesConstructor methodsAccessor methods−Get−Set

Processing methods9:05

& 10:1

0

10

Method Signatures

visibility methodName(parameterList) : returnType

VisibilityPublic or Private

Method nameVerb phrase

Parameter ListInputs

Return TypeOutput Typical data type: integer, string, etcObject (e.g. Student)Collection of objects: StudentArray

11

Instance-Level vs. Class-Level Attributes & Methods

Instance-Level−Pertains to an individual object/instance−Attribute name−Method getName(), calcGPA()

Class-Level−Does not pertain to an individual

object/instance−Attribute tuitionPerHour−Method findAboveHours()

-tuitionPerHour: integer

12

Exercise

Design a Design Class for: VehicleAttributes−Primary Key− Instance attribute−Class Attribute

Method−Constructor method− Instance Method• Accessor methods (2)• Processing method

−Class Method

13

A Design Class (coded in VB)

14

Design Class Diagram

Overridden Method

How many attributes are

there in a MailOrder object?

15

Designing a Domain Class Diagram

16

Review – let’s understand this Use Case before continuing

Use Case Description

“Process New Order”

17

Review – let’s understand this model before continuing

Domain Class Diagram

18

Steps: Initial Design Class Diagram

1. Select a Use Case: “Process New Order”2. Add Domain Classes

See pre-conditions & post-conditions for ideas

3. Elaborate Attributes: visibility, data types

19

Steps: Initial Design Class Diagram

4. Add a "Controller" class− Switchboard between the View & Domain Layer; a collection point for incoming messages. Include one

per use case.

20

Steps: Initial Design Class Diagram

5. Add Navigation Visibility (def) the ability of one object to interact with another 1 to Many Association

• 1 *

Mandatory Associations• IndepDependent

Needs info• Sender Receiver

Rules

21

Steps: Initial Design Class Diagram

6. Add Methods (we will see this in Ch 11 via Sequence Diagrams) That is, Behavior!

top related