Presentation is loading. Please wait.

Presentation is loading. Please wait.

Information Systems Development MIS331

Similar presentations


Presentation on theme: "Information Systems Development MIS331"— Presentation transcript:

1 Information Systems Development MIS331
BMGT Data Modeling Information Systems Development MIS331 Computer-Aided Software Design Data Normalization 7/14/2019 MIS331

2 Agenda Good news and bad news about CASE CASE adoption issues
BMGT Data Modeling Agenda Good news and bad news about CASE CASE adoption issues CASE components and functions Where does it fit in? Oracle Designer/2000 Overview Data Normalization Techniques Issues concerning Normalization 7/14/2019 MIS331

3 Computer-Aided Software Engineering
BMGT Data Modeling Computer-Aided Software Engineering Objectives of CASE… - Improve system quality - Decrease production and development time - Reduce level of effort needed for testing - Improve integration of multiple development projects - Improve documentation - Promote formalized development standards - Improve project management activities - Reduce efforts associated with maintenance - Allow for reusable code to become a reality - Improve system portability 7/14/2019 MIS331

4 The Good News and the Bad News
BMGT Data Modeling The Good News and the Bad News Now for the bad news… CASE is extremely expensive Initial training costs are extremely high Organizational confidence in IS is low Methodology standards do not exist CASE is often viewed as a threat CASE does not have a great past history First, the good news… shorter development times are possible CASE does improve productivity CASE does improve quality Employee skill inventories improve Portability is easier Management of SDLC is easier 7/14/2019 MIS331

5 CASE Components Diagramming tools Screen and report generators
BMGT Data Modeling CASE Components Diagramming tools process, data, control diagrams Screen and report generators prototyping for “look and feel” issues Analysis tools checks for errors, omissions, inconsistencies, etc. Repository where it is all stored Documentation generators guess what these do... Code generators COBOL, C++, VB, HTML, Pascal 7/14/2019 MIS331

6 How does it all fit together?
BMGT Data Modeling How does it all fit together? Without CASE… Analyst spends most of the time maintaining the code and the documentation change the code…change the documentation With CASE… Analyst focuses primarily on maintaining the models change the model…everything else changes automatically 7/14/2019 MIS331

7 Oracle Designer/2000 Current release is called Oracle Designer
BMGT Data Modeling Oracle Designer/2000 Current release is called Oracle Designer Installation costs can exceed $50,000 Multi-user Repository Code generators currently support multiple languages C++, COBOL, Fortran, Visual Basic, HTML Complete life-cycle spanning capabilities Includes reverse engineering modules 7/14/2019 MIS331

8 Data Normalization Normalization is a process of data “filtration”
BMGT Data Modeling Data Normalization Normalization is a process of data “filtration” Each step filters a specific data characteristic out of the attribute set When complete, the data set is organized into a simple group of stable data structures…sometimes too stable Why do we normalize? primarily to minimize data redundancy minimizing redundancy improves database integrity normalization helps identify missing entities and relationships 7/14/2019 MIS331

9 Data Normalization Process
BMGT Data Modeling Data Normalization Process Repeating Elements Raw Data Elements Functional Dependencies First Normal Form (1NF) Transitive Dependencies Second Normal Form (1NF) Third Normal Form (1NF) 7/14/2019 MIS331

10 BMGT Data Modeling First Normal Form - 1NF ORDER ORDER NUMBER ORDER DATE MEMBER NUMBER MEMBER NAME MEMBER ADDRESS GROUP STREET P.O. BOX NO. CITY STATE ZIPCODE PHONE ORDER SUBTOTAL SALES TAX AMOUNT PREPAID ORDER TOTAL ORDER ORDER NUMBER ORDER DATE MEMBER NUMBER MEMBER NAME MEMBER ADDRESS GROUP STREET P.O. BOX NO. CITY STATE ZIPCODE PHONE PRODUCT (repeats 1-n times) PRODUCT NO. MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION ORDER SUBTOTAL SALES TAX AMOUNT PREPAID ORDER TOTAL ORDER ORDER NUMBER ORDER DATE MEMBER NUMBER MEMBER NAME MEMBER ADDRESS GROUP STREET P.O. BOX NO. CITY STATE ZIPCODE PHONE PRODUCT (repeats 1-n times) PRODUCT NO. MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION ORDER SUBTOTAL SALES TAX AMOUNT PREPAID ORDER TOTAL An entity is in 1NF if there are no elements or groups of elements that repeat for a single occurrence of the entity. Any elements that repeat actually describe an occurrence of a separate entity. probably one that hasn’t yet been defined in the data model ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION 7/14/2019 MIS331

11 BMGT Data Modeling Second Normal Form - 2NF An entity is in 2NF if it has a combination key and all non-key elements are derived by the full key, not part of it. no partial functional dependencies ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE DESCRIPTION QUANTITY UNIT PRICE EXTENSION ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE QUANTITY UNIT PRICE EXTENSION 7/14/2019 MIS331

12 Quantity x Unit Price = Extension
BMGT Data Modeling Third Normal Form - 3NF An entity is in 3NF if the values of its non-key elements are not dependent on any other non-key elements. only necessary to check entities with non-combination keys most common transitive dependency is a calculated (derived) field. ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE QUANTITY UNIT PRICE EXTENSION ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE QUANTITY UNIT PRICE EXTENSION ORDERED PRODUCT ORDER NUMBER+ PRODUCT NO.+ MEDIA CODE QUANTITY UNIT PRICE Quantity x Unit Price = Extension 7/14/2019 MIS331

13 De-Normalization Y-T-D Sales = S(Daily Sales to date)
BMGT Data Modeling x De-Normalization Once the data is in 3NF we must concern ourselves with balancing minimum redundancy with maximum performance. consider the problem of year-to-date sales Y-T-D Sales = S(Daily Sales to date) Assume Daily Sales = approximately 1,000 transactions per day... If the report is run on January 2 at day end, the query needs to add approximately 2,000 transactions to reach a total. If each transaction takes 0.01 seconds to tally, then the report will take: 2,000 transactions x 0.01 seconds = 20 seconds If, however, the report is requested on December 31 at day end, the query needs to add approximately 365,000 transactions to reach a total. Now the time to receive a response will be: 365,000 transactions x 0.01 seconds = 3,650 seconds = hours 7/14/2019 MIS331

14 BMGT Data Modeling So…... Certain situations may require the designer to de-normalize some data elements. How can we solve this year-to-date thing? De-normalize the data elements to allow for the tabulation and storage of month-to-date totals. This action will purposely create a file full of fields that are calculated and thus, not in 3NF. But... Total time per monthly calculation = 5.07 minutes Total time for y-t-d report on December 31 = 0.12 seconds 7/14/2019 MIS331

15 Next Classes... More on CASE tools on Thursday
BMGT Data Modeling Next Classes... More on CASE tools on Thursday Case #3 Presentation - Group C - on Tuesday Knowledge Demonstration next Thursday, 2/27 Spring Break first week of March Case #4 Presentation - Group D - on 3/11 Chapter 8 for class on 3/13 7/14/2019 MIS331


Download ppt "Information Systems Development MIS331"

Similar presentations


Ads by Google