Download presentation
Presentation is loading. Please wait.
Published byAnthony McGregor Modified over 11 years ago
1
Introduction to Database Development (1) IS 240 – Database Management Lecture #3 – 2004-01-22 Prof. M. E. Kabay, PhD, CISSP Norwich University mkabay@norwich.edu
2
2 Copyright © 2004 M. E. Kabay. All rights reserved. Topics: Kroenke Chapter 2 Database DBMS Creating a DB Application Components DB Development Homework
3
3 Copyright © 2004 M. E. Kabay. All rights reserved. Database: Types of Data User Data: information we care about Metadata: information about the data Indexes: information for fast access to data Application Metadata: information for showing and using data
4
4 Copyright © 2004 M. E. Kabay. All rights reserved. Types: User Data Your student information: Student_name Student_ID Student_home_address Student_residence_address Student_residence_address_term Student_grad_year Student_major Student_major_year Course_number Course_term Course_title Course_instructor Course_credits Course_grade....
5
5 Copyright © 2004 M. E. Kabay. All rights reserved. Types: User Data How to group data effectively to represent course information? 1.One big record: Student_id, student_home_address, student_major, course_term,.... 2.A record for student-specific info + a record for residence info + a record for course-specific info + linkages (relationships) Student_name, Student_ID, Student_home_address.... Student_ID, Student_residence_address, Student_residence_address_term Student_ID, Course_number, Course_term, Course_grade.... Course_number, Course_term, Course_title, Course_instructor, Course_credits.....
6
6 Copyright © 2004 M. E. Kabay. All rights reserved. User Data Examples from instructors own simple databases TODO – keeps track of things to do IYIR – keeps abstracts of security events
7
7 Copyright © 2004 M. E. Kabay. All rights reserved. (User data: TODO)
8
8 Copyright © 2004 M. E. Kabay. All rights reserved. (User data: IYIR)
9
9 Copyright © 2004 M. E. Kabay. All rights reserved. User Data Relationships First impressions of data requirements are usually too simple for realistic applications Think about what can change – may need to create records to keep track of history; e.g., ____? Think about relationships among data Relationships among data may be 1:1 (one-to-one); e.g., _____? 1:n (one-to-many) ; e.g., _____? n:n (many-to-many) ; e.g., _____? Bad designs lead to duplication, trouble in updates Normalization (to be studied later) provides systematic method for sorting out data into records with minimal trouble
10
10 Copyright © 2004 M. E. Kabay. All rights reserved. Types Metadata Information about the data and their relationships Application Metadata Forms, reports Varies among products
11
11 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: TODO)
12
12 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: TODO)
13
13 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: IYIR)
14
14 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: IYIR)
15
15 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: IYIR)
16
16 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: IYIR)
17
17 Copyright © 2004 M. E. Kabay. All rights reserved. (Metadata: IYIR)
18
18 Copyright © 2004 M. E. Kabay. All rights reserved. (Forms)
19
19 Copyright © 2004 M. E. Kabay. All rights reserved. (Forms)
20
20 Copyright © 2004 M. E. Kabay. All rights reserved. (Forms)
21
21 Copyright © 2004 M. E. Kabay. All rights reserved. (Reports)
22
22 Copyright © 2004 M. E. Kabay. All rights reserved. (Reports)
23
23 Copyright © 2004 M. E. Kabay. All rights reserved. (Reports)
24
24 Copyright © 2004 M. E. Kabay. All rights reserved. Types: Indexes Large databases can contain millions of records Without index, need to search all records Can take seconds, minutes or hours All depends on speed of I/O:
25
25 Copyright © 2004 M. E. Kabay. All rights reserved. DBMS Design Tools Run-Time DBMS Engine
26
26 Copyright © 2004 M. E. Kabay. All rights reserved. DBMS: Design Tools
27
27 Copyright © 2004 M. E. Kabay. All rights reserved. DBMS: Run-Time Infrastructure that runs the database Handles designer/user requests for database changes, data input/output Handles all the details of opening, accessing, modifying information Reads structure metadata to interpret linkages Reads form metadata to represent information readably Produces and prints reports automatically
28
28 Copyright © 2004 M. E. Kabay. All rights reserved. DBMS: DBMS Engine Turns instructions from DBMS run-time components into instructions to operating system Translates dataset names into file names Handles file I/O Handles transactions Manages locking of resources Communicates with other OS subsystems Input devices – keyboards, mouse Display units – screens Spooler – sends print output to printer
29
29 Copyright © 2004 M. E. Kabay. All rights reserved. Creating a DB Schema Tables Relationships
30
30 Copyright © 2004 M. E. Kabay. All rights reserved. Creating a DB: Schema Define all aspects of the needed data Specify names of Fields (columns) Records (table rows) Decide on domains for every field Physical format (length, types) Allowable values Empty(null) allowed? Unique? Define relations (links) among tables
31
31 Copyright © 2004 M. E. Kabay. All rights reserved. Creating a DB: Tables Turn specifications into real tables DBMS automatically handles details
32
32 Copyright © 2004 M. E. Kabay. All rights reserved. Creating a DB: Relationships Specify how to link tables Requires common fields Specify type of relationship 1:1 1:n m:n
33
33 Copyright © 2004 M. E. Kabay. All rights reserved. Application Components Will study details later Forms Queries Reports Menus Programs
34
34 Copyright © 2004 M. E. Kabay. All rights reserved. Forms Show data in different ways for different functions Lookup Data entry Data management (modification) Many different forms can exist in a single DB Can define fields that have different characteristics Read-only Specific input-values only Generate specific error messages or confirmations
35
35 Copyright © 2004 M. E. Kabay. All rights reserved. Queries Ask questions about data Planned – stored queries Ad hoc – defined on the spot Various methods SQL – Structured Query Language Sometimes pronounced sequel Often pronounced S – Q – L Visual methods – drag and drop Query-by-example (QBE) – specify requirements, then store query Query-by-form – designer supplies form, user inputs specific data
36
36 Copyright © 2004 M. E. Kabay. All rights reserved. Reports Formatted output for printers Typical banded structure Report header Page header Detail Page footer Report footer Many different report structures can be named and stored for a single DB
37
37 Copyright © 2004 M. E. Kabay. All rights reserved. Menus Windows / Mac visual interface has made drop-down menus familiar Can create application-specific menus Provide shortcut-keys if desired Menus can change from stage to stage of users progress through application program
38
38 Copyright © 2004 M. E. Kabay. All rights reserved. Programs DBMS usually include facilities for special controls (programs) Can define actions for anything that can be specified in syntax of programming language for DBMS Often highly portable across platforms as long as same DBMS used Can also write standalone programs that access database files in various languages Need application program interface (API) May not be easily portable from platform to platform
39
39 Copyright © 2004 M. E. Kabay. All rights reserved. DB Development Prototypes Top-down design/development Bottom-up design/development Data modeling
40
40 Copyright © 2004 M. E. Kabay. All rights reserved. Development: Prototypes SDLC (System Development Life Cycle) Analysis Specifications Design Coding Testing Documentation Implementation Sometimes takes too long Code is out of date by time its implemented
41
41 Copyright © 2004 M. E. Kabay. All rights reserved. Development: Prototypes Rapid Application Development (RAD) Joint Application Development (JAD) Show user mockup of application Helps to improve communications among users, analysts, programmers, trainers Modern DBMS ideal for prototyping Easy forms & reports for I/O Can include constraints easily and write good error messages quickly Write one to throw away: learn from mistakes
42
42 Copyright © 2004 M. E. Kabay. All rights reserved. Development: Top-down Design/Development Thorough analysis of requirements Plan carefully, looking at strategic issues first Develop data models of ever-more detail Advantages Reduce wasted effort, rewriting of code Expandable to new requirements because of systematic understanding Disadvantages Slow to reach production code May be inflexible in rapidly-changing area
43
43 Copyright © 2004 M. E. Kabay. All rights reserved. Development: Bottom-up Design/Development Start with specific project Often small-scale Consistent with RAD/JAD Build up from existing project by adding others as required Advantages Can be rapid to meet needs Consistent with Pareto Principle: meet 80% of needs with first 20% of development Disadvantages Can lead to false starts, reworking, difficult integration of different systems
44
44 Copyright © 2004 M. E. Kabay. All rights reserved. Development: Data Modeling Complex, sophisticated process Observe what people do as well as what they say about their information needs Users do not know how to represent data in data structures Have to see what they need to construct models But what they do now may not be the best for them – limited by current tools Good communications skills essential
45
45 Copyright © 2004 M. E. Kabay. All rights reserved. Homework Reread Chapter Two of Kroenke using Read- Recite-Review For Thu the 29th of January 2004 Answer questions 2.1 through 2.21 in writing For Tue the 27th Prepare for lab work on by running MS- ACCESS on a lab computer (or your own) Finish Ferrett et al Projects #1 & #2 Look ahead to Ferrett Projects #3 & #4
46
46 Copyright © 2004 M. E. Kabay. All rights reserved. DISCUSSION
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.