This document describes two courses - Data Structure and Algorithm and Advanced Database Management System.
The Data Structure and Algorithm course is a compulsory 3rd year course worth 4 credits that teaches concepts like data organization, algorithm design and analysis, data structures like arrays, lists, stacks, queues and trees. Students will learn to implement various data structures in a programming language.
The Advanced Database Management System course is also a compulsory 3rd year course worth 3 credits that focuses on advanced database topics like transaction processing, query optimization, security and distributed databases. Students will learn to manage, organize and secure database systems effectively.
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
0 ratings0% found this document useful (0 votes)
37 views7 pages
Data Structure and Algorithms Course Outline
This document describes two courses - Data Structure and Algorithm and Advanced Database Management System.
The Data Structure and Algorithm course is a compulsory 3rd year course worth 4 credits that teaches concepts like data organization, algorithm design and analysis, data structures like arrays, lists, stacks, queues and trees. Students will learn to implement various data structures in a programming language.
The Advanced Database Management System course is also a compulsory 3rd year course worth 3 credits that focuses on advanced database topics like transaction processing, query optimization, security and distributed databases. Students will learn to manage, organize and secure database systems effectively.
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 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