Object-Oriented Design

Slides:



Advertisements
Similar presentations
Object-Oriented Software Engineering Visual OO Analysis and Design
Advertisements

Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Robert B. Jackson Brigham Young University John W. Satzinger
Unified Modeling Language
Sucha Smanchat  Steps in OOAD using UML  Use Case Diagram  Sequence Diagram / Communication Diagram  Class Diagram  State.
Interaction Diagrams Activity Diagram State Machine Diagram
Systems Analysis and Design in a Changing World, Fourth Edition
Systems Analysis and Design in a Changing World, Fourth Edition
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 5: Restaurant.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
1 UML Component and Deployment Diagrams. Models, Views, and Diagrams Use Case Diagrams Use Case Diagrams Use Case Diagrams Scenario Diagrams Scenario.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
System Analysis and Design
Use Case Modeling. Use case diagram For each use case we develop  Object class diagram (with attributes only)  System sequence diagram (analysis) 
Unified Modeling Language
Object-Oriented Analysis and Design
The chapter will address the following questions:
Chapter 7: The Object-Oriented Approach to Requirements
The Design Discipline.
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, Fifth Edition
Chapter 3 Use Cases.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
An Object-Oriented Approach to Programming Logic and Design
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
Systems Analysis and Design in a Changing World, 6th Edition
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Unified Modeling Language, Version 2.0
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 25. Review Design Level Class Diagram Identifying classes/Operations/Attributes Associations – Simple associations.
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
System Analysis System Analysis - Mr. Ahmad Al-Ghoul System Analysis and Design.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Systems Analysis and Design in a Changing World, 3rd Edition
2 Object-Oriented Analysis and Design and the Unified Process Objectives  Explain the purpose and objectives of object- oriented design  Develop design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
Logical view –show classes and objects Process view –models the executables Implementation view –Files, configuration and versions Deployment view –Physical.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
TK2023 Object-Oriented Software Engineering CHAPTER 12 Introduction to Responsibility-Driven Design.
Scenario A scenario is a sequence of steps describing an interaction between a user and a system. Use case is a set of scenarios tied together by a common.
Systems Analysis and Design in a Changing World, Fourth Edition
Slide 1 What the business needs  How to build it Functional requirements  + Nonfunctional requirements Performance System environment issues Problem.
Week 10 1 Sequence Diagrams. Outline a)Add scenarios to the system to describe how Use Cases are realized as interactions among societies of objects b)Describe.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapters 10, 11 SSD (Revision) SD DCD Exam Object-Oriented Design.
Dr. Awais Majeed Object Oriented Design and UML.
Generalizable Element Namespace Model Element name visibility isSpecification Classifier isRoot Constraint Body Coming up: Unified Modeling Language Introduction.
McGraw-Hill/Irwin© 2008 The McGraw-Hill Companies, All Rights Reserved Chapter 17 Object-Oriented Design and Modeling Using the UML.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
CHAPTER 6 OBJECT ANALYSIS.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
 Sequence Diagrams Introduction.  Sequence Diagrams  Review Schedule Sheridan.
Unified Modeling Language
Week 10: Object Modeling (1)Use Case Model
OO Domain Modeling With UML Class Diagrams and CRC Cards
Chapter 8: Modelling Interactions and Behaviour UML Activity Diagram
Business System Development
The Object Oriented Approach to Design
Object oriented analysis and design
Real-time (OO) Systems Design Using UML
Appendix 3 Object-Oriented Analysis and Design
Presentation transcript:

Object-Oriented Design Chapters 10, 11 Object-Oriented Design Classes Objects SD DCD

Revision: Study pages 13 – 20 from study-guide: Answer the 12 questions on page 20!

Introduction: Object-oriented analysis models were discussed in Chapters 2 - 5 Chapter 10, the fundamental principles: A complete coverage of design principles and skills to at least do basic object-oriented design Chapter 11 presents more advanced concepts particularly for detailed design with use case realizations: enhanced detailed design skills, and concepts related to design patterns, which are critically important for programming.

Foundation: Object-oriented design is a process by which a set of detailed object-oriented design models are built and then used by the programmers to write and test the new system. One of the strengths of the object-oriented approach is that the design models are often just extensions of the requirements models.

What is O-O program: An object-oriented program consists of a set of program objects that cooperate to accomplish a result. Each program object has program logic and any necessary attributes encapsulated into a single unit. These objects work together by sending each other messages and working in concert to support the functions of the main program.

Identify classes?

O-O program The previous slide shows how an object-oriented program works. Hidden, it also illustrates the three-layer architecture: Abstract Three Layer Architecture

Objective of O-O design: The objective of object-oriented design is to identify and specify all the objects that must work together to carry out each use case. As shown in Figure 10-1, these objects include user-interface objects, problem domain objects, and data access objects. Can you identify these objects?

The OO diagrams: O-O analysis: O-O design: Use case, Use case description, Activity diagram, Domain Model Diagrams, System Sequence Diagram, State Machine Diagram O-O design: Component diagrams, deployment diagrams, design class diagrams, interaction diagrams, state machine diagrams, and package diagrams.

Objective: A major responsibility of detailed design is to identify and describe each set of objects within each layer and to identify and describe the interactions or messages that are sent between these objects. The most important model in object-oriented design is a sequence diagram The other major design model is the design class diagram

Revision: An object class (or a class) is… Set of people Places Things Or transactions that share common attributes and perform common functions to help an organization reaches its goals.

Examples: People: employees, vendors, customers Places: warehouses, office, branches, shipping docks Things: products, office equipment, supplies Transaction: purchases, sales, returns, payments

From the narrative? People: dog-owner, vet, person Places: pet shop, clinic Things: Ball and……..dog Transaction: payment, treatment OO: a class is an abstraction or model of a real concept.

Domain Classes with MS Visio:

Object Instances:

Attributes:

Design Class Diagrams (DCD):

Messages:

Example: Draw money from ATM Processes: Insert credit card Enter PIN Enter Amount What happens behind UI? Verification from bank system ……

Classes? Customer ATM: ATM System Bank System

Interaction: What message/communication takes place between customer and ATM? Customer wants to enter PIN If verified, Customer wants to draw money

Three layer Architecture: user-interface objects, problem domain objects, and data access objects.

Two Things: Identifying design classes: use interactions to add operations to classes. Identifying stereotypes in UML models

Questions: Identify the classes Draw the SD Sort-out the interactions or messages Add the operations/behaviour Add the ‘three layer diagram’