The objective of this course is to let the students work with limited guidance on a project designed to
consolidate theory and practice, and inculcate an attitude of self-learning, teamwork and build the confidence to work on large scale software projects. 

To teach the elements of a computer and how they are organized and explain how instructions of a program will be executed by the microprocessor and how performance can be evaluated and enhanced so as to widen the vision of students in understanding programs behaviour on a computer system.

Course Content: Communication networks, Terminology, classification, and performance metrics, Network Design: Layered network architectures, Network applications and transport services, Packet-switching networks, Transmission over links and local area networks, Physical transmission fundamentals, Circuit-switching networks.

This is the first programming course in Computer Engineering specialization. Here is the course content: Problem solving, Storing and naming data and operators, Control flow, Using standard library functions, Structured programming, Static allocation, References (pointers), Linked structures, Memory layout, Language tool-chains, Support tools.

Course Content: Introduction to digital logic, Number systems and digital logic, Combinational logic circuits, Modular design of combinational circuits, Sequential logic circuits and memory elements, Design of synchronous sequential circuits, Analysis and design of asynchronous sequential circuits, Digital circuit design and implementation.

This course is designed to impart basic knowledge on object oriented programming and fundamentals of computer networks to students specializing in electrical and electronic engneering.