Upload
christian-summers
View
216
Download
1
Embed Size (px)
Citation preview
IS 320Notes for Chapter 8
ClassX Problems: Low-Tech Fix
• Use last year's videos on ClassX Select "Semesters" tab Select IS 320 Select the week/lecture of interest
Data Dictionary
• This week's topic is not difficult for IS/CS students, so we won't spend class time on it The remainder of the slides have notes
Process vs. Data Centricity
Data-Centric Approach Process-Centric Approach
What data does the system need?
What is the system supposed to do?
Tends to have an enduring design stability due to low volatility in organizational data needs.
Design stability is necessarily limited due to constant changes in business processes.
The file structure is enterprise dependent.
The file structure is application dependent.
Data redundancy is generally limited and controlled.
Data redundancy is generally massive and uncontrolled.
Data DictionaryWhat does “Backordered item” mean?
What does “New Customer info.” contain?
How does the “account receivable report” look like?
Data Dictionary
A list of names/identifiers used in the system models arranged alphabetically; they include their meaning and information about them
Types of information provided:Description of dataIf composite data, describe elementsData representation or typeCreator, creation date, user contactsOther names for the data (aliases)
Data Dictionary
Data dictionary is a metadata
Created in parallel with DFD
Created in top-down approach
Data dictionary should be kept up-to-date with the DFD model
Data DictionaryAdvantages:
Documentation for the whole system
Eliminate redundancy in a system which has been created by different people
Identify aliases
Provide a starting point to develop reports and screens
Validates the data flow diagrams for completeness and accuracy
Develop the logic for DFD processes
Data Dictionary Contents
Data dictionaries contain:Data flow.
Data structures.
Elements.
Data stores.
Process
Data Flow Description
ID numberName (as it appears in DFD)DescriptionSourceDestinationType (file, screen, report, form, internal)Data structure nameHow frequently producedComments
Defining Data Flow (Continued)
The source of the data flowThis could be an external entity, a process, or a
data flow coming from a data store.
The destination of the data flow
Type of data flow, either: A record entering or leaving a file.
A report, form, or screen.
Internal - used between processes.
Defining Data Flow (Continued)
The name of the data structure or elements
The volume per unit timeThis could be records per day or any other unit of
time.
An area for further comments and notations about the data flow
Data Store
ID numberNameAlias nameDescriptionType (manual, computerized)File format (database, sequential, Indexed)Maximum/ average number of recording
This helps the analyst to predict the amount of disk space required.
File nameData structure
Data Structure
For compositional data flow and data store elements
Describe the elements of the data structure using algebraic notation
= Composed of
{ } Repetition
( ) Optional
+ and
[ / ] or
Data StructureExample:
Student record= student ID + Student name+
Address +
Date of birth +
Gender +
Nationality +
Telephone number +
(mobile telephone number) +
{ course record}
Data Elements
Each element in the data structure should be describedID numberNameAliasDescriptionType (Base: entered from user, derived: computed)
Length (in characters) [max or fixed]Data type (date, numeric, alphanumeric)Input/Output formatValidation criteriaDefault valueComments
Defining Elements
Aliases, which are synonyms or other names for the element
These are names used by different users within different systems
Example, a Customer Number may be called a: Receivable Account Number.
Client Number.
Defining Elements
A base element is one that has been initially keyed into the system.Input from an external entity in the DFD
A derived element is one that is created by a process, usually as the result of a calculation or some logic.Output from a process in the DFD
Data Store Definition
If the file is computerized, the file format designates whether the file is a database file or the format of a traditional flat file.
The maximum and average number of records on the file
The growth per yearThis helps the analyst to predict the amount of disk space
required.
Data Store Definition
The data set name specifies the table or file name, if known.In the initial design stages, this may be left blank.
The data structure should use a name found in the data dictionary.
Logical and Physical data
Logical data structures is what the user sees
Physical data structure is what the software needs for processing (e.g. flags, key fields for search, ..)
Using the Data Dictionary
Data dictionaries may be used to:Create reports, screens, and forms.
Generate computer program source code.
Analyze the system design for completion and to detect design flaws.
Creating Reports, Screens, Forms
To create screens, reports, and forms:Use the element definitions to create fields.
Arrange the fields in an aesthetically pleasing screen, form, or report, using design guidelines and common sense.
Repeating groups become columns.
Structural records are grouped together on the screen, report, or form.
Data Dictionary Analysis
The data dictionary may be used in conjunction with the data flow diagram to analyze the design, detecting flaws and areas that need clarification.
Data Dictionary Analysis (Continued)
Some considerations for analysis are:All base elements on an output data flow must be
present on an input data flow to the process producing the output.
Base elements are keyed and should never be created by a process.
Data Dictionary Analysis (Continued)
A derived element should be output from at least one process that it is not input into.
The elements that are present on a data flow into or coming from a data store must be contained within the data store.
Process Data Process numberProcess nameDescriptionInputOutputType (batch, online, manual)Prewritten code: ready made functional librariesProcess logic (Business rules)Reference to description tables or structuresUnresolved issues: (notes to check with users)
Process Specifications
Process specifications are created for primitive processes on a data flow diagram.
They are also called minispecs.
AdvantagesUnderstand how the process works and go back to users if not
clear
Describe what should happen for designer and programmer
Validate the DFD
Structured English
based on structured logic and Simple English statementsAppropriate technique for analyzing the system when
structured decisions are not complex.Express all logic in terms of sequential structures, decision
structures, case structures, or iterations.Use and capitalize accepted keywords such as IF, THEN, ELSE,
DO, and PERFORM.Indent blocks of statements to show their hierarchy.Underline words that have been described in the data dictionary
Describing Processes
Example: Bonus monthly payment (Structured English)
For each customer
Read Customer record
For each item rented between 1/10 to 1/11
add total
End for
If total is greater than or equal to 50$ then
send bonus and thank you letter
End if
End for
Automatic Data Dictionary
Using CASE tools:Easy to change and add
Created and integrated with other models
Checks that the DFD is valid e.g. all data needed for a process is input to it
Data store contains data input/ output to/from it
Derived data should be output from process
Checks data source and destination in DFD
Use data structures to create reports and screens
Exampleshttp://federalstudentaid.ed.gov/static/gw/docs/ciolibrary/ECONOPS_Docs/EDM-
EnterpriseDataDictionaryStandards.pdf
http://www.pnamp.org/sites/default/files/best_practices_for_data_dictionary_definitions_and_usage_version_1.1_2006-11-14.pdf
http://www.cidr.jhmi.edu/requirements/GWAS_Data_Dictionary.pdf
Guest Speaker
• We often need to think "outside the box" as systems analysts
• Vint Cerf on "Reinventing the Internet"
http://www.youtube.com/watch?v=qguED5Aouv4