You are on page 1of 7

Unity University

Course Number COSC3061

Course Title Data Structure and Algorithm

Degree Program BSc. In Computer Science

Credits/Contacts 4/5

Prerequisite COSC2021, COSC2042

Semester 1st Semester / Year III

Status of Course Compulsory

Course Description The course is designed to enable students to


identify way in which data can be structured and
stored in memory. The ideas of various structures
can be implement in the field of computer –based
information systems like in database management
systems, networks, operating systems and global
information systems.

Course Objectives and After a successful completion of this course,


Competences to be students will be able to :
acquired
 Organize and manipulate data in a
computer storage
 Apply the fundamental concept in the
design and analysis of algorithms
 Understand linear and non-linear data
structures
 Get familiarized with searching and sorting
techniques
 Implement various data structures using a
programming language
Course Contents 1. Algorithm Analysis
1.1.Computational complexity
1.2.Size of algorithm
1.3.Order of algorithm
1.4.Big-O notation
1.5.Synergy between data structure and
algorithm
2. Simple Sorting Algorithms and their analysis
2.1. Bubble sort
2.2. Selection sort
2.3. Insertion sort
3. Simple Searching Algorithms and their analysis
3.1. Sequential search
3.2. Binary search
4. Data structures:
4.1.data types
4.2.abstract data types
4.3.Data structure.
4.4.Importance of data structures in
computer programming
5. Types of data structure:
5.1. linear
5.2. non-linear data structure;
5.3. Array: declaration
5.4. classification
5.5. application of arrays
6. List:
6.1. operations,
6.2. list implementation (array list, linked list),
6.3. singly linked list
6.4. doubly linked list,
6.5. sorted list
7. Stack:
7.1. operation,
7.2. static stack
7.3. dynamic stacks
7.4. application of stacks
8. Queues:
8.1. operations of queues,
8.2. storing queues in static data structure
8.3. storing queues in dynamic data
structures
9. Trees:
9.1. General Tree
9.2. binary search trees
9.3. common operations on tree
9.3.1. trees transversal
9.3.1.1. inorder traversal
9.3.1.2. postorder traversal
9.3.1.3. preorder traversal
9.3.2. applications of tree in computer
programming
Teaching and learning  Lecture
Methods  Laboratory, Practical work

Assessment/Evaluation  Theoretical Tests (20%)


and Grading System  Assignment (15%)
 Practical Test (15%)
 Final Exam (50%)
Text Books 1. Michael T. Goodrich, Roberto Tamassia and
David M. Mount; Data Structures and
Algorithms in C++ , 2nd ed. (2011), Wiley.
Reference Materials 1. William J. Collins, Data Structures and the
Standard Template Library, McGraw-Hill
Science/Engineering/Math, 2002
2. Adam Drozdek, Data Structures and
Algorithms in C++(2nded), USA, Thomson
Brooks/Cole , 2001
3. Mark Allen Weiss, Data Structures and
Problem Solving Using C++ (2nded), USA,
Addison-Wesley, 1999
4. Yadidyah. Langsam, Augenstein. Moshe
J.,TEnenbaum. AronM.,Data Structures Using
C and C++, Pearson Education Inc., New
Jersey , USA.1996
Unity University

Course Number COSC3071

Course Title Advanced Database Management System

Degree Program BSc. In Computer Science

Credits/Contacts 3/4

Prerequisite COSC2072

Semester 1st Semester / Year III

Status of Course Compulsory

Course Description This course focuses on the client or user side of


Database systems. It extends the knowledge in the
previous course by adding concepts of database
management and use. Topics to be covered are
transaction management, Concurrency problems
and controlling techniques, database security.
Besides to the advanced concepts of relational and
centralized database systems,

The course will covers more advanced topics on


Distributed database, Object-Oriented and Object-
and Data mining and data warehouse.

This course is supported by a series of laboratory


sessions on database management,
administration and security issues.

Course Objectives and On completion of this course students should be


Competences to be able to:
acquired
 Manage a database system
 Understand how to organize and use
databases effectively
 Identify the related issues with object-
relational databases.
 Explain basics of query optimization.
 Understand transaction processing
concepts.
 Understand database recovery techniques.
 Identify database security issues.
Course Contents 1. Transaction Management and Concurrency
Control
1.1. Transactions
1.2. Transaction Support
1.3. Concurrency Control
1.4. Database recovery
2. Query Processing and Optimization
2.1. Query Processing steps
2.2. Query Decomposition
2.3. Optimization Process
2.4. Approaches to Query Optimization
2.5. Transformation Rules
2.6. Implementing relational Operators
2.7. Pipelining
3. Database Security
3.1. Threats to database Security
3.2. Data base Security measures
4. Distributed Database Systems
4.1. Concepts of Distributed Databases
4.2. Distributed Database Design
4.3. Distributed Query Processing and
Transaction Management
5. Data warehousing and Data Mining
Techniques
5.1. Data Warehousing
5.2. Data Mining
6. Object Oriented DBMS
6.1. Object Oriented Concepts (Abstraction,
Encapsulation, and Information hiding)
6.2. Drawbacks of relational DBMS
6.3. OODBMS issues
6.4. OO Database Design and Implementation
6.5. OO Data modeling and EER diagramming
6.6. Objects and Attributes
6.7. Object Identity
6.8. Object Definition and Query Languages
Teaching and learning  Lecture
Methods  Laboratory, Practical work

Assessment/Evaluation  Theoretical Tests (10%)


and Grading System
 Assignment (10%)
 Practical Tests (15%)
 Project work (15)
 Final Exam (50%)
Text Books 1. Fundamentals of Database Systems (7th
Edition) by Ramez Elmasri and Shamkant
B.Navathe,
Reference Materials 1. Database Systems: Introduction to Databases
and Data Warehousesby NenadJukic , Susan
Vrbsky, et al. , 2016
2. Database Systems: A Practical Approach to
Design, Implementation, and Management (6th
Edition)by Thomas Connolly and Carolyn
Begg | 2014
3. Abraham Silberschatz, Henry F. Korth, S.
Sudarshan. 2005. Database System Concepts
(5th ed). ISBN-10 0071244763. 1024 p.
4. Database Processing. Fundamentals, Design
and Implementation by David M. Kroenke, 13th
Ed. 2013
5. Peter Rob & Carlos Coronel, Database Systems:
Design Implementation and Management,
10thEd., Thomson Course Tech. 2012
6. Richard T. Watson, Data Management:
Database and Organizations, 4th Ed., Jhon
Wiley & Sons, 2004

You might also like