7 Chapter 7: The Object-Oriented Approach to Requirements Systems Analysis and Design in a Changing The Unified Modeling Language and the Object Management Group 7 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 4 7 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 5 7 Object-Oriented Approach Models Class diagram – definition of system components case diagrams and use case descriptions – show user roles and how they use the system Use sequence diagrams (SSDs) – define inputs and outputs and sequence of interactions between user and system for a use case Systems Statechart diagrams – describe states of each object Activity diagrams – describe user activities Systems Analysis and Design in a Changing World, 3rd Edition 6 Requirements Diagrams: Traditional and OO Models Systems Analysis and Design in a Changing World, 3rd Edition 7 7 The System Activities – A Use Case / Scenario View 7 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 8 7 Simple Use Case with an Actor Systems Analysis and Design in a Changing World, 3rd Edition 10 7 Use Case Diagram with System Boundary Systems Analysis and Design in a Changing World, 3rd Edition 11 7 Use Case of Customer Support System Systems Analysis and Design in a Changing World, 3rd Edition 12 7 All Use Cases Including Customer Systems Analysis and Design in a Changing World, 3rd Edition 13 Example of Order-Entry Subsystem with <<Includes>> Use Cases (Figure 7-6) 7 <<includes>> Common Subroutines Systems Analysis and Design in a Changing World, 3rd Edition 15 7 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 16 Brief Description of Create New Order Use Case Systems Analysis and Design in a Changing World, 3rd Edition 7 19 Intermediate Description of the Telephone Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition 7 20 Intermediate Description of the Web Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition 7 21 Fully Developed Description of Telephone Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition 7 22 Fully Developed Description of Web Order Scenario for Create New Order Systems Analysis and Design in a Changing World, 3rd Edition 7 23 7 Activity Diagram: Telephone Order Scenario Systems Analysis and Design in a Changing World, 3rd Edition 25 7 Activity Diagram: Web Order Scenario Systems Analysis and Design in a Changing World, 3rd Edition 26 Problem Domain Modeling – The Domain Model Class Diagram 7 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 37 7 RMO Domain Model Class Diagram Systems Analysis and Design in a Changing World, 3rd Edition 39 Relationships Between OO Requirements Models Systems Analysis and Design in a Changing World, 3rd Edition 7 41 7 Use Case Diagram for Inventory System Systems Analysis and Design in a Changing World, 3rd Edition 42 Relationships Between OO Requirements Models (Figure 7-28) Systems Analysis and Design in a Changing World, 3rd Edition 7 43