chapter 7: determining system requirements
DESCRIPTION
MSIS 5653 Advanced Systems Development Dursun Delen, Ph.D. Department of Management Oklahoma State University. CHAPTER 7: Determining System Requirements. 1.1. Learning Objectives. Learn the classical and modern approaches to Requirements Determination - PowerPoint PPT PresentationTRANSCRIPT
CHAPTER 7:CHAPTER 7:Determining System RequirementsDetermining System Requirements
1.1
MSIS 5653MSIS 5653Advanced Systems DevelopmentAdvanced Systems Development
Dursun Delen, Ph.D.Dursun Delen, Ph.D.Department of ManagementDepartment of ManagementOklahoma State UniversityOklahoma State University
D. Delen MSIS 5653 – Advanced Systems Development
Learning ObjectivesLearning Objectives Learn the classical and modern approaches to
Requirements Determination Describe options for designing and conducting
interviews and develop a plan for conducting an interview to determine system requirements
Design, distribute, and analyze questionnaires to determine system requirements
Explain advantages and pitfalls of observing workers and analyzing business documents to determine requirements
7.3
D. Delen MSIS 5653 – Advanced Systems Development
Learning ObjectivesLearning Objectives Explain how computing can provide support for
requirements determination (GSS) Learn about Joint Application Design (JAD) Use prototyping during requirements
determination Select the appropriate methods to discover
system requirements Apply requirements determination to Internet
applications
7.4
D. Delen MSIS 5653 – Advanced Systems Development
Determining System Determining System Requirements in SDLCRequirements in SDLC
D. Delen MSIS 5653 – Advanced Systems Development
Performing Requirements Performing Requirements DeterminationDetermination
Organizational needs derive the requirements
Gather information on what system should do from many sources
People Reports Forms Procedures
7.6
D. Delen MSIS 5653 – Advanced Systems Development
Performing Requirements Performing Requirements DeterminationDetermination
Characteristics for gathering requirements Impertinence
Question everything Impartiality
Find the best organizational solution Relaxation of constraints Attention to detail Reframing
View the organization in new ways
7.7
D. Delen MSIS 5653 – Advanced Systems Development
Deliverables and OutcomesDeliverables and OutcomesTypes of deliverables: Information collected from users Existing documents and files Computer-based information
Understanding of organizational components Business objective Information needs Rules of data processing Key events with respect to changes on the data values
7.8
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Interviewing and Listening Gather facts, opinions and speculations Observe body language and emotions Guidelines
Plan Checklist Appointment
Be neutral Listen Seek a diverse view
7.9
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Interviewing (Continued) Interview Questions
Open-Ended No pre-specified answers
Close-Ended Respondent is asked to choose from a set of specified responses T/F, M/C, Rating, and Ranking
Additional Guidelines Do not phrase questions in ways that imply a wrong or right
answer Listen very carefully to what is being said Type up notes within 48 hours Do not set expectations about the new system Seek a variety of perspectives
7.10
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Administering Questionnaires More cost-effective than interviews Choosing respondents
Should be representative of all users Types of sampling methods
Convenient Random sample Purposeful sample Stratified sample
Design Mostly closed-ended questions Can be administered over the phone or in person
7.11
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Questionnaires vs. Interviews
7.12
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Interviewing Groups Advantages
More effective use of time Enables people to hear opinions of others and to agree or
disagree Disadvantages
Difficulty in scheduling
Nominal Group Technique Facilitated process to support idea generation by groups Individuals work alone to generate ideas which are pooled
under guidance of a trained facilitator7.13
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Directly Observing Users Serves as a good method to supplement interviews Often difficult to obtain unbiased data
People often work differently when being observed
Time and motion study?
7.14
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Analyzing Procedures and Other Documents Types of information to be discovered:
Problems with existing system Opportunity to meet new need Organizational direction Names of key individuals Values of organization Special information processing circumstances Reasons for current system design Rules for processing data
7.15
D. Delen MSIS 5653 – Advanced Systems Development
Traditional Methods for Traditional Methods for Determining RequirementsDetermining Requirements
Analyzing Procedures and Other Documents Four types of useful documents
Written work procedures Describes how a job is performed Includes data and information used and created in the process
of performing the job or task Business form
Explicitly indicate data flow in or out of a system Report
Enables the analyst to work backwards from the report to the data that generated it
Description of current information system
7.16
D. Delen MSIS 5653 – Advanced Systems Development
Example:Example:Business Forms and ReportsBusiness Forms and Reports
D. Delen MSIS 5653 – Advanced Systems Development
Modern Methods for Determining Modern Methods for Determining RequirementsRequirements
Joint Application Design (JAD) Brings together key users, managers and systems analysts Purpose: collect system requirements simultaneously from key
people Conducted off-site
Prototyping Repetitive process Rudimentary version of system is built Replaces or augments SDLC Goal: to develop concrete specifications for ultimate system
4.18
D. Delen MSIS 5653 – Advanced Systems Development
Joint Application Design (JAD)Joint Application Design (JAD)Participants Session Leader Users Managers Sponsor Systems Analysts Scribe IS Staff
4.19
D. Delen MSIS 5653 – Advanced Systems Development
Joint Application Design (JAD)Joint Application Design (JAD)End Result Documentation detailing existing system Features of proposed system
CASE Tools During JAD Upper CASE tools are used Enables analysts to enter system models directly
into CASE during the JAD session Screen designs and prototyping can be done during
JAD and shown to users
4.20
D. Delen MSIS 5653 – Advanced Systems Development
Joint Application Design (JAD)Joint Application Design (JAD)Supporting JAD with GSS
Group support systems (GSS) can be used to enable more participation by group members in JAD
Members type their answers into the computer All members of the group see what other members
have been typing
7.21
D. Delen MSIS 5653 – Advanced Systems Development
PrototypingPrototypingQuickly converts requirements to working version of systemOnce the user sees requirements converted to system, will ask for modifications or will generate additional requestsMost useful when:
User requests are not clear Few users are involved in the system Designs are complex and require concrete form History of communication problems between analysts and
users Tools are readily available to build prototype
7.22
D. Delen MSIS 5653 – Advanced Systems Development
PrototypingPrototypingDrawbacks
Tendency to avoid formal documentation Difficult to adapt to more general user audience Sharing data with other systems is often not
considered Systems Development Life Cycle (SDLC) checks
are often bypassed
7.23
D. Delen MSIS 5653 – Advanced Systems Development
Business Process Reengineering Business Process Reengineering (BPR)(BPR)
Search for and implementation of radical change in business processes to achieve breakthrough improvements in products and servicesGoals
Reorganize complete flow of data in major sections of an organization
Eliminate unnecessary steps Combine steps Become more responsive to future change
7.24
D. Delen MSIS 5653 – Advanced Systems Development
Business Process Reengineering Business Process Reengineering (BPR)(BPR)
Identification of processes to reengineer Key business processes
Set of activities designed to produce specific output for a particular customer or market
Focused on customers and outcome Same techniques are used as were used for requirements
determination
Disruptive technologies Technologies that enable the breaking of long-held
business rules that inhibit organizations from making radical business changes >>>
7.25
D. Delen MSIS 5653 – Advanced Systems Development
Business Process Reengineering Business Process Reengineering (BPR)(BPR)
7.26
D. Delen MSIS 5653 – Advanced Systems Development
SummarySummaryInterviews
Open-ended and close-ended questions Preparation is key
Questionnaires Must be carefully designed Can contain close-ended as well as open-ended questions
Other means of gather requirements Observing workers Analyzing business documents
Joint Application Design (JAD)PrototypingBusiness Process Reengineering (BPR)
7.27
CHAPTER 8:CHAPTER 8:Structuring Systems Requirements: Structuring Systems Requirements:
Process ModelingProcess Modeling
2.28
D. Delen MSIS 5653 – Advanced Systems Development
Learning ObjectivesLearning Objectives Understand the logical modeling of processes
through studying data flow diagrams How to draw data flow diagrams using rules
and guidelines How to decompose data flow diagrams into
lower-level diagrams Balancing of data flow diagrams
8.2
D. Delen MSIS 5653 – Advanced Systems Development
Learning ObjectivesLearning Objectives Explain the differences among four types of
DFDs: current physical, current logical, new physical and new logical
Discuss the use of data flow diagrams as analysis tools
Compare and contrast data flow diagrams with Oracle’s process modeling tool and with functional hierarchy diagrams
Discuss process modeling for Internet applications
8.30
D. Delen MSIS 5653 – Advanced Systems Development8.31
Requirement Structuring: Requirement Structuring: Process Modeling in SDLCProcess Modeling in SDLC
D. Delen MSIS 5653 – Advanced Systems Development
Process ModelingProcess ModelingGraphically represent the processes that capture, manipulate, store and distribute data between a system and its environment and among system components
Data flow diagrams (DFD) Graphically illustrate movement of data between
external entities and the processes and data stores within a system
8.32
D. Delen MSIS 5653 – Advanced Systems Development
Process ModelingProcess ModelingModeling a system’s process
Utilize information gathered during requirements determination
Structure of the data is also modeled in addition to the processes
Deliverables and Outcomes Set of coherent, interrelated data flow diagrams
>>>
8.33
D. Delen MSIS 5653 – Advanced Systems Development
Process ModelingProcess ModelingDeliverables and outcomes (Continued…) Context data flow diagram (DFD)
Scope of system DFDs of current system
Enables analysts to understand current system DFDs of new logical system
Technology independent Show data flows, structure and functional requirements of
new system Project dictionary and CASE repository
8.34
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming MechanicsMechanics
Four symbols are used…
8.35
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming MechanicsMechanics
Data Flow Depicts data that are in motion and moving as a unit
from one place to another in the system. Drawn as an arrow Select a meaningful name to represent the data
8.36
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming MechanicsMechanics
Data Store Depicts data at rest May represent data in
File folder Computer-based file Notebook
The name of the store as well as the number are recorded in between lines
8.37
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming MechanicsMechanics
Process Depicts work or action performed on data so that
they are transformed, stored or distributed Number of process as well as name are recorded Name is a verb phrase
8.38
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming MechanicsMechanics
Source/Sink Depicts the origin and/or destination of the data Sometimes referred to as an external entity Drawn as a square symbol Name states what the external agent is Because they are external, many characteristics are
not of interest to us Interactions that occur between sources and sinks What they do with the information internally How to control or redesign them How to provide them with direct access to data stores
8.39
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming Data Flow Diagramming DefinitionsDefinitions
Context Diagram A data flow diagram (DFD) of the scope of an
organizational system that shows the system boundaries, external entities that interact with the system and the major information flows between the entities and the system
Level-0 Diagram A data flow diagram (DFD) that represents a
system’s major processes, data flows and data stores at a high level of detail
8.40
D. Delen MSIS 5653 – Advanced Systems Development
Developing DFDs: An ExampleDeveloping DFDs: An ExampleHoosier Burger’s automated food ordering systemContext Diagram (Figure 8-4) contains no data storesNext step is to expand the context diagram to show the breakdown of processes (Figure 8-5)
8.41
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8-4Figure 8-4Context diagram of Hoosier Burger’s Context diagram of Hoosier Burger’s
food ordering systemfood ordering system
8.42
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8-5Figure 8-5Level-0 DFD of Hoosier Burger’s Level-0 DFD of Hoosier Burger’s
food ordering systemfood ordering system
8.43
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming RulesData Flow Diagramming RulesBasic rules that apply to all DFDs
Inputs to a process are always different than outputs
Objects always have a unique name In order to keep the diagram uncluttered, you can repeat
data stores and sources/sinks on a diagram
8.44
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming RulesData Flow Diagramming RulesProcess
A. No process can have only outputs (a miracle)
B. No process can have only inputs (black hole)
C. A process has a verb phrase label
Data StoreD. Data cannot be moved
directly from one store to another
E. Data cannot move directly from an outside source to a data store
F. Data cannot move directly from a data store to a data sink
G. Data store has a noun phrase label
8.45
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming RulesData Flow Diagramming RulesSource/Sink
H. Data cannot move directly from a source to a sink
I. A source/sink has a noun phrase label
Data FlowJ. A data flow has only one
direction of flow between symbols
K. A fork means that exactly the same data goes from a common location to two or more processes, data stores or sources/sinks
Continues >>>
8.46
D. Delen MSIS 5653 – Advanced Systems Development
Data Flow Diagramming RulesData Flow Diagramming Rules
8.47
Data Flow (Continued…)L. A join means that exactly the same data
comes from any two or more different processes, data stores or sources/sinks to a common location
M. A data flow cannot go directly back to the same process it leaves
N. A data flow to a data store means updateO. A data flow from a data store means
retrieve or useP. A data flow has a noun phrase label
D. Delen MSIS 5653 – Advanced Systems Development
Decomposition of DFDsDecomposition of DFDsFunctional decomposition
Iterative process of breaking the description of a system/process down into finer and finer detail
Repetitive procedure that creates hierarchically related set of diagrams representing the system
Lowest level is called a primitive DFD
Level-N Diagrams A DFD that is the result of n nested decompositions
of a series of sub-processes from a process on a level-0 diagram
8.48
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8-7: Level-1 DFD showing the decomposition Figure 8-7: Level-1 DFD showing the decomposition of Process 1.0 from the Level-0 diagram for Hoosier of Process 1.0 from the Level-0 diagram for Hoosier
Burger’s food ordering systemBurger’s food ordering system
8.49
Process Numbering0 1.0, 2.0, … 1.1, 1.2, … 1.1.1, 1.1.2, …
D. Delen MSIS 5653 – Advanced Systems Development
Balancing DFDsBalancing DFDsWhen decomposing a DFD, you must conserve inputs to and outputs from a process at the next level of decompositionThis is called balancingExample: Hoosier Burgers
In Figure 8-4, notice that there is one input to the system, the customer order
Three outputs: Customer receipt Food order Management reports
8.50
D. Delen MSIS 5653 – Advanced Systems Development
Balancing DFDsBalancing DFDsExample (Continued)
Notice Figure 8-5. We have the same inputs and outputs
No new inputs or outputs have been introduced
We can say that the context diagram and level-0 DFD are balanced
8.51
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8-10Figure 8-10An unbalanced set of data flow diagramsAn unbalanced set of data flow diagrams(a) Context diagram, (b) Level-0 diagram(a) Context diagram, (b) Level-0 diagram
8.53
(a)(a)
(b)(b)
D. Delen MSIS 5653 – Advanced Systems Development
Balancing DFDsBalancing DFDsWe can split a data flow into separate data flows on a lower level diagram
8.54
(a)(a)
(b)(b)
D. Delen MSIS 5653 – Advanced Systems Development
Balancing DFDsBalancing DFDsBalancing leads to four additional advanced rules
8.55
D. Delen MSIS 5653 – Advanced Systems Development
Four Different Types of DFDsFour Different Types of DFDsCurrent Physical
Process label includes an identification of the technology (people or systems) used to process the data
Data flows and data stores are labeled with the actual name of the physical media on which data flow or in which data are stored
Current Logical Physical aspects of system are removed as much
as possible Current system is reduced to data and processes
that transform them8.56
D. Delen MSIS 5653 – Advanced Systems Development
Current Physical DFDCurrent Physical DFDHB Inventory Control SystemHB Inventory Control System
D. Delen MSIS 5653 – Advanced Systems Development
Current Logical DFDCurrent Logical DFDHB Inventory Control SystemHB Inventory Control System
D. Delen MSIS 5653 – Advanced Systems Development
Four Different Types of DFDSFour Different Types of DFDSNew Logical
Includes additional functions Obsolete functions are removed Inefficient data flows are reorganized
New Physical Represents the physical implementation of the new
system
8.59
D. Delen MSIS 5653 – Advanced Systems Development
New Logical DFDNew Logical DFDHB Inventory Control SystemHB Inventory Control System
D. Delen MSIS 5653 – Advanced Systems Development
DFD Development ProcessDFD Development ProcessMain Steps
Determine the processes by making a list of all relevant business activities.
Create the context diagram, including all external entities and the major data flow to or from them.
Create Level-0 Diagram by analyzing the major activities within the context process. Include the external entities and major data stores.
Create a child diagram for each complex process on Level-0 Diagram. Include local data stores and detailed processes.
Detailed data flow diagrams may be developed by Analyzing what happens to an input data flow from an external entity
and what is necessary to create an output data flow to an external entity Examining the data flow to or from a data store
D. Delen MSIS 5653 – Advanced Systems Development
Guidelines for Drawing DFDsGuidelines for Drawing DFDs
8.62
Completeness DFD must include all components necessary for the system Each component must be fully described in the project
dictionary or CASE repository
D. Delen MSIS 5653 – Advanced Systems Development
Guidelines for Drawing DFDsGuidelines for Drawing DFDsConsistency
The extent to which information contained on one level of a set of nested DFDs is also included on other levels
Missing Level-0 diagram, missing and/or mismatched I/O
Timing Time is not represented well on DFDs Best to draw DFDs as if the system has never started and will
never stop.
Iterative Development Analyst should expect to redraw diagram several times before
reaching the closest approximation to the system being modeled
8.63
D. Delen MSIS 5653 – Advanced Systems Development
Guidelines for Drawing DFDsGuidelines for Drawing DFDsPrimitive DFDs
Lowest logical level of decomposition Decision has to be made when to stop
decomposition Rules for stopping decomposition
When each process has been reduced to a single decision, calculation or database operation
When each data store represents data about a single entity
When the system user does not care to see any more detail
>>>8.64
D. Delen MSIS 5653 – Advanced Systems Development
Guidelines for Drawing DFDsGuidelines for Drawing DFDsRules for stopping decomposition (continued)
When every data flow does not need to be split further to show that data are handled in various ways
When you believe that you have shown each business form or transaction, on-line display and report as a single data flow
When you believe that there is a separate process for each choice on all lowest-level menu options
8.65
D. Delen MSIS 5653 – Advanced Systems Development
Using DFDs as Analysis ToolsUsing DFDs as Analysis ToolsGap Analysis
The process of discovering discrepancies between two or more sets of data flow diagrams or discrepancies within a single DFD
Simulation and/or Activity Based Costing
Inefficiencies in a system can often be identified through DFDs
8.66
D. Delen MSIS 5653 – Advanced Systems Development
Using DFDs in Business Process Using DFDs in Business Process ReengineeringReengineering
Example: IBM Credit
8.67
As-IsAs-IsAvg.: 6 DaysAvg.: 6 Days
D. Delen MSIS 5653 – Advanced Systems Development
Using DFDs in Business Process Using DFDs in Business Process ReengineeringReengineering
Example: IBM Credit (Continued…)
8.68
To-BeTo-BeAvg.: 4 HrsAvg.: 4 Hrs
D. Delen MSIS 5653 – Advanced Systems Development
Oracle’s Process ModelerOracle’s Process Modeler
8.71
D. Delen MSIS 5653 – Advanced Systems Development
Oracle’s Process Modeler and Oracle’s Process Modeler and Functional Hierarchy DiagramsFunctional Hierarchy Diagrams
Functional Hierarchy Diagrams
8.72
Picture of various tasks performed in a business and how they are hierarchically related
Similar to IDEF0 Function Diagrams
Does not include data flows
D. Delen MSIS 5653 – Advanced Systems Development
SummarySummaryData flow diagrams (DFD)
Symbols Rules for creating Decomposition Balancing
Four different kinds of DFDs Current Physical Current Logical New Logical New Physical
DFDs for Analysis and BPROracle’s Process Modeler and Functional Hierarchy Diagrams
8.73
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8.26 – Page 273Figure 8.26 – Page 273
D. Delen MSIS 5653 – Advanced Systems Development
Figure 8.27 – Page 274Figure 8.27 – Page 274
D1
D. Delen MSIS 5653 – Advanced Systems Development
Problem and Exercises #1Problem and Exercises #1Scenario: Retail clothing store in a mall
1. List all relevant sources/sinks, processes, data stores and data flows
2. Draw a context diagram3. Draw a level-0 diagram
0Point-of-Sale
SystemCustomer Store
ManagerPayment
Receipt
PurchaseRequest
ManagementReports
D. Delen MSIS 5653 – Advanced Systems Development
Scenario: Retail clothing store in a mallScenario: Retail clothing store in a mallLevel-0 DiagramLevel-0 Diagram
ManagementReports
StoreManager
PaymentCustomer Purchase
RequestReceipt
1.0Process
PurchaseRequest
3.0Update
InventoryFile
2.0Update
Goods SoldFile
4.0Update
Total-SalesFile
InventoryData Sales DataGoods Sold
Data
Goods SoldFile
InventoryFile
Total-SalesFile
FormattedGoods Sold Info
FormattedInventory Info
FormattedTotal-Sales Info
5.0Generate
ManagementReports
InventoryAmounts
Goods SoldAmounts
SalesTotals
D1 D2 D3