330 likes | 425 Views
IS 320 Notes 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
E N D
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
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. Process vs. Data Centricity
Data Dictionary What 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 data • If composite data, describe elements • Data representation or type • Creator, creation date, user contacts • Other 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 Dictionary • Advantages: • 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 number • Name (as it appears in DFD) • Description • Source • Destination • Type (file, screen, report, form, internal) • Data structure name • How frequently produced • Comments
Defining Data Flow (Continued) • The source of the data flow • This 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 time • This 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 number • Name • Alias name • Description • Type (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 name • Data structure
Data Structure • For compositional data flow and data store elements • Describe the elements of the data structure using algebraic notation
Data Structure • Example: 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 described • ID number • Name • Alias • Description • Type (Base: entered from user, derived: computed) • Length (in characters) [max or fixed] • Data type (date, numeric, alphanumeric) • Input/Output format • Validation criteria • Default value • Comments
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 year • This 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 number • Process name • Description • Input • Output • Type (batch, online, manual) • Prewritten code: ready made functional libraries • Process logic (Business rules) • Reference to description tables or structures • Unresolved 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. • Advantages • Understand 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 statements • Appropriate 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
Examples • http://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