CSE1204 - Information Systems 1 Detailed Process Definitions; The Data Dictionary.
-
date post
22-Dec-2015 -
Category
Documents
-
view
223 -
download
0
Transcript of CSE1204 - Information Systems 1 Detailed Process Definitions; The Data Dictionary.
CSE1204 - Information CSE1204 - Information Systems 1Systems 1
Detailed Process Definitions;Detailed Process Definitions;
The Data DictionaryThe Data Dictionary
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 22
the data dictionary is a database or repository of the data dictionary is a database or repository of information about objects identified during information about objects identified during systems developmentsystems development
every object (and each of its components) must every object (and each of its components) must have a definition in the data dictionary have a definition in the data dictionary
the data dictionary is a major source of the data dictionary is a major source of documentation about the information systemdocumentation about the information system
Data Dictionary Data Dictionary
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 33
Data Dictionary Entries for Data Dictionary Entries for Components of DFDsComponents of DFDs
the data dictionary must contain precise definitions of all the data dictionary must contain precise definitions of all components of all data flow diagrams:components of all data flow diagrams: to fully explain the meaning of the DFDsto fully explain the meaning of the DFDs to describe the contents of all data flows and data to describe the contents of all data flows and data
storesstores to describe the processing that occurs in primitive to describe the processing that occurs in primitive
processesprocesses to ensure that names and meanings of components to ensure that names and meanings of components
are used consistently (a common vocabulary)are used consistently (a common vocabulary)
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 44
Data Dictionary EntriesData Dictionary Entries
a data dictionary entry must be included a data dictionary entry must be included for each for each data flow data flow data storedata storehigher level process higher level process primitive process primitive process external agent (source/sink)external agent (source/sink)
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 55
each data flow consists of a series of each data flow consists of a series of data data elementselementsa data element is a unit of data that cannot be a data element is a unit of data that cannot be
further broken down into meaningful units of further broken down into meaningful units of datadata
each data element should also have an entry each data element should also have an entry in the data dictionaryin the data dictionary
data flows and data stores are made up of data flows and data stores are made up of data elementsdata elements
Data elementsData elements
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 66
Data Dictionary -data element Data Dictionary -data element entryentry
ACADEMIC CONSULTANCY
DATA ELEMENT: Product code
•Alias: Inventory number, product number•Description: Number to identify and differentiate each product held in warehouse•Values: Must be a positive integer•Range: 00001 to 99999
AUTHOR: David Ross
DATE: 14 Oct 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 77
Data FlowsData Flows a data dictionary entry for a data flow describes the a data dictionary entry for a data flow describes the
sequence of data elements and data structures in the sequence of data elements and data structures in the data flow using the following connectors:data flow using the following connectors: == is equivalent tois equivalent to ++ andand [ ][ ] select one ofselect one of { }{ } iterations ofiterations of ( )( ) optionaloptional ** commentscomments
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 88
Data Dictionary -data flow Data Dictionary -data flow entryentry
•ACADEMIC CONSULTANCY
DATA FLOW: Sales order
•Alias: Customer order•Description: Request for product from customer•Composition: sales order =sales order no. +
sales order date +
customer number +
[account customer
cash customer] +
customer name +
customer address +
(customer telephone no) +
{item no + item desc + item price + item qty} +
sales order total amount
AUTHOR: David Ross
DATE: 03 July 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 99
Data StoresData Stores a data store is made up of data flows and data a data store is made up of data flows and data
elementselements where a data store consists of a collection of data where a data store consists of a collection of data
flows it is described as repetitions of that data flowflows it is described as repetitions of that data flow e.g.e.g. Data Store:Data Store: {customer invoice}{customer invoice}
data stores may also be described by listing their data stores may also be described by listing their data elementsdata elements
e.ge.g customer deposit customer deposit == account no +account no +deposit date +deposit date +deposit amount +deposit amount +account balanceaccount balance
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1010
Data Dictionary -data store Data Dictionary -data store entryentry
•ACADEMIC CONSULTANCY
DATA STORE: Sales
•Description: Store of all pertinent data about product sales made to customers•Composition: sales = date+
({product}
product quantity)+
sales total
{customer}
AUTHOR: David Ross
DATE: 10 Oct 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1111
Describing ProcessesDescribing Processes
each process in higher level DFDs is defined by the DFD each process in higher level DFDs is defined by the DFD that decomposes the process at the next level down: that decomposes the process at the next level down:
these are these are parentparent processes processes
each such process should have a data dictionary entry each such process should have a data dictionary entry which includes a brief description of the overall nature which includes a brief description of the overall nature and purpose of the processand purpose of the process
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1212
Describing ProcessesDescribing Processes
example data dictionary entry for a processexample data dictionary entry for a process
Treat patients:Treat patients: Patient consultations are carried out to Patient consultations are carried out to determine the causes of patients’ illnesses/ determine the causes of patients’ illnesses/ medical medical problems. Further treatment/ problems. Further treatment/ follow up is follow up is recommended if appropriate. recommended if appropriate. Details of Details of consultations are recorded.consultations are recorded.
specific process description (minispecs)specific process description (minispecs)
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1313
Data Dictionary -data store Data Dictionary -data store entryentry
•ACADEMIC CONSULTANCY
DATA PROCESS Treat patient
•Description: Patient consultations are carried out to determine the causes of patients’ illnesses/ medical problems. Further treatment/ follow up is recommended if appropriate. Details of consultations are recorded, and fees charged to the patient on the basis of these sessions.•Data required: {Patient}+
Fee schedule
AUTHOR: David Ross
DATE: 10 Oct 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1414
Describing External AgentsDescribing External Agents
each external agent (source or sink) should have a data each external agent (source or sink) should have a data dictionary entry which describes its relationship with the dictionary entry which describes its relationship with the systemsystem
e.g.e.g.
Referring Doctors:Referring Doctors:
These are doctors who refer their patients to a specialist These are doctors who refer their patients to a specialist medical practitioner for treatment. They are usually general medical practitioner for treatment. They are usually general practitioners.practitioners.
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1515
Data Dictionary –external Data Dictionary –external agent entryagent entry
•ACADEMIC CONSULTANCY
DATA AGENT: Referring
doctor
•Alias: Inventory number, product number•Description: Doctors who refer their patients for treatment.
•Values: Must be a positive integer•Range: 00001 to 99999
AUTHOR: David Ross
DATE: 14 June 2002
•ACADEMIC CONSULTANCY
DATA AGENT: Referring
doctor
•Alias: Inventory number, product number•Description: Doctors who refer their patients for treatment.
•Values: Must be a positive integer•Range: 00001 to 99999
AUTHOR: David Ross
DATE: 14 June 2002
•ACADEMIC CONSULTANCY
DATA AGENT: Referring
doctor
•Alias: Referrer, GP•Description: Doctors who refer their patients for treatment.
AUTHOR: David Ross
DATE: 14 June 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1616
Building and Maintaining Building and Maintaining the Data Dictionarythe Data Dictionary
determine standard formats and information content for determine standard formats and information content for all types of data dictionary entriesall types of data dictionary entries
have a standard means of organising and storing the have a standard means of organising and storing the entries in the data dictionaryentries in the data dictionary
ensure that all components of the DFDs have entries in ensure that all components of the DFDs have entries in the data dictionary and that they are kept up-to-datethe data dictionary and that they are kept up-to-date
cross-referencing of entries in the data dictionary can cross-referencing of entries in the data dictionary can help to check the completeness and consistency of the help to check the completeness and consistency of the DFDs and other types of modelsDFDs and other types of models
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1717
Detailed Process DefinitionsDetailed Process Definitions
the processing that occurs within the bottom level the processing that occurs within the bottom level (primitive) processes in DFDs needs to be defined(primitive) processes in DFDs needs to be defined
detailed process descriptions are also known as detailed process descriptions are also known as minispecsminispecs
detailed process descriptions form part of the data detailed process descriptions form part of the data dictionary: they define the contents of primitive dictionary: they define the contents of primitive processesprocesses
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1818
Detailed Process DefinitionsDetailed Process Definitions
many techniques can be used to define the many techniques can be used to define the details of processing: details of processing:
e.g.e.g. narrative textnarrative text
Structured EnglishStructured English
decision tablesdecision tables
decision treesdecision trees
flow chartsflow charts
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 1919
Detailed Process DefinitionsDetailed Process Definitions
detailed process descriptions should:detailed process descriptions should:
express express whatwhat the process does (i.e. policy), not the process does (i.e. policy), not howhow the the process is carried out (i.e. procedure)process is carried out (i.e. procedure)
be in a form that can be easily understood and verified be in a form that can be easily understood and verified by both users and systems analystsby both users and systems analysts
be in a form that can be easily communicated to all be in a form that can be easily communicated to all potential stakeholders:potential stakeholders:
e.g. e.g. end-users, systems analysts, managers, system end-users, systems analysts, managers, system designers, project leaders, programmersdesigners, project leaders, programmers
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2020
Structured EnglishStructured English
Structured English is a modified form of English with Structured English is a modified form of English with some major restrictions on vocabulary and structure:some major restrictions on vocabulary and structure:
only action (imperative) verbs such as only action (imperative) verbs such as get, put, add, get, put, add, calculate, find, delete calculate, find, delete are usedare used
only nouns/noun phrases which refer to components of only nouns/noun phrases which refer to components of the DFDs should be used, i.e. data flows, data stores, the DFDs should be used, i.e. data flows, data stores, data elementsdata elements
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2121
Structured EnglishStructured English
sentences consist of action verbs and DFD sentences consist of action verbs and DFD componentscomponents
sentences are combined to form process sentences are combined to form process descriptions using the control structures of descriptions using the control structures of sequencesequence, , conditioncondition, and , and repetitionrepetition
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2222
Control StructuresControl Structures Condition uses Condition uses If... Then...Else If... Then...Else
or or
Select Case Select Case Case 1...Case 2...End CaseCase 1...Case 2...End Case
E.g. E.g.
If qty-in-stock is less than minimum-order-qtyIf qty-in-stock is less than minimum-order-qty
Then update stock-reorder indicatorThen update stock-reorder indicator
Else do nothingElse do nothing
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2323
Control StructuresControl Structures e.g.e.g.
Select CaseSelect Case
CASE 1CASE 1 qty-in-stock is less than qty-in-stock is less than minimum-order-qtyminimum-order-qty
Do update stock-reorder indicatorDo update stock-reorder indicator
CASE 2CASE 2 qty-in-stock is equal to minimum-qty-in-stock is equal to minimum-order-qtyorder-qty
Do nothingDo nothing
CASE 3CASE 3 qty-in-stock is greater than minimum-qty-in-stock is greater than minimum-order-qtyorder-qty
Do nothingDo nothing
End CaseEnd Case
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2424
Data Dictionary -data store Data Dictionary -data store entryentry
•ACADEMIC CONSULTANCY
DATA PROCESS Stock reorder
•Description: Current levels of stock in warehouse are matched to optimal requirements. Shortfalls are ordered immediately.•Select Case
CASE 1 qty-in-stock is less than minimum-order-qty
Do update stock-reorder indicator
CASE 2 qty-in-stock is equal to minimum- order-qty
Do nothing
CASE 3 qty-in-stock is greater than minimum- order-qty
Do nothing
End Case
AUTHOR: David Ross
DATE: 10 Oct 2002
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2525
Sequence is represented with one sentence Sequence is represented with one sentence following another in sequence:following another in sequence:
Add student to class listAdd student to class list
Decrease available-placesDecrease available-places
Calculate class-feeCalculate class-fee
Control StructuresControl Structures
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2626
Repetition uses Repetition uses Do-UntilDo-Until or or Do-WhileDo-While loops: loops:
DoDo
Accept customer-account-detailsAccept customer-account-details
Calculate daily-interest = daily balance * daily Calculate daily-interest = daily balance * daily interest rateinterest rate
Add daily-interest to monthly-interest-dueAdd daily-interest to monthly-interest-due
UntilUntil
no more customer-accountsno more customer-accounts
Control StructuresControl Structures
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2727
Example Structured Example Structured EnglishEnglish
Accept sales-orderAccept sales-order
Find customer-detailsFind customer-details
If customer-details not foundIf customer-details not found
Then reject sales-orderThen reject sales-order
ElseElse
Create sales-order-headerCreate sales-order-header
Do while more sales-order-itemsDo while more sales-order-items
find item-detailsfind item-details
calculate sales-order-item price = calculate sales-order-item price =
item price *order-qtyitem price *order-qty
EnddoEnddo
Authorise sales-orderAuthorise sales-order
Endif Endif
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2828
Guidelines for Structured Guidelines for Structured EnglishEnglish
use indentation to indicate control structures and their use indentation to indicate control structures and their scope: assists readability and understandingscope: assists readability and understanding
avoid more than three levels of nesting: complicated logic avoid more than three levels of nesting: complicated logic can be represented using other techniquescan be represented using other techniques
Stuctured English descriptions should illustrate the Stuctured English descriptions should illustrate the logiclogic of of the processing, not the the processing, not the implementation implementation of the processingof the processing
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 2929
Decision TablesDecision Tables
decision tables are useful for describing processes decision tables are useful for describing processes where several different conditions apply and the where several different conditions apply and the particular actions that are taken are determined by particular actions that are taken are determined by combinations of the values of the conditionscombinations of the values of the conditions
decision tables are useful where the process logic is decision tables are useful where the process logic is complexcomplex
decision tables show all the possible choices and the decision tables show all the possible choices and the conditions they depend on in a tabular formconditions they depend on in a tabular form
Monash University, SIMS, Semester One, 2005
30
Decision Tables
decision tables have three stubs (four quadrants):
conditions rules
actions
outcomesfor each setof conditionvalues
combinations of condition values
Monash University, SIMS, Semester One, 2005
31
Example Decision Table
avg account bal > $1,000
overdraft amount < $50,000previous paid-out loan
approve
conditional approval
reject
Y Y Y Y N N N N
Y Y N N Y Y N N
Y N Y N Y N Y N
X X
X
X
X
X X X
Monash University, SIMS, Semester One, 2005
32
wholesalecustomer
retailcustomer
local item
local item
imported item
imported itemDetermine Customer Discount
15%
10%
12%
7%
decision trees are an alternative graphical representation of a decision situation as a connected series of nodes and branches
Decision Trees
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 3333
Selecting Techniques for Selecting Techniques for Process DescriptionsProcess Descriptions
Structured English is useful where a process Structured English is useful where a process has a sequence of activities and there is no has a sequence of activities and there is no more than three levels of more than three levels of nesting of nesting of decisionsdecisions
decision trees and decision tables are useful decision trees and decision tables are useful where a process involves a decision based on where a process involves a decision based on combinations of values of several conditionscombinations of values of several conditions
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 3434
Selecting Techniques for Process Selecting Techniques for Process DescriptionsDescriptions
decision trees visually distinguish the decision conditions decision trees visually distinguish the decision conditions and their values from the actions: and their values from the actions:
they show the paths that decisions can follow but soon they show the paths that decisions can follow but soon become cluttered if each condition has several possible become cluttered if each condition has several possible valuesvalues
decision tables are able to show decisions involving decision tables are able to show decisions involving many conditions each with many possible valuesmany conditions each with many possible values
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 3535
Overview of Process ModellingOverview of Process Modelling
several techniques are available for representing several techniques are available for representing the processing within systemsthe processing within systems
the aim of process modelling in systems analysis the aim of process modelling in systems analysis is to define the processing that occurs within a is to define the processing that occurs within a systemsystem
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 3636
models representing:models representing:
an overview of the system processing an overview of the system processing
the structure of the system processing the structure of the system processing
the flow of data into and out of the processes the flow of data into and out of the processes
the detailed logic of the processesthe detailed logic of the processes
can be constructedcan be constructed
Process Modelling TechniquesProcess Modelling Techniques
Monash University, SIMS, Semester One, 2005Monash University, SIMS, Semester One, 2005 3737
ReferencesReferences
HOFFER, J.A., GEORGE, J.F. and VALACICH (2005) 4th ed., HOFFER, J.A., GEORGE, J.F. and VALACICH (2005) 4th ed., Modern Systems Analysis and DesignModern Systems Analysis and Design, Benjamin/Cummings, , Benjamin/Cummings, Massachusetts.Massachusetts.
Chapter 8 Chapter 8