Database I:

Introduction to Database (INLS 523 )

 

Dr. Javed Mostafa

Tuesday & Thursday, 11:00-12:15PM

208 Manning Hall

School of Information and Library Science

University of North Carolina at Chapel Hill

 

 

Course Description

 

Databases are the backbones of modern scholarly, scientific, and commercial information systems. For example, NASA uses databases to manage voluminous quantities of data generated by its many missions, and large pharmaceutical companies use databases for drug-discovery. Use of databases in the humanities and social sciences is also growing. For example, the Library of Congress maintains an important database called Thomas for managing U.S. congressional records, legislations, and historical documents.

 

Establishment of rigorous standards and design principles has helped to broaden the applications of databases. However, experience has shown that careful attention to demands of users and particular contexts of use is absolutely crucial in achieving design effectiveness.

 

This course will provide instruction in both fundamental principles and user-centric methodologies for effective database design. The course will be driven by design activities conducted for a semester-long project. It will begin with a description of data flow through organizations based on tasks and operations. Then, abstraction of metadata using data modeling will be covered. Subsequently, requirements-specification will be taught, and students will generate their project descriptions based on in-depth analysis of design problems. This will be followed up with discussions on the relational model and translation of data models to schemata. Next, the focus will shift to hands-on design tasks involving queries, forms, and report generation. After a prototype design is implemented, students will perform small-scale evaluation of the system. Following this, students will learn about life-cycle issues and database maintenance. The final part of the course will concentrate on advanced database systems.

 

Course Objectives

 

*  Understand DBMS system architecture and components

*  Learn database design principles

- Requirements specification

- Data modeling

- Schema transformation

- User interaction

- Evaluation

*  Gain experience in current DB design tools

*  Apply the above cumulative knowledge to create a DB prototype and evaluate it

 

 

 

 

Course Requirements

 

*  Assignments

- 10%        Assignment 1: Complete a basic requirements specification and data model

- 10%        Assignment 2: Convert data model to schema

 

*  Project (Group Effort)

- 5%           Part 1 of project: Requirements specification with data model

- 5%           Part 2 of project- Convert data model to schema

- 10%         Part 3 of project:  Prototype & White-box and black-box test suite

- 15%         Part 4 of project: Final System and evaluation report

 

*  Oracle assignment

- 15%       Assignment 3: SQL, table creation and report generation

 

*  20% Take-home final exam

 

*  10%  Class participation: Activities in class, regular attendance, and contributions to class list

 

 

 

 

 

 

Grading

 

Based on current UNC grading scales, the following grades and corresponding numeric ranges are applicable:

 

Graduate Students

 

Grad Grade

Range

H

95-100

P

80-94

L

70-79

F

69 or below

 

Undergraduate Students

 

UG Grade

Range

A

94-100

A-

90-93

B+

87-89

B

84-86

B-

80-83

C+, C, C-

70-79

D

60-69

F

59 or below

 

Required Text-book

 

Fundamentals of Database Systems (6th Edition)

Ramez Elmasri and Shamkant B. Navathe, Addison-Wesley, 2010.

 

The previous edition of the book is adequate to fulfill most of the requirements of this course.

 

Additional Useful Books

 

Significant number of hands-on activities will involve the use of Microsoft Access 2010.  Below are recommended books (watch this space for additional recommendations).

 

Microsoft Access 2010 Bible

Michael R. Groh, Wiley, 2010.

 

 

Access 2013 Bible

Michael Alexander and Dick Kusleika, Wiley, 2013.

 

 

 

Course Outline & Calendar

 

 

Class 1 - August 20

 

Introduction to the class and distribution of the syllabus. Important dates, exam, and assignments described.

Class project requirements discussed.

 

 

 

Class 2 - August 22

 

Database systems overview.  Database system evolution: From file systems to object-oriented systems.

 

Readings: Chapter 1

 

 

 

Class 3 - August 27

 

Database planning and requirements specification.

 

 

 


Class 4 - August 29

Data flow in operations and data abstraction.

 

Assignment 1: Given a general scope of system requirements, students must produce a requirements specification document and a data model. 

 

 

 

Class 5 - September 3

 

Data modeling continues.

 

Readings: Chapters 7 and 8

 

 

 

Class 6 - September 5

 

Logical model of databases: Relational systems.

 

Readings: Chapter 3

 

 

 

 

Class 7 - September 10

 

Relational algebra and relational calculus.

 

Readings: Chapters 6

 

 

 

 

Class 8 - September 12

 

Data model to schema conversion.

 

Readings: Chapter 9

 

 

 

 

Class 9 - September 17

 

Database design refinement. Database querying introduced.

 

Readings: Chapter 4

 

 

 

Class 10 - September 19

 

Designing tables with appropriate constraints. Formulation and execution of structured query language (SQL) queries.

 

Readings: Chapters 4 and 5

 

 

 

Assignment 2: Convert the data model created in assignment 1 to a schema. 

 

 

 

Class 11 - September 24

 

Advanced SQL and SQL Programming.

 

Readings: Chapter 5

 

 

 

 

Class 12 - September 26

 

Usability, life-cycle, and evaluation of DB systems.

 

Readings: To be assigned.

 

 

 

Class 13 - October 1

 

 

Usability, life-cycle, and evaluation of DB systems (Contd.).

 

 

Readings: Chapter 10

 

 

Project Part1: Conduct requirements specification and data modeling. 

 

 

 

Class 14 - October 3

 

Interface design principles for DB systems.  Basic screen, form, and interaction design.

 

Practical database design methodology and UML diagrams.

 

Readings: To be assigned.

 

 

 

 

 

Class 15 - October 8

 

Physical DB system: Disks, files, and hashing I

 

Reading: Chapter 17

 

 

 

Class 16 - October 10

 

Physical DB systems II

 

Reading: Chapter 17

 

 

 

 

Fall Break Week - Hands-on Project Review and Intro to MS Access -- Oct 15

 

Along with the Intstructor teaching assistant will be in Room 208 Manning

 

Project part 1 returned and next project part distributed

 

Project Part2: Convert project data model to schema.

 

 

 

 

Class 17 - October 22

 

Indexing structure of files

 

 

Introduction to Oracle DB environment. 

 

Readings: Chapter 18 plus to be assigned.

 

 

 

 

Class 18 - October 24

 

Oracle DB design continues. Distributed DBs and Client-Server Systems

 

 

Readings: Chapter 21 plus to be assigned.

 

 

 

 

 

Class 19 - October 29

 

Advanced topics: Data analysis and mining.  Domain focus: Biomedicine.

 

Reading: To be assigned.

 

Assignment 3: Oracle SQL, table creation and report generation. 

 

 

 

Class 20 - October 31

 

Overview of Data Warehousing and OLAP.

 

Reading: Chapter 29

 

 

Project Part3: Project prototype, white-box, and black-box testing. 

 

 

 

 

Class 21 - November 5

 

Guest Speaker: Advanced Database Applications.

 

 

 

 

Class 22 - November 7

 

Transaction processing.  Concurrency control.

 

Reading: Chapters 21 and 22

 

A preliminary review of the project prototype will be conducted during this day.

 

 

 

Class 23 - November 12

 

XML: Extensible Markup Language

 

Reading: Chapter 12

 

 

 

 

 

Class 24 - November 14

 

Non-structured and textual data management

 

Readings: Chapter 27

 

 

 

 

Class 25 - November 19

 

Database security.

 

Reading: Chapter 24

 

 

 

 

Class 26 - November 21

 

Beyond structured data management.  Temporal, Spatial, and Multimedia data.  Exam review.

 

 

Readings: Chapter 26

 

Reminder: Project Part3: Develop white-box and black-box test suite. 

 

Project Part 4: Final project system and evaluation report.  A brief presentation from each group will be expected (different groups will take turns). Class presentation requirements review.

 

 

 

 

Class 27 - November 26

 

 

Class presentatons and wrap-up.

 

 

 

 

 

Class 28 - December 3

 

Class presentations.

 

 

Final Exam, Project Access System and Evaluation Report due.

 

 

Contact Information

 

Instructor Office hours: Tuesday 2P-3P. The instructor will be in Room 300A, Manning Hall.

TA Office hours: Thursday 2-3P. The TA will be in Room 300, Manning Hall.

Please do not hesitate to contact the instructor or the GA to schedule other meeting times.

 

Ph:          (919) 610-6230

Fax:         (919) 962-8071

Email:     jm@unc.edu (instructor)