Systems Analysis and Integration - 2 Assignments

profileiAREduce
w2c5.ppt

CIS320
Systems Analysis and Integration

Week 2 – Extending Requirement Models

*

Systems Analysis and Design in a Changing World, 6th Edition

*

Chapter 5

  • Overview
  • This chapter focuses on additional techniques and models to extend the requirements models to show more detail
  • Outline
  • Use Case Descriptions
  • Activity Diagrams for Use Cases
  • The System Sequence Diagram—Identifying Inputs and Outputs
  • The State Machine Diagram—Identifying Object Behavior
  • Integrating Requirements Models

Systems Analysis and Design in a Changing World, 6th Edition

*

Systems Analysis and Design in a Changing World, 6th Edition

*

Brief Use Case Description

  • Brief use case description is often a one sentence description showing the main steps in a use case

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Fully Developed Use Case Description

  • Write a fully developed use case description for more complex use cases
  • Typical use case description templates include:

  • Use case name
  • Scenario (if needed)
  • Triggering event
  • Brief description
  • Actors
  • Related use cases (<<includes>>)
  • Stakeholders
  • Preconditions
  • Post conditions
  • Flow of activities
  • Exception conditions

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Fully Developed Use Case Description
Use case: Create customer account

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

UML Activity Diagram for Use Case
Create Customer Account
Note: this shows flow of activities only

Compare with “Flow of Activities” in Use Case Description

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

System Sequence Diagram (SSD)

  • A UML sequence diagram
  • Special case for a sequence diagram
  • Only shows actors and one object
  • The one object represents the complete system
  • Shows input & output messaging requirements for a use case
  • Actor, :System, object lifeline
  • Messages

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

System Sequence Diagram (SSD)
Notation

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Message Notation

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

SSD Message Examples with Loop Frame

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

SSD Message Examples

Opt Frame (optional)


Alt Frame
(if-else)

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Steps for Developing SSD

Identify input message

  • See use case flow of activities or activity diagram

Describe the message from the external actor to the system using the message notation

  • Name it verb-noun: what the system is asked to do
  • Consider parameters the system will need

Identify any special conditions on input messages

  • Iteration/loop frame
  • Opt or Alt frame

Identify and add output return values

  • On message itself: aValue:= getValue(valueID)
  • As explicit return on separate dashed line

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

SSD for Create customer account Use case

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

State Machine Diagram

  • State machine diagram
  • A UML diagram showing the life of an object in states and transitions
  • State
  • A condition during an object’s life when it satisfies some criterion, performs some action, or waits for an event
  • Transition
  • The movement of an object from one state to another state
  • Action Expression
  • A description of activities performed as part of a transition

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

State Machine Diagram (continued)

  • Pseudo state
  • The starting point of a state machine diagram (black dot)
  • Origin state
  • The original state of an object before transition
  • Destination state
  • The state to which the object moves after the transition
  • Guard condition
  • A true false test to see whether a transition can fire

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

State Machine Diagram
for a Printer

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Advanced Concept of State Machine: Composite States

  • State containing other states and transitions
  • Printer can be On and either Idle or Working

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Advanced Concept of State Machine: Concurrent Paths

  • Multiple paths in composite state
  • Printer On paths are independent

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Steps for Developing State Machine Diagram

Review the class diagram and select classes that might require state machine diagrams

For each class, make a list of status conditions (states) you can identify

Begin building diagram fragments by identifying transitions that cause an object to leave the identified state

Sequence these states in the correct order and aggregate combinations into larger fragments

Review paths and look for independent, concurrent paths

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Steps for Developing State Machine Diagram (continued)

Look for additional transitions and test both directions

Expand each transition with appropriate message event, guard condition, and action expression

Review and test the state machine diagram for the class

  • Make sure state are really state for the object in the class
  • Follow the life cycle of an object coming into existence and being deleted
  • Be sure the diagram covers all exception condition
  • Look again for concurrent paths and composite states

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

State Machine Diagram for Sale Object

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Extending and Integrating Requirements Models

  • Use cases
  • Use case diagram
  • Use case description
  • Activity diagram
  • System sequence diagram (SSD)
  • Domain Classes
  • Domain model class diagram
  • State machine diagram

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Integrating Requirements Models

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Summary

  • Chapters 3 and 4 identified and modeled the two primary aspects of functional requirements: use cases and domain classes
  • This chapter focuses on additional techniques and models to extend the requirements models to show more detail
  • Fully developed use case descriptions provide information about each use case, including actors, stakeholders, preconditions, post conditions, the flow of activities and exceptions conditions
  • Activity diagrams (first shown in Chapter 2) can also be used to show the flow of activities for a use case

Systems Analysis and Design in a Changing World, 6th Edition

Systems Analysis and Design in a Changing World, 6th Edition

*

Summary (continued)

  • System sequence diagrams (SSDs) show the inputs and outputs for each use case as messages
  • State machine diagrams show the states an object can be in over time between use cases
  • Use cases are modeled in more detail using fully developed use case descriptions, activity diagrams, and system sequence diagrams
  • Domain classes are modeled in more detail using state machine diagrams
  • Not all use cases and domain classes are modeled at this level of detail. Only model when there is complexity and a need to communicate details

Systems Analysis and Design in a Changing World, 6th Edition