0% found this document useful (0 votes)
8 views

Advanced database course sylibus.edited

The document outlines a course on Advanced Database Systems at the University of Gondar, detailing the course description, goals, prerequisites, and assessment methods. It includes a comprehensive schedule of topics to be covered, such as query optimization, transaction management, and database security, along with a laboratory course outline. The course emphasizes a student-centered learning approach with various teaching methods and assessment types, including assignments and exams.

Uploaded by

tseella038
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views

Advanced database course sylibus.edited

The document outlines a course on Advanced Database Systems at the University of Gondar, detailing the course description, goals, prerequisites, and assessment methods. It includes a comprehensive schedule of topics to be covered, such as query optimization, transaction management, and database security, along with a laboratory course outline. The course emphasizes a student-centered learning approach with various teaching methods and assessment types, including assignments and exams.

Uploaded by

tseella038
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

University of

College of Informatics
Gondar

Department: Computer Science


Module Title: Database Systems Module Code: CoSc-M2061
Module ECTS: 12
Course Tile: Advanced Database systems Course Code: CoSc2042

Instructor Name: Course ECTS: 6

Instructor’s Contact Information: Course Information:


Office –T-09, 203 Academic Year:
Phone: Year: III
Email: Semester: II
[email protected] Meeting day: Saturday & Sunday
Office Hours: Meeting time: 9:00-12:00(LT lab)
Meeting location: E2

1. Course Description:
This course deals with, query optimization, transaction management, recovery, and
concurrency control, database authorization and security. Additional topics including,
object-oriented and object-relational database system, distributed databases, databases,
and integration may also be covered. A major component of the course is a database
implementation project using current database languages and systems.

2. Course Goals or Learning Outcomes:


By the end of this course, students will be able to:

 Describe the main concepts of the OO model such as object identity, type
constructors, encapsulation inheritance, polymorphism, and versioning
 Evaluate a set of query processing strategies and select the optimal strategy.
 Know the basics of transaction management and concurrency control
 Understand database security
 Use different recovery methods when there is a database failure
 Design a distributed database system in homogeneous and heterogeneous
environments
3. Prerequisites: Fundamentals of Database Systems(CoSc2071)
4. Reference
Textbook:
 Ramez Elmasri and Shamkant B. Navathe (2000) Fundamentals of Database
Systems, 3rd edition.
Reference books:
 Massachusetts Addison-Wesley C. J. Date (2000) An Introduction to Database
Systems. Massachusetts: Addison Wesley
 Ramakrishna, Raghu & Johannes Gehrke (2000) Database Management Systems, 2nd
edition. McGraw Hill
 Shepherd John C. (1990) Database Management: Theory and Practice. Boston:
 IRWIN
 Database Management Systems, 2/e. Raghu Ramakrishna & Johannes Gehrke ,
McGraxv-Hill, 1998.
 Database System Concepts 3/e. Abraham Silberschatz H e r i y F Korth & S. Sudarshan,
McGraw-Hill,1997.
 A First Course in Database Systems, Jeffrey Ullman & Jennifer Widom, Prentice-
Hall, 1997.
 Database System Implementation, Hector Garcia-Molina, Jeffrey Ullman & Jennifer
Widom, Prentice-Hall, 2000.
 Readings in Database Systems, Michael Stonebraker & Joe Hellerstein, eds,
Morgan-Kaufmann, 1998

5. Summary of Teaching Learning Methods:


The learning–teaching methodology will be student-centered with the appropriate guidance of
instructor/s during the students' activities. There will be Lecture, Demonstrations, Lab work
Tutorials, Reading assignments and Group Discussions
6. Summary of Assessment Methods:

The course will be assessed using the different assessment methods like Quizzes, Reading
assessments, Assignments, Project, Mid exam and Final exam

7. Assignments:
There will be two assignments which will be scrutinized meticulously and graded. Further detail
as to content, process, and timing will be provided in due course. Your grade will be based on
satisfactory completion of each of the assignments in a timely manner, and the quality of work
represented by those assignments. A checklist is provided for each assignment. Assignments must
be submitted on the due date given for a particular assignment If not the student will be penalized
10% of the total mark of the assignment. Assignments for the course will be 2 main types:
 Basic Concept Assignments - These may consist of handouts given by the instructor,
discussion forums, or selected questions out of your textbook.
 Projects - These consist of activities for directly applying and integrating the concepts
presented in the course. In some cases, you will be given a case scenario to use in the
development of the project. These projects will require you to use critical thinking skills,
logical analysis, and creativity. They may be individual or group projects.
8. Student Workload: Taking into consideration that 1ECTS accounts for 27 hours of student work, the
course Fundamentals of Database Systems has 6*27hr=162 hrs the split up is as shown below:-:
Lecture 48
Tutorials 16
Lab work 48
Home study 50
Total 162
9. Policies:
Grading policies
 Student grade and performance will be evaluated as the whole activities (tests(30%)+lab exam/
project (20%)+ final exam(50%))=total(100%).

 The final score will be converted to a letter grade using the following scale:

[Grade scale to be referred....]

10. Schedule:

The following is an outline of the order in which syllabus contents will be covered. The exact dates and
due dates for assignments and exams can be found on the class calendar and are subject to change with
notice.
Date Topic Subtopic Reading
Week 1-2 Concepts for Object-Oriented Databases Ref-1 part 4
Chapter 11
 Overview of Object-Oriented Concepts
 Object Identity, Object Structure, and Type
Constructors
 Encapsulation of Operations, Methods, and Persistence
 Type Hierarchies and Inheritance

Week 3-4 Query processing and Optimization


Translating SQL Queries into Relational Algebra
Basic Algorithms for Executing Query Operations Ref-1 part 8
Using Heuristic in Query Optimization Chapter 19
Using Selectivity and Cost Estimates in Query
Optimization
Semantic Query Optimization

Week 5-6 Transaction Processing Concepts


Ref-1 part 9
Introduction
Transaction and System Concepts Chapter 21
Properties of Transaction
Schedules and Recoverability
Serializability of Schedules
Transaction Support in SQL

Week 7-8 Concurrency Control Techniques


Locking Techniques for Concurrency Control
Concurrency Control Based ON Timestamp Ordering
Multisession Concurrency Control Techniques
Validation (Optimistic) Concurrency Control Technique Ref-1 part 9
The granularity of Data Items and Multiple Granularity Chapter 22
Locking
Using Locks for Concurrency Control in Indexes
Week 9-10 Database Recovery Techniques
 Recovery Concepts Ref-1 part 9
 Recovery Concepts Based on Deferred Update Chapter 23
 Recovery Concepts Based on Immediate Update
 Shadow Paging
 The ARIES Recovery Algorithm
 Recovery in Multi-database Systems

Week 11 Database Security and Authorization


Ref-1 part 10
 Introduction to DB Security Issues Chapter 24
 Discretionary Access Control Based on Granting
/Revoking of Privileges
 Mandatory Access Control for Multilevel Security
 Statistical DB Security

Week 12 Distributed Database System


Ref-1 part 10
 Distributed Database Concepts Chapter 24
 Data Fragmentation, Replication, and Allocation
Techniques for Distributed Database Design
 Types of Distributed Database Systems
 Query Processing in Distributed Databases

Laboratory Course Outline

Week 1: Introduction and Software Installation


1.1. (Microsoft SQL Server or Oracle DB)
Week 2: Objet-Oriented Database
1.1. Object Identity
1.2. Object Query Language (OQL)
Week 3: Query Processing and Optimization
1.1. Query Execution Plan
1.2. Query Optimization
Week 4: Transaction Management
1.3. Basic Syntax of Transactions
1.3.1. What are Transactions
1.3.2. Beginning Transaction
1.3.3. Committing or Rolling Back
1.3.4. Creating Named Transactions
Week 5: Transaction Management
1.4. Making Use of Transactions
1.4.1. Conditionally Committing or Rolling Back
1.4.2. Transactions with Error Handlers
Week 6: Transaction Management
1.4.3. Automatic Rollback
1.4.4. Nested Transactions
Week 7: Transaction Management
1.4.5. Using Save points
1.4.6. Transactions in Stored Procedures
Week 8: Concurrency Control Techniques
4.1. Locking
4.2. Timestamping
Week 9: Concurrency Control Techniques
4.3. Multi-version Concurrency Control
4.4. Locks for Indexes
Week 10: Database Recovery Techniques
5.1. Backup and Recovery Concepts
5.2. Backup
5.3. Recovery
Week 11: Database Security and Authorization
6.1. List the different Types of Accounts in SQL Server or Oracle DB
6.2. Explain the use of Server Roles
6.3. Demonstrate how to Grant and Deny Permissions
6.4. Describe Database Roles
6.5. Describe How to Work with Database Permissions
Week 12: Distributed Database
7.1. Distributed Database Concepts
7.2. Data Fragmentation
7.3. Replication
7.4. Allocation Techniques
7.5. Query Processing in Distributed Databases
Week 13: Triggers
8.1. Triggers
Week 14: Stored Procedures
8.2. Stored Procedures

You might also like