Lecture3010-2020-7
ITEC 3010: Systems Analysis and Design
Lecture 7: Object-Oriented Approach to Requirements
Key Topics Covered:
Object-Oriented Analysis (OOA)
Unified Modeling Language (UML)
Object-Oriented Requirements (OOR)
System Activities
Use Case Description and Diagram
Activity Diagram
System Sequence Diagram
State Machine Diagram
Integrating Object-Oriented Models
Object-Oriented Analysis (OOA)
OOA views an Information System (IS) as a collection of objects collaborating to perform functions.
Steps in OO Analysis:
Define Objects: Identify and classify the objects that comprise the system.
Describe Interactions: Elaborate on how these objects communicate, primarily via messages.
UML Overview:
Defined in 1995; standardized in 1997 by the Object Management Group (OMG).
UML serves as a notation in OO modeling, facilitating the construction of various diagrams.
Object-Oriented Requirements (OOR)
Modeling Process:
Starts with identifying use cases and problem domain classes representing elements in the user's work environment.
Use Cases: Define functional requirements and outline systems' capabilities.
Business Events: Trigger elementary business processes (EBP) relevant to use cases.
Use Case Models
Components of Use Cases:
Use Case Diagram: Visual representation of user roles and system utilization.
Sequence Diagram: Shows message exchanges between external actors and system objects.
Domain Models and Diagrams:
Domain Class Diagram: Classify objects integrated into the system alongside attributes.
State Machine Diagram: Depicts the states of each object and transitions between them.
System Activities
Use Case Identification:
Use cases can be identified at both an overview and detailed level.
Actors: Individuals or systems interacting with the system, fundamentally influencing its activities.
Techniques for Identifying Use Cases
User Goals: Each goal at the EBP level signifies a use case.
Event Decomposition and CRUD Analysis: Ensure all interactions and processes are captured effectively.
Use Case Descriptions
Provides details on:
Actors: Entities initiating the use case.
Scenario: Specific pathway taken to achieve a goal.
Preconditions: Conditions that must be fulfilled before execution starts.
Postconditions: Outcomes when the use case is completed.
Levels of Detail: Brief, Intermediate, and Fully Developed descriptions of use cases.
Examples of Use Case Descriptions
Create New Order
Trigger: Customer telephones to make an order.
Flow of Activities:
Order clerk verifies customer's information.
A new order is initiated and items are requested by the customer.
Payment is verified and order is finalized.
Create Customer Account
Trigger: New customer wishes to create an online account.
Flow of Activities:
Customer enters account details.
System processes and saves the account info along with associated addresses.
Use Case Diagrams
Graphically summarize actors and use cases.
Symbols include ovals for use cases and stick figures for actors, with connecting lines showing interactions.
Integrating Object-Oriented Models
Combine various diagrams like use case, domain class, and state machine diagrams for an overarching view of system requirements.
Importance of Iteration: Each diagram's development supports refining other models, ensuring all aspects are covered.
Summary of Diagrams
Activity Diagrams: Document workflows for use cases.
State Machine Diagrams (SMD): Show internal object behaviors and states.
System Sequence Diagram (SSD): Models input-output messaging, demonstrating system interactions.
Relationships Between Diagrams
Connect use case diagrams to domain class diagrams, and state machine diagrams to support comprehensive system functionality understanding.
Reading for Next Lecture
Today: Chapter 3 (pp. 81-87), Chapter 4 (pp. 114-122), Chapter 5
Next Lecture: Chapter 6 (pp. 159-170), Chapter 7
Thank you!