1 / 21

OOD - Principles Design Class Diagrams

OOD - Principles Design Class Diagrams. Chapter 10 pp. 295-298; 304-314; 317-320. Where are we?. OOD: Object-Oriented Design. From "Domain Classes " to "Programming Classes" Specify objects to carry out each use case. From Requirements (Analysis) to Design…. Ch10. Ch11.

Download Presentation

OOD - Principles Design Class Diagrams

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. OOD - Principles Design Class Diagrams Chapter 10 pp. 295-298; 304-314; 317-320

  2. Where are we?

  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 visibilityattributeName: dataType {property} • Visibility • Public or Private • Data type • Numbers: integer, double • Text: string • True/False: boolean • Dates: dateTime • Property • key

  9. Method Types • 3 Method types • Constructor methods • Accessor methods • Get • Set • Processing methods

  10. Method Signatures visibilitymethodName(parameterList) : returnType • Visibility • Public or Private • Method name • Verb phrase • Parameter List • Inputs • Return Type • Output • Typical data type: integer, string, etc • Object (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: Vehicle • Attributes • 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

  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 • Select a Use Case: “Process New Order” • Add Domain Classes • See pre-conditions & post-conditions for ideas • Elaborate Attributes: visibility, data types

  19. Steps: Initial Design Class Diagram • 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 • Add Navigation Visibility • (def) the ability of one object to interact with another Rules • 1 to Many Association • 1  * • Mandatory Associations • IndepDependent • Needs info • Sender Receiver

  21. Steps: Initial Design Class Diagram • Add Methods (will see this in Ch 11 via Sequence Diagrams) • That is, Behavior!

More Related