0% found this document useful (0 votes)
204 views7 pages

Programming, Logic, and Database Courses

This document outlines the course plan for a Database Systems course. The course will cover database concepts like the database architecture, entity-relationship modeling, keys, logical database design using the relational model, and normalization. It will also cover the relational algebra and query language SQL. The course is designed to teach students how database management systems are used to design, develop, implement and maintain database applications in organizations. It will consist of 16 weekly lectures covering topics like the database design lifecycle, E-R diagrams, functional dependencies, normalization up to 3NF, and SQL.

Uploaded by

Rehman Ahmad Ch
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
204 views7 pages

Programming, Logic, and Database Courses

This document outlines the course plan for a Database Systems course. The course will cover database concepts like the database architecture, entity-relationship modeling, keys, logical database design using the relational model, and normalization. It will also cover the relational algebra and query language SQL. The course is designed to teach students how database management systems are used to design, develop, implement and maintain database applications in organizations. It will consist of 16 weekly lectures covering topics like the database design lifecycle, E-R diagrams, functional dependencies, normalization up to 3NF, and SQL.

Uploaded by

Rehman Ahmad Ch
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

The Islamia University of Bahawalpur

Department of Computer Science & IT


MCS 1st Semester
Course Code: CSIT-21101
Course Title: Programming Fundamentals
Credit Hours: 3(2-1)
Course Descriptions:
This course provides a basic introduction to computers and fundamental programming concepts and methods
of procedural programming. Emphasis is on problem solving using algorithmic development methods; good
programming practices and style. A C++ is used as tool in learning programming. Designed to be a first course
for students with little or no prior programming experience.
Weekly Lecture Plan:
1. Introduction To Programming Languages
High level / Low-level Languages, Compilers, Linkers, Prog. And Problem solving, Algorithms, Flow charts,
Program design process: problem solving phase & Implementation phase, Program errors: Syntax /
Runtime / Logic errors, Introduction to C++, Layout of a simple C++ program, A sample C++ program
explained. Debugging a C++ program.
2. C++ Basics
Data Types, Basic I / O, Constants, Variables, Arithmetic Operators, Operator precedence.
3. Control Structures I (selection)
Relational Operators, Logical Operators and Logical Expressions, Selection: if statement, Switch
statement.
4. Control Structures II (selection)
while, for, do-while loops
5. Control Structures III (selection)
while, for, do-while loops
6. Control Structures IV (selection)
Nested control structures.
7. User-Defined Functions I
Definition, Arguments, Returning a value, Scope rules, Call by value, Call by reference
8. User-Defined Functions II
Inline Functions, Function Template
9. Mid Term Exam
10. Arrays
Declaration, Initialization, Accessing and processing one-Dimensional Arrays
11. String
Declaration, Initialization, Accessing and processing Strings
12. Arrays & String : Applications and Extensions
List Processing: Searching, Sorting, Multidimensional Arrays
13. Pointers I
Declaring, Dereferencing, Initializing Pointer variables, Functions and Pointers.
14. Pointers II
Pointer expressions and arithmetic
15. Records(structures)
Accessing, comparison, I/O, Arrays versus Structs, Structs in Arrays
16. Input / Output Streams I
I/O streams, Output formatting, File Input/Output
17. Final Term Exam
Text Book:
1. C++ How to Program, Paul Deitel & Harvey Deitel
Reference Book(s):
1. D. S. Malik, “C++Programming: From Problem Analysis to Program Design”
2. Behrouz A Frouzan, “A structured Approach using C++”,
3. Robert Lafore, “Object-Oriented Programming in C++”, 3rd Edition, Sams Publishing, 1999
The Islamia University of Bahawalpur
Department of Computer Science & IT
MCS 1st Semester

Course Code: CSIT-21102


Course Title: Digital Logic Design
Credit Hours: 3(2-1)
Course Descriptions:
This course provides a modern introduction to logic design and the basic building blocks used in digital
systems, in particular digital computers. It starts with a discussion of combinational logic: logic gates,
minimization techniques, arithmetic circuits, and modern logic devices such as field programmable logic gates.
The second part of the course deals with sequential circuits: flip-flops, synthesis of sequential circuits, and
case studies, including counters, registers, and random access memories. State machines will then be
discussed and illustrated through case studies of more complex systems using programmable logic devices.
Different representations including truth table, logic gate, timing diagram, switch representation, and state
diagram will be discussed.
Weekly Lecture Plan:
Week 1: Number system DLD
Overview: Digital and Analog Quantities, Digital Waveform and its Characteristics (Period, Frequency,
Duty Cycle), Binary Number System, Hexadecimal Number System, Octal Number System
Week 2: Number system DLD
Addition, Subtraction, Multiplication, Division of Binary , Hexadecimal , and Octal Number Systems
Week 3: Binary Codes
BCD, BCD addition, Gray Code, Binary to Gray code conversion and ACSII Code
Week 4: Complements in DLD
1’s complements, 2’s complements, subtraction with 2’s complements
Week 5: Logic Gates
Invertor, AND, OR, NAND, NOR, XOR, XNOR, Boolean Addition, Boolean Multiplication
Week 6: Boolean Algebra (Mathematics of Digital Systems)
Laws and Rules of Boolean Algebra
Week 7: Boolean Algebra (Mathematics of Digital Systems)
Boolean Analysis of Logic Circuits, Sum of Products(SOP), Product of Sums(POS) Forms and
Simplifications
Week 8: Karnaugh Maps
K-Maps, 2 Variables K-Maps, 3 variables K-Maps and 4 variables K-Maps, Simplification of K-Maps
Mid-Term Examinations
Week 9: Combinational Logic
Combinational Logic, Adder, Half Adder, Full Adder, Parallel Binary Adder, Subtractor, Half Subtractor,
Full Subtractor, Code Conversion
Week 10: Combinational Logic with MSI and LSI
Integrated Circuit(IC) and its generations, Carry Propagation, Magnitude Comparator
Week 11: Decoder and Encoder
Comparator, 2-4 lines single bit Decoder, 3-8 lines single bit Decoder, Combinational Logic
Implementations, Encoder, Decimal to Binary Encoder, Introduction to 7 segments display
Week 12: Multiplexer & Demultiplexer
Multiplexor/ DeMultiplexor, Concept of Parity, parity generators and checkers
Week 13: Sequential Logic (Flip Flops)
Flip Flops: Introduction to Flip Flops, Types of flip flops (SR, JK, D) and flip flop applications,
Latches: overview of latches, Difference in latches and flip flops
Week14: Counter
Synchronous Counters, Asynchronous Counters and their applications
Week15: Shift Registers
Serial In/Serial Out, Serial In/ Parallel Out, Parallel In/ Serial Out, Parallel In/ Parallel Out
Week16:
Memory Basics, Basic Memory Operation ( Write/ Read Operation) ,Memory Decoding (logical
construction and block diagram of m x n RAM) Example given in Morris Mano (4x3 RAM)
Final Term Exam:

Text Book:
2. Digital Fundamentals by Thomas L. Floyd, Prentice Hall; 11th Edition.
Reference Book(s):
4. Fundamentals of Digital Logic with Verilog Design by Stephen Brown and Zvonko Vranesic, McGraw-
Hill; 3rd Edition, ISBN-10: 0073380547
5. Digital Design, by M. Morris Mano, Michael D. Ciletti, 4th Edition, Prentice Hall (2007). ISBN-10:
0131989243
6. Fundamentals of Logic Design by Jr. Charles H. Roth and Larry L Kin
The Islamia University of Bahawalpur
Department of Computer Science & IT
MCS 1st Semester

Course Code: CSIT-21103


Course Title: Database Systems
Credit Hours: 3(2-1)
Course Descriptions:
This course will illustrate the important role that database systems play in an organization and provide you
with a background to understand the subject, and a foundation upon which to build your management
decisions. This course is designed to investigate how database management system techniques are used to
design, develop, implement and maintain modern database applications in organizations.
Weekly Lecture Plan:
1. Introduction, Advantages of DBMS and its User
Database, Database management System (DBMS), Example of popular DBMS, Traditional File
Processing System, Advantages and Disadvantages of Database Approach, Database Administrator:
Functions of DBA, End Users
2. Detailed Diagrams and Database Design, Detailed DFD Diagrams
Database design Life Cycle, Traditional System Analysis Approach, Staged Database Design Approach,
Context DFD, Diagram 0, Detailed DFD, Data Dictionary with types and uses
3. Database Architecture
Three Level Architecture, External/Conceptual Mapping, Conceptual/Internal Mapping, Logical and
Physical Data Independence, Brief introduction of Database Models,
4. Entity-Relationship Data Model
Introduction and Purpose of E-R Model, Entity and its Types, Attributes and its Types, Domain of
Attribute, Relationship and its Types, Cardinality of Relationship
5. E-R Diagrams:
Symbols with representation, Different ways to show cardinalities of relationship in E-R Diagrams,
Working Example of E-R Model: Scenario Based Examples to explain how to identify Entities, Attributes
and Relationship among different entities and how to draw a complete E-R Diagram
6. Key and its different types
Super Keys, Candidate Keys, Primary Keys, Alternate / Secondary Keys, Foreign Keys
Dependencies: Existence Dependency, Identifier Dependency, Referential Dependency
7. Logical Database Design, Relation Data Model
Relational Model: Introduction, Uses and Advantages of Relational Model, Database Relations,
Properties of Relations, Degree and Cardinality of a Relation, Integrity constraints: Entity Integrity,
Referential Integrity
8. Relational Algebra, Joins
SELECT Operator, PROJECT Operator, Product, Theta Join, Equijoin, Natural Join, Semi Join, Outer Join,
Set Operations (Union, Difference, Intersection) Mapping an E-R Model to Relational Model (Basic
Concepts), Theta Join, Equi Join, Semi Join, Natural Join, Outer Joins
9. Mid Term Exam
10. Normalization
Functional Dependency with examples, First Normal Form with examples, Full Functional Dependency
with examples, Second Normal Form with examples, Transitive Dependency with examples, Third
Normal Form with examples
11. Normalization
Normalization Process with different examples to explain how to normalize an un-normalized data
12. Structured Query Language (SQL)
Data Definition Language (DDL), Data Manipulation Language (DML), Different commands of SQL with
different examples, SELECT Statement, Where Clause and Operators (Not, Between, IN, Like), Order By
Clause, Having Clause, Functions
13. Structured Query Language (SQL)
CREAT Statement, INSERT INTO Statement, DELETE Statement, UPDATE Statement
14. Views, Transaction
Introduction and Types of Views, Transaction Management, Concept of a Transaction, Transactions
and Schedules, Concurrent Execution of Transactions
15. Database Recovery
Recovery Sequence, Check Points, Updates
16. Concurrency Control, Locking
Concurrency control problems, Serial and interleaved schedules, Serializability theory, Introduction to
locking
17. Final Term Exam
Text Book:
3. Database systems: principles, design, and implementation, Catherine M. Ricardo, Macmillan, 1990.
ISBN: 9780023996658
Reference Book(s):
7. Database Systems, C.J. Date, Addison Wesley Pub. Co. (2004)
8. Fundamentals of Database Systems by R. Elmasri and S. Navathe. 6th Edition, Addison-Wesley (2010).
ISBN-10: 0136086209.
9. Modern Database Management by Fred McFadden, Jeffrey Hoofer, Mary Prescott, Prentice Hall; 11th
Edition (July 26, 2012). ISBN-10: 0132662256
The Islamia University of Bahawalpur
Department of Computer Science & IT
MCS 1st Semester
Course Code: CSIT-21104
Course Title: Operating System
Credit Hours: 3(2-1)
Course Descriptions:
Students have developed a thorough understanding of the principles and concepts involved in the design of
operating systems. Students have an in-depth understanding of the various OS services for threads, inter-
process communication, process synchronization, and file systems, offered as system or library calls in UNIX
and Linux operating systems.
Weekly Lecture Plan:
Week No Topics to be covered
Week 1 Introduction to the OS and its Architecture
2  What OS do?
 Computer System Organization
 Computer System Architecture
Operating System Types and Operations
 Single-user systems
 Batch systems
 Multi-programmed systems
 Time-sharing systems
 Real-time systems
 Interrupts, traps, and software interrupts

Week 2 Operating System Services and Structure


 Operating system services
 System calls
 Operating system structures (monolithic, microkernel-based, layered, virtual
machine)
Processes
 Process concept (process, states, attributes, etc.)
 Process scheduling (scheduler)
 Context switching (dispatcher)
 Operations on processes (creation, termination, signaling, etc.)
Processes (continued)
Week 3  Interprocess communication
 Interprocess communication in UNIX/Linux (pipe, FIFO, socket, message
queue, etc.)
 UNIX/Linux IPC calls (pipe, mkfifo, read, write, close, etc.)
Week 4 Processes (continued)
Threads
 Thread concept (thread, states, attributes, etc.)
 User- and kernel-level threads
 Multithreading Models
Week 5 CPU Scheduling
 Basic concepts
 Scheduling criteria
 Scheduling algorithms (First-Come-First-Serve, Shorted-Job-First)
CPU Scheduling (continued)
 Scheduling algorithms (Round Robin, Priority Algorithm, etc)
 Optimal scheduling
Week 6 Process Synchronization
 Basic concept
 The Critical Section Problem
 Solutions for the Critical Section Problem
 2-Process Critical Section Problem solutions
Week 7 Process Synchronization (continued)
 Mutex Locks
 Semaphores
Week 8 Process Synchronization (continued)
 Classic Problems of Synchronization
 Monitors
Mid Term Examination
Week 9 Deadlocks
 System model
 Deadlock characterization
 Deadlock handling
 Deadlock prevention
Week 10 Deadlocks (continued)
 Deadlock avoidance
 Banker’s algorithm
 Deadlock detection and recovery

Week 11 Memory Management


 Background, Address Binding
 Various techniques for memory management
 Logical to physical address translation
 Swapping
 Contiguous memory allocation
 MFT
 Internal Fragmentation
 MVT
 External Fragmentation
Week 12 Memory Management (continued)
 Paging
 Hardware support for paging
 Internal fragmentation
 Performance of paging
 Page table issues
 Multi-level paging
 Segmentation
Hardware support for segmentation
Week 13 Virtual Memory
 Basic concept
 Demand paging
 Copy-on-write files
Week 14 Virtual Memory (continued)
 Page replacement (basic concept and replacement algorithms)
 Thrashing
Week 15 File System Interface
 Basic concepts (file attributes, operations, types, structure, etc.)
 Access methods (sequential, random, etc.)
Week 16 I/O System
 Overview
 I/O Hardware
 Overview of Distributed OS
Final Exam

Text Book:
1. Operating System Concepts, Silberschatz, Galvin and Gagne, 9th Edition, 2015
Reference Book(s):
1. Operating Systems, Dietel & Dietel, 3rd edition.
2. Modern Operating Systems, Tanenbaum, 3rd Edition

You might also like