Course Catalog of Computer Science & Engineering

Core Computer Science and Engineering Courses

CSE103
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1.5 4.5
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

3 Hours/Week for 13 Weeks 6 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:None

Course Objective:The purpose of this course is to introduce the students to computer programming using structured language. The students will be able to enhance their analyzing and problem-solving skills and use the same for writing programs using C language. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE106 Discrete Mathematics, CSE110 Object Oriented Programming, CSE207 Data Structures, CSE246 Algorithms, CSE302 Database Systems, CSE366 Artificial Intelligence, CSE405 Computer Networks and many others.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Explain the fundamentals of programming and basic structure of C programming language.
CO2 Compare and applythe appropriate decision making and control statements, arraysand functions to solve computational problems.
CO3 Applyappropriate data structures like pointers, structures, unions, user defined data types, and dynamic memory to solve computational problems.
CO4 Compare and apply language constructs and data structures; perform and demonstrate skills and write report to design, build, and test moderately complex computational problems.

 Course Contents

Course Topic CO
Introduction to computers and programming languages, data representation in computer, flowchart construction for problem solving CO1
Introduction to C Programming (input, output, variables, data types, operators, expressions, assignments) CO1
Conditional control statements (if, if-else, nested if-else, switch) CO2
Loop statement (while, for and do…while) and nested loop statement, break and continue statements CO2
Introduction to arrays (arrays, declaring arrays, manipulating arrays) CO2
Multidimensional array CO2
Characters and strings (various types of string manipulation) CO2
Introduction to functions (function definitions, function prototypes and argument, header files). Solving complex problems in modular fashion using user defined function CO2
Introduction to recursive definition and solving problem using recursive function CO2
Pointers (pointer variable declarations, pointer operators, passing arguments to functions by reference with pointers, pointer expressions and pointer arithmetic, arrays of pointers, and function pointers) CO3
Structures (structure definitions and initialization, accessing structure members, structure with function and pointer) CO3
File management (files and streams, creating a file, reading data from file, writing data to file, and updating files) CO3
Dynamic memory allocation and linked lists CO3
Lab exercises CO4
Mini project CO4

CSE106
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE103 Structured Programming

Course Objective: This course builds up the students’ ability to think and express logically and mathematically.  The course will address mathematical reasoning, combinatorial analysis, algorithmic thinking, and discrete structures. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE 110 Objected Oriented Programming, CSE207 Data Structures, CSE246 Algorithms, CSE302 Database Systems, CSE366 Artificial Intelligence, CSE405 Computer Networks, and CSE471 Compiler Design.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret and apply propositional logic, predicate logic, and theorem proving for mathematical reasoning.
CO2 Interpret and apply counting, permutations, and combinations for combinatorial analysis.
CO3 Interpret and apply the growth of functions, complexity analysis of algorithms, and integer algorithms for algorithmic thinking; demonstratethis knowledge and write report for realistic problem solving.
CO4 Interpret and apply discrete structures such as sets, functions, relations, graphs, and trees for modeling discrete objects; demonstratethis knowledge and write report for realistic problem solving.

Course Contents

Course Topic CO
Propositional Logic, Propositional Equivalences CO1
Predicates and Quantifiers, Nested Quantifiers CO1
Rules of Inference, Introduction to Proofs CO1
Mathematical Induction CO1
Sets, Set Operations CO4
Functions CO4
Relations and Their Properties CO4
The Basics of Counting, The Pigeonhole Principle, Permutations and Combinations CO2
Algorithms, The Growth of Functions, Complexity of Algorithms CO3
The Integers and Division, Primes and Greatest Common Divisor CO3
Graphs, Graph Terminologies and Special Types of Graphs, Representing Graphs and Graphs Isomorphism CO4
Introduction to Trees CO4
Assignments with reports and presentations CO3, CO4

CSE110
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1.5 4.5
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

3 Hours/Week for 13 Weeks 6 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE106 Discrete Mathematics

Course Objective: This course presents a conceptual and practical introduction to object oriented programming (OOP). The course will cover general principles of programming in object oriented frameworks to enhance transferable skills, such as programming, designing, and problem-solving skills. This course introduces object oriented concepts and develops OOP programs which provides solutions to real world object oriented problems. Knowledge of this course will be needed as prerequisite knowledge for future courses, such as CSE207 Data Structures, CSE246 Algorithms, CSE370 Mobile Programming, and CSE425 Numerical Methods.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Identify issues related to the definition, creation and usage of classes and objects.
CO2 Use the principles of inheritance and polymorphism and analyseproblemsfor design of abstract classes and interfaces.
CO3 Apply programming skills and examine key issues to the design of object oriented software.
CO4 Choose software tool, perform and demonstrate skills, and write report to design, build, and test realistic object orientedprograms.

 Course Contents

Course Topic CO
Implementclasses, objects, member functions and data members, and also incorporate separating interface CO1
Design object oriented program using flow control and control structures CO2
Design object oriented program using functions and recursions CO2
Design object oriented program using arrays, character, pointers, and dynamic memory allocation CO2
Design object oriented program to implement arrays of objects, friend functions, constructors and destructors with dynamic memory allocation. CO3
Design object oriented program to implement multiple, multilevel, hierarchical, and hybrid inheritance, and virtual base classes CO3
Design polymorphic object-oriented program to implement pointers to base class, virtual members abstract base classes, and pure virtual members CO3
Design object oriented program to implement operator overloading, templates, and exception handling CO3
Lab exercises CO4
Mini project CO4

CSE200
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 0 1 1
Contact Hours 0 2 Hours/Week for 13 Weeks 2 Hours/Week for 13 Weeks

Prerequisite: None

Course Objective:This course introduces students to the standards and conventions of engineering drawing. This course emphasizes on the use of CAD software to generate computer models and technical drawings. The fundamental principles of orthogonal projections as well as isometric projections and views are also covered in this course.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandand use drawing instruments and geometric constructions in creating engineering drawings.
CO2 Applyand examine orthographic sketching techniques, orthographic projections of lines, planes and solids.
CO3 Apply and examineisometric sketching techniques, isometric projections and conversion of views.
CO4 Use AutoCAD to draw sectional views and multi-view projections, perform and demonstrate these skills and write report on a complete design.

 Course Contents

Course Topic CO
Introduction to drawing instruments, Lines, Lettering and Dimensioning. CO1
Scales: Plain, Diagonal and Vernier Scale. CO1
Curves used in engineering practice: ellipse, parabola, hyperbola CO1
Orthographic Projection, First & Third angle projection methods. CO2
Projection of Lines: Oblique Lines, Traces. Applications of Projection of Lines. CO2
Projection of Planes: Polygonal Lamina, Circular Lamina. CO2
Projection of Solids: Cube, Prism, Pyramid, Cylinder, Cone. Suspended Solids. CO2
Isometric Projections: Isometric Lines, Planes and Scale. CO3
Conversion of given 2D views to Isometric Projection/View. CO3
Conversion of given 3D View to 2D representation. CO3
Auto CAD Drafting: Drafting Basics, Drawing Commands, Modify Commands. CO4
Auto CAD Drafting: 2D and Isometric drawing, 3D geometric, surface and solid modeling. CO4
Mini Project CO4

CSE207
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE110 Object Oriented Programming

Course Objective:The course develops students’ skills for designing and analyzing linear and non-linear data structures. It strengthens students’ ability to identify and apply the suitable data structure for solving real world problems. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE246 Algorithms, CSE366 Artificial Intelligence, CSE405 Computer Networks, CSE471 Compiler Design.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand and apply basic data structures for storage and retrieval of ordered and unordered data.
CO2 Implement and characterize algorithms for creation and manipulation of data structures like stacks, queues, linked list, etc.
CO3 Interpret and apply appropriate data structures for implementing problem solving algorithms such as searching, insertion, deletion, traversing mechanism, etc., on various data structures.
CO4 Compute and Characterize the efficiency of data structures for complex problem-solving algorithms; perform and demonstrate this knowledge and write report for realistic problem solving.

 Course Contents

Course Topic CO
Pointers, Structures, dynamic memory allocation and Abstract Data Type CO1
Linked List Implementation and its application CO1
Stack Implementation and its Application CO2
Queue Implementation and its Application CO2
Iterative Solution and Recursive Solution design CO1
Basic Tree Concepts, Tree Traversals, Binary Trees and their applications CO2
Binary Search Trees, Insert, Delete, Search and Traversal Algorithms CO3
AVL Tree CO3
Binary Heap and Priority queue CO4
Graph representation, Terminology, Graph traversal techniques CO4
Spanning Tree, MST, Shortest Path Problem CO4
Hashing: Methods, Hashed Search CO3
Lab Exercises CO4
Mini Project CO4

CSE209
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: None

Course Objective: This course provides the students with fundamental knowledge ofanalyzing electrical circuits. This course also provides hands-on experience in building and testing electrical circuits. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE251 Electronic Circuits, CSE 345 Digital Logic Design, CSE 350 Data Communications, CSE 360 Computer Architecture, CSE 442 Microprocessor and Microcontroller, and CSE 490 VLSI design.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Discuss the concepts and applications of different electrical circuit variables and elements.
CO2 Explainand usefundamental laws and theorems for circuit analysis.
CO3 Apply and examinecircuit laws, theorems, and solution techniques for solving electrical circuits.
CO4 Use software and circuit tools, perform and demonstrate skills and write report to design, build and test electrical circuits.

Course Contents

Course Topic CO
Basic Concepts of DC circuit, charge and current, voltage, power and energy, Circuit elements. CO1
Ohm’s Law, Kirchhoff’s Voltage Law, Kirchhoff’s Current Law, Series-Parallel connections, Voltage and Current Division, Wye-delta Transformations. CO2
Circuit Analysis Methods: Nodal and Mesh methods CO3
Linearity and Superposition, Source Transformation, Thevenin and Norton’s equivalents, Maximum power transfer. CO2
Basic Concepts of AC circuit, Sinusoids, Phasors, Phasor relationships for Circuit Elements, Impedance and admittance. CO1
Kirchhoff’s laws in Frequency domain, Impedance Combinations, Superposition, Source Transformation, Thevenin and Norton equivalents, Nodal and Mesh Analysis CO3
Instantaneous and average power; Maximum average power transfer, Effective or RMS value, apparent power and power factor, Complex power CO3
Lab exercises CO4
Mini project CO4

CSE246
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1.5 4.5
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

3 Hours/Week for 13 Weeks 6 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE207 Data Structures

Course Objective:This course introduces students to the general tools and techniques for analyzing and designing computer algorithms. Initially necessary mathematical preliminaries required for analyzing and designing computer algorithms are taught. Then this course familiarizes students with several algorithmic approaches and corresponding problems. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE366 Artificial Intelligence, CSE405 Computer Networks, and CSE471 Compiler Design.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Discuss and determinethe computational complexities ofalgorithmsfor performance analysis.
CO2 Discuss, applyand explainappropriate algorithmic design approaches for modeling engineering and computational problems in different domains.
CO3 Apply major algorithmic techniques forgraph problems.
CO4 Choose and examinedifferent algorithms; perform and demonstrate skills and write report to design, build, and testcomplex computational problems.

 Course Contents

Course Topic CO
Introduction to algorithms, complexity analysis, asymptotic notations, typical running time functions, classifying functions by their asymptotic growth rates etc. CO1
Graphs, graph based algorithm – breadth-first search (BFS), depth-first search (DFS), edge identification. CO3
Modification of DFS to find the Topological sort, strongly connected component, articulation points, bridges and bi-connected components. CO3
Sorting algorithms: selection sort, bubble sort, insertion sort, mergesort, quicksort, heap sort. Minimal spanning tree: basic terminology, applications and algorithms CO1
Single source shortest path algorithms: Dijkstra’s algorithm, Bellman-Ford algorithm, shortest path in DAG. CO3
Floyd-Warshall algorithm, Transitive closure. Algorithm strategy, structure and problem types. CO3
Divide and Conquer algorithms: Binary search, Closest pair of points, Counting inversion. Greedy algorithms: Coin changing, fractional Knapsack, Huffman codes, Optimal codes, Activity selection. Suitability of all these algorithms in greedy approach. CO2
Dynamic programming (DP) and Memorized algorithms: Longest increasing subsequence (LIS), 0-1 Knapsack, Longest common subsequence (LCS), Rock climbing. CO2
Network Flow, Max Flow, Min-Cut, Residual Network, Augmenting paths, Ford-Fulkerson and Edmonds-Karp algorithms. CO2
Euclid’s algorithm for GCD, Extended Euclid’s algorithm and Number theoretic algorithms. CO2
Recurrence relation. Iteration, Substitution, Recursion tree and Master methods. CO1
Pattern matching and String matching algorithms (Rabin-Karp algorithm). Computing the transition function and diagram for Strings. CO2
P and NP classes, algorithm completeness, discussion on other complex techniques of algorithm design and analysis. CO2
Lab exercises CO4
Mini project CO4

CSE251
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE209 Electrical Circuits

Course Objective:This course provides fundamental knowledge of electronic devices such as semiconductor diodes, operational amplifiers (op-amp), bipolar and field effect transistors and their use in the design and analysis of useful electronic circuits. This course also emphasizes on building, testing and analyzing performance of electronic circuits. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE345 Digital Logic Design, CSE350 Data Communications, CSE360 Computer Architecture, CSE442 Microprocessor and Microcontrollers and CSE490 VLSI Design.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandthe operation and characteristics of different electronic circuit elements.
CO2 Discuss and determinethe responses of electronic circuits for appropriate applications.
CO3 Applyand examine the concept of basic electronic devices to design different electronic amplifiers and instrumental circuits.
CO4 Use software and circuit tools, perform and demonstrate skillsand write report to design, build and test electronic circuits.

Course Contents

Course Topic CO
Operation and characteristics of semiconductor diode,Load-line analysis. CO1
Applications of Diode: Rectifier circuits. CO2
Applications of Diode: Clipperand Clamper. CO3
Operation and Characteristics of ideal Op amp, Comparator circuits. CO1
Application of Op amp: Inverting and non-inverting, Voltage follower, Adder and Difference amplifiers, Integrator and Differentiator. CO2
Design of different amplifier and instrumentation circuits using op-amps. CO3
Device Structure and Physical Operation of BJT, Modes of Operation, Current-Voltage Characteristics. CO1
BJT as an amplifiers and switch, DC biasing and small signal operations of BJT. CO2
Device Structure and Physical Operation of MOSFET, Modes of Operation, Current-Voltage Characteristics, Channel Length Modulation Effect. CO1
MOSFET as an Amplifier and Switch, DC biasing and small signal operations of MOSFET. CO2
Small signal equivalent models of MOSFET, Designing different circuit parameters of MOSFET. CO3
Lab exercises CO4
Mini Project CO4

CSE302
Credit Hours andTeaching Scheme:

Theory Laboratory Total
Credit Hours 3 1.5 4.5
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

3 Hours/Week for 13 Weeks 6 Hours/Week for 13 Weeks +

Final Exam in the 14th week

 Prerequisite:CSE106Discrete Mathematics

Course Objective:This course introduces the fundamental concepts and practices of designing and implementing database system. It also enables the student to design and perform complex query operations on relational databases. It builds the capability of optimizing the databases efficiently by applying different techniques. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE347 Information System Design, CSE412Software Engineering, CSE430Software Testing and Quality Assurance, and CSE487 Big Data Analytics.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand basic concepts of relational database,constructand interpret algebraic expressions to represent relations.
CO2 Performand organizedifferent query operations for data manipulation.
CO3 Discuss, use and examine different models and optimization techniques to design efficient relational database system.
CO4 Useand examinesoftware tools, demonstrate skills and write report to design, build and test real life database.

Course Contents

Course Topic CO
Introduction to Database Management Systems and relational model CO1
Writing Queries using SQL (basic to advanced level Structured Query Language) CO2
Using relational algebra for representing relations CO1
Designing a database using E-R Model CO3
Database Indexing and Hashing Techniques CO3
Basic concept of transactions and concurrency control protocols CO3
Database Normalization, Lossy Decomposition, Functional Dependency, First, second and third normal Form, Boyce-Codd Normal Form CO3
Lab Exercises CO4
Mini Project CO4

CSE325
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: None

Course Objective:This course introduces the principles and techniques for the design and implementation of operating systems. This course also emphasizes the implementationof various techniques required for management, scheduling, allocation and communication of resources used in operating system.Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE360 Computer Architectureand CSE452 Distributed Systems and Algorithms.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret,use, and characterizedifferent components of modern operating system for examining design goals.
CO2 Describe, use, and characterizedifferent methods of resource management and communication for operating system performance analysis.
CO3 Interpret,apply,and characterize resource management techniques for solving resource constained problems.
CO4 Interprete, apply, characterize, and justify memory organization and I/O mangement techniques; implement  functional, pre-emptive, multi-tasking operating system modules including scheduler, file manager, memory manager, storage manager, and synchronization components; demonstrateand masterthese knowledge and write report for realisticproblem solving.

Course Contents

Course Topic CO
Basic concept of operating system CO1
Operating systems Hardware Interaction CO1
Process and thread management CO2
Inter Process Communication (IPC) CO2
Scheduling algorithms for multi-tasking CO3
Mutual exclusion principles and deadlock handling CO3
Memory and I/O management CO4
Storage Management CO4
Implementing File Management CO3
Mini projects with reports and presentations CO4

CSE345
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE251Electronic Circuit

Course Objective:This course introduces the fundamental concepts and practices of gate-level and MSI-level design of digital circuits. This course also emphasizes computer-aided design of digital circuits using Verilog Hardware Description Language (HDL). Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE360 Computer Architecture and CSE442 Microprocessors and Microcontrollers.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret and applybinary number system and Boolean algebra for design and analysis of combinatorial and sequential circuits.
CO2 Apply and examine Boolean algebraic techniques for combinational circuit design and analysis.
CO3 Apply and examine state transition techniques for sequential circuit design and analysis.
CO4 Choose software and hardware tools, perform and demonstrate skills, and write report to design, build, and test digital circuits.

 Course Contents

Course Topic CO
Binary number system, binary arithmetic, and Binary codes CO1
Boolean algebra, Logic gates CO1
Minimization of Boolean functions using K-map CO1
Combinational circuit design and analysis CO2
Design of parallel adder/subtractor CO2
Design and use of encoder and decoder CO2
Design and use of multiplexer and demultiplexer CO2
Design of Combinational circuits using Verilog HDL CO2
Flip-Flops CO3
Representation and analysis of sequential circuits CO3
Design of sequential circuit CO3
Design of registers CO3
Design of counters CO3
Design of sequential circuits using Verilog HDL CO3
Lab exercises CO4
Mini project CO4

CSE347
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE302 Database Systems

Course Objective:This course introduces the knowledge and skills required to analyze and design information system. This course will focus on analysis, design, development, and implementation of organizational information systems.  Knowledge of thiscourse will be needed as prerequisite knowledge for future courses such as CSE412 Software Engineering, CSE423 Software Architecture, CSE425 Human Computer Interactions, and CSE430 Software Testing and Quality Assurance.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandproject management and system development life cycle.
CO2 Analyze feasibility and construct application architecture and modeling.C3C4
CO3 Design and examineinformation systems.
CO4 Chooseand examinesoftware and hardware tools, perform and demonstrate skills, and write report to design, build, and test information systems.

 Course Contents

Course Topic CO
Introduction to Information System Analysis and Design CO1
Project management CO1
System development life cycle CO1
Requirements analysis, sampling and investigating data CO2
Modeling system requirements CO2
Feasibility Analysis CO2
Application Architecture and Modeling CO2
Input-Output design and prototyping CO3
User Interface design CO3
Object‐Oriented Design and Modeling CO3
Lab exercises CO4
Mini project CO4

CSE360
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE325 Operating Systems

Course Objective:The objective of this course is to study the structure, behaviour, and characteristics of computer systems. This course will exhibit the design of the various functional units of digital computers, discuss different types of memories and their properties, and introduce basics of parallel computer architecture. Knowledge of this course will be needed as prerequisite knowledge for future course, such as CSE442 Microprocessors and Microcontrollers and CSE493 Embedded Systems.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand the architectural concept of digital computers.
CO2 Understand,determine and analyze performance of processor, memory, and I/O subsystems.
CO3 Understand, implement, examine, and justify instruction set design for performance improvement, execute and demonstratethis knowledge,and write reportfor problem solving.
CO4 Implement, examine, and justify processor and control unit design,executeand demonstratethis knowledge, andwrite report to synthesize functional units of digital computers.

Course Contents

Course Topic CO
Computer Fundamentals: development history of computer hardware and software, review of computer functions and sturctures, and performance evaluation of the computer system CO1
Computer interconnection structructures: bus interconnection, PCI, future Bus plus CO2
Computer memory system: cache memory principles, element of cache design, Pentium and PowerPC cache organization CO2
Computer memory system: Internal memory, semiconductor main memory, error correction, advanced DRAM organization CO2
Computer memory system: external memory, magnetic disk, RIAD, optical memory, and magnetic tape CO2
Input/Output: External Devices, I/O modules, Programmed I/O, Interrupt-driven I/O CO2
Input/Output: Direct memory access, I/O channels and processors, external interface CO2
Computer Arithmetic: ALU, Interger representation and arithmetic, and floating point  representation and arithmetic CO3
Instruction Sets: Machine instruction, operands, operations, and assembly language, Instruction Sets: addressing, and instruction format CO3
CPU structure and function: processor and registers organization CO4
CPU structure and function: instruction cycle and instruction pipelining CO4
RISC: instruction execution, registers, and RISC architecture CO4
Assignments with reports and presentations CO3, CO4

CSE370
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE110 Object Oriented Programming

Course Objective:The objective of this course is to build up the programming knowledge for mobile devices. This course also emphasizes software and hardware interfacing, cross platform programming, and networking and testing of mobile program.Knowledge of this course will be needed as prerequisite knowledge for CSE489 Mobile Application Development.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand the aspects of programming for mobile devices.
CO2 Understand and applysoftware and hardware interfacing for mobile programming.
CO3 Understand, use, and justify cross platform programming, networking and testing of mobile devices.
CO4 Chooseand justifysoftware tools, perform and demonstrate skills, and write report to design, build, and test software for mobile programming.

 Course Contents

Course Topic CO
Introduction to Mobile programming CO1
Exploring new hardware capabilities and requirement for mobile programming CO1
Mobile hardware and other interfacing aspect CO2
Software life cycle implementation in mobile devices CO2
Mobile cross platform programming CO3
Design interfaces for mobile devices CO3
End user requirement handling CO3
Networking and testing of mobile program CO3
Lab exercises CO4
Mini project CO4

CSE399
Credit Hours andTeaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:none

Course Objective: This course builds up the concepts of ethical and legal framework in the context of computing and information technology. With in-depth analysis of several moral and legal issues related to computing and IT, this course prepares the student to act in compliance with the ethical and applicable legal frameworks, towards becoming a professional.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpretand comply with the professional codes of conduct and ethical frameworks as an ICT professional.
CO2 Describeand comply withthe legislation related to ICT and Computer Science and Engineering.
CO3 Interpret, apply, and justify the standard ethical frameworks within computing.
CO4 Analyze, evaluate and formulate documents, terms and policies related to computing profession, in accordance with the legal frameworks; demonstrate these knowledge and write report justifying the actions and policies.

Course Contents

Course Topic CO
Computer and Information Ethics at Stanford Encyclopedia of Philosophy CO1
ACM Code of Ethics and Professional Conduct CO1
Software Engineering Code of Ethics and Professional Practice CO1
Data Protection Act, Computer Misuse Act, Impact of the Computer Misuse Act CO2
Copyright, Designs and Patents Act, Freedom of Information Act, Security of Internet Communications CO2
Bangladesh: Information Communication Technology Act of 2006 and its amendment in 2013 CO2
Bangladesh: Copyright Act of 2000 CO2
Bangladesh: Telecommunication Regulatory Act of 2001 CO2
Pornography: Pornography Act 2012 CO2
Ethical Frameworks: Deontological Ethics (Duty-based ethics), Utilitarian ethics (Outcome-based ethics), Aristotelian ethics (Virtue ethics) CO3
Applications of Ethical Frameworks: Deontological Ethics (Duty-based ethics), Utilitarian ethics (Outcome-based ethics), Aristotelian ethics (Virtue ethics) CO3
Assignment with presentation (Analysis, Evaluation, and Design of Terms of Service (ToS), End User License Agreement (EULA), Privacy Policy) CO4

CSE405
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE246 Algorithms

Course Objective:This course explores the field of computer networking and communication, emphasizing network architecture and software issues. Student will learn the basic performance and engineering trade-offs in the design and implementation of computer networks. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE406 Internet of Things,CSE453 Wireless Networks, and CSE457 Cellular Networks.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand, use, and characterizenetwork layers and related issues for designing computer networks.
CO2 Understand, use, analyze, and justifydifferent network algorithms and protocols for effective design of computer networks.
CO3 Design networks and subnets with IP calculations.
CO4 Choose software tools, perform and demonstrate skills,and write report for designing, testing, and evaluating complex computer networks.

 Course Contents

Course Topic CO
Introduction to computer networks, layers, transmission media CO1
Data link layer design issues, framing. CO1
Protocol verification: finite state machine & petri net models CO1
MAC, Channel allocation problem, CSMA/CD CO2
Contention period, BEB CSMA CO2
Collision-free protocols: bit-map, binary countdown, limited contention protocol CO2
Introduction to network layer,distance vector routing, count-to-infinity problem CO2
Link state routing, Hierarchical routing, Broadcast & Multicast routing CO2
Internet Protocol (IP), IPv4 header, IP addresses and subnets CO3
Network address translation (NAT), ICMP, ARP, RARP, BOOTP, DHCP CO1
QoS, leaky bucket algorithm, token bucket algorithms, RSVP, Internetworking, tunneling, fragmentation CO2
Congestion and congestion control algorithms in network layer CO3
Transport service, primitives, connection establishment, data transfer & connection release CO1
TCP/UDP header, Congestion control in Transport layer CO2
Lab exercises CO4
Mini project CO4

CSE 412
Credit Hours andTeaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE347 Information System Analysis and Design

Course Objective: The objective of this course is to learn different principles and practices of modern software engineering. It also builds the understanding of the challenges faced in the industry and their resolutions. This course enhances the skills of using different modern tools and languages to analyze, design and evaluate a real-life complex software system. These software engineering knowledge will be needed in CSE430 Software Testing and Quality Assurance course.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Identifyand useappropriate software development model for developing software projects.
CO2 Understand and analyze software requirements and apply tools for software modeling.
CO3 Use and examine different software testing techniques and estimate project costs for project evaluation.
CO4 Select, use, and justify different software tools; demonstrate skills and write report to design, build, and test software for complex real-life applications.

 Course Contents

Course Topic CO
Introduction to Software Engineering, review of Software development lifecycle (SDLC) CO1
Overview of Software Process Models,  Prototyping CO1
Iterative process models, Incremental software development, Agile Software Development, Agile – UX and Lean – UX, Extreme programming, SCRUM CO1
Software requirements, Requirement analysis, Requirement elicitation techniques and Questionnaire Designing CO2
Software modeling, UML diagrams, Behavioral modeling: Use case diagram &class diagram CO2
Interaction diagrams:Sequence and activity diagram CO2
Code complexity analysis: Cyclomatic complexity, Halstead’s complexity CO3
Project cost estimation techniques, Functional Point Analysis, FP counting method for determining software cost CO3
Software Testing Basics- white box & black box testing, UAT, Integration and System Testing CO3
Lab exercises CO4
Mini project CO4

CSE442
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credits Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks + Final Exam in the 14th Week 2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks + Final Exam in the 14th week

Prerequisite: CSE360 Computer Architecture

Course Objective: This course provides basic concept of architecture of microprocessor, addressing mode, interfacing of bus and memory with microprocessor, and handling of interrupts. The course also addresses interfacing of microcontroller with peripheral devices. Knowledge of this course will be needed as prerequisite knowledge for CSE493 Embedded Systems.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand, use, and examine the architecture and instruction sets of microprocessor.
CO2 Use and examineinterfacing of bus and memory with microprocessor.
CO3 Implement and examineinterfacing of microcontroller with peripheral devices.
CO4 Use, examine, and justifydifferent hardware and software tools;demonstrate skills, and write report to design, build, and test microprocessor and microcontroller based systems.

Course Contents

Course Topic CO
Introduction to microprocessors, Memory and I/O system CO1
Architecture of Microprocessor and its Registers CO1
Addressing Modesof Microprocessor CO1
Hardware Specificationsof Microprocessor CO1
Memory Interfacing CO2
Interrupts handling CO2
Microcontrollers and Embedded Processors, Structure and Functions of Microcontroller CO3
Addressing Modes of Microcontrollers CO3
Programming of Microcontroller using Assembly Language CO3
Interfacing Microcontroller and Peripherals CO3
Interrupts of Microcontroller CO3
Lab exercises CO4
Mini project CO4

CSE479
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE302 Database Systems

Course Objective:The objective of this course is to build up knowledge on different tools and techniques for real world web applications.Student will learn to develop static and dynamic web applications.Knowledge of this course will be needed as prerequisite knowledge for CSE489 Mobile Application Development.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand the basic concept and technology of web application development and its architecture for developing static web applications.
CO2 Use web programming languages for developing dynamic web applications.
CO3 Apply and examine security tools and techniques for developing secured web applications.
CO4 Choose software and hardware tools, perform and demonstrate skills, and write report to design, build, and test web applications.

 Course Contents

Course Topic CO
Web Fundamentals, Programming Languages for the Web CO1
HTML Basics and the working environment CO1
Fundamentals of PHP language CO1
HTML with PHP, forms, sessions,cookies, etc. CO2
CSS and templates CO2
Database manipulation in PHP CO2
Programming the browser and forms withJavaScript CO2
Dynamic programming using Asp.net CO2
AJAX basics,DHTML CO3
Security pitfalls and basic solutions CO3
Lab exercises CO4
Mini project CO4

CSE487
Credit Hours andTeaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE405 Computer Networks

Course Objective:This course builds up the fundamental concepts of cryptography, computer security and cyber security. Standard methodologies and tools for the evaluation and application of organizational security policies related to confidentiality, integrity and availability will also be covered.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpretthe basic concepts related to computer security, and identify security vulnerabilities of networked systems.
CO2 Interpret and apply cryptographic algorithms for authentication, cryptanalysis and steganography.
CO3 Interpret, use, and analyze the security threats on networked systems, assess the existing state of security and deduce realistic security policies.
CO4 Examine and justifyrealistic prevention of intrusion and disaster recovery; demonstrate this knowledge and write report justifying the actions and policies.

Course Contents

Course Topic CO
Fundamental concepts of computer security CO1
Well-known attack types and vulnerabilities CO1
Social engineering attacks CO1
Cryptography and classical cryptosystems CO2
Authentication protocols and Public Key Infrastructure CO2
IPSec, VPNs, E-commerce issues CO2
Attack classification and vulnerability analysis CO3
Security models and policy issues CO3
Security evaluation and auditing of networked systems CO3
Intrusion Detection, Prevention, Response, Containment (Digital forensic evidence) and Disaster Recovery CO3
Network defense tools: Firewalls, VPNs, Intrusion Detection, and filters CO3
Assignment with report and presentation CO4

CSE400
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 0 1 in the 1st semester (X grade)

2 in the 2nd semester (X grade)

3 in the 3rd semester (grade on total 6 credits)

6
Contact Hours 0 2 Hours/Week for 13 Weeks in the 1st semester

4 Hours/Week for 13 Weeks in the 2nd semester

6 Hours/Week for 13 Weeks in the 3rd semester

156 Hours in a year

Prerequisite:Students must complete at least 105 credits.

Course Objective: Capstone is a metaphor used to describe a final achievement that builds upon previous works and encapsulates them. This course is intended to provide a culminating experience that allows a student to demonstrate proficiency in several of the learning outcomes that are set forth by students’ degree program.Capstone project will integrate multidisciplinary subjects and professional skills that are difficult to impart in a traditional lectured course.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Identify and examine various problem domains (literature review); justify and finalize problem statement; write project proposal for the capstone project.
CO2 Perform and completerequirement analysis; outline, justify, and finalize design methodologies for the finalized project.
CO3 Design hardware and/or software for the finalized project incorporating societal, environmental, and ethical considerations; build the proposed system incorporating project management and financial principles and justify (test) the deliverable system.
CO4 Use different visualization tools andwrite and present (oral and/or poster) technical report incorporating different evaluation matrices including efficiency, cost; and ethical, societal, economic, and environmental impacts.

 The capstone project will consists of the work on the topic finalized for the project. The project must be done in a group of three to four students.

 Work Component and Assessment Levels

Course Topic CO
Finalization of problem statement CO1
Design methodology CO2
Designing and building of deliverable system CO3
Technical report and presentation CO4

Course Descriptions:Elective Computer Science and Engineering Courses

CSE313:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective: This is an elective course and builds up the students’ theoretical understanding of different models of computation and their limitations.  The course will address Finite Automata and Regular Expressions, Context-Free Grammars and Pushdown Automata, Turing Machines and Undecidability, and Complexity Theory. Knowledge of this course will be needed as prerequisite knowledge for CSE471 Compiler Design course.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Demonstrate and use Finite Automata and Regular Expressions as model of computation; use these knowledge and write report in real-life problem.
CO2 Demonstrate and use Context-Free Grammar and Pushdown Automata as model of computation; use these knowledge and write report in real-life problem.
CO3 Demonstrate, use, and characterize Turing Machines and Undecidability as model of real world computation and its limitation; use these knowledge and write report in real-life problem.
CO4 Demonstrate and use Complexity Theory to determine resources required by an algorithm; use these knowledge and write report in real-life problem.

Course Contents

Course Topic CO
Finite Automata CO1
Regular Expressions CO1
Nondeterminism CO1
Properties of Regular Languages CO1
Context-Free Grammars CO2
Pushdown Automata CO2
Grammars and Equivalences CO2
Properties of Context-Free Languages CO2
Turing Machines CO3
Variations of Turing Machines CO3
Decidable Problems CO3
Undecidability CO3
Time Complexity CO4
Space Complexity CO4
NP-Completeness CO4
Assignments with reports and presentations CO1, CO2, CO3, CO4

CSE 350:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credits 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE 251 Electronic Circuits

Course Objective: This course includes the evolution trend of computer networks and the procedure of transmitting data over the network by resolving the conflicting issues arising in the course of transmission. The key aspects of transmission, interfacing, link control, and multiplexing are examined.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret data communication concepts, backbone, protocols and architecture.
CO2 Apply and analyze data transmission mechanisms.
CO3 Apply and analyze different aspects of reliability in data communication; demonstrate skills and write report on data communication problems.
CO4 Apply and examine data transformation techniques for effective data communication; demonstrate skills and write report on data communication problems.

 Course Contents

Course Topic CO
Data communication model, communication tasks CO1
Introduction to network standard and protocols, Protocol Architecture: OSI standard protocol, TCP/IP protocol suite CO1
Analog and Digital Transmission CO2
Transmission impairments, Channel Capacity: Nyquist, Shannons CO2
Guided transmission media, Wireless transmission media, wireless propagation CO2
Signal encoding techniques CO2
Synchronous Transmission, Asynchronous Transmission CO3
Interfacing CO3
Types of errors, Error detection: parity check, CRC, checksum

Error correction: Hamming code

CO3
Flow control techniques– stop-and-wait, sliding window, HDLC CO3
ARQ techniques– stop-and-wait ARQ, go-back-n ARQ, selective reject CO3
Multiplexing – FDM, TDM, WDM CO4
Assignments with reports and presentations CO3, CO4

CSE355:
Credit Hours & Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE345 Digital Logic Design

Course Objective: This course is an elective course and builds up the students’ ability to understand advanced features of digital (combinational and sequential) circuits and design and synthesize digital circuits using computer-aided techniques. The course will address advanced features of digital circuits, designing and synthesizing digital circuits using Verilog Hardware Description Language (HDL), and designing and synthesizing application specific integrated circuits using Programmable Logic Devices (PLDs).

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret and apply advanced features of digital (combinational and sequential) circuits as the pre-design concepts for computer-aided design of digital circuits.
CO2 Examine, choose, and develop Verilog HDL modeling techniques; perform and demonstrate skills, and write report to design and test digital circuits.
CO3 Examine, choose, and develop Verilog HDL techniques; perform and demonstrate skills, and write report to synthesize digital circuits.
CO4 Examine and choose Programmable Logic Devices (PLDs) and design digital circuits using PLDs as Application Specific Integrated Circuits (ASICs).

Course Contents

Course Topic CO
Hazards in Combinational circuits CO1
Busses and three-state devices CO1
Mealy and Moor type finite state machines (sequential circuits) CO1
Register Transfer Logic (RTL) design, Algorithmic State Machines (ASM) CO1
Structural Verilog modeling of combinational circuits CO2
Logic simulation, design verification, and test methodology in Verilog-based designs. CO2
Behavioral Verilog modeling of combinational circuits CO2
Verilog-based design of datapath elements and datapath controllers CO2
Logic synthesis using Verilog CO3
RTL synthesis using Verilog CO3
High-level synthesis using Verilog CO3
Verilog-based synthesis of datapath elements and datapath controllers CO3
Programmable Logic Array (PLA), Verilog modeling of PLA CO4
Programmable Array Logic (PAL), Verilog modeling of PAL CO4
Field-Programmable Gate Array (FPGA), Verilog-based design for FPGA CO4
ASIC synthesis with FPGA CO4
Mini project CO2, CO3

CSE366:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective:This course introduces the fundamental concepts and knowledge of Artificial Intelligence (AI) principles and techniques, the state-of-the-art models and algorithms used to undertake these problems. This course is also designed to expose students to the frontiers of AI-intensive computing, while providing a sufficiently strong foundation to encourage further research in machine learning. Knowledge of this course will be needed as prerequisite knowledge for future courses such as CSE475 Machine Learning, CSE477Data Mining and CSE492 Robotics.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret and apply the key components and classical algorithms of artificial intelligence for realistic problem solving.
CO2 Apply and examine game theoretical concepts and practices for solving non-conventional real-life situations.
CO3 Apply and examine Genetic Algorithms and Artificial Neural Networks (ANN) for solving complex search and optimization problems.
CO4 Use statistical methods and machine learning for solving complex AI related problems; perform and demonstrate skills and write report on complex AI related problems.

Course Contents

Course Topic CO
Introduction  to Artificial Intelligence, Intelligent Agents CO1
Solving problem by searching, Uniformed Search Strategies, Informed Search Strategies CO1
Constraint Satisfaction Problem CO1
Games and adversarial search, Games vs. single-agent search, Game tree, Alpha-beta pruning CO2
Introduction of Genetic Algorithm, GA Terminology CO3
First-Order Logic, Knowledge Engineering in First-Order Logic CO2
Planning, The Planning Problem, Planning Algorithms CO2
Game Theory, Nash Equilibrium and Mixed Strategy equilibrium CO2
Uncertainty, Acting under Uncertainty, Basic Probability Notation, Bayes’ Rule CO3
Convolutional Neural Network, Convolution Layer

Pooling Layer, Fully Connected Layer

CO3
Probabilistic Reasoning over Time, Hidden Markov Models, Kalman Filters CO3
Learning from Observations, Knowledge in Learning CO4
Statistical Learning Methods CO4
Reinforcement Learning CO4
Mini project CO4

CSE406:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE405 Computer Network

Course Objective: This coursewill cover the building blocks of Internet of Things (IoTs) and their characteristics. Domain specific IoTsand their real-world applications will be developed here. This course also will introduce the programming aspects of IoTswith a view towards rapid prototyping of complex IoT applications.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand the building blocks of IoTs and their characteristics with real-world applications.
CO2 Understand, apply, and examinedifferentarchitectures for different levels of complex IoT applications.
CO3 ExamineIoT data analytics and justifyvarious tools for IoT; perform and demonstrate skills, and write report on realistic data analytics.
CO4 Choose and justify software and hardware tools, developsource code for various IoT domains,perform and demonstrate skills, and write report on realistic IoT development.

Course Contents

Course Topic CO
Introduction to IoT CO1
Basics of Networking CO1
Communication Protocols CO1
Sensor Networks: Machine-to-Machine Communications CO1
Interoperability in IoT: Integration of Sensors and Actuators CO2
Implementation of IoTwith programmable devices CO2
Software Defined Networking(SDN) for IoT: Data Handling and Analytics CO3
Cloud Computing CO3
Fog Computing: Smart Cities and Smart Homes CO3
Connected Vehicles: Smart Grid CO3
Industrial IoT: Agriculture, Healthcare, Activity Monitoring and related case studies CO4
Mini project CO3, CO4

CSE420:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective: The course focuses on all aspects of fundamental computer graphics, including 2D/3D object representations, transformations, modeling and rendering algorithms. The course also aims to provide a good foundation for OpenGL programming, which is a widely accepted standard for developing graphics applications. The course will assume a good background in programming in C or C++ and a background in mathematics including familiarity with the theory and use of coordinate geometry and of linear algebra such as matrix multiplication.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandcomputer graphics system and implement different graphics primitives for drawing a graphics scene.
CO2 Understand, apply, and examinedifferent techniques of clipping, two dimensional transformations, and three-dimensional transformations and viewing for manipulating complex graphics scenario using OpenGL; perform and demonstrate these skills and write reportfor realistic problem solving.
CO3 Understandand applythe basics of color perception and different color models used in computer graphics.
CO4 Apply and Analyze different modeling, rendering, shading and animation techniques; develop and justify program by integrating these techniques to create 3D objects using OpenGL; perform and demonstrate these knowledge and write report for realistic problem solving.

Course Contents

Course Topic CO
Introduction: History of computer graphics, graphics architectures and software. CO1
Efficient implementation of different graphics primitives like Line and circle, and Ellipse. CO1
Clipping, polygonal fill CO2
Geometric transformations: 2D transformations (translation, rotation, scaling, shear), homogeneous coordinates, concatenation, current transformation and matrix stacks. CO2
Geometric transformations: 3D transformations (translation, rotation, scaling) CO2
Three dimensional viewing, specifying views, affine transformation in 3D, projective transformations. CO2
Graphics Programming: Getting started with OpenGL, Input and Interaction in OpenGL CO2
Color perception, color models (RGB, CMY, HLS), color transformations. Color in OpenGL. RGB and Indexed color. CO3
Introduction to hidden surface removal (z buffer). CO4
Generate realistic 3D color object using OpenGL CO4
Curve and surface representation CO4
Image rendering using ray tracing CO4
Mini project CO2
CO4

CSE422:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE246 Algorithms

Course Objective: The course is an elective course and aims at giving the students the knowledge of the basic concepts in the area of modeling and simulation. The course will focus on modeling and simulation of discrete and continuous system. The course will address the modeling and analyzing input and output for a simulation model and generating random numbers for simulation experiments. Simulation tools will be used to conduct experiments.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandand usefundamental concepts of computer simulation and its role in engineering problem solving.
CO2 Understand random number variates and apply them to develop simulation models.
CO3 Compute and analyze the output from a terminating simulation of an engineering problem. C3, C4
CO4 Chooseand examinesoftware tools, perform and demonstrate skills, and write report to model and build a simulation model with basic operations and statistical analysis of output.

Course Contents and Learning/Assessment Levels

Course Topic CO
Introduction to simulation modeling CO1
Review of basic probability and statistics CO1
Selecting input probability distributions CO2
Random Number Generators CO2
Generating Random Variates CO2
Output Data Analysis for a Single System CO3
Verification/Validation CO3
Assignments & Mini Projects with reports and presentations CO4

CSE423:
Credit Hours and Teaching Scheme

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE412 Software Engineering

Course Objective: The objective of this course is to familiarize the students with the fundamental concepts of software architecture, the proprieties and applicability of the different architecture styles. Student will also learn popular design patterns, software components, reusable architectures and the relations of all these concepts with the software reuse.

Course Outcomes (COs)
After completion of this course students will be able to:

CO1 Understand and usethe various architecture styles for software systems.
CO2 Choose and evaluate alternative architectures in terms of design and reuse to solve various complex software engineering problems.
CO3 Apply, examine, and justifydesign patterns, and methods and techniques of software reuse.
CO4 Choose, examine, and justify software tools, perform and demonstrate skills, and write report to build a software system following a architecture specification, selecting and applying design patterns and using a component-based development method.

Course Contents

Course Topic CO
Introduction to fundamentals of software design, concepts, and principles. CO1
Micro and macro architectures: design patterns, frameworks and production lines CO1
Types of software patterns: architecture patterns, design patterns, idiomatic structures CO2
Architecture styles, reference models and architectures: pipes and filters, data abstraction, object-orientation, even-based systems, layered systems, repositories, interpreters, process-control systems. CO2
Design, evaluation and refinement of software architectures CO3
Representation and Documentation of software architectures CO3
Reuse of software architectures: production lines, frameworks, software components CO3
Case Study: Simple and complex technological architectures with report. CO4
Assignment and Mini Project with report and presentation CO4

CSE425:
Credit Hours & Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE103 Structured Programming

Course Objective:This course will emphasize the development of numerical algorithms to provide solutions to common problems formulated in science and engineering. The primary objective of the course is to develop the basic understanding of the construction of numerical algorithms, and more importantly, the applicability and limits of their appropriate use.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandthe basic numerical techniques for solving mathematicalsystems.
CO2 Implement numerical techniques to solve computational problems.
CO3 Apply and analyzenumerical techniques considering the accuracy of the techniques.
CO4 Deriveappropriate numerical techniques; perform and demonstrate those skills and write report on solving complex engineering problems.

Course Contents

Course Topic CO
Basic idea of Numerical methods CO1
Data and Information concept CO1
Root Finding Methods (Bracketing Methods) CO2
Root Finding Methods (Open-End Methods) CO3
Introduction to system of linear equations CO2
Iterative methods for linear equations CO2
Direct Solution of linear equations (existence of solution) CO3
Direct analytical methods for linear equations CO3
Curve fitting and Line curve fitting CO3
Interpolation with unequal intervals CO2
Interpolation with equal intervals CO3
Numerical solution of ordinary differential equations CO4
Numerical Integration CO4
Mini project CO4

CSE428:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE412 Software Engineering

Course Objective: This course builds up the students’ ability to design user interfaces based on the capabilities of computer technology and the needs of human factors. They will learn to evaluate and design usable and appropriate software based on the psychological, social, and technical analysis. They will become familiar with the variety of design and evaluation methods used in interaction design and will get experience with these techniques.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Explain, choose and distinguish the capabilities of both humans and computers from the viewpoint of human information processing.
CO2 Analyze and identify user models, user support, socio-organizational issues, and stakeholder requirements of HCI systems.
CO3 Choose, analyze, and justify the HCI design principles, standards, and guidelines for designing HCI systems.
CO4 Apply, examine, select, and design advanced HCI methodologies and technologies for realistic problem solving; perform and demonstrate skills and write report on realistic interaction design.

 Course Contents

Course Topic CO
Foundations of Human–Computer Interaction:Human Capabilities, The Computer, The Interaction, Paradigms CO1
HCI Design Process: Interaction Design Basics, HCI in the Software Process, Design Rules, Universal Design CO1
Implementation Support: Implementation Tools CO2
Users Models: Cognitive Models, Socio-organizational Issues and Stakeholder Requirements CO2
Evaluation and User Support: Evaluation, User Support CO3
Task Models and Dialogs: Analyzing Tasks, Dialog Notations and Design CO3
Augmented Reality, Hypertext and Multimedia:Groupware and Computer-supported Collaborative Work, Ubiquitous Computing, Virtual Reality and Augmented Reality, Hypertext, Multimedia and the World Wide Web CO4
Mini project CO4

CSE430:
Credit Hours andTeaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE412 Software Engineering

Course Objective:This course is designed to enable a clear understanding and knowledge of the software testing and quality control. It explores different SQA components, techniques, and standards practiced as a part of software project management in the industry. Beside the concepts, it will build the capacity of reviewing, planning and designing test cases based on system requirements. It will develop the ability to use different testing techniques (black box and white box) and available tools used in real life software projects.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand different software quality assurance and quality control activities and standards for software projects.
CO2 Understand review and inspection techniques and formulate appropriate test plan and test cases based on system specifications.
CO3 Understand different testing techniques and apply and identify appropriate testing for real-life complex software projects.
CO4 Apply and examineautomated testing tools; demonstrate and adapt those skills; justify and compare them for optimized quality control.

Course Contents

Course Topic CO
Software Quality, Quality Assurance and Quality Control, SQA components CO1
Quality standards, CMM and CMMI model, Software Quality factors CO1
Review and inspections, Formal technical reviews, Cost estimations of review tasks CO2
Software testing life cycle (STLC), Software test plan preparation, Test case design CO2
Software testing objectives and strategies, Software test classifications, White box testing, Black box testing CO3
Test case optimization, All Pair testing, Path testing, Boundary value analysis, Decision table testing CO3
Assignment &Mini project CO4

CSE438:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective:This course is an introduction to digital image processing and image analysis techniques and concepts. Topics include intensity transformations for image enhancement, two-dimensional discrete Fourier transform, spatial and frequency domain linear image filtering, nonlinear image filtering, binary image processing, edge detection, image segmentation, and digital video processing basics.This course makes extensive use of MATLAB as an analysis, design, and visualization tool.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand the digital image fundamentals and apply different image enhancement techniques for improving the quality of the image.
CO2 Understand the basics of color model and apply them for smoothing, sharpening and/or segmenting color image.
CO3 Understand, choose, examine, and devaluate different image segmentation and morphological operation and image compression techniques;  perform and demonstrate these skills and write report for better representation and/or better storage of the image.
CO4 Choose, compare, and justify appropriate object detection and techniques for understanding complex real life images; perform and demonstrate these skills and write report for realistic problem solving.

Course Contents

Course Topic CO
Digital Image Fundamentals: Elements of Visual Perception, Light and the Electromagnetic Spectrum, Image Sensing and Acquisition, Image Sampling and Quantization, Some Basic Relationships between Pixels, Linear and Nonlinear Operations. CO1
Image Enhancement in the Spatial Domain: Basic Gray Level Transformations, Histogram Processing, Basics of Spatial Filtering, Smoothing Spatial Filters, Sharpening Spatial Filters. CO1
Color Image Processing: Color Fundamentals, Color Models, Pseudocolor Image Processing, Basics of Full-Color Image Processing, Color Transformations, Smoothing and Sharpening, Color Segmentation. CO2
Image Segmentation: Detection of Discontinuities, Edge Linking and Boundary Detection, Thresholding, Region-Based Segmentation, Segmentation by Morphological Watersheds. CO3
Morphological Image Processing: Dilation and Erosion, Opening and Closing, Extensions to Gray-Scale Images. CO3
Image, Video compression: Lossless compression vs. Lossy compression, Image coding JPEG, Video coding and MPEG CO3
Object Recognition: Representation, Learning, Recognition, BagofWordsmodel CO4
Mini project CO3, CO4

CSE452:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE 325 Operating Systems.

Course Objective: This course focuses on the principles, techniques, and practices relevant to the design and implementation of distributed systems. Students will study major algorithms and theoretical results and explore them in modern applications like cloud computing, pervasive computing, Google file system, peer-to-peer systems and etc.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret,apply, and examinedifferent theories, models and concepts for the design and implementation of distributed systems.
CO2 Describe, apply, and analyze common problems and their solving algorithms for modern distributed applications.
CO3 Identify, and analyze fundamental limitations and impossibility results for distributed systems to avoid them during realistic problem solving.
CO4 Apply differentdistributed algorithmsfor real-world distributed computing platforms;demonstrate this knowledge and write report for real-world distributed computing platforms.

Course Contents

Course Topic CO
Introduction to distributed systems and models of distributed computation CO1
Time, clocks, and synchronization CO1
Distributed objects and components CO1
Distributed file system CO1
Remote invocation and indirect communication CO2
Global state and snapshot recording algorithms CO2
Distributed mutual exclusion algorithms CO2
Deadlock detection in distributed systems CO2
Check pointing and rollback recover CO3
Consensus and agreement algorithms CO3
Assignment with report and presentation (case studies-designing distributed system) CO4

CSE453:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE405 Computer Networks

Course Objective:The objective of this course is to give an introduction to the fundamentals of the wireless communications systems, the wireless network architectures, protocols, and applications. This course will address topics of wireless communications and mobile computing systems, signal propagation characteristics of wireless channels, wireless channel modelling, frequency reuse/cellular/microcellular concepts, spread-spectrum modulation for wireless systems, multiple access techniques, and wireless networking standards.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Comprehend, use, and characterize fundamentals of the wireless communications systems.
CO2 Applyand characterizewireless network architecture’s protocols.
CO3 Understand, use, and examine wireless communications and mobile computing systems, signals propagation characteristics of wireless channels and frequency reuse concepts; implement these skills and write report.
CO4 Understand, apply, and examine satellite communications and wireless networking standards; implement these skills and write report.

Course Contents

Course Topic CO
Overview of Wireless Communication Networking and Mobile Computing CO1
Historical perspectives, first and second generation cellular systems, land mobile vs. satellite vs. indoor wireless systems CO1
Adaptation and mobility in wireless information systems, challenges of mobile computing, mathematical preliminaries CO2
Wireless Channel Modelling:Path-loss and shadow fading models CO3
Rayleigh and Rician fading CO3
Coherence time, coherence bandwidth, frequency flat and selective fading CO3
Frequency reuse/cellular/microcellular concepts including sectorization and cell splitting CO4
Tracking and localization CO4
Multiple Access Techniques:

TDMA, FDMA, CDMA, ALOHA, Slotted-ALOHA, CSMA/CA, MACA, reservation protocols, 3G systems, wireless LAN standards (IEEE 802.11)

CO2
WiMAX standards (IEEE 802.16), WPAN standards (IEEE 802.15) CO2
Satellite communications CO4
Hidden node problem, exposed node problem, Request to send (RTS),Clear to send (CTS), Network allocation vector (NAV) CO4
Assignment with report and presentation CO3, CO4

CSE457:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE405 Computer Networks

Course Objective: The objective of this course is to give an introduction to the fundamentals of the cellular concept and communications systems. This course will also address system design fundamentals by introducing frequency reuse and channel assignment and handoff strategies. Besides, co-channel interference and system capacity, trunking and improving coverage and capacity will be its within coverage topic.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Comprehend fundamentals of the cellular communications systems.
CO2 Interpret, apply, and examine cellular architectures and protocols.
CO3 Interpret, apply, and examine cellular geometry to improve cellular capacity and coverage.
CO4 Apply the learnt knowledge; demonstrate this knowledge and write reportfor solving real-life problems.

Course Contents

Course Topic CO
Overview of wireless communication networking and mobile computing CO1
Overview of cellular communications CO1
Cellular architectures, channels allocations, and assignment strategies CO2
Channel planning and interference CO2
Power control for reducing interference CO2
Trunking and grade of service CO2
Cell geometry CO3
Cell splitting, sectoring CO3
Repeaters for range extension CO3
Microcell zone concept CO3
Assignment with report and presentation CO4

CSE471:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE313 Theory of Computations

Course Objective:The objective of this course is to learn basic principles and advanced techniques of compiler design. The initial part of the course will focus on the classic techniques of lexical analysis and scanning/screening, syntactic analysis like bottom-up and top-down parsing techniques, semantic analysis, type-checking, abstract syntax tree and code generation. The latter part will focus on intermediate representations and simple optimizations like register allocation and instruction scheduling. Students will be exposed to compiler design tools and they will develop a compiler of limited scope.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understandand use Lexical Analyzer, Regular expression, and Finite Automata in Lexical Analysis.
CO2 Understand, use, and examine various parsing technique, Syntax and Semantic Analysis, Type checking.
CO3 Developand examine concept of Intermediate Code Generation and Code Optimization.
CO4 ChooseCompiler Construction Tools, perform and demonstrate skills, and write report to Design and Build a simple Compiler.

Course Contents

Course Topic CO
Various phases of a Compiler, Lexical Analyzer, Regular Expression, Transition Diagram, CO1
Finite Automata, NFA, Regular Expression to NFA CO1
DFA, NFA to DFA (Subset Construction), DFA state minimization CO2
Context Free Grammar, Ambiguity, Left Recursion CO2
Top Down Parsing CO2
Bottom Up Parsing CO2
Semantic Analysis CO2
Run Time Environment CO3
Code Generation & Optimization CO3
Assignments and miniproject with reports and presentations CO4

CSE475:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE366 Artificial Intelligence

Course Objective:This course will introduce the field of Machine Learning, in particular focusing on the core concepts of supervised and unsupervised learning. Students will learn the algorithms which underpin many popular Machine Learning techniques, as well as developing an understanding of the theoretical relationships between these algorithms. The hands-on exercise will concern the application of machine learning to a range of real-world problems.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Formulateand usemachine learning problems corresponding to different applications.
CO2 Understandand usea range of machine learning algorithms, both supervised and unsupervised along with their strengths and weaknesses.
CO3 Understand, use, and determine appropriate machine learning methods/algorithms suitable for different types of learning problems, i.e. know about their most important weaknesses and advantages.
CO4 Examine and analyze appropriate software tools to implement algorithms in a range of real-world applications; implement and write report to represent the analysis results.

Course Contents

Course Topic CO
Introduction to Machine Learning CO1
Supervised Learning Setup CO1
Linear Prediction: Regression CO2
Classification: Decision Tree, Logistic Regression CO2
Probabilistic Modeling: Bayesian Method, Naïve Bias CO2
Unsupervised Learning: Clustering, Apriori CO2
Principal component analysis CO2
Clustering: Partitioning, Hierarchical CO2
Artificial Neural Networks: perceptron, MLPs, back propagation, introduction to Deep Learning CO3
Support Vector Machines CO3
Reinforcement learning and control CO3
Assignments and Mini Project with reports and presentations CO4

CSE477:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE366 Artificial Intelligence

Course Objective: The objective of the course is to introduce the basic concepts of Data Mining techniques to students. The course focuses on examining the type of data to be mined and applying preprocessing methods to raw data. The course emphasizes on discovering interesting patterns, analyzing supervised and unsupervised models and estimating the accuracy of the algorithms. The students will also be introduced to various Data Mining tools.

 Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Process raw input data to provide suitable input for a range of data mining algorithms.
CO2 Discover and measure interesting patterns from different kinds of databases.
CO3 Evaluate and select appropriate data-mining algorithms and apply, and interpret and report the output appropriately.
CO4 Choose and justify software tools;perform and demonstrate skills, and write report to design and implement Data-mining application using sample, realistic data sets.

Course Contents

Course Topic CO
Introduction to Data Mining, Data Mining Goals, Stages of the Data Mining Process, Data Mining Techniques, Knowledge Representation Methods CO1
Data preprocessing: Data cleaning, Data transformation, Data reduction CO1
Data mining knowledge representation, Representing input data and output knowledge CO2
Association rules, Correlation analysis CO2
Classification, Basic learning/mining tasks, Decision trees, Covering rules CO2
Prediction, The prediction task, Statistical classification, Instance-based methods, Linear models CO2
Clustering, Basic issues in clustering, First conceptual clustering system, Hierarchical methods, Conceptual clustering. CO3
Advanced techniques, Data Mining software and applications Text mining, Web mining CO3
Assignment and Mini Project with Report and Presentation CO4

CSE483:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective: This course is an elective course and will help the students to gain basic knowledge of the structure of graphs and the techniques used to analyze problems in graph theoryand discretestructures. The course will cover fundamental concepts, such as graphs, cycle, path, circuit, trees, matching and factors, connectivity and coloring, and network.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand fundamentals of graphs and analyze different properties of Eulerian and Hamiltonian graphs.
CO2 Explain, and apply different theorem related to spanning tree, maximum matching, and maximum coverage problems.
CO3 Explain, apply andexaminedifferent theorem related to cuts and connectivity, networks flow problem.
CO4 Explain, apply andexaminedifferent graph coloring theorems; perform and demonstrate skill and write report on graph coloring theorems.

Course Contents

Course Topic CO
Basic definitions, isomorphisms, walks, cycles and bipartite graphs CO1
Components, cut-edges, Eulerian graphs, vertex degrees and degree sequences, directed graphs CO1
Eulerian digraphs, trees and distance CO1
Counting spanning trees and the matrix tree theorem, minimal spanning trees and shortest paths CO2
Matchings, Hall’s theorem and coverings, maximum matchings, factors CO2
Cuts and connectivity CO3
Network flow problems, max-flow min-cut theorem CO3
Vertex colorings, bounds on chromatic numbers and Mycielski’s construction CO4
Chromatic polynomials, chordal graphs, planar graphs CO4
Euler’s formula and Kuratowski’s theorem, five and four color theorems CO4
Mini project CO4

CSE484:
Credit Hours and Teaching Scheme

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective: This course introduces concepts, data structures and techniques of computational geometry, and enhances the students’ ability to mathematically analyze real-life geometric problems. The course covers properties of geometric objects, algorithms, complexity analysis and correctness of algorithms, and real-life applications of algorithms.

Course Outcomes (COs)
After completion of this course students will be able to:

CO1 Understand, apply, and analyzepolygon triangulations, orthogonal range searching, and point location algorithms.
CO2 Interpret, apply, and analyzevoronoi diagrams, arrangements and duality, and delaunay triangulations.
CO3 Interpret, apply, and analyze linear programming, randomized algorithms, and graph drawing.
CO4 Apply the learnt knowledge for solving real-life problems; demonstrate this knowledge and write reports.

Course Contents

Course Topic CO
Introducing geometric objects, overview of computational geometric algorithms,polygon triangulations CO1
Convex hull: algorithms, complexity and correctness, real-life applications (both in 2-d and 3-d spaces) CO1
Polygon triangulations and art gallery theorem CO1
Orthogonal range searching: data structures and algorithms CO1
Point location algorithms CO1
Voronoi diagram: definitions and properties, algorithms CO2
Arrangements and duality: supersampling in ray tracing CO2
Delaunay triangulations CO2
Linear programming CO3
Randomized algorithms CO3
Graph drawing CO3
Assignment with report and presentation CO4

CSE486:
Credit Hours and Teaching Scheme

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE246 Algorithms

Course Objective:This is an interdisciplinary course that introduces computational techniques for solving biological problems. The course also emphasizes understanding of biological problems, computational algorithms to solve these problems, and do some mathematics for the analysis of these algorithms.

Course Outcomes (COs)
After completion of this course students will be able to:

CO1 Interpret, apply, and examinedifferent searching and clustering techniques on biological data for answering biological queries. C2, C3, C4
CO2 Interpret, apply, and examine sequence alignment techniques for understanding protein families, and the emerging field of phylogenomics. C2, C3, C4
CO3 Interpret, apply, and examine protein structure prediction, classification and analysis techniques for learning the functionalities of proteins. C2, C3, C4
CO4 Interpret, apply, examine, and justifybiological network for learning relationships within such networks; demonstrate knowledge of this course for real-life problem solving and write reports.

Course Contents

Course Topic CO
Introduction to biology, bioinformatics, and biological database CO1
Biological database searching, clustering and evolutionary tree algorithms CO1
Sequence alignment algorithms: pairwise, MSA, BLAST and FASTA CO2
Protein folding and protein structure modeling, alignment and prediction CO3
Gene regulatory network analysis CO4
Protein networks: montecarlo sampling and randomized graph walk. CO4
Assignments with report and presentation CO4

CSE487:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE301 Database Systems

Course Objective: This course builds up the student’s ability to understand the key aspects of big data platform, problems, and applications. The course will emphasize on identification and analysis on large-scale machine learning methods as well as modern tool, such as Hadoop in the context of big data analysis.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Describe the landscape and the V’s of Big Data for real world Big Data problems.
CO2 Apply and examine different tools and techniques for storing, managing, and analyzing big data; adapt the skills and write report to use the necessary tools for handling a variety of big data analytics.
CO3 Applyand examinethe core concepts of machine learning techniques in the context of big data for realistic problem solving; adapt the skills and write report to use the necessary tools for handling a variety of big data analytics.
CO4 Understand, apply, examine, and justifythe relationship among big data components; adapt the skills and write report to use the necessary tools for handling a variety of big data analytics.

Course Contents

Course Topic CO
Introduction to Big Data, Big Data Skills and Sources of Big Data CO1
Characteristics of Big Data – The Four V’s CO1
Key aspects of a Big Data Platform, Storage and Analytics, Governance for Big Data CO1
Data and Data Science; Relational Databases and SQL CO2
Data Cleansing and Preparation CO2
Data Summarization and Visualization; Descriptive Statistics and Correlation CO2
Association Analysis and Cluster Analysis CO3
Linear Regression, Principles of Classification; Decision Trees; and Linear Classifiers CO3
Neural Networks and R CO4
Introduction to Hadoop, Hadoop components (MapReduce/Pig/Hive/HBase) CO4
Cloud and Big Data CO4
Assignments with reports and presentations CO2, CO3, CO4

CSE489:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite:CSE431 Mobile Programming

Course Objective: This course introduces studentsto programming technologies, design and development related to mobile applications. Students are introduced to the survey of current mobile platforms, mobile application development environments, mobile device input methods, as well as developing applications for different mobile platforms. Students will design and build variety of applications throughout the course to reinforce learning and to develop real competency.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Describe and apply different mobile application models and patterns for developing mobile software application.
CO2 Describe, apply, and examinemobile development framework to the development of a mobile application for realistic application creation.
CO3 Use, analyze, and justify advanced programming competency for developing a maintainable and efficient cloud based mobile application.
CO4 Choose software tools,designsoftware for mobile programming;demonstratethese skills, and write report to design, build, and test software for mobile programming.

Course Contents

Course Topic CO
Mobile Phones and Network Technologies CO1
Android Programming, Android Application Frameworks CO1
Building a Simple User Interface CO1
Activities and Intents, Services CO2
Broadcast Receivers CO2
Data Persistence CO2
Processes and Threads CO2
Asynchronous Tasks CO3
Internet Resources CO3
Apps Publishing and Business Models CO3
iOS platform, Objective-C, Application development in iOS CO3
Mini project CO4

CSE491:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credits 3 1 4
Contact Hours 3 Hours/Week for 13 Weeks 2 Hours/Week for 13 Weeks 5 Hours/Week for 13 Weeks

Prerequisite: CSE345 Digital Logic Design

Course Objective:The course is designed to provide the students with basic theories and techniques of VLSI design in CMOS technology. This course covers the fundamental concepts and structure of designing VLSI systems including CMOS devices and circuits, standard CMOS fabrication processes, CMOS design rules, static and dynamic logic structures, CMOS chip layout, low power techniques and structural design methods of VLSI architecture. This course also emphasizes computer-aided design and synthesis of complex digital circuits using Verilog and physical layout tools.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Interpret the characteristics of CMOS circuit construction and the comparison between different state-of-the-art CMOS technologies and processes.
CO2 Interpret and apply CMOS technology-specific layout rules in the placement and routing of logic components and their interconnect, and examine the functionality, timing, power and parasitic effects.
CO3 Apply and examine hardware modeling techniques for combinational and sequential circuit design.
CO4 Use, examine, and justify Verilog hardware description language and physical layout tools, perform and demonstrate skills and write report to design, test and synthesize complex digital circuits.

Course Contents

Course Topic CO
Introduction to VLSI and digital IC CO1
CMOS transistor theory and non-ideal transistor characteristics CO1
Circuits, fabrication and layout CO2
DC and transient response CO2
Logical effort, interconnecting engineering and parasitic CO2
Combinational and sequential circuit design CO3
Arithmetic circuits in CMOS VLSI CO3
Data path functional units CO3
Memories and programmable logic CO3
VLSI clocking/low power CO2
Mini Project CO4

CSE492:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE 442 Microprocessors and Microcontrollers

Course Objective: The objective of this course is to introduce students to the field of Robotics and stimulate their interests through a variety of multidisciplinary topics necessary to understand the fundamentals of designing, building, and programming robots. The course will address fundamental mathematical modeling of robots-kinematics, inverse kinematics, sensors and sensor processing algorithms, different control architectures, their management and programming strategies.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Learn fundamental mathematical and computational models; and solveand analyzekinematic problems involving robot manipulators and mobile robots.
CO2 Familiarizewith robot sensors, sensor processing algorithms and navigation planning approaches; use them andexamine their engineering trade-offs.
CO3 Understand robot actuator movements and controlling managements; and explore the computational challenges within robotic tasks.
CO4 Use, examine, and justify control programming strategies of industrial systems; demonstrate these knowledge and write reportto develop simple mobile robot.

Course Contents

Course Topic CO
Introduction of Robotics and Robot Mechanical Structure CO1
Kinematics and inverse kinematic problems CO1
Actuators and Sensors CO2
Trajectory Planning CO2
Motion Planning CO2
Control Architecture CO3
Motion Control CO3
Force Control CO3
Visual Servoing CO3
Mini Project CO4

CSE494:
Credit Hours and Teaching Scheme:

Theory Laboratory Total
Credit Hours 3 0 3
Contact Hours 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

0 3 Hours/Week for 13 Weeks +

Final Exam in the 14th week

Prerequisite: CSE442 Microprocessors and Microcontrollers

Course Objective: This course is an elective course and build up students’ ability to understand fundamental concepts of embedded systems, techniques and tools for integrating hardware and software components in embedded system design. The course will also emphasize on testing and debugging approaches for verification of embedded systems.

Course Outcomes (COs):
After completion of this course students will be able to:

CO1 Understand characteristics and internal architecture of embedded systems.
CO2 Apply and examineprogramming, testing and debugging approaches and tools to develop and verify embedded systems.
CO3 Apply and examine the concepts of real time operating systems to design embedded systems.
CO4 Choose software and hardware tools, perform and demonstrate skills, and write report to develop embedded systems.

Course Contents

Course Topic CO
Introduction   to   embedded   systems, Major components and applications of Embedded system CO1
Architecture of processors in embedded system, memory organization and real-world interfacing CO1
Device Drivers and interrupt service mechanism CO1
Develop embedded systems using assembly and high-level languages CO2
Sequential and Data Flow graph modeling for program analysis CO2
State machine modeling for program analysis CO2
Concurrent process modeling for program analysis CO2
Testing, Simulation and Debugging techniques and tools to design and verify embedded systems CO2
Task scheduling algorithms in real time operating system environment CO3
Design procedure of embedded system using real time operating system concepts CO3
Case studies: Embedded system design for automobile, smart card, digital camera, and home electronics using real time operating system concepts CO3
Mini project CO4