Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.

Slides:



Advertisements
Similar presentations
Week 2 The Object-Oriented Approach to Requirements
Advertisements

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Chapter 2 Approaches to System Development
Chapter 4 - Object-Oriented Analysis and Design in a Nutshell1 Chapter 4 Object-Oriented Analysis and Design in a Nutshell.
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Systems Analysis and Design 8th Edition
Object-Oriented Analysis and Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Department of Computing
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
Systems Analysis and Design in a Changing World, Fourth Edition
1 SWE Introduction to Software Engineering Lecture 25 – Object-Oriented Design (Chapter 14)
Object Oriented System Development with VB .NET
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Essentials of interaction diagrams Lecture Outline Collaborations Interaction on collaboration diagrams Sequence diagrams Messages from an object.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented design 2.
©Ian Sommerville 2006Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
Systems Analysis and Design in a Changing World, Fifth Edition
Overview Objective: refine information gathered
2Object-Oriented Analysis and Design with the Unified Process Events and Use Cases  Use case  Activity the system carries out  Entry point into the.
6. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Explain how events can be used to identify use cases that define requirements.
Chapter 3 : Software Process and Other Models Juthawut Chantharamalee Curriculum of Computer Science Faculty of Science and Technology, Suan Dusit University.
Unified Modeling Language
Chapter 7: The Object-Oriented Approach to Requirements
Chapter 5: Modeling Systems Requirements: Events and Things
Introduction To System Analysis and design
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Chapter 2: Approaches to System Development
Systems Analysis and Design in a Changing World, Fifth Edition
CSCI-383 Object-Oriented Programming & Design Lecture 9.
12 Systems Analysis and Design in a Changing World, Fifth Edition.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
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
Introduction To System Analysis and Design
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
Systems Analysis and Design in a Changing World, 3rd Edition
Chapter 5 Models and UML Notation for The Object-Oriented Approach.
Systems Analysis & Design 7 th Edition Chapter 5.
Programming Logic and Design Fourth Edition, Comprehensive Chapter 15 System Modeling with the UML.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
Objectives Explain how events can be used to identify use cases that define requirements Identify and analyze events and resulting use cases Explain.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
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.
2 Systems Analysis and Design in a Changing World, Fifth Edition.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Introduction to Object Modeling
CIS 112 Exam Review. Exam Content 100 questions valued at 1 point each 100 questions valued at 1 point each 100 points total 100 points total 10 each.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Systems Analysis and Design in a Changing World, Fourth Edition
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design,
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Chapter 3: Introducing the UML
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Basic Characteristics of Object-Oriented Systems
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
UML Diagrams By Daniel Damaris Novarianto S..
Object-Oriented Analysis and Design
UML Diagrams Jung Woo.
The Process of Object Modeling
CIS 375 Bruce R. Maxim UM-Dearborn
Chapter 22 Object-Oriented Systems Analysis and Design and UML
CIS 375 Bruce R. Maxim UM-Dearborn
Presentation transcript:

Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design

Object-Oriented Application Development Using VB.NET 2 Objectives In this chapter, you will: Explore OOA and OOD Understand the Unified Modeling Language (UML) Use three-tier design in OO development Learn about the Bradshaw Marina case study

Object-Oriented Application Development Using VB.NET 3 Exploring OOA and OOD System analysis: –Study, Understand, and Define the system requirements. –System Requirements defined as what the system needs to accomplish for users in business terms Usually described using Diagrams or Models System design: show how various system components will be implemented using specific technology

Object-Oriented Application Development Using VB.NET 4 Exploring OOA and OOD A model depicts some aspect of the required system –Logical models: created during system analysis. They show what is required in the system independent of the technology used in implementation. –Physical models: created during system design. How various components of system will be implemented using specific technology. Model-driven development: creating logical and physical models during analysis and design

Object-Oriented Application Development Using VB.NET 5 Exploring OOA and OOD OO development models –Define classes of objects –Depict object interactions –Are based on UML –Include Use case diagrams Class diagrams Sequence diagrams

Object-Oriented Application Development Using VB.NET 6 Exploring OOA and OOD OO Development is Iterative development. –Analysis, design, and programming are performed in parallel, with the process repeated several times until the project is done. –Contrasts with the waterfall method An earlier approach. All of analysis was completed before design could start, and all of design was completed before programming could start

Object-Oriented Application Development Using VB.NET 7 Exploring OOA and OOD

Object-Oriented Application Development Using VB.NET 8 Exploring OOA and OOD OO development also uses incremental development. –Some of the system is completed and put into operation before the entire system is finished. –For example, the important subsystems may be finished first. –Later, additional subsystems are added as they are completed.

Object-Oriented Application Development Using VB.NET 9 Exploring OOA and OOD Spiral model –An increasingly popular approach to development –Emphasizes the iterative nature of development –Project appears as a spiral starting in the middle and working its way out. –Development team completes analysis, design, prototyping, and evaluation tasks for each iteration, starting in the middle of spiral.

Object-Oriented Application Development Using VB.NET 10 Exploring OOA and OOD

Object-Oriented Application Development Using VB.NET 11 The Unified Modeling Language Object-oriented development requires a collection of models that depict system requirements and designs. UML defines a standard set of constructs and diagrams to model OO systems. First step in system modeling: define the main system functions. A use case diagram shows two key concepts: –Use case: a system function –Actor: person or entity using the system (other system)

Object-Oriented Application Development Using VB.NET 12 Creating and Interpreting the Use Case Diagram

Object-Oriented Application Development Using VB.NET 13 Creating and Interpreting the Use Case Diagram One approach for identifying use cases is to identify events the system must respond to: Three types of events: 1.External events: occur outside the system and require the system to respond. 2.Temporal events: occur at a specific point in time, such as at the end of each day or at the end of the month. Example: Monthly reports. 3.State event: occur when the properties of an object change. Example: Inventory level dropping bellow reorder point -> reorder use case.

Object-Oriented Application Development Using VB.NET 14 Creating and Interpreting the Use Case Diagram Each use case can be documented as a series of steps users follow when they interact with the system. Scenarios: variations in the main steps. Each Use case can be documented by set of different scenarios: –Example:- Use CaseScenario Record Salefor existing Customer for New Customer As the development team identifies use cases, it creates use case diagrams.

Object-Oriented Application Development Using VB.NET 15 Creating and Interpreting the Class Diagram Class diagram –Shows the classes involved in the system & the relations between them. –The class is a rectangle with three sections Top section contains name of the class Middle section contains attributes of the class Bottom section contains methods of the class

Object-Oriented Application Development Using VB.NET 16 Creating and Interpreting the Class Diagram

Object-Oriented Application Development Using VB.NET 17 Creating and Interpreting the Class Diagram Class Diagram –Association relationship between two classes is shown with a line connecting the two classes. Number of associations between classes is written on each end of the line. UML refers to the number of associations as multiplicity. –Shows generalization/specialization hierarchies (inheritance). –Abstract classes shown in italics. –Abstract class cannot be instantiated. It’s used to allow subclasses to inherit from it.

Object-Oriented Application Development Using VB.NET 18 Creating and Interpreting the Class Diagram

Object-Oriented Application Development Using VB.NET 19 Creating and Interpreting a Sequence Diagram Sequence diagram –Shows interactions between objects in a system, usually for one use case or scenario. –Often called a dynamic model. Class diagram –Does not highlight object interactions. –Often called a static model.

Object-Oriented Application Development Using VB.NET 20 Creating and Interpreting a Sequence Diagram In a sequence diagram –Actor can be shown as a stick figure or a rectangle –Objects are shown as rectangles –Lifelines Represent a sequence of time Shown as either a dashed line or a narrow box (a period of time when object is active) –Horizontal arrows represent messages sent or received in sequence –Data returned in response to a message is shown as a dashed line

Object-Oriented Application Development Using VB.NET 21 Creating and Interpreting a Sequence Diagram

Object-Oriented Application Development Using VB.NET 22 Creating and Interpreting a Sequence Diagram In a sequence diagram –Object names are always underlined and begin with a lowercase letter –Class names are always capitalized –Objects can be named by Using generic object names to clarify the class Including the name of the class after the name of the object, separated by a colon –Message names are written above the message line.

Object-Oriented Application Development Using VB.NET 23 Using Three-Tier Design in OO Development Three-tier design requires that OO system developers separate three categories of classes when designing and building a system. Three tiers –Graphical user interface (GUI) classes –Problem domain classes –Data access classes

Object-Oriented Application Development Using VB.NET 24 Using Three-Tier Design in OO Development Separating GUI classes, problem domain classes, and data access classes leads to loosely coupled system components With loosely coupled components –A component can be modified with minimal effects on other components Makes it easier to maintain and enhance the system –Components are easier to reuse –Figure 5-8 -> p179

Object-Oriented Application Development Using VB.NET 25 Using Three-Tier Design in OO Development Three-tier design –Provides a framework for defining OOA and OOD OOA involves identifying and modeling the problem domain classes. In OOD, decisions about the user interface and about database management are made. The book follows the three-tier design approach Figure 5-9 -> p179

Object-Oriented Application Development Using VB.NET 26 Introducing the Bradshaw Marina Case Study Bradshaw Marina case study demonstrates OO development principles and practices. When a business determines that it needs a computer system, it works with a team of developers to design and develop the system.

Object-Oriented Application Development Using VB.NET 27 Introducing the Bradshaw Marina Case Study Tasks of development team –Analyze business and identify system functions –Begin object-oriented analysis to identify the required use cases and scenarios, creating use case diagrams –Identify required problem domain classes and create class diagram –Develop sequence diagrams to model object interactions

Object-Oriented Application Development Using VB.NET 28 Exploring the Background of Bradshaw Marina Bradshaw Marina –A privately owned corporation that rents boat slips and provides boat services on Clinton Lake –Wants an automated system to track customers, slips they lease, and boats in the slips

Object-Oriented Application Development Using VB.NET 29 Identifying Bradshaw Use Cases and Scenarios First step in OOA process: identify use cases that fall within system scope Since main events of interest involve customers, boats, and slips, use cases also focus on customers, boats, and slips Bradshaw Marina use case diagram indicates the use cases. Several scenarios could be associated with each use case.

Object-Oriented Application Development Using VB.NET 30 Identifying Bradshaw Use Cases and Scenarios

Object-Oriented Application Development Using VB.NET 31 Identifying Bradshaw Problem Domain Classes To explore problem domain classes, the development team would –Meet with Bradshaw Marina to ask about things that are involved in the work of the marina –Begin an initial class diagram that includes these potential classes: - Customer Boat Lease Slip Dock

Object-Oriented Application Development Using VB.NET 32 Problem Domain Classes

Object-Oriented Application Development Using VB.NET 33 Creating a Bradshaw Sequence Diagram A sequence diagram should be created for each scenario of each use case As you move from OOA to OOD, you will expand the diagram to show –GUI objects the actor interacts with –Data access classes that handle interaction with database

Object-Oriented Application Development Using VB.NET 34 Use Book Figures Bradshaw Class Diagram -> p189 Sequence Diagram for “lease annual slip to existing customer scenario” -> p190