Traditional Approach to Requirements

Slides:



Advertisements
Similar presentations
BIS 360 – Lecture Seven Process Modeling (Chapter 8)
Advertisements

Chapter 7 Structuring System Process Requirements
Using Data Flow Diagrams
Chapter 7 Structuring System Process Requirements
Using Dataflow Diagrams
© 2005 by Prentice Hall 7-1 Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey.
Chapter 7 Structuring System Process Requirements
Chapter 10 The Traditional Approach to Design
Chapter 9: The Traditional Approach to Design Chapter 10 Systems Analysis and Design in a Changing World, 3 rd Edition.
Chapter 4 Enterprise Modeling.
Chapter 4.
Systems Analysis and Design 9th Edition
Chapter 7 Using Data Flow Diagrams
Jump to first page Chapter 2 System Analysis - Process Modeling.
Chapter 7 Using Data Flow Diagrams
Structuring System Requirements: Process Modeling
Data and Process Modeling
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 8 Structuring.
Chapter 9 Using Data Flow Diagrams
Systems Analysis and Design in a Changing World, 6th Edition
L ECTURE 9 – PROCESS MODELLING PART 1 Data Flow Diagrams for Process Modelling Multi-level Data Flow Diagrams Logical Vs Physical DFDs Steps to Construct.
Chapter 4.
Systems Analysis I Data Flow Diagrams
DATA FLOW DIAGRAMS IT 155.
Process Modeling SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
Chapter 7 Structuring System Process Requirements
6 Systems Analysis and Design in a Changing World, Fourth Edition.
Traditional Approach to Requirements Data Flow Diagram (DFD)
Chapter 6: The Traditional Approach to Requirements
System Analysis Overview Document functional requirements by creating models Two concepts help identify functional requirements in the traditional approach.
Chapter 8 Structuring System Requirements: Process Modeling
Systems Analysis and Design in a Changing World, Fifth Edition
PROCESS MODELING Chapter 8 - Process Modeling
2 Approaches to Requierements Engineering Reference: Systems Analysis and Design in a Changing World, 3 rd Edition, chapter 2 and chapter 6.
The Traditional Approach to Requirements
Chapter 1: Data Flow Diagram Structuring System Process Requirements
Chapter 6 The Traditional Approach to Requirements
Structuring System Process Requirements. Learning Objectives Understand the logical modeling of processes by studying examples of data flow diagrams (DFDs).
Data and Process Modeling
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Phase 2: Systems Analysis
Chapter 7 Structuring System Process Requirements
Computer System Analysis Chapter 8 Structuring System Requirements: Process Modeling Dr. Sana’a Wafa Al-Sayegh 1 st quadmaster University of Palestine.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 8 Structuring.
Chapter 7 Structuring System Process Requirements
Chapter 7 Using Data Flow Diagrams
10 ITK261 The traditional approach to design Reading: Chapter 10 Oct 9, 11.
6 Systems Analysis and Design in a Changing World, Fifth Edition.
1 6 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 6 The Traditional Approach to Requirements.
Chapter 6 Structuring System Requirements: Process Modeling
Chapter 4 enterprise modeling
Systems Analysis and Design in a Changing World, Fourth Edition
Modern Systems Analysis and Design Fifth Edition
Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Systems Analysis and Design 8th Edition
Systems Analysis and Design 8th Edition
1Lecture 8 Introduction to Systems Analysis l Objectives –Explain how systems analysis relates to business needs, problems, and opportunities –List and.
6 Systems Analysis and Design in a Changing World, Fourth Edition.
© 2005 by Prentice Hall Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F. George.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
DATA FLOW DIAGRAMS.
C_ITIP211 LECTURER: E.DONDO. Unit 3 : PROCESS MODELING.
MIS 360: System Analysis and Design Dr. Qasem Al-Radaideh Department of Computer Information Systems Faculty of Information Technology Yarmouk University.
7-1 Chapter 7 Structuring System Process Requirements Modern Systems Analysis and Design Fourth Edition.
Systems Analysis and Design in a Changing World, Fourth Edition
Business Process Modeling What is a process model? – A formal way of representing how a business system operates. – Illustrates the activities that are.
© 2012 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from the U.S.
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 6 The Traditional Approach to Requirements.
Presentation transcript:

Traditional Approach to Requirements ITEC 3010 “Systems Analysis and Design, I” LECTURE 6: Traditional Approach to Requirements [Prof. Peter Khaiter]

Lecture Outline Traditional Approach vs. OOA Data Flow Diagrams (DFDs) DFD and Levels of Abstraction Context Diagrams ‏ DFD Fragments Physical and Logical DFDs Evaluating DFD Quality Documentation of DFD Components Locations and Communication Through Networks

Traditional Approach vs. OOA Two approaches differ in the way the system is modeled and implemented: • Traditional approach: – views a system as a collection of processes (like computer programs, a set of instructions that execute in sequence) – when the process executes it interacts with data (reads data values and then writes data values back to the data file – emphasizes processes, data, inputs/outputs • Object Oriented approach (OO): – views a system as a collection of interacting objects which are capable of their own behavior (called methods) which allow the objects to interact with each other and with people using the system – there are NO conventional processes and data files per se, just interacting objects

Traditional Approach vs. OO Approach

Requirements for the Traditional and OO Approaches

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 (only 5 symbols used) DFD integrates processing triggered by events (event table) with the data entities modeled by ERD

DFD Symbols The square is an external agent (a person or organization, outside the boundary of a system that provides data inputs or accepts data outputs) The rectangle with rounded corners is a process (named “Look up item available” and can be referred to by its number, 1) A process defines rules (algorithms or procedures) for transforming inputs into outputs The lines with arrows are data flows (represents movement of data). Slide shows two data flows between Customer and process 1: a process input “Item inquiry” and process output named “Item availability details” The flat three-sided rectangle is a data store (a file or part of a database that stores information about data entity)

Data Flow Diagram Symbols

DFD Fragment Showing Use Case Look Up Item Availability from the RMO

DFD Integrates Event Table and ERD

DFD and Levels of Abstraction DFD is a modeling technique that breaks the system into a hierarchical set of increasingly more detailed models DFD may reflect the processing at either a higher level (more general view of the system) or at lower level (a more detailed view of one process) These different views of the system (higher level versus low level) creates the levels of abstraction 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

Layers of DFD Abstraction for Course Registration System

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

Context Diagrams for a Course Registration System

Notes on Context Diagrams • Useful for showing system boundaries (represents the system scope within the single process plus external agents) • External agents that supply or receive data from the system are outside the system scope • Data stores are not usually shown in the context diagram since they are considered to be within the system scope • It is the highest level of DFD • Context diagram does not show any details of what takes place within the system

Context Diagrams for RMO CSS

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

Three Separate DFD Fragments for Course Registration System

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 Shows the entire system on a single DFD (in greater detail than on the context diagram) Sometimes called “diagram 0” Used primarily as a presentation tool Decomposed into more detailed DFD fragments

Combining DFD Fragments to Create Event- Partitioned System Model

Layers of DFD Abstraction

RMO Subsystems and Use Cases/Activities from Event Table

Context Diagram for RMO Order-Entry Subsystem

Five Separate DFD Fragments for RMO Order-Entry Subsystem

The event-partitioned model of the Order-Entry subsystem (diagram 0)

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 DFD numbering scheme Hierarchical decomposition DFD Fragment 2 is decomposed into Diagram 2 Diagram 2 has processes 2.1, 2.2, 2.3, 2.4 –four steps to complete the activity

Detailed DFD for Create new order DFD fragment

Hierarchy of the DFDs • The top most - context diagram (entire system as one process), which breaks down to the subsystem diagram (one process per subsystem) • The subsystem diagram is, in turn, decomposed into a set of the event-partitioned subsystem diagrams • There is no single diagram 0. Instead, there is an event-partitioned DFD for each of the subsystems • Each event-partitioned DFD is a diagram 0 for a single subsystem

Hierarchy of the DFDs

FIGURE 6-20 Incorrect and correct way to draw DFD.

Physical and Logical DFDs Logical model Assumes implementation in perfect technology Does not tell how system is implemented Physical model Describes assumptions about implementation technology Developed in last stages of analysis or in early design E.g., the technology assumption is embedded in the name of process 1.1 “Making copies for department chairs” – it is a manual task, which implies that the data store “Old schedule” and the data flows into and out of process 1.1 are papers, etc.

Physical DFD for Scheduling Courses

Evaluating DFD Quality Readable Internally consistent and balanced Accurately represents system requirements Reduces information overload – rule of 7 +/- 2 Single DFD should not have more than 7 +/-2 processes No more than 7 +/- 2 data flows should enter or leave a process or data store in a single DFD Minimizes required number of interfaces

Data Flow Consistency Problems Differences in data flow content between a process and its decomposition Data outflows without corresponding inflows Data inflows without corresponding outflows Results in unbalanced DFDs

Black Hole and Miracle black hole, i.e. a process with a data input that is never used to produce a data input. The following rules help to avoid the black holes:        - All data that flow into a process must flow out of the process or be used to generated data that flow out of the process         - All data that flow out of a process must have flowed into the process or have been generated from data that flowed into the process Miracle - a process with a data output that is created out of nothing ( “miraculously appears”)

Unnecessary Data Input: Black Hole

Process with Impossible Data Output: a Miracle

Process with Unnecessary Data Input

Process with Impossible Data Output

Documentation of DFD Components DFDs show three types of internal system component: processes, data flows and data stores The details of each component need to be described 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

Process Descriptions • Each process on a DFD must be formally defined • There are several options for process definition including decomposition. In a process of decomposition, a higher-level process is formally defined by a DFD that contains lover-level processes, which, in turn, may be further decomposed into even lower-level DFDs. Eventually a point will be reached when a process becomes so simple that it can adequately be described by another process description method, i.e. without next lower-level DFD. • These description methods include: - Structured English - Decision tables - Decision trees • These models describe the process as an algorithm.

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

Structured English Example

Process 2.1 and Structured English Process Description

A structured English process description for calculating shipping charges

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

Decision Table for Calculating Shipping Charges

Decision Tree for Calculating Shipping Charges

A Decision Table with Multiple Action Rows

Data Flow Definitions Data flow is a collection of data elements Data flow definition is a textual description of data flow’s content and internal structure Lists all the elements, e.g. a “New Order” data flow consists of Customer–Name, Customer-Address, Credit- Card-Information, Item-Number and Quantity Often coincide with attributes of data entities included in ERD plus computed values Algebraic notion is alternative to the list Describes data elements on data flow plus data structure

List and Algebraic Notation for Data Flow Definition

RMO Products and Items Report

Data Flow Definition for RMO Products and Items Control Break Report

Data Element Definitions Data type description String, integer, floating point, Boolean Sometimes very specific written description e.g., special codes (e.g. code A means ship immediately, code B – hold for one day and code C – hold shipment pending confirmation) Length of element (usually for strings) Maximum and minimum values (for numeric values) Data dictionary – repository for definitions of data flows, data stores, and data elements

Data Element Definition Examples

Data Store Definitions A data store on the DFD represents a data entity on the ERD (so, no separate definition is needed, just a note referring to the ERD for details) If a data store are not linked to an ERD, a definition is provided as a collection of elements (like did for data flows)

Components of a Traditional Analysis Model Four components of a traditional analysis model are – Data flow diagrams – Entity-relationship diagram – Process definitions – Data definitions They form an interlocking set of specifications for system requirements DFD shows highest-level view of the system Other components describe some aspect of DFD These models were created in the 1970’s and 1980’s as a part of the structured analysis methodology

Components of a Traditional Analysis Model

Locations and Communication Through Networks Physical information needed during analysis Number of user locations Processing and data access requirements at various locations Volume and timing of processing and data access requests Needed to make initial design decisions such as Distribution of computer systems, application software, database components, network capacity

Gathering Location Information Identify locations where work is to be performed Draw location diagram – a map that identifies all of the processing locations of a system (business offices, warehouses, manufacturing facilities) List functions performed by users at each location Build activity-location matrix - a table that describes the relationship between processes and the locations where they are performed Rows are system activities from event table Columns are physical locations Build activity-data (CRUD) matrixis a table that describes stored data entities, the locations from which they are accessed and the nature of the access (i.e. which activities require access to the data). Source of this information is: - the DFD fragments (traditional approach) and - sequence diagrams (OO approach) CRUD – create, read, update, and delete

RMO Location diagram

RMO Activity-Location Matrix

RMO Activity-Data Matrix (CRUD)‏

Readings Today’s lecture: Chapter 6 – “The Traditional Approach to Requirements” For next lecture: Chapter 7 – “The Object-Oriented Approach to Requirements” Thank you !!!