system analysis overview

62
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach and object- oriented approach Events that trigger use cases Things in the users’ work domain

Upload: juliana-ortiz

Post on 02-Jan-2016

26 views

Category:

Documents


0 download

DESCRIPTION

System Analysis Overview. Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach and object-oriented approach Events that trigger use cases Things in the users’ work domain. Models and Modeling. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: System Analysis Overview

System Analysis Overview Document functional requirements by

creating models

Two concepts help identify functional requirements in the traditional approach and object-oriented approach

Events that trigger use cases

Things in the users’ work domain

Page 2: System Analysis Overview

Models and Modeling Analyst describes information system

requirements using a collection of models Complex systems require more than one type of

model Models represent some aspect of the system

being built Process of creating models helps analyst clarify

and refine design Models assist communication with system users

Page 3: System Analysis Overview

Why modeling? Learning from modeling process Reduce complexity by abstraction Remembering the details Communicating with other team

members, users, and stakeholders Documenting what was done for

future maintenance/enhancement

Page 4: System Analysis Overview

Types of Models Different types of models are used in

information systems development Mathematical – formulas that describe

technical aspects of the system Descriptive – narrative memos, reports, or

lists that describe aspects of the system Graphical – diagrams and schematic

representations of some aspect of the system

Page 5: System Analysis Overview

Events

Business events trigger elementary business processes (EBPs)

EBPs are at correct level of analysis for use cases

Business events are memorable, can be described, and occur at a specific time and place

Page 6: System Analysis Overview

Sequence of “Transactions” for One Specific Customer Resulting in Many Events

Page 7: System Analysis Overview

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

Page 8: System Analysis Overview

Events Affecting a Charge Account Processing System

Page 9: System Analysis Overview

Events modeling Identify business events to decompose system

into activities/use cases Use cases (activities) are identified from user

goals and business events that trigger elementary business processes

Event decomposition is, therefore, used by Traditional approach to identify activities OO approach to identify use cases

Event table records event, trigger, source, use case, response, and destination

Page 10: System Analysis Overview

Information about Each Event

in an Event Table

Page 11: System Analysis Overview

Things “Things” are what user deals with and

system remembers, such as an order placed by a customer

Analysts identify these types of things by considering each use case in the event table What things does the system need to know

about and store information about?

Page 12: System Analysis Overview

Types of Things

Page 13: System Analysis Overview

Modeling things 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

Page 14: System Analysis Overview

Traditional and OO Approach

Page 15: System Analysis Overview

Components of a Traditional Analysis Model

Page 16: System Analysis Overview

Data Flow Diagrams (DFDs) Graphical system model that shows all

main requirements for an IS in one diagram Inputs/outputs Processes Data storage

Easy to read and understand with minimal training

Page 17: System Analysis Overview

Data Flow Diagram Symbols

Page 18: System Analysis Overview
Page 19: System Analysis Overview
Page 20: System Analysis Overview

DFD Integrates Event Table and ERD

Page 21: System Analysis Overview

DFD and Levels of Abstraction Data flow diagrams (DFDs) are

decomposed into additional diagrams to provide multiple levels of detail

Higher-level diagrams provide general views of system

Lower-level diagrams provide detailed views of system

Differing views are called levels of abstraction

Page 22: System Analysis Overview

Layers of DFD Abstraction for Course Registration

Page 23: System Analysis Overview

Context Diagrams DFD that summarizes all processing

activity for the system or subsystem Highest level (most abstract) view of

system Shows system boundaries System scope is represented by a

single process, external agents, and all data flows into and out of the system

Page 24: System Analysis Overview

Context Diagram

External entity

External entity

External entity

The System

Data Flow

Data Flow

Data Flow

Data Flow

Page 25: System Analysis Overview
Page 26: System Analysis Overview
Page 27: System Analysis Overview
Page 28: System Analysis Overview

DFD Fragments Created for each use case in the event

table Represent system response to one

event within a single process symbol Self-contained models Focus attention on single part of system Show only data stores required in the

use case

Page 29: System Analysis Overview

Three Separate DFD Fragments for Course

Registration System

Page 30: System Analysis Overview

Event-Partitioned System Model

DFD to model system requirements using single process for each use case/activity in system or subsystem

Combines all DFD fragments together to show decomposition of the context-level diagram

Sometimes called “diagram 0” Used primarily as a presentation tool Decomposed into more detailed DFD fragments

Page 31: System Analysis Overview

Combining DFD Fragments to Create Event- Partitioned System Model

Page 32: System Analysis Overview

Decomposing DFD Fragments

Most DFD fragments can be further described using structured English

Sometimes DFD fragments need to be diagrammed in more detail

Decomposed into subprocesses in a detailed DFD

Page 33: System Analysis Overview

Layers of DFD Abstraction for Course Registration

Page 34: System Analysis Overview

DFD Practice Precision tools sells a line of high-quality

woodworking tools. When customers place orders on the company’s web site, the system checks to see if the items are in stock, issues a status message to the customer, and generates a shipping order to the warehouse, which fills the order. When the order is shipped, the customer is billed. The system also produces various reports.

Page 35: System Analysis Overview

DFD Practice Draw a context diagram

System scope is represented by a single process, external agents, and all data flows into and out of the system

Draw Level-0 diagram Identify the major use cases Draw DFD fragment for each use case Combine DFD fragments together at the

same level of detail

Page 36: System Analysis Overview

Context Diagram

Page 37: System Analysis Overview

Five Separate DFD Fragments

Page 38: System Analysis Overview

Detailed DFD for Create new order

Page 39: System Analysis Overview

Evaluating DFD Quality Readable Internally consistent and balanced Accurately represents system

requirements Reduces information overload –

rule of 7 +/- 2 Minimizes required number of

interfaces

Page 40: System Analysis Overview

Data Flow Consistency Problems Differences in data flow content

between a process and its process decomposition

Data outflows without corresponding inflows

Data inflows without corresponding outflows

Results in unbalanced DFDs

Page 41: System Analysis Overview

Consistency Rules All data that flows into a process must

Flow out of the process, or Be used to generate data that flows out of

the process All data that flows out of a process

must Have flowed into the process, or Have been generated from data that

flowed into the process

Page 42: System Analysis Overview

Unnecessary Data Input: Black Hole

Page 43: System Analysis Overview

Process with Impossible Data Output: A Miracle

Page 44: System Analysis Overview

Process with Unnecessary Data Input

Page 45: System Analysis Overview

Process with Impossible Data Output

Page 46: System Analysis Overview

Documentation of DFD Components

Lowest-level processes need to be described in detail

Data flow contents need to be described Data stores need to be described in terms

of data elements Each data element needs to be described Various options for process definition exist

Page 47: System Analysis Overview

Structured English

Method of writing process specifications Combines structured programming

techniques with narrative English Well-suited for lengthy sequential

processes or simple control logic (single loop or if-then-else)

Ill-suited for complex decision logic or few (or no) sequential processing steps

Page 48: System Analysis Overview

Structured English Process Description

Page 49: System Analysis Overview
Page 50: System Analysis Overview

Decision Tables and Decision Trees Can summarize complex decision logic better than

structured English Incorporate logic into the table or tree structure to

make descriptions more readable

Page 51: System Analysis Overview

Decision Tables

Page 52: System Analysis Overview

Decision Tree

Page 53: System Analysis Overview

Decision Tables for Calculating Shipping Charges

Page 54: System Analysis Overview

Decision Tree for Calculating Shipping Charges

Page 55: System Analysis Overview

Data Flow Definitions Textual description of data flow’s content and internal structure Often coincide with attributes of data entities included in ERD plus

computed values Algebraic notion describes data elements on data flow plus data

structure

Page 56: System Analysis Overview

Data Element Definitions Data type description

String, integer, floating point, Boolean Sometimes very specific written

description Length of element Maximum and minimum values Data dictionary – repository for

definitions of data flows, data stores, and data elements

Page 57: System Analysis Overview

Data Element Definition

Page 58: System Analysis Overview

Physical and Logical DFDs Logical model

Assumes implementation in ideal situation Does not tell how system is implemented

Physical model Describes assumptions about

implementation technology Developed in last stages of analysis or in

early design Current physical -> Current logical -> New

logical -> New physical

Page 59: System Analysis Overview

Summary Data flow diagrams (DFDs) are used in

combination with event table and entity-relationship diagram (ERD) to model system requirements

DFDs model system as set of processes, data flows, external agents, and data stores

DFDs easy to read – graphically represent key features of system using small set of symbols

Page 60: System Analysis Overview

Assignment 2 Draw a context diagram of the proposed

student housing system Draw a level-0 data flow diagram.

Specify the main functions of the system (data flow, process, and data store).

Draw a level-1 data flow diagram for the process of student searching for houses.

Use of drawing tools

Page 61: System Analysis Overview

http://www.homes4students.ca/add_a_listing.html

Page 62: System Analysis Overview

http://www.homes4students.ca/ontario.html