The Traditional Approach to Requirements

Slides:



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

CSC 123 Systems Analysis & Design
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
Chapter 7 Structuring System Process Requirements
Chapter 7 Structuring System Process Requirements
Chapter 4 Enterprise Modeling.
Chapter 4.
Systems Analysis and Design 9th Edition
Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall Process Specifications and Structured Decisions Systems Analysis and Design, 8e Kendall.
Chapter 9 Describing Process Specifications and Structured Decisions
Chapter 9 Describing Process Specifications and Structured Decisions Systems Analysis and Design Kendall & Kendall Sixth Edition © 2005 Pearson Prentice.
Chapter 9 Describing Process Specifications and Structured Decisions
PROCESS MODELING Transform Description. A model is a representation of reality. Just as a picture is worth a thousand words, most models are pictorial.
Data Flow Diagramming. Data Flow Diagrams Data Flow Diagrams are a means to represent data transformation processes within an information system.
Data and Process Modeling
Kendall & KendallCopyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 9 Kendall & Kendall Systems Analysis and Design, 9e Process Specifications.
Systems Analysis and Design in a Changing World, 6th Edition
Modeling the Processes and Logic
Chapter 4.
SE 555 Software Requirements & Specification Requirements Analysis.
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Process Modelling Using Data Flow Diagrams - Building and Levelling Them; Process Modelling Using Function Decomposition CSE Information Systems.
Systems Analysis I Data Flow Diagrams
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.
Kendall & KendallCopyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall 9 Kendall & Kendall Systems Analysis and Design, 9e Process Specifications.
Traditional Approach to Requirements Data Flow Diagram (DFD)
Systems Analysis and Design 10th Edition
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.
staffs.ac.uk Process Model. staffs.ac.uk Contents Provide definitions Explain the components and representations Introduce a step.
Modeling Systems Requirements: Events and Things.
Systems Analysis and Design in a Changing World, Fifth Edition
2 Approaches to Requierements Engineering Reference: Systems Analysis and Design in a Changing World, 3 rd Edition, chapter 2 and chapter 6.
Chapter 1: Data Flow Diagram Structuring System Process Requirements
Chapter 6 The Traditional Approach to Requirements
Data flow diagrams.
Structuring System Process Requirements. Learning Objectives Understand the logical modeling of processes by studying examples of data flow diagrams (DFDs).
Data and Process Modeling
Traditional Approach to Requirements
Systems Analysis and Design in a Changing World, Fifth Edition
Functional Modeling Joseph Valacich, Joey George and Jeff Hoffer, Essentials of System Analysis and Design, 4 th edition, Prentice Hall, 2009.
Chapter 9 Describing Process Specifications and Structured Decisions
Irwin/McGraw-Hill Copyright © 2000 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS5th Edition.
Phase 2: Systems Analysis
Chapter 7 Structuring System Process Requirements
Chapter 7 Structuring System Process Requirements
PHASE 2: SYSTEMS ANALYSIS
Chapter 11 Describing Process Specifications and Structured Decisions Systems Analysis and Design Kendall and Kendall Fifth Edition.
Describing Process Specifications and Structured Decisions Systems Analysis and Design, 7e Kendall & Kendall 9 © 2008 Pearson Prentice Hall.
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
CHAPTER 5 1 DATA AND PROCESS ANALYSIS. Chapter Objectives Describe data and process modeling concepts and tools, including data flow diagrams, a data.
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
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.
Copyright © 2011 Pearson Education Process Specifications and Structured Decisions Systems Analysis and Design, 8e Kendall & Kendall Global Edition 9.
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 5 Modeling the Processes and Logic.
DATA FLOW DIAGRAMS.
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 System Development
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 6 The Traditional Approach to Requirements.
Chapter 11 Describing Process Specifications and Structured Decisions
Presentation transcript:

The Traditional Approach to Requirements

Overview What the system does what an event occurs: activities and interactions Traditional structured approach to representing activities and interactions Diagrams and other models of the traditional approach RMO customer support system example shows how each model is related How traditional and IE approaches and models can be used together to describe system

Traditional and Object-Oriented Views of Activities

Requirements Models for the Traditional and OO Approaches

Data Flow Diagrams Graphical system model that shows all main requirements for an IS in one diagram External entity Data flow Processes Data storage Easy to read and understand with minimal training

Data Flow Diagram Symbols

DFD Fragment from the RMO Case

DFD Integrates Event Table and ERD

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

Layers of DFD Abstraction

Context Diagrams DFD that summarizes all processing activity 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 Doesn’t show data stores because they are considered to be within the system scope

DFD Fragments Created for each event in the event table Represents system response to one event within a single process symbol Self contained model Focuses attention on single part of system Shows only data stores required to respond to events

DFD Fragments for Course Registration System

Event-Partitioned System Model DFD to model system requirements using single process for each event in system or subsystem Decomposition of the context level diagram Sometimes called diagram 0 Used primarily as a presentation tool Decomposed into more detailed DFD fragments

Combining DFD Fragments

Context Diagram for RMO Customer Support System

RMO Subsystems and Events

Context Diagram for RMO Order-Entry Subsystem

DFD Fragments for RMO Order-Entry System

Decomposing DFD Fragments Sometimes DFD fragments need to be explored in more detail Broken into subprocesses with additional detail DFD numbering scheme: Does not equate to subprocess execution sequence It is just a way for analyst to divide up work

Order-Entry Subsystem

Physical and Logical DFDs Logical model Does not tell how system is implemented Physical model Describes assumptions about implementation technology Developed in last stages of analysis or in early design

Detailed Diagram for Create New Order

Physical DFD for scheduling courses

List of Activities

Stock Log

Current Logical System and New Logical System

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

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

Consistency Rules All data that flows into a process must: Flow out of the process or Be used to generate data that flow 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

Unnecessary Data Input: Black Hole

Process with Impossible Data Output: Miracle

Process with Unnecessary Data Input

Process with Impossible Data Output

Incorrect and Correct Ways to Draw DFD

Incorrect and Correct Ways to Draw DFD

Incorrect and Correct Ways to Draw DFD

Balancing DFDs When decomposing a DFD, you must conserve inputs to and outputs from a process at the next level of decomposition This is called balancing

Unbalanced Set Of Data Flow Diagrams

Balancing DFDs We can split a data flow into separate data flows on a lower level diagram

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

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

Data Flow Definition- Example New-Order = Customer-Name + Customer-Address + Credit-Card-Information + {Item-Number + Quantity) N 1

Data Store Definitions A data store on the DFD represents a data entity on the ERD

Data Element Definitions Data type description e.g. string, integer, floating point, Boolean Sometimes very specific Length of element Maximum and minimum values Data dictionary – repository for definitions of data flows, data stores, and data elements

A Data Structure for a Data Flow ORDER= ORDER NUMBER + ORDER DATE+ [ PERSONAL CUSTOMER NUMBER, CORPORATE ACCOUNT NUMBER]+ SHIPPING ADDRESS=ADDRESS+ (BILLING ADDRESS=ADDRESS)+ 1 {PRODUCT NUMBER+ PRODUCT DESCRIPTION+ QUANTITY ORDERED+ PRODUCT PRICE+ PRODUCT PRICE SOURCE+ EXTENDED PRICE } N+ SUM OF EXTENDED PRICES+ PREPAID AMOUNT+ (CREDIT CARD NUMBER+EXPIRATION DATE) (QUOTE NUMBER) ADDRESS= (POST OFFICE BOX NUMBER)+ STREET ADDRESS+ CITY+ [STATE, MUNICIPALITY]+ (COUNTRY)+ POSTAL CODE ENGLISH ENTERPRETATION An instance of ORDER consists of: ORDER NUMBER and ORDER DATE and Either PERSONAL CUSTOMER NUMBER or CORPORATE ACCOUNT NUMBER and SHIPPING ADDRESS (which is equivalent to ADDRESS) and optionally: BILLING ADDRESS (which is equivalent to ADDRESS) and one or more instances of: PRODUCT NUMBER and PRODUCT DESCRIPTION and QUANTITY ORDERED and PRODUCT PRICE and PRODUCT PRICE SOURCE and EXTENDED PRICE and SUM OF EXTENDED PRICES and PREPAID AMOUNT and optionally: both CREDIT CARD NUMBER and EXPIRATION DATE An instance of ADDRESS consists of: optionally: POST OFFICE BOX NUMBER and STREET ADDRESS and CITY and Either STATE or MUNICIPALITY and optionally: COUNTRY and POSTAL CODE

Data Flow Diagram and Process Specifications

Goal of Creating Process Specifications Reduce process ambiguity. Obtain a precise description of what is accomplished. Validate the system design, including data flow diagrams and the data dictionary.

Process Specification Format Process specifications link the process to the DFD and the data dictionary. The following information should be entered: The process number, which must match the process ID on the data flow diagram. This allows an analyst to work or review any process and easily locate the data flow diagram containing the process. The process name, the same as displays within the process symbol on the DFD. A brief description of what the process accomplishes. A list of input and output data flow, using the names found on the data flow diagram. Data names used in the formulae or logic should match the data dictionary, for consistency and good communication. A description of the process logic.

Process Specification Form

Structured English Method of writing process specifications Combines structured programming techniques with narrative English Well suited to 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

Decision Tables Can summarize complex decision logic better than structured English Incorporates logic into the table or tree structure to make descriptions more readable

Decision Table Format

A Simple Decision Table

A Simple Decision Table

Constructing a Decision Table Identify each decision variable and its allowable value (or value range) Compute the number of decision variable combinations as the product of the number of values of each decision variable. Construct a table with one more columns than the number of decision variable combinations computed in step 2. The table should have a row for each decision variable and a row for each process action or computation. Assign the decision variable with the fewest values to the first row of the table. Put the decision variable name in the 1st column. Divide the remaining columns into sets of column for each decision variable value

Constructing a Decision Table (con’t) Choose the next decision variable with the fewest values for the 2nd row. Put the variable’s name in the 1st column. Compute the number of column groups as the product of the number of values of this variable and all the variables above it in the table. Divide the remaining columns into the computed number of groups, and insert values in a regular pattern. Continue inserting rows as instructed step 5 until all decision variables have been included in the table. Add a row for each calculation or action. For each calculation cell, insert the appropriate constant value or formula for the combination of decision variable values that appear above the cell in the same column. For each action cell, place a check mark in the cell if that action is performed when the decision variables have the values shown in the column above the cell.

Constructing a Decision Table- Example Decision variables year to date (YTD) purchases: 2 ranges (< $250 and >= $250 number of items ordered: 2 ranges (<= 3 and >=4) delivery day: 3 values (next day, 2nd day, and 7th day) Combination values: 2x2x3 = 12 YTD purchases and number of items ordered are the fewest value, chose YTD purchases: 2 values Create 2 groups of 12/2 = 6 columns and label one for each possible value Next row, number of items => 4 group of 3 columns Insert the value ranges for number of items into the column groups

Constructing a Decision Table- Example Delivery day, we simply insert the value of delivery date into individual column Insert the row containing formulas and values for the shipping charges Each cell contains a value of formula for the combination of decision variable values in the column above

Reduced Decision Table

Decision Tables Four main problems that can occur in developing decision tables: Incompleteness. Impossible situations. Contradictions. Redundancy.

Impossible Situation

Redundancy and Contradictions

Eliminating Repetitious Rules Requiring the Same Action

Modeling Logic with Decision Trees A graphical representation of a decision situation Decision situation points are connected together by arcs and terminate in ovals Two main components Decision points represented by nodes Actions represented by ovals Read from left to right Each node corresponds to a numbered choice on a legend All possible actions are listed on the far right

Generic Decision Tree

Decision Tree for Calculating Shipping Charges

Components of a Traditional Analysis Model

Summary Data flow diagrams (DFDs) 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 Many types of DFDs: context diagrams, DFD fragments, subsystem DFDs, event-partitioned DFDs, and process decomposition DFDs

Summary (continued) Each process, data flow, and data store requires detailed definition Analyst may define processes as structured English process specification, decision table, decision tree, or process decomposition DFD Process decomposition DFDs used when internal process complexity is great Data flows defined by component data elements and their internal structure