Project
5
Systems Analysis and Design in a Changing World, Fifth Edition
*
5
Learning Objectives
- Explain why identifying use cases is the key to defining functional requirements
- Use three techniques for identifying use cases
- Write brief, intermediate, and fully developed use case descriptions
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Learning Objectives (continued)
- Explain how the concept of things in the problem domain also defines requirements
- Identify and analyze data entities and domain classes needed in the system
- Read, interpret, and create an entity-relationship diagram
- Read, interpret, and create a domain model class diagram
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Overview
- Document functional requirements by creating models
- Models created during analysis phase activity – Define system requirements
- Two concepts help identify functional requirements in the traditional approach and object-oriented approach
- Use cases and the events that trigger them
- Things in the users’ work domain
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
User Goals, Events, and Use Cases
- Use Case -- An activity the system performs in response to a user request
- Techniques for identifying use cases
- User goal technique
- Each goal at the elementary business process (EBP) level is a use case
- EBP – a task performed by one user, in one place in response to a business event, that adds measurable business value, and leaves system and data in consistent state
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
User Goals, Events, and Use Cases (continued)
- CRUD analysis technique (create, read, update, delete)
- Event decomposition technique
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Identifying Use Cases Based on User Goals
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-1
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Use Case Based on CRUD Technique
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-2
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Event Decomposition Technique
- Event – an occurrence at a specific time and place and which needs to be remembered
- Business events trigger elementary business processes (EBPs)
- EBPs are at correct level of analysis for use cases
- Identify business events to decompose system into activities/use cases
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Types of Events
- External
- Outside system
- Initiated by external agent or actor
- Temporal
- Occur as result of reaching a point in time
- Based on system deadlines
- State
- Something inside system triggers processing need
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Events Affecting a Charge Account Processing System that Lead to Use Cases
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-3
Systems Analysis and Design in a Changing World, 5th Edition
*
5
External Event Checklist
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-4
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Temporal Event Checklist
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-5
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Identifying Events
- Can be difficult to determine
- Often confused with conditions and responses
- May be useful to trace a transaction’s life cycle
- Certain events left to design phase
- System controls to protect system integrity
- Perfect technology assumption defers events
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Sequence of Actions that Lead Up to Only One Event Affecting the System
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-6
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Sequence of “Transactions”
for One Specific Customer
Resulting in Many Events
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-7
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Events Deferred Until the Design Phase
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-8
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Events in the RMO case
- Important external events involve customers
- Customer checks item availability, customer places order, customer changes or cancels order
- Other external events involve departments
- Shipping fulfills order, marketing sends promotion to customer, merchandising updates catalog
- Temporal events include periodic reports
- Time to produce order summary reports, Time to produce fulfillment summary reports
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO External Events
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-9
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO Temporal Events
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-10
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Events and Use Cases
- Event Table – a catalog of use cases listed by event. Contains detailed information
- Trigger – a signal that indicates an event has occurred
- Source – an external agent that initiates event and supplies data for the event
- Response – an output produced by the system
- Destination – an external agent that receives the response
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Information about Each Event
in an Event Table
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-11
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO Event Table
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-12
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Use Case Descriptions
- Use case description – a description of the processing steps for a use case
- Actor – a person or thing that uses the system. Actors have contact with the system
- Scenario or Instance – a particular set of internal steps that represent a unique path of the use case
- Three types of descriptions
- Brief description
- Intermediate description
- Fully developed description
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Brief Description
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-13
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Intermediate Description
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-14
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Fully Developed Description
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-16
Systems Analysis and Design in a Changing World, 5th Edition
*
5
“Things” in the Problem Domain
- Define system requirements by understanding system information that needs to be stored
- Store information about things in the problem domain that people deal with when they do their work
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Types of Things
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-18
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Procedure for Developing an
Initial List of Things
- Step 1: Using the event table and information about each use case, identify all nouns
- Step 2: Using other information from existing systems, current procedures, and current reports or forms, add items or categories of information needed
- Step 3: Refine list and record assumptions or issues to explore
- Questions to include it, exclude it, or research it
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO Example “Things”
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-19
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Characteristics of Things
- Relationship
- Naturally occurring association among specific things
- Occur in two directions
- Number of associations is cardinality or multiplicity
- Binary, unary, ternary, n-ary
- Attribute
- One specific piece of information about a thing
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Relationships Naturally Occur Between Things
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-20
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Cardinality/Multiplicity of Relationships
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-21
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Attributes and Values
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-22
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Data Entities
- Things system needs to store data about in traditional IS approach
- Modeled with entity-relationship diagram (ERD)
- Requirements model used to create the database design model for relational database
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
The Entity-Relationship Diagram (ERD)
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-23
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Cardinality Symbols of Relationships for ERD
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-24
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Expanded ERD with Attributes Shown
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-25
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Customers, Orders, and Order Items
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-26
Systems Analysis and Design in a Changing World, 5th Edition
*
5
ERD with Many-to-Many Relationship
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-27
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Many-to-Many Relationship Converted to Associative Entity to Store Grade Attribute
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-28
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO Customer Support System ERD
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-29
Systems Analysis and Design in a Changing World, 5th Edition
*
5
The Domain Model Class Diagram
- Unified Modeling Language (UML) diagram
- Domain model class diagram
- Models things in the users’ work domain
- Used to define requirements for OO (very similar to entities in ERD)
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
UML Class Symbol
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-30
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Simple Domain Model Class Diagram
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-31
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Simple Domain Model Class Diagram (continued)
- No methods shown in domain model
- Domain classes are not software classes
- Very similar to ERD
- UML and domain model can be used in place of ERD in traditional approach
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Multiplicity of Associations
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-32
Systems Analysis and Design in a Changing World, 5th Edition
*
5
University Course Enrollment Domain Model Class Diagram
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-33
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Refined Model with Association Class and Grade Attribute
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-34
Systems Analysis and Design in a Changing World, 5th Edition
*
5
More Complex Class Concepts
- Generalization/specialization hierarchies
- General superclasses to specialized subclasses
- Inheritance allows subclasses to share characteristics of their superclasses
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
A Generalization/Specialization
Class Hierarchy for Motor Vehicles
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-35
Systems Analysis and Design in a Changing World, 5th Edition
*
5
A Generalization/Specialization
Class Hierarchy for RMO Orders
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-36
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Whole-Part Hierarchies
- Whole-part hierarchies – hierarchies that structure classes by components
- Aggregation – whole-part relationships between and object and its removable parts
- Parts can exist separately
- Like car and its tires
- Composition – whole-part relationships between and object and its non-removable parts.
- Parts cannot exist separately
- Like Hand is composed of fingers and thumb
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Whole-Part Aggregation Relationships
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-37
Systems Analysis and Design in a Changing World, 5th Edition
*
5
RMO Domain Model Class Diagram
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-38
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Where You Are Headed
Systems Analysis and Design in a Changing World, 5th Edition
*
Figure 5-39
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Summary
- Analysis phase – defines system requirements
- Models created to further learning process, reduce complexity, communicate with team members, and document requirements
- Key early step in modeling is to identify and list
- Events that require a use case in the system
- Things users deal with in work environment
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Summary (continued)
- Use cases (activities) are identified from user goals and business events that trigger elementary business processes
- Business events are memorable, can be described, and occur at a specific time and place
- External events, temporal events, and state events
- Event table records event, trigger, source, use case, response, and destination
- A catalog of information about each use case
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*
5
Summary (continued)
- “Things” are what user deals with and system remembers, such as customer placing an order
- Traditional approach uses entity-relationship diagrams (ERD) for data entities, attributes of data entities, and relationships between entities
- Object-oriented approach uses UML class diagrams for classes, attributes, methods of class, and associations among classes
- Domain model class diagram
Systems Analysis and Design in a Changing World, 5th Edition
*
Systems Analysis and Design in a Changing World, 5th Edition
*