l545 systems analysis & design week 10: november 4, 2008
TRANSCRIPT
L545 Systems Analysis & Design
Week 10: November 4, 2008
S556-Fall2008
2
Data Dictionary
A data dictionary subsystem keeps track of: the definitions of all the data items in the
database Relationships that exist between various
data structures Screen and report format definitions that
may be used by various application programs
S556-Fall2008
3
Data Dictionaries: Purpose
To provide unambiguous definitions of all system data
Communicate/validate definitions to all participants in the analysis process: Analyst Users System designers
S556-Fall2008
4
Level of Data Dictionary
Data Elements Data Structure Data flows and Data Stores
S556-Fall2008
5
Level of Data Dictionary
Data Elements Data elements are pieces of data, which
need not be broken further. Data elements can describe files, data
flows, or processes. Often a data element is self-defining,
e.g., Student name, enrolment no.
S556-Fall2008
6
Level of Data Dictionary
Data Structure Data structure is defined as collection of
data elements
For example, let us consider the following "Student Information Record"
S556-Fall2008
7
Level of Data Dictionary Data Structure
E.g., "Student Information Record“ Student Information
Enrolment Number Student name
First name Last name Middle name
STUDENT INFORMATION" is a data structure, made up of data elements: student name and enrolment number
S556-Fall2008
8
Level of Data Dictionary
Data flow and data stores Data flows are paths along which data
travels Data stores are places where data is
stored until needed Data flows are Data structures in motion Data stores are Data structures at rest
S556-Fall2008
9
Sample Entry: Attribute
A library reserves processing system
ITEM
Item_status
Item_title
Item_id
Item_author
S556-Fall2008
10
Sample Entry: Attribute
A library reserves processing system
ITEM
Item_title
Item_id
Item_authorItem_status
S556-Fall2008
11
Sample Entry: Attribute
A library reserves processing systemItem Status
Alias: Book status, Article statusMeaning: The current status of the reserve item
being processedData type: 1 characterPossible values:
L = lostT = tracedR = recalled from current borrowerW = in library workroomS = on reserve shelf (processing complete)
S556-Fall2008
12
Sample Entry: Attribute
Name is entry name (e.g., item status) Alias = a synonym for a previously-defined
data item Meaning = the semantic aspect of the
attribute (i.e., definition) Data type:
at least length and encoding means Specify the possible values
S556-Fall2008
13
Examples of Data Formats in PC Systems (Kendall & Kendall, p. 254
Data Type MeaningChar, text Any alphanumeric character
Datetime Alphanumeric data, several formats
Decimal, numeric Numeric data that are accurate to the least significant digit
Currency Monetary numbers accurate to four decimal places
Autonumber A number that is always incremented by one when a record is added to a database table
S556-Fall2008
14
Sample entry: Complex attribute
Catalog ordering system
Customer addressAlias: Client addressMeaning: the full mailing address of
the person ordering the materials; the address to which the materials are to be delivered
Composition: Street address + (Apt. number) + City + State + Zip
codeNote: No P.O. numbers allowed;
U.S. addresses only
optional
S556-Fall2008
15
Sample entry: Complex attribute
Define the composition of the entry Partition/decompose the data into its
components Components = the data elements which
make up the complex attribute
S556-Fall2008
16
Notation for Composition
+ and; includes all the components listed
[ ] or; select one of the alternatives given
separate components with | { } repetition of the component
enclosed, 0-n ( ) enclosed component is optional
S556-Fall2008
17
Implementing a Data Dictionary
Accompanies E-R diagram Provide additional detail about entities and
attributes Also provide:
Meanings of entities/relationships Notes on entities/relationship
Ordering of entities By entity/relationship Alphabetical, within entity/relationship
S556-Fall2008
18
Implementing a Data Dictionary
Minimize redundancy to ease maintenance Do not represent anything that is
represented elsewhere Use simple conventions for writing
definitions
S556-Fall2008
19
What Does DD Look Like?
First, compile a list of fields that appear on existing forms and reports (see Davis p. 76-77)
For typical data dictionary entries, see Davis p. 84
S556-Fall2008
20
Example
STUDENT
PID
Name Phone
S556-Fall2008
21
Example: Data dictionarySTUDENT: An individual person who takes a seminar and work PID Meaning: An identification number assigned to uniquely identify each student Data type: numeric/symbolic Possible values: 00000-99999Name Meaning: The name of the student Data type: alphanumeric, up to 30 characters including punctuationPhone Composition: area code + number
Phone area codeMeaning: area code of the student phone numberData type: alphanumeric, 3 characters
Phone numberMeaning: local number of the student phone number Data type: alphanumeric, 7 characters
S556-Fall2008
22
Mapping Specialization & Generalization Relationships
ACADEMIC PERSON
STUDENT FACULTY
d
PID
Major Appointment
S556-Fall2008
23
Mapping Specialization & Generalization Relationships
ACADEMIC_PERSON
PID Name Address
STUDENT
PID Major
FACULTY
PID Appointment
S556-Fall2008
24
Example: Data dictionaryACADEMIC_PERSON: An individual person who belongs to a
university PID Meaning: An identification number assigned to uniquely identify
each academic person Data type: numeric/symbolic Possible values: 00000-99999
STUDENT: An individual academic person who is taking coursesPID
Inherited from ACADEMIC_PERSON.PIDMajor Meaning: The major that the student is pursuing Data type: alphanumeric, up to 30 characters including punctuation
S556-Fall2008
25
Example: Data dictionaryFACULTY: An individual academic person who is teaching coursesPID
Inherited from ACADEMIC_PERSON.PIDAppointment Meaning: The school of college that the faculty member has an
appointment Data type: 4 characters Possible values:
ANTH = Anthropology BIOL = Biology HIST = History JOUR = Journalism PHYS = Physics …… SLIS = School of Library & Information Science
S556-Fall2008
26
Example
ATTEND
Passed?
S556-Fall2008
27
Example: Data dictionary
ATTEND: the seminar attended by studentsPassed Meaning: whether the student attended the session Data type: 1 character Possible values:
Y = Yes N = No