Chapter 7: The Object-Oriented Approach to Requirements

Slides:



Advertisements
Similar presentations
Chapter 11 Designing the User Interface
Advertisements

Week 2 The Object-Oriented Approach to Requirements
Requirements Diagrams With UML Models
Karolina Muszyńska Based on:
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Object-Oriented Analysis and Design
Objectives Detailed Object-Oriented Requirements Definitions
Object-Oriented Analysis
Chapter 15: System Modeling with UML
Chapter 18 Object-Oriented Systems Analysis and Design Using UML
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.
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
© 2005 Prentice Hall4-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
© Copyright Eliyahu Brutman Programming Techniques Course.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Objectives Explain the purpose and objectives of object- oriented design Develop design class diagrams Develop interaction diagrams based on the principles.
Use Case Modeling.
Systems Analysis and Design in a Changing World, 6th Edition
Detailed Object-Oriented Requirements Definitions
Chapter 13: Designing the User Interface
6 Systems Analysis and Design in a Changing World, Fourth Edition.
Object-Oriented Analysis and Design
Chapter 6: The Traditional Approach to Requirements
Systems Analysis and Design in a Changing World, Fifth Edition
2 Approaches to Requierements Engineering Reference: Systems Analysis and Design in a Changing World, 3 rd Edition, chapter 2 and chapter 6.
Chapter 6 The Traditional Approach to Requirements
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, Fifth Edition
14 Chapter 11: Designing the User Interface. 14 Systems Analysis and Design in a Changing World, 3rd Edition 2 Identifying and Classifying Inputs and.
Systems Analysis and Design in a Changing World, 6th Edition
5 Systems Analysis and Design in a Changing World, Fourth Edition.
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
Systems Analysis and Design in a Changing World, 6th Edition
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
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.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
7 Systems Analysis and Design in a Changing World, Fifth Edition.
5 Systems Analysis and Design in a Changing World, Fifth Edition.
Systems Analysis and Design in a Changing World, 6th Edition
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 3 Use Cases.
Chapter 7 The Object-Oriented Approach to Requirements.
Use Case Driven Analysis Requirements Use Case Use Case Description System Sequence Diagram Chapter 5.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 5 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH CHAPTER.
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
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Object-Oriented Application Development Using VB.NET 1 Chapter 5 Object-Oriented Analysis and Design.
Week04 Project Requirements.
6 Systems Analysis and Design in a Changing World, Fourth Edition.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
1 Lecture 7 – Chapter 7 The Object-Oriented Approach to Requirements.
 System Sequence Diagrams Sheridan SYST Engineering Quality Systems 11.
Appendix Object-Oriented Analysis and Design: Use Cases and Sequence Diagrams Modern Systems Analysis and Design Fifth Edition Jeffrey A. Hoffer Joey F.
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.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
Engineering Quality Software Week02 J.N.Kotuba1 SYST Engineering Quality Software.
5 Systems Analysis and Design in a Changing World, Fourth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Systems Analysis and Design in a Changing World, 6th Edition
Use Case Driven Analysis
Systems Analysis and Design in a Changing World, 6th Edition
Software Design Lecture : 15.
Presentation transcript:

Chapter 7: The Object-Oriented Approach to Requirements Systems Analysis and Design in a Changing

Learning Objectives Develop use case diagrams Write use case and scenario descriptions Develop activity diagrams and system sequence diagrams Refine and enhance the domain model class diagram Explain how UML diagrams work together to define functional requirements for the object-oriented approach Systems Analysis and Design in a Changing World, 3rd Edition

Overview Objective of requirements definition is understanding user’s needs, business processes, and system to support business processes Understand and define requirements for a new system using object-oriented analysis models and techniques Line between object-oriented analysis and object-oriented design is somewhat fuzzy Iterative approach to development Models built in analysis are refined during design Systems Analysis and Design in a Changing World, 3rd Edition

The Unified Modeling Language and the Object Management Group Object-oriented modeling notation is Unified Modeling Language (UML) UML was presented to Object Management Group (OMG) as standard modeling technique Purpose of Object Management Group Promote theory and practice of object technology for development of distributed systems Provide common architectural framework for OO Systems Analysis and Design in a Changing World, 3rd Edition

Object-Oriented Requirements Systems development process starts with identification of events and things Events are business processes that new system must address Things are problem domain objects involved in business process Systems Analysis and Design in a Changing World, 3rd Edition

Object-Oriented Approach Models Class diagram – definition of system components Use case diagrams and use case descriptions – show user roles and how they use the system Systems sequence diagrams (SSDs) – define inputs and outputs and sequence of interactions between user and system for a use case Statechart diagrams – describe states of each object Activity diagrams – describe user activities Systems Analysis and Design in a Changing World, 3rd Edition

Requirements Diagrams: Traditional and OO Models Systems Analysis and Design in a Changing World, 3rd Edition

The System Activities – A Use Case / Scenario View Use case analysis used to identify and define all business processes that system must support Use Case - single function performed by system for those who use that function Actors Role played by user Outside automation boundary and organization Systems Analysis and Design in a Changing World, 3rd Edition

Use Case Diagram Graphical models that summarize information about actors and use cases System developer Looks at system as whole Identifies major uses from event table Identifies functions to be supported by new system Organizes use cases Systems Analysis and Design in a Changing World, 3rd Edition

Simple Use Case with an Actor Systems Analysis and Design in a Changing World, 3rd Edition

Use Case Diagram with System Boundary Systems Analysis and Design in a Changing World, 3rd Edition

Use Case of Customer Support System Systems Analysis and Design in a Changing World, 3rd Edition

All Use Cases Including Customer Systems Analysis and Design in a Changing World, 3rd Edition

<<Includes>> Relationships Documents situation where one use case requires the services of a common subroutine Another use case is developed for this common subroutine A common use case can be reused by multiple use cases Systems Analysis and Design in a Changing World, 3rd Edition

<<includes>> Example of Order-Entry Subsystem with <<Includes>> Use Cases (Figure 7-6) <<includes>> Common Subroutines Systems Analysis and Design in a Changing World, 3rd Edition

Developing a Use Case Diagram Starting points for use case development Use event table Identify all actors of the system Identify functions actors perform with system Develop flow of activities to identify various scenarios Common internal use cases can be identified and separated into different use cases Systems Analysis and Design in a Changing World, 3rd Edition

CRUD analysis CRUD – Create, Read/Report, Update, Delete Information Engineering (IE) technique to identify event table events or develop use case diagram Compares identified use cases with domain model class diagram Every class in class diagram must have use cases to support creating, reading, reporting, updating, and deleting object instances Confirms system integration requirements Systems Analysis and Design in a Changing World, 3rd Edition

Use Case Detailed Descriptions Scenario, or use case instance, details sequence of activities within use case Shows actor interacting with computer system step-by-step to carry out business activity May have several scenarios for single use case Analysts prefer to write narrative descriptions of use cases instead of building activity diagrams Three levels: brief, intermediate, and fully developed description Systems Analysis and Design in a Changing World, 3rd Edition

Brief Description of Create New Order Use Case Systems Analysis and Design in a Changing World, 3rd Edition

Intermediate Description of the Telephone Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition

Intermediate Description of the Web Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition

Fully Developed Description of Telephone Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition

Fully Developed Description of Web Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition

Activity Diagrams Used to document work flow of business process activities for each use case scenario Standard UML diagram Can support any level of use case description Helpful in developing system sequence diagrams Systems Analysis and Design in a Changing World, 3rd Edition

Activity Diagram: Telephone Order Scenario Systems Analysis and Design in a Changing World, 3rd Edition

Activity Diagram: Web Order Scenario Systems Analysis and Design in a Changing World, 3rd Edition

Identifying Inputs and Outputs – The System Sequence Diagram Collaboration diagram Emphasizes objects that interact together to support a use case diagram May be used alone or with sequence diagram System sequence diagram Shows sequence of interactions between objects and flow of events in a single use case Focuses on message details Used more frequently in industry Systems Analysis and Design in a Changing World, 3rd Edition

Sample System Sequence Diagram (SSD) Systems Analysis and Design in a Changing World, 3rd Edition

SSD Notation Actor represented by stick figure – person (or role) that “interacts” with system by entering input data and receiving output data Object notation is rectangle with name of object underlined – shows individual object and not class of all similar objects Lifeline is vertical line under object or actor to show passage of time for object Messages use arrows to show messages sent or received by actor or system Systems Analysis and Design in a Changing World, 3rd Edition

SSD Lifelines Vertical line under object or actor: Shows passage of time If vertical line dashed: Creation and destruction of thing is not important for scenario Long narrow rectangles: Activation lifelines emphasize that object is active only during part of scenario Systems Analysis and Design in a Changing World, 3rd Edition

SSD Messages Internal events identified by the flow of objects within a scenario Requests from one actor or object to another to do some action Invokes a particular method Systems Analysis and Design in a Changing World, 3rd Edition

Repeating Message Systems Analysis and Design in a Changing World, 3rd Edition

Developing a System Sequence Diagram Begin with detailed description of use case from fully developed form or activity diagrams Identify input messages Describe message from external actor to system using message notation Identify and add any special conditions on input message, including iteration and true/false conditions Identify and add output return messages Systems Analysis and Design in a Changing World, 3rd Edition

Simplified Activity Diagram of the Telephone Order Scenario Systems Analysis and Design in a Changing World, 3rd Edition

SSD of Simplified Telephone Order Scenario for Create New Order Use Case Systems Analysis and Design in a Changing World, 3rd Edition

SSD of the Web Order Scenario for the Create New Order Use Case Systems Analysis and Design in a Changing World, 3rd Edition

Problem Domain Modeling – The Domain Model Class Diagram Class diagram is focal point of object-oriented development Provides definition of system components Contains important class structural information for implementation with object-oriented programming Provides conceptual data model to describe classes for database definition Consists of problem domain classes and implementation classes Systems Analysis and Design in a Changing World, 3rd Edition

Example of Domain Model Class Diagram Systems Analysis and Design in a Changing World, 3rd Edition

RMO Domain Model Class Diagram Systems Analysis and Design in a Changing World, 3rd Edition

Integrating Object-Oriented Models Complete use case diagram is needed to understand total scope of new system Domain model class diagrams also should be as complete as possible for entire system With iterative approach, only construct use case descriptions, activity diagrams, and system sequence diagrams for use cases in iteration Development of a new diagram often helps refine and correct previous diagrams Systems Analysis and Design in a Changing World, 3rd Edition

Relationships Between OO Requirements Models Systems Analysis and Design in a Changing World, 3rd Edition

Use Case Diagram for Inventory System Systems Analysis and Design in a Changing World, 3rd Edition

Relationships Between OO Requirements Models (Figure 7-28) Systems Analysis and Design in a Changing World, 3rd Edition

Summary Object-oriented approach has complete set of diagrams that together document the user’s need and define system requirements Requirements specified using following models: Domain model class diagrams Use case diagrams Use case detailed model, either descriptive format or activity diagram System sequence diagrams (SSDs) Systems Analysis and Design in a Changing World, 3rd Edition