Object-Oriented Analysis and Design

Slides:



Advertisements
Similar presentations
Chapter 11 Designing the User Interface
Advertisements

Week 2 The Object-Oriented Approach to Requirements
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Object-Oriented Analysis and Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Robert B. Jackson Brigham Young University John W. Satzinger
Systems Analysis and Design in a Changing World, Fourth Edition
8.
Object-Oriented Analysis and Design
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.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System sequence diagram Updated: 2014.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
Detailed Object-Oriented Requirements Definitions
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
Chapter 7: The Object-Oriented Approach to Requirements
The Design Discipline.
The Object Oriented Approach to Design
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, Fifth Edition
Objectives The Primary focus of this chapter is on how to develop detailed Object- oriented Design Models, which programmers then use to code the System.
Systems Analysis and Design in a Changing World, 6th Edition
12 Systems Analysis and Design in a Changing World, Fifth Edition.
High-Level Design With Sequence Diagrams COMP314 (based on original slides by Mark Hall)
Objectives Detailed Object-Oriented Requirements Definitions
The Object-Oriented Approach to Requirements
4 2009/10 Object Oriented Technology 1 Topic 4: The Object-Oriented Approach to Requirements Adopted from: Ch.7 The Object-Oriented Approach to Requirements.
Systems Analysis and Design in a Changing World, Fifth Edition
1 ITEC 3010 “Systems Analysis and Design, I” LECTURE 10: Use Case Realizations [Prof. Peter Khaiter]
Systems Analysis and Design in a Changing World, 6th Edition 1 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH Chapter 11 SATZINGER.
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
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.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
1 ITEC 2010 Chapter 9 – Design The Structure Chart Structure chart –A hierarchical diagram showing the relationships between the modules of a.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Object Oriented Design Jerry KotubaSYST Object Oriented Methodologies1.
Drawing System Sequence Diagrams
Chapter 7 The Object-Oriented Approach to Requirements.
Use Case Controller System sequence diagram (SSD) shows input messages from external actors within use case Only indicates that messages go to system Use.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Software Engineering Lecture 8 Object-Oriented Analysis.
Systems Analysis and Design in a Changing World, Fourth Edition
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapters 10, 11 SSD (Revision) SD DCD Exam Object-Oriented Design.
Chapter 3: Introducing the UML
UML - Development Process 1 Software Development Process Using UML.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
 System Sequence Diagrams Sheridan SYST Engineering Quality Systems 11.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
Basic Characteristics of Object-Oriented Systems
11. Chapter 11: The Object-Oriented Approach to Design: Use Case Realization Systems Analysis and Design in a Changing World, Fourth Edition.
11 Systems Analysis and Design in a Changing World, Fifth Edition.
 Sequence Diagrams Introduction.  Sequence Diagrams  Review Schedule Sheridan.
Systems Analysis and Design in a Changing World, Fourth Edition
Unified Modeling Language
The Object Oriented Approach to Design
Unified Modeling Language
CIS 375 Bruce R. Maxim UM-Dearborn
Analysis models and design models
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005
CIS 375 Bruce R. Maxim UM-Dearborn
Presentation transcript:

Object-Oriented Analysis and Design Lecture 6: DESign activities and use case realization

Objectives Design Discipline Design Activities Develop detailed object-oriented design models Design class diagrams Extend domain model

Moving From Business Modeling Requirements to Design Business and requirements models Description: high-level representations Needs, key processes and functions, environment Purpose: promote understanding Design models move project closer to implementation Models of design discipline are “blueprints” Design activities carry out business tasks and achieve business objectives  

Comparison of Modeling During the Business Modeling, Requirements, and Design Disciplines

Design Activities in the UP Life Cycle

Design Use Case Realizations Use case realizations offer a lower-level view Two-tiered focus Class interactions supporting a particular use case Interactions among software, users, and external systems Design typically spread over many iterations UML design class diagrams and interaction diagrams document design

Design the Database Designing database as a key design activity Physical model of database based on class diagram Physical model describes relational or OO database Some technical issues Performance, such as response time Integration with existing databases Legacy databases

Design the User Interface User interface issues User capabilities and needs differ widely User interacts with the system in different ways Approaches to interface vary by system Has nature of interface emerged from earlier models?

What is Object-Oriented Design? The bridge between a user’s requirements and programming for the new system “Blueprints”, or design models, are necessary to build systems An adaptive approach to development Requirements and design are done incrementally within an iteration A complete set of designs may not be developed at one time

Overview of Object-Oriented Programs Object-oriented programs consist of a set of computing objects that cooperate to accomplish a result Each object has program logic and data encapsulated within it Objects send each other messages to collaborate Most object-oriented programs are event-driven Instantiation of a class creates an object based on the template provided by the class definition

Object-oriented event-driven program flow

Object-Oriented Design Models Identify all objects that must work together to carry out a use case Divide objects into groups for a multilayer design Interaction diagrams describe the messages that are sent between objects Includes sequence and communication diagrams Design class diagrams document and describe the programming classes

Design class for Student class

Design models with their respective input models

Object-Oriented Design Process Create a first-cut model of the design class diagrams Develop interaction diagrams for each use case or scenario Update the design class diagrams Method names, attributes, and navigation visibility

Design Classes and Design Class Diagrams Design class diagrams are extensions of domain class model diagrams Elaborate on attribute details Define parameters and return values of methods Define the internal logic of methods A first-cut design class diagram is based on the domain model and engineering design principles Interaction diagrams are used to refine a design class diagram as development progresses

Design Class Notation Class name and stereotype information Attribute information Visibility, type-expression, name, initial value, and properties Method signature Visibility, name, type-expression, and parameter list Use the entire signature to identify a method to distinguish between overloaded methods

OStudent class examples for the domain diagram and the design class diagram

Developing the First-Cut Design Class Diagram Elaborate the attributes with type and initial value information Most attributes should be private Add navigation visibility arrows Based on which classes need access to which other classes Can be bidirectional Will need to be updated as design progresses

First-cut RMO design class diagram

Interaction Diagrams–Realizing Use Cases and Defining Methods Interaction diagrams are at the heart of object-oriented design Realization of a use case Determine what objects collaborate by sending messages to each other Two types Sequence Communication

Object Responsibility Objects are responsible for carrying out system processing Two major areas of responsibility Knowing Knowledge about its own data and about other classes with which it must collaborate to carry out use cases Doing All the activities an object does to assist in the execution of a use case

Partial design class diagram for the Look up item availability use case

Designing with Sequence Diagrams An SSD captures the interactions between the system and the external world represented by actors The system is treated like a black box A detailed sequence diagram uses all of the same elements as an SSD The :System object is replaced by all of the internal objects and messages within the system

SSD for the Look up item availability use case

First-Cut Sequence Diagram Determine which other objects may need to be involved to carry out the use case Replace the :System object with a use case controller object Determine which other messages will be sent Define the source and destination object for each message Use activation lifelines to indicate when an object is executing a method

First-cut sequence diagram for the Look up item availability use case

Guidelines for Preliminary Sequence Diagram Development Determine all of the internal messages that result from each input message Define origin and destination objects Identify the complete set of classes that will be affected by each message Flesh out the components for each message Iteration, true/false conditions, return values, and passed parameters

SSD for the telephone order scenario of the Create new order use case

Sequence diagram for the telephone order scenario of the Create new order use case