Bachelor of Engineering in Electrical and Computer Engineering

Total Number of Credits: 248 ECTS

Year 1: Fall Semester (34 ECTS)
Year 1: Spring Semester (34 ECTS)
Year 2: Fall Semester (32 ECTS)
Year 2: Spring Semester (28 ECTS)
Year 3: Fall Semester (30 ECTS)
Year 3: Spring Semester (30 ECTS)
Year 4: Fall Semester (30 ECTS)
Year 4: Spring Semester (30 ECTS)
ENG 100 - Introduction to Engineering
This course introduces students to the foundation and fundamental principles required to become analytical, detail-oriented, and productive engineers. The students will also gain an overview of what engineers do and of the various areas of specialization. Important topics for the engineering profession such as research in engineering, communications, and safety are also introduced. Additionally, students will work together in interdisciplinary groups to research, design, fabricate, test, and deploy a complete engineering project. Through lectures, laboratory practicum and project work, the students will become familiar with the following topics:
  • Overview of the Engineering Discipline
  • Engineering Communications
  • Research Skills
  • Occupational Health & Safety
  • Drafting and 3D Modelling
  • Fundamental Dimensions and Units
  • Manufacturing (3D Printing and/or others)
  • Material & Chemical Properties
  • Hydraulics and Fluids management
  • Programming * AC/DC circuits
ENG 101 - Programming for Engineers
Programming for Engineers is a comprehensive introductory course designed specifically for students with little or no prior programming experience. The course aims to equip students with fundamental programming skills and a solid understanding of the role computation can play in problem-solving. By the end of the course, students will develop the confidence and ability to write small programs to accomplish practical goals, regardless of their field of study.
ENG 103 – Engineering Materials II
This course will introduce students to the field of Materials Science and Engineering. Some of the fundamental physical and chemical features of materials will be addressed, including bonding between metal atoms, covalent bonding between non-metallic atoms, ionic bonding, and soft bonding (van der Waals interaction and hydrogen bonding). Many construction materials, as encountered in our daily lives, will be examined from the atomic level all the way up to their (often surprising) macroscopic features. For instance, attention will be devoted to electrical properties of materials (conductivity, isolators), as well as to magnetic and optical properties. Furthermore, the effect of processing methods on the ultimate properties of materials will be discussed. The course will address metals (including shape-memory metals), ceramic materials and various types of polymers (e.g. poly olefins, poly esters, polyurethanes, natural polymers such as cellulose, silk and wood, and synthetic hydrogels). Some pertinent applications, e.g., (i), in the field of electronic engineering (semiconductors); (ii), in micro- and nano-mechanical systems) and (iii), in biomedical engineering (biomaterials) will be highlighted.
ENG 200 - Differential Equations & Linear algebra
1. Differential equations of first- and second-order
2. Series solution of differential equations
3. Laplace transforms and its application to the solution of initial value problems
4. Some of the important special functions.
5. Linear algebra applications
6. Incorporation of the software package Mathematica for both calculus & linear algebra applications.
ENG 201 – Applied Probability and Statistics
This course provides an introduction to basic probability theory and statistics. Topics include sample spaces, events, classical and axiomatic definition of probability, conditional probability, independence, expectation and conditional expectation, variance, distributions of discrete and continuous random variables, joint distributions, central limit theorem, descriptive statistics, confidence interval estimation, and hypothesis testing.
ENG 300 - Interdisciplinary Design Projects      
In this course students work in interdisciplinary teams toward a holistic approach to design projects; including problem definition, design proposal, implementation, and critical evaluation. The course explores design research and practice within social and economic contexts; including the ethical, cultural, and environmental impacts of design decisions, intellectual property considerations, and aspects of appropriate professional conduct. The course will focus on tools and skill sets that are particularly important for succeeding in a design project, including planning, teamwork, project management, and design reporting. Where possible, it is expected that the projects will include an industrial partner, who will provide realistic industrial problems and support them with necessary guidance and resources. This course requires students form and work in groups of 5 or more in size.
ENG 400 - Capstone Project
The capstone project is the culminating experience of the student's engineering program and provides students with the opportunity to apply and integrate their knowledge and skills gained from earlier years. This course spans two semesters (one academic year), during which students work in teams to apply their knowledge and skills to solve design and operational problems with real world constraints. At the completion of the unit, students will hand over their project deliverables and present project outcomes in a report as well as end-of-semester oral presentation and defense.
ELCE 200 - Circuit Theory I
This is the first course on electrical circuit theme and covers three distinct circuit aspects. The first part of the course deals with the circuit analysis techniques, circuit theorems, various combination on RLC circuits and their responses, and phase relationship for R, L, and C, Impedance and Admittance. The second part of the course deals with Semiconductor diode, Zener diode, Rectifier Circuits, Clipper and Clamper Circuits, and other wave shaping circuits. The third and final component of this course covers Magnetic circuits, mutually coupled circuits, Transformers, and equivalent circuits and their performance.
ELCE 201 – Circuit Theory II
The objective of this course is to build on the tools and techniques learnt in ELCE 200 Circuit Theory I course. A tentative list of topics includes: Review of Basic Circuit Analysis, Operational Amplifiers-based circuit analysis, Second-Order Circuits and Three-Phase Circuits, Frequency Response of Active Filters, Application of Laplace Transform for Circuit Analysis, Circuit Application using Fourier Analysis, Two-port Networks.
ELCE 201L – Circuit Theory Lab
The objective of this course is to provide hands-on laboratory training in circuit theory, design and analysis methods to students taking the accompanying core ELCE 200 Circuit Theory I and ELCE 201 Circuit Theory II courses. A tentative list of topics includes: Review of Basic Circuit Analysis, Operational Amplifiers-based circuit analysis, Second-Order Circuits and Three-Phase Circuits, Frequency Response of Active Filters, Application of Laplace Transform for Circuit Analysis, Circuit Application using Fourier Analysis, Two-Port Networks.
ELCE 202 – Digital Logic Design
This course presents the introductory concepts that are needed in order to design digital systems including combinational and sequential digital logic, and state machines. Concepts of Boolean algebra, Karnaugh maps, flip-flops, registers, and counters along with various logic families and comparison of their behavior and characteristics are covered. Additionally this course presents an introduction of the Hardware description language (VHDL) and introduce students to design combinational and sequential circuits using VHDL and simulators.
ELCE 202L – Digital Logic Design Lab
A co-requisite laboratory course (accompanying ELCE 206 Digital Logic Design), covering practical aspects of digital system design. This course introduces basic wiring and hardware interfacing techniques, exposes students to state-of-the-art design applications and techniques using Field Programmable Gate Arrays (FPGA), and covers design using hardware description languages (HDL). Concepts, such as Boolean algebra, number representations, synthesis and design of combinational and sequential logic circuits, and other topics from the co-requisite lecture course, are reinforced with hands-on experiences in the laboratory.
ELCE 203 – Signals and Systems
The objective of this course is to introduce fundamental properties of linear systems and transform techniques to analyze the behavior of linear systems. Students are also expected to gain an appreciation for the importance of linear system theory in electrical engineering. A tentative list of topics includes:
  • Introduction to signals: classifications, transformations, and basic building-block signals. *Introduction to systems: properties (linearity, time-invariance, causality, etc.) and system interconnections.
  • Time-domain analysis: convolution sum and convolution integral, linear constant-coefficient difference and differential equations.
  • Frequency domain analysis: Fourier series (derivation, properties, and convergence), Continuous-time Fourier transform (derivation, properties, convergence), Discrete-time Fourier transforms (derivation, properties, convergence). Laplace transform (properties, convergence), inverse Laplace transform.
  • Introduction to Z transform (time-permitting)
ELCE 203L – Signals and Systems Laboratory
The objective of this course is to train students by providing comprehensive practical (laboratory) works on the fundamental properties of linear systems and transform techniques to analyze the behavior of linear systems. Students are also expected to gain an appreciation for the importance of linear system theory in electrical engineering. A tentative list of topics includes: Introduction to signals: classifications, transformations, and basic building-block signals. Introduction to systems: properties (linearity, time-invariance, causality, etc.) and system interconnections. Introduction to sampling. Time-domain analysis: convolution sum and convolution integral, linear constant-coefficient difference and differential equations. Frequency domain analysis: Fourier series (derivation, properties, and convergence), Continuous-time Fourier transform (derivation, properties, convergence), Discrete-time Fourier transform (derivation, properties, convergence). Laplace transform (properties, convergence), inverse Laplace transform.Finite impulse response (FIR) filtering.
ELCE 204 - Solid State Devices
Solid state devices play an important role on modern life, causing revolutionary development in new technologies. This course focus on fundamental knowledge in semiconductor material properties and solid-state devices such as diodes, MOSFETs and BJT. The course will start with introducing physical models, energy band models, carrier actions and then go into the topics of p-n junctions and its applications. Modern devices such as photodetectors, solar cells and LEDs will be discussed. This course will also cover the fundamentals of MOS capacitors, BJTs and MOSFETs, equipping students with consolidation of physical knowledge for their subsequent courses in electronics and circuits. In the lab sessions, students can consolidate their knowledge by doing the designed experiments in electronics and computer labs and have chance to learn the basic fabrication techniques of semiconductor devices.
ELCE 205/MATH 251 – Discrete Mathematics
This course covers processes that consist of a sequence of countable and separable structures. This is in contrast with calculus, which studies processes in a continuous fashion. While the calculus is fundamental to many scientific disciplines including physics, engineering, and economics, the ideas in discrete mathematics contribute to the computer science and engineering. The main themes of this first course in discrete mathematics are logic and proof, induction and recursion, discrete structures, combinatorics and discrete probability, algorithms and their analysis, and applications and modeling.
  • Logic and Proof: is the main goal of this first course in discrete mathematics which is to help students to think abstractly. Students will learn to use logically valid forms of arguments and avoid logical errors. They will gain knowledge to reason from definitions and to derive new results from those already known to be true.
  • Induction and recursion: Students will be familiarized with the concept of recursion which is the process of solving large problems by breaking them down into simpler problems that have identical forms. Such approach is widely used in the analysis of algorithms.
  • Discrete structures: Those will be covered are sets of integers and rational numbers, general sets, Boolean algebra, functions, relations, graphs and trees, formal languages and regular expressions, and finite-state automata.
  • Combinatorics and Discrete Probability: Basic probability theory will be studied including subjects such as permutations, combinations, expectation, probability axioms and binomial theorem.
  • Algorithms and their analysis: Designing an algorithm and determining whether or not it is correct requires the use of mathematical induction. In order to compare the algorithms in terms of their memory requirements and their execution speeds, combinatorics, recurrence relations, functions, and O-, V-, and Q-notations will be studied.
ELCE 300 – Microprocessor Systems
This course provides an overview of microcontrollers, as well as select topics in computer architecture and embedded systems. Students will develop an appreciation for the role of hardware in computer operations; an understanding of microcontrollers, microprocessors, and embedded systems; and will be able to design, write, and debug assembly language and C-language programs for microcontrollers using a state-of-the-art integrated development environment. Additional concepts will include interfacing with external hardware, interrupts and timers, as well as principles of good software/hardware co-development. This course will place a heavy emphasis on laboratory practicums and all theory aspects will be covered in the corresponding labs.
ELCE 300L – Microprocessor Systems Laboratory
This course equips students with the practical skills to program and develop applications for microprocessor based systems. Laboratory experiments in this course supplement the subjects covered in ELCE 300 Microprocessor Systems course. Microprocessor kits and experiment boards, as well as emulator tools, are used to explore the architecture and behavior of such systems. A tentative list of topics includes:
  • Methods used to store data in microprocessor based systems
  • Programming model of the microprocessors and assembly language
  • Instruction set and its classification , e.g. for Intel family microprocessors
  • Developing applications using assembly program
  • Basic I/O interfacing that includes timers, keyboard/display controllers, ADC/DAC
  • Advanced I/O techniques such as printer interface and disk memory
ELCE 301 - Electronic Circuits
The course focuses on building the ability to analyze and design electronic circuits. This course starts with an overview of semiconductor technology. Subsequently it covers Bipolar Junction Transistor (BJT), Small Signal BJT models, BJT based amplifiers, Metal Oxide Field Effect Transistors (MOSFET), Small Signal MOS models, MOSFET based amplifiers, applications of BJT and MOSFET in the design of differential amplifiers, power amplifiers, and their characterization techniques. The assignments and labs complement the theoretical postulations and will consist of theoretical analysis, simulation exercises, and laboratory experiments.
ELCE 301L - Electronic Circuits Lab
The objective of this course is to provide hands-on laboratory training in analysis and electronic circuits design. This course starts with an overview of semiconductor technology. Subsequently it covers Bipolar Junction Transistor (BJT), Small Signal BJT models, BJT based amplifiers, Metal Oxide Field Effect Transistors (MOSFET), Small Signal MOS models, MOSFET based amplifiers; and analog and digital circuits and applications.
ELCE 302 – Electric Machines
This course aims to teach the theory and principles of electromagnetism and electromechanical energy conversion devices and systems. Topics covered include: Electromagnetism and magnetic circuits, magnetic losses, self and mutual inductances, permanent magnet, and production of voltage and force. DC machines – construction, operation, classification, characteristics, losses, efficiency, starting, speed control, and dynamic model and characteristics. Transformers – construction, equivalent circuits, voltage regulation and efficiency, determination of parameters, autotransformers, and 3-phase transformers. Three-phase induction machines – construction, classification, operation, development of equivalent circuit, performance calculations, characteristics, starting, and speed control of induction motors; modelling, operation, and characteristics of induction generators. Synchronous machines – construction, operation, equivalent circuit, phasor diagram, and characteristics for both generator and motor operations. Overview, operation, and characteristics of some special purpose machines.
ELCE 303 – Power Systems Analysis
Power system analysis is the core knowledge required for understanding, planning, and operating a power system. This unit introduces students to the core knowledge of power systems analysis and modelling. The unit will begin by introducing concepts related to the operation of plant equipment and the deregulation of the energy industry. This is followed by a detailed study into current, voltage, capacitance and impedance relations on a short, medium and long distance transmission line. Power-flow calculations for various symmetrical and unsymmetrical fault conditions will be investigated using the methods of Gauss-Seidel, Newton-Raphson and Fast Decoupled. Other aspects covered include power system stability, control, contingency analysis and economic operation.
ELCE 304 – Computer Networks
This course introduces fundamental concepts in the design and implementation of computer communication networks, their protocols, and applications. Topics to be covered include: overview of network architectures, applications (HTTP, FTP), network programming interfaces (e.g., sockets), transport (TCP, UDP), flow control, congestion control, IP, routing, multicast, data link protocols, error-detection/correction, multiple access, LAN, Ethernet, wireless networks, and network security. Examples will be drawn primarily from the Internet (e.g., TCP, UDP, and IP) protocol suite. The main topics that will be covered are computer networks and the Internet, application layer, transport layer, network layer: data plane and control plane, datalink layer: links, access networks and LANs, wireless and mobile networks, network security, multimedia and social networking.
ELCE 305 – Data Structures and Algorithms
Data structures and algorithms covers analysis and design of fundamental data structures and engages students to use data structures as tools to algorithmically design efficient computer programs that will cope with the complexity of actual applications. The course focuses on basic and essential topics in data structures, including array-based lists, linked lists, queues, hash tables, recursion, binary trees, heaps, sorting algorithms, graphs, and finite automata. This course will also cover the advanced programming concepts, equipping students with consolidation of physical knowledge for their subsequent courses in computer engineering. The lab sessions have been designed to give students sufficient practical exposure and make them capable to design efficient application-specific algorithms.
ELCE 306 - Linear Control Theory
This course is an introductory course in control theory which introduces analysis of feedback closed loop systems and controller design. The course includes description of linear, time-invariant, continuous time systems, system dynamic properties in time and frequency domains, and performance specifications. Then the course covers basic properties of feedback including stability analysis: Routh-Hurwitz criterion, Root Locus method, Bode gain and phase margins, and Nyquist criterion. Then classical controller design in time and frequency domain: lead, lag, lead-lag compensation, rate feedback, and PID controller are introduced. Laboratory work consists of MATLAB and Simulink assignments, reinforcing analytical concepts and design procedures.
ELCE 307 – Digital Signal Processing
This course is designed to familiarize students with the fundamental concepts in digital signal processing (DSP). A list of topics includes:
  • Introduction to DSP
  • Review of signals and systems (convolution vs Correlation).
  • Fourier domain analysis, and Discrete Fourier Transform (DFT), Properties of DFT, Circular Convolution, linear vs circular convolution.
  • Z-Transform and its applications in signal processing.
  • Sampling & digital processing of continuous time signals.
  • Transform-domain analysis of linear time-invariant (LTI) systems.
  • Structures for implementation of digital filters.
  • IIR Digital filter design & FIR filter design.
  • Overview of Signal Processing Applications
ELCE 308 – Communication Systems
ELCE 308 is the first course in communication engineering that convers the concepts both in analog and digital communication systems including amplitude (AM) and frequency modulation (FM), pulse code modulation (PCM), phase shift keying (PSK)and quadrature amplitude modulation (QAM). Analog to digital conversion methods, sampling and quantization, are briefly revisited. The effects of noise and the transmission medium on the system performance through signal-to-noise ratio (SNR), intersymbol interference (ISI) and bit-error-rate (BER) analysis are discussed. For digital communication, optimal receivers with matched filtering for both baseband and passband transmission are discussed In detail. Fourier transform techniques, linear systems, filtering, power and energy spectral density of random signals are reviewed for conceptual purposes. Laboratory and software assignments are given to exercise the concepts and techniques covered in class.
ELCE 309 – Independent Study
This course is designed to be a lead-in to the Year 4 capstone project of student studies, during which students will develop necessary skills that would make their capstone project successful. The course covers literature review, independent research, and methods of applying existing knowledge and skills to solving an engineering problem. This course would be led by the student, with faculty members providing the necessary expertise to steer the research in the correct direction. Students will learn and develop research methods, which they will apply throughout their capstone project course sequence in Year 4 of bachelor studies. A proposal that will provide the scope for the capstone project and a comprehensive literature review will be presented at the end of the course, in addition to an end-of-semester presentation.
ELCE 311: Interdisciplinary Design Project

This course prepares students for the Year 4 capstone project by honing skills in report writing, research, and LaTeX typesetting. It offers hands-on labs covering electrical circuits and PCB design. Students present findings and submit a final report, showcasing growth and insights. Graduates emerge as skilled electronics enthusiasts, researchers, and adept report writers, well-prepared for their Year 4 capstone projects.
ELCE 311: Interdisciplinary Design Project

This course prepares students for the Year 4 capstone project by honing skills in report writing, research, and LaTeX typesetting. It offers hands-on labs covering electrical circuits and PCB design. Students present findings and submit a final report, showcasing growth and insights. Graduates emerge as skilled electronics enthusiasts, researchers, and adept report writers, well-prepared for their Year 4 capstone projects.
ELCE 352: Applied Simulation Laboratory
This course offers a comprehensive exploration of MATLAB/SIMULINK for modeling, simulating, and analyzing electrical systems. From circuits to control systems, students gain practical skills through lab sessions and theoretical explanations, ensuring a thorough understanding of the subject matter.