Bachelor of Technology in Telecommunication Engineering
Bachelor of Technology in Telecommunication Engineering
Tech)
Year ONE
First Semester
Second Semester
Code Course title CV Statu L T P Prerequisite
s
TEL2201 Digital Electronics 1 4 C 30 10 0
TEL2202 Analogue signal processing 5 C 40 10 0
TEL2203 Analogue transmission techniques 4 C 30 10 0
TEL2204 Engineering Math 2 4 C 30 10 0
TEL2205 Antenna and space telecommunications 3 C 20 10 0
TEL2206 Electronic laboratory 1 4 C 0 0 40
TEL2207 Computer systems and windows 3 C 10 0 20
TEL2208 Engineering Physics 2: Mechanics 3 C 20 10 0
TOTAL 30 180 60 60
Year TWO
First Semester
Code Course title CV Status L T P Prerequisite
TEL3101 Digital Electronics 2 3 C 20 10 0
TEL3102 Digital signal processing 5 C 40 10 0
TEL3103 Telephony and switching 3 C 20 10 0
TEL3104 Digital transmission techniques 4 C 30 10 0
TEL3105 Optical fibre transmission and Hertzian 3 C 20 10 0
Page 1 sur 86
beam
TEL3106 Enterprise creation and enterpreneurship 2 C 15 5 0
TEL3107 Engineering Math 3 3 C 20 10 0
TEL3108 Telecommunications practice 1 4 C 0 0 40
TEL3109 Electronic laboratory 2 3 C 0 0 30
TOTAL 30 155 75 70
Second Semester
Code Course title CV Status L T P Prerequisite
TEL3201 Electronic of Communication 4 C 30 0 10
TEL3202 Networking Fundamentals 3 C 20 10 0
TEL3203 Mobile Telephony and networks 3 C 20 10 0
TEL3204 Computer studies : Office automation 3 C 0 0 30
TEL3205 Satelite and high frequency 3 C 20 10 0
transmissions
TEL3206 Minor project and report 4 C 0 0 40
TEL3207 Telecommunications practice 2 3 C 0 0 30
TEL3208 General Economics 2 C 15 5 0
TEL3209 Defense of internship report 5 C 0 0 50
TOTAL 30 105 30 165
Year TREE
First Semester
Second Semester
LIST OF COURSES
First Semester
Second Semester
First Semester
Page 3 sur 86
TEL3105 Optical fibre transmission and Hertzian beam
Second Semester
First Semester
Second Semester
Course description
Objective:
The objective of Electrical Circuit Analysis is to equip students or professionals with
foundational and advanced knowledge of analyzing, designing, and troubleshooting electrical
circuits. The focus is on understanding the behavior of electrical components,
interconnections, and systems under various conditions. This ensures participants develop the
skills to solve real-world engineering problems and optimize circuit performance.
Content:
Fundamentals of Circuit Theory: Understanding voltage, current, power, and energy, along
with circuit elements like resistors, capacitors, and inductors.
Ohm’s and Kirchhoff’s Laws: Application of basic laws to analyze simple and complex
circuits.
AC and DC Circuits: Analysis of circuits powered by alternating current (AC) and direct
current (DC).
Network Theorems: Thevenin’s, Norton’s, Superposition, and Maximum Power Transfer
theorems.
Transient and Steady-State Analysis: Study of time-dependent circuit responses, including
RL, RC, and RLC circuits.
Frequency Domain Analysis: Use of phasors, impedance, and frequency response for AC
circuit analysis.
Operational Amplifiers and Filters: Introduction to op-amp-based circuits and filter design.
Outcomes:
Page 5 sur 86
Understand Circuit Behavior: Grasp the fundamental principles of electrical circuits and their
applications; Apply Analytical Techniques: Use mathematical and graphical methods for
solving circuits; Design and Troubleshoot Circuits: Develop and refine electrical circuit
designs for specific applications; Employ Simulation Tools: Utilize modern simulation
software for analysis and optimization.
Objective
The course "Fundamentals of Signals and Systems" aims to provide students with a
comprehensive understanding of the fundamental concepts and principles that govern the
analysis and processing of signals and systems. It is designed to equip students with analytical
tools and techniques for modeling, interpreting, and designing systems that interact with
signals in various forms, such as electrical, mechanical, and biological. The course bridges
theoretical concepts with practical applications in fields like communications, control
systems, and signal processing.
Content
Outcomes
Upon completing this course, students will: Understand Key Concepts: Grasp the fundamental
properties and classifications of signals and systems; Analyze Systems: Apply time-domain
and frequency-domain techniques to analyze and design linear time-invariant (LTI) systems;
Develop Problem-Solving Skills: Tackle real-world engineering problems related to signal
processing, communications, and control systems.
Content:
Basic Concepts: Fundamentals of voltage, current, power, and circuit components like
resistors, capacitors, and inductors.
Semiconductor Devices: Characteristics and operation of diodes, transistors (BJTs,
MOSFETs), and operational amplifiers.
Analog Circuit Design: Biasing techniques, small-signal analysis, and amplification stages.
Feedback and Stability: Feedback topologies, frequency response, and stability analysis.
Filters and Oscillators: Design and implementation of low-pass, high-pass, band-pass filters,
and oscillators.
Power Electronics: Power amplifiers and voltage regulators.
Practical Applications: Analog-to-digital converters (ADCs), signal conditioning, and
interfacing with sensors.
Outcomes:
By completing this course, students will be able to: Understand and analyze the behavior of
analog electronic components; Design and simulate analog circuits for specific applications;
Employ advanced tools to test and validate analog systems; Solve practical problems related
to analog signal processing.
Objective
Engineering mathematics I is designed to introduce students to the fundamental concepts of
differential and integral calculus. The objective is to develop problem-solving skills, critical
thinking, and an understanding of how calculus applies to real-world phenomena. Students
will learn to analyze and interpret mathematical models and apply calculus to solve practical
problems in physics, engineering, economics, and other disciplines.
Content
Limits and Continuity: Understanding limits, their properties, and applications. Examination
of the continuity of functions.
Differentiation: Learning the concept of the derivative, techniques of differentiation, and the
physical and geometrical interpretation of derivatives. Topics include power, product,
quotient, and chain rules.
Page 7 sur 86
Applications of Derivatives: Practical uses of derivatives in optimization problems, related
rates, curve sketching, and motion analysis.
Integration: Introduction to antiderivatives, definite and indefinite integrals, and the
Fundamental Theorem of Calculus.
Applications of Integrals: Calculating areas under curves, volumes of solids of revolution, and
solving problems in physics and engineering.
Transcendental Functions: Exploration of exponential, logarithmic, and trigonometric
functions and their derivatives and integrals.
Outcomes
By the end of the course, students will: Understand and apply the principles of limits,
continuity, differentiation, and integration; Analyze and solve mathematical and real-world
problems using calculus; Interpret the graphical behavior of functions and their derivatives;
Master foundational skills required for advanced calculus and related fields;Appreciate the
role of calculus in science, technology, and other domains.
Content
1. Electrostatics:
2. Electromagnetism:
3. Applications:
Outcomes
Upon completing this course, students will: Understand the mathematical frameworks of
electric and magnetic fields; Analyze and solve problems involving electrostatic forces,
potentials, and fields; Apply Maxwell's equations to predict and describe electromagnetic
phenomena; Grasp the principles behind practical devices like generators, motors, and
communication systems.
Content:
The course covers the following key topics:
1. Number Systems and Codes: Binary, decimal, octal, hexadecimal systems, and their
conversions; binary arithmetic; and common coding schemes like ASCII and Gray
code.
2. Logic Gates and Boolean Algebra: Fundamental logic gates (AND, OR, NOT, NAND,
NOR, XOR, XNOR), truth tables, Boolean expressions, and simplification using
Boolean algebra and Karnaugh maps.
3. Combinational Logic Circuits: Design and analysis of circuits like adders, subtractors,
multiplexers, demultiplexers, encoders, and decoders.
Page 9 sur 86
Outcomes:
Upon successful completion of Digital Electronics 1, students will be able to: Perform
arithmetic operations and conversions across different number systems; Analyze and design
basic combinational and sequential logic circuits; Apply Boolean algebra to simplify complex
logic expressions and optimize circuits; Understand and work with fundamental digital
components like gates; Utilize HDL to describe, simulate, and verify simple digital circuits.
Objective
Content
The course covers key topics in analogue signal processing, including:
Signal Representation and Characteristics: Understanding continuous-time signals, frequency
spectra, and the role of signals in communication and control systems.
Linear Systems and Filters: Analysis of linear time-invariant systems, frequency response,
and the design of passive and active filters (low-pass, high-pass, band-pass, and band-stop).
Fourier and Laplace Transformations: Their application in analyzing and designing systems
for signal processing.
Operational Amplifiers: Usage in signal processing, including amplifiers, integrators, and
differentiators.
Signal Modulation: Introduction to AM, FM, and PM techniques and their applications.
Outcomes
Upon completing the course, students will: Understand the principles and techniques of
analogue signal processing; Be able to design and analyze analogue circuits for signal
manipulation; Apply Fourier and Laplace transforms to solve problems in signal analysis;
Develop proficiency in using operational amplifiers in signal processing applications.
Page 10 sur 86
The objective of Analogue Transmission Techniques is to equip students with a
comprehensive understanding of analogue communication systems. The course aims to
explore the fundamental principles, components, and methodologies involved in transmitting
information through analogue signals, focusing on both theoretical concepts and practical
applications.
Content
The course covers a range of topics essential for mastering analogue transmission techniques,
including:
Outcomes
Upon completing TEL2203, students will be able to: Demonstrate a clear understanding of the
principles of analogue transmission; Analyze and implement various modulation techniques
in practical scenarios; Evaluate the impact of different transmission media on signal quality;
Design basic analogue communication systems, including transmitters and receivers.
Objective
The objective of TEL2205 Antenna and Space Telecommunications is to provide students
with a thorough understanding of the principles and technologies associated with antennas
and their critical role in space-based communication systems. The course aims to bridge
theoretical concepts with practical applications, preparing students for careers in
telecommunications and satellite technology.
Page 11 sur 86
Content
The course encompasses a variety of essential topics, including:
Outcomes
Upon successful completion of TEL2205, students will be able to: Understand the
fundamental principles governing antenna operation and design; Analyze different types of
antennas and select appropriate designs for specific communication requirements; Evaluate
the effects of electromagnetic wave propagation in various environments.
Objective
The objective of TEL2206 Electronic Laboratory 1 is to provide students with hands-on
experience in electronic circuit design, assembly, and testing. This course aims to reinforce
theoretical concepts learned in lectures by engaging students in practical experiments,
fostering skills in problem-solving, teamwork, and critical thinking in the field of electronics.
Content
The course includes a variety of practical activities, covering key areas such as:
1. Basic Circuit Components: Introduction to resistors, capacitors, inductors, diodes, and
transistors, including their functions and characteristics.
Page 12 sur 86
4. Circuit Analysis: Performing analysis on simple circuits using Ohm’s Law and
Kirchhoff’s laws, and understanding the behavior of series and parallel circuits.
Outcomes
Upon completing TEL2206, students will be able to: Assemble and test basic electronic
circuits using appropriate components and tools; Utilize laboratory instruments to measure
and analyze electrical parameters accurately; Apply fundamental concepts of circuit theory to
practical scenarios.
Objective
The objective of Computer Systems and Windows is to provide students with a foundational
understanding of computer systems architecture and the Windows operating system. The
course aims to equip students with the skills necessary to effectively navigate, manage, and
utilize computer systems for various applications in both personal and professional
environments.
Content
The course covers a range of essential topics, including:
1. Computer Architecture: Introduction to the basic components of computer systems,
including the CPU, memory, storage, and input/output devices, along with their
functions and interactions.
3. File Management: Techniques for file organization, management, and retrieval within
the Windows environment, including the use of File Explorer and file types.
Outcomes
Upon successful completion of TEL2207, students will be able to: Describe the fundamental
components of computer systems and their functions; Navigate and manage the Windows
operating system effectively, including file and system management; Configure system
Page 13 sur 86
settings and troubleshoot common issues in the Windows environment; Utilize a variety of
software applications to complete tasks efficiently.
Objective
Content
The course covers the following key areas:
Sequential Logic Circuits: Design and analysis of flip-flops, latches, counters, shift
registers, and memory devices.
State Machines: Finite state machine (FSM) design, including Moore and Mealy
models.
Digital System Design: Practical implementation of combinational and sequential
circuits using hardware description languages (HDLs) like VHDL or Verilog.
Data Converters: Study of analog-to-digital converters (ADCs) and digital-to-analog
converters (DACs) for interfacing digital systems with the real world.
Outcomes
Upon completing TEL3101, students will be able to: Analyze and design advanced
combinational and sequential logic circuits; Implement digital systems using HDL and
programmable logic devices; Solve timing and synchronization challenges in digital designs;
Understand and apply data conversion techniques.
Objective
The objective of Digital Signal Processing (DSP) is to provide students with a comprehensive
understanding of the principles and techniques used for analyzing, manipulating, and
synthesizing digital signals. The course aims to equip students with the theoretical knowledge
and practical skills necessary for applications in telecommunications, audio processing, image
processing, and other fields involving digital signals.
Content
The course encompasses a variety of key topics, including:
Page 14 sur 86
1. Discrete-Time Signal Processing: Techniques for processing discrete-time signals,
including sampling, quantization, and digital representation.
3. Filter Design: Principles of designing digital filters, including FIR (Finite Impulse
Response) and IIR (Infinite Impulse Response) filters, and their applications in noise
reduction and signal enhancement.
Outcomes
Upon successful completion of TEL3102, students will be able to: Analyze and represent
digital signals using appropriate mathematical tools; Apply Fourier analysis techniques to
understand signal behavior in the frequency domain.
Objective
The objective of TEL2103 Telephony and Switching is to provide students with a thorough
understanding of the principles and technologies underlying telecommunication systems,
focusing on voice communication and switching techniques. The course aims to equip
students with the knowledge necessary to analyze, design, and implement telephony systems
in modern networks.
Content
The course covers a variety of essential topics, including:
1. Introduction to Telephony: Overview of voice communication principles, including
analog and digital voice transmission, modulation techniques, and telephony
standards.
2. Switching Techniques: Exploration of various switching methods, such as circuit
switching, packet switching, and message switching, along with their advantages and
applications.
3. Telephone Networks: Study of traditional and modern telephone networks, including
Public Switched Telephone Network (PSTN) and Voice over Internet Protocol (VoIP)
systems.
4. Signaling Protocols: Introduction to signaling protocols used in telephony, such as
Signaling System 7 (SS7) and Session Initiation Protocol (SIP), and their roles in call
setup and management.
Outcomes
Page 15 sur 86
Upon successful completion of TEL3103, students will be able to: Explain the fundamental
concepts of telephony and voice communication; Analyze different switching techniques and
their applications in telecommunication networks; Describe the architecture and components
of traditional and modern telephone networks. Identify and explain key signaling protocols
used in voice communication.
Objective
The objective of Digital Transmission Techniques is to provide students with a
comprehensive understanding of the methods and principles involved in the transmission of
digital data over various communication channels. The course aims to equip students with the
theoretical knowledge and practical skills necessary to design and analyze digital
communication systems.
Content
The course encompasses a variety of essential topics, including:
4. Transmission Media: Analysis of different media used for digital transmission, such as
twisted pair cables, coaxial cables, fiber optics, and wireless channels.
Outcomes
Upon successful completion of TEL3104, students will be able to: Explain the fundamental
principles of digital transmission and its advantages; Analyze and design digital modulation
techniques suitable for various applications; Implement channel coding methods to enhance
data integrity during transmission.
Objective
Page 16 sur 86
The objective of Optical Fibre Transmission and Hertzian Beam is to provide students with an
in-depth understanding of optical fiber communication systems and Hertzian beam
propagation. The course aims to equip students with the theoretical foundations and practical
skills necessary for designing and analyzing advanced communication systems that utilize
optical and radio frequency technologies.
Content
The course covers a variety of essential topics, including:
Outcomes
Upon successful completion of TEL3105, students will be able to: Explain the principles of
optical fiber transmission and the characteristics of different fiber types; Analyze the factors
affecting signal quality in optical networks, including attenuation and dispersion; Identify and
describe the components used in optical communication systems; Understand the
fundamentals of Hertzian beam propagation and its applications in wireless communication.
Objective:
Engineering Mathatematics II builds upon the foundational principles introduced in Calculus
I, with the goal of deepening students' understanding of integral calculus and its applications.
The course aims to enhance analytical reasoning, problem-solving skills, and mathematical
rigor, preparing students for more advanced mathematical studies or practical applications in
fields such as physics, engineering, and economics.
Page 17 sur 86
Content:
Techniques of Integration: Advanced methods for solving integrals, such as integration by
parts, partial fractions, trigonometric integrals, and substitutions.
Applications of Integration: Solving problems involving areas, volumes, arc lengths, and
work. Includes applications in physics and engineering.
Infinite Series and Sequences: Understanding convergence and divergence of sequences and
series, including power series, Taylor series, and Maclaurin series.
Parametric and Polar Coordinates: Analysis and graphing of parametric equations and polar
functions, along with applications in geometry and mechanics.
Differential Equations: Introduction to solving simple first-order differential equations,
including separable and linear equations.
Improper Integrals: Techniques to evaluate integrals with infinite limits or integrands with
singularities.
Outcomes:
Upon completing Engineering mathematic II, students will: Master advanced integration
techniques and apply them to real-world scenarios; Analyze and interpret sequences and
series, determining their convergence; Utilize parametric and polar coordinate systems to
model and solve problems; Solve basic differential equations relevant to scientific
applications.
Objective
The objective of Telecommunications Practice 1 is to provide students with hands-on
experience in telecommunications technologies and practices. This course aims to bridge the
gap between theoretical knowledge and practical application, allowing students to develop
essential skills in installing, configuring, and troubleshooting telecommunications systems.
Content
The course encompasses a variety of practical activities and topics, including:
1. Introduction to Telecommunications Equipment: Familiarization with various
telecommunications devices, including routers, switches, modems, and fiber optic
equipment.
2. Network Installation: Techniques for installing and configuring local area networks
(LANs), including cabling standards, network topology, and hardware setup.
Page 18 sur 86
3. Testing and Troubleshooting: Hands-on experience with testing equipment and
troubleshooting methodologies to identify and resolve common network issues.
Outcomes
Upon successful completion of TEL3108, students will be able to: Demonstrate proficiency in
installing and configuring telecommunications equipment; Apply testing and troubleshooting
techniques to diagnose and resolve network issues; Understand and implement networking
protocols and standards effectively.
Objective
The objective of Electronic Laboratory 2 is to provide students with advanced practical
experience in electronic circuit design, analysis, and testing. This course builds on
foundational knowledge acquired in previous electronics courses, enabling students to apply
theoretical concepts through hands-on experiments and projects.
Content
The course covers a range of topics and laboratory activities, including:
1. Circuit Design and Simulation: Use of simulation software (e.g., SPICE) to design and
analyze electronic circuits before physical implementation.
Outcomes
Upon successful completion of TEL3109, students will be able to: Design and simulate
complex electronic circuits using appropriate software tools; Build and test analog and digital
circuits, demonstrating a clear understanding of their functionalities; Program and interface
microcontrollers for specific applications in electronics.
Page 19 sur 86
Objectives:
To analyze wave propagation in optical fibers, select optical receivers and transmitters
suitable for optical telecommunications, design efficient fiber optical physical networks,
optical network architectures, to assess key concepts behind future optical networks
Content:
Optical fiber characteristics: modes, loss, dispersion, nonlinearities
Transmitters: directly modulated semiconductor lasers, external modulation
Receivers: photodiodes, avalanche photodetectors
System design and performance: bit-error rate, signal-to-noise ratio
Optical amplifiers: Erbium-doped fiber amplifiers, Rmaan amplifiers
Current optical communication network architectures: TDM, DWDM, QPSK, QAM
Outcomes:
At the end of the course the students will demonstrate an understanding of optical fiber
communication link, structure, propagation and transmission properties of an optical fiber;
estimate the losses and analyze the propagation characteristics of an optical signal in different
types of fibers; compare the characteristics of fiber optics receivers; differentiate architecture
of optical communication.
Objective
The objective of the Electronic Oscillator course is to provide students with a solid
understanding of oscillator circuits, their design, and their applications in electronics. The
course aims to equip students with both theoretical insights and practical skills necessary for
developing and analyzing various types of oscillators used in communication systems, signal
processing, and electronic devices.
Content
The course covers a range of essential topics, including:
Introduction to Oscillators: Overview of the fundamental principles of oscillation, including
the concept of feedback and the criteria for sustained oscillation.
Types of Oscillators: In-depth study of various oscillator types, including:
o Linear Oscillators: Such as the Wien bridge oscillator and phase-shift
oscillator.
Page 20 sur 86
o Relaxation Oscillators: Including the astable multivibrator and monostable
multivibrator.
o Crystal Oscillators: Exploration of crystal-controlled oscillators and their
stability advantages.
Design Principles: Techniques for designing oscillators, including component selection,
circuit topology, and stability analysis.
Outcomes
Upon successful completion of the Electronic Oscillator course, students will be able to:
Explain the fundamental concepts and principles underlying oscillator operation; Design and
analyze various types of oscillators for specific applications; Evaluate the performance of
oscillator circuits in terms of frequency stability and output waveform quality.
Objective
The objective of the Mobile Telephony and Networks course is to provide students with a
thorough understanding of mobile communication technologies, network architectures, and
the principles underlying mobile telephony systems. The course aims to equip students with
the skills necessary to analyze, design, and implement mobile communication networks
effectively.
Content
Outcomes
Page 21 sur 86
Upon successful completion of the Mobile Telephony and Networks course, students will be
able to: Describe the fundamental principles and components of mobile telephony systems.
Analyze the architecture and functioning of mobile communication networks. Evaluate
different wireless transmission technologies and their applications. Understand the cellular
concept and the significance of frequency reuse in mobile networks.
Objectives:
This course covers the basic use and application of sensors, transducers and electronic measuring
instruments. The theory of analogue DC and AC measuring instruments is first established which is
then used to study analog electronic and digital meters. Different types of sensors and transducer are
studied with their analog and digital interfacing. The use and application of different measuring
instruments are also covered.
Content:
Introduction to Instrumentation & Measurements, Fundamental and derived units, electrical units:
frequency, voltage, current, resistance, capacitance and inductance standards
AC Indicating Meters: Half wave and full wave rectifier meters, single phase wattmeter and energy
measurement meters, instrument transformers (CT and PT)
Specialized Meters: Analog Electronic Meters: Transistor voltmeter circuits and operational amplifier
voltmeter circuits, AC electronic voltmeters and current and resistance measurement.
The Wagner ground and commercial RLC bridges, Real-Time Data Acquisition and Processing
Systems, Electronic devices for signal sampling and quantification, Sampling rate calculation for data
acquisition systems, Measuring Instruments: Oscilloscopes, Signal generators, Spectrum analyzers,
Network analyzers, Impedance analyzers, Logic analyzers. Industrial Communication Techniques:
RS232, RS 422, RS 423, RS 485, IEEE488 (GPIB)
Page 22 sur 86
Ethernet or CSMA/CD
Outcomes:
At the end of this course, the students should be able to describe mathematically and physically the
design of measuring instruments and their use for measurements; express the integration of
transducers with analogue and digital hardware and use of software to achieve required output for
measurement system; analyse the design of instruments and measurement of parameters using
instruments.
Objectives:
This class introduces students to the modeling, analysis and design of linear feedback control systems.
Students gain experience in applying a variety of modelling techniques and analyzing system
performance from several perspectives to include the time and frequency domains as well as state
space formulations. Students learn to synthesize linear controllers capable of satisfying a variety of
stability and response criteria by using both classical and modern design techniques. Practical aspects
of the class includes the use of Matlab/Simulink for simulation and design as well as the use of case
studies of real control systems.
Content:
Transfer Function Representation: Transfer Function of linear systems, Block diagram representation
of systems considering electrical systems as examples -Block diagram algebra – Representation by
Signal flow graph Reduction using mason’s gain formula.
Time Response Analysis: Standard test signals - Time response of first order systems – Characteristic
Equation of Feedback control systems, Transient response of second order systems - Time domain
specifications – Steady state response - Steady state errors and error constants. MATLAB/LABVIEW
visualizations of time responses of first and second order systems. Concept of Stability: The concept
of stability, necessary conditions for stability, Routh –Hurwitz Stability Criterion, Criterion,
Application of Routh –Hurwitz Stability criterion to Linear Feedback Systems:The Root Locus
Technique: The Root locus concept, construction/development to of loci for various systems, stability
considerations.
Page 23 sur 86
Frequency Domain Analysis: Introduction, Bode diagram, Polar Plots, Log magnitude versus Phase
Plots, Nyquist stability criterion, Stability Analysis, Relative stability, Closed Loop Frequency
Response: Constant M-Circles, Nichols Chart, Use of MATLAB for performance studies.
Characteristics of Feedback control systems. Feedback and non-feedback systems, Reduction of
parameter variation by use of feedback, Control of the Effects of Disturbance Signals by use of
feedback, Regenerative Feedback. Classical Control Design Techniques
Controller synthesis using: Root locus for a given system & determination of different control system
specifications using time domain analysis and MATLAB/Simulink. Evaluation of steady-state error,
setting time, percentage peak overshoots, gain margin, phase margin using MATLAB
Controllers design in frequency Domain: P, PI, PD and PID Controllers and simulations using
MATLAB/LABVIEW. Compensation technique: Lag, lead, lead – Lag compensator
Introduction to modern control engineering: State variable analysis: Concept of state, state variable
and state model, state models for linear continuous time systems, diagonalization solution of state
equations, concept of controllability and observability
Outcomes:
Students who successfully complete this course will be able to understand and
simulate alternate representations of dynamic systems (time domain, frequencydomain, state space);un
derstand the impact of PID and lead/lag compensation techniques on systemperformance, stability, and
disturbance rejection,design a linear feedback controller using a Root Locus technique in order to meet
explicit performance objectives;design a linear feedback controller using a State Space pole placement
techniquein order to meet explicit performance objectives;
use Matlab/Simulink to analyze open and closed loop performance and design
linear feedback controllers;perform experiments to iteratively tune a control system to meet performan
ce specifications
Objectives:
To provide students with an understanding of embedded systems and their use in instrumentation,
control and communication systems. To investigate microprocessor and microcontroller-based
systems, produce software for an embedded system, interface microprocessor and microcontroller-
based systems
Content:
Page 24 sur 86
CISC and RISC processors, Intel and Motorola types. Applications: control systems (e.g. car engine
management, robotics, distributed control systems, printers); instrumentation systems (e.g. data
acquisition and logging systems, indicator display systems, 'intelligent' panel instruments);
communication systems (e.g. facsimile machines, modems, radio transmitters, radar systems);
commercial systems (e.g. eftpos systems, electronic bank teller machines, hand‐held stock loggers,
PCs)
Outcomes:
Having successfully completed the module, you will be able to demonstrate knowledge and
understanding of digital techniques and hardware design principles necessary to your chosen
engineering discipline in the design of modern electronic systems; analyse and design logic circuits
using programmable logic and will develop a basic understanding of hardware descriptions in
software; design, understand and implement combinational and sequential logic designs using
programmable logic devices.
Objectives:
Content:
Introduction
Page 25 sur 86
Analog Vs. Digital Communication Systems; A General Communication System; Review of
Probability Theory; Probability space, random variables, density functions, independence;
Expectation, conditional expectation, Baye’s rule; Stochastic processes, autocorrelation function,
stationarity, spectral density
Analog‐to‐digital conversion
Measuring information, entropy, the source coding theorem; Huffman coding, Run‐length coding,
Lempel‐Ziv;
Communication channels: Band limited channels The AWGN channel, fading channels Receiver
design: General binary and M‐ary signaling; Maximum‐likelihood receivers; Performance in an
AWGN channel; The Chernoff and union/Chernoff bounds; Simulation techniques; Signal spaces
Channel coding: Block codes, hard and soft‐decision decoding, performance; Convolutional codes,
the Viterbi algorithm, performance bounds; Trellis‐coded modulation (TCM) Signaling through band
limited channels: ISI, Nyquist pulses, sequence estimation, partial response signaling; Equalization
Signaling through fading channels: Rayleigh fading, optimum receiver, performance; Interleaving
Synchronization; Symbol synchronization; Frame synchronization; Carrier synchronization
Outcomes
The students should understand the functions of the various parts of a modern communication system;
be able to analyze theoretically the performance of various parts of a communication system; be able
to run Monte Carlo simulations for communication systems in MATLAB; be able to estimate the
performance of such systems.
Objectives:
To study the fundamental concepts which form the foundation of digital signal processing such as :
filtering techniques, modelling of signals, sampling of signals
Content:
Page 26 sur 86
II/ Z-Transform: Relation between unit-sample response and transfer function ,Forward Z-transform,
Inverse Z-transform, Properties of Z-transform, Application to solving difference equations
III/ Fourier analysis: Fourier series, Fourier transforms, Discrete-time Fourier Transform (DTFT)
IV/ Discrete Fourier Transform (DFT): Primitive roots of unity, Discrete Fourier series, Discrete-time
Fourier Transform, Discrete Fourier transform and properties ,Fast Fourier Transform (FFT)
V/ Digital filtering of analog signals: Sampling, Data reconstruction, Digital processing of analog
signals
Outcomes:
At the end of the course, students should understand basic principles in digital signal processing;
understand and implement filtering techniques; sample and model signals.
Objectives:
To study the working principles of switching systems from manual and electromechanical systems to
stored program control systems
Content:
Telephone System: PSTN, Modern Telecom System, Telephone Network, Telephone numbering plan,
Central battery system,Transmission impairments, two/four wire transmission, subscriber loop design
Telephone exchange: Stored program controlled exchange, Electronic exchange, Example of modern
exchange(C-DOT exchange), availability of parallel exchange
Signaling systems: Types of signaling information, forms of signaling, Channel Associated Signaling
(CAS), Common
Page 27 sur 86
Channel Signaling, CCITT No-7system, SS7 Signaling Architecture
Outcomes:
Upon completion of the course, students should be able to explain the working principles of switching
systems involved in telecommunication switching; compare and analyze line coding techniques and
examine its error performance; design multi stage switching structures involving time and space
switching stages.
Objectives:
This course aims to help students demonstrate their ability to applied knowledge acquired during their
training
Content:
The supervisor will define a topic for the project of the student and they will work on it and present
publicly during the defence
Outcomes:
Student will demonstrate ability to describe a problem, define some research questions, state some
objectives, describe a bloc diagram, size the system, draw the simulation diagram in a selected
software, wire a system, test and troubleshooting a system and present publicly the project.
Objective:
The Wireless and Mobile Communication Systems course aims to provide students with a
comprehensive understanding of the principles, design, and applications of wireless and mobile
communication technologies. The course focuses on equipping students with the theoretical
foundation and practical skills necessary to analyze, design, and optimize wireless networks, while
keeping them abreast of emerging trends and challenges in the domain.
Content:
The course covers a wide range of topics structured to build a robust understanding of wireless and
mobile communications:
Outcome:
Understand the theoretical principles of wireless and mobile communication systems; Analyze and
evaluate the performance of wireless networks in diverse environments; Design basic wireless
communication systems, incorporating modern technologies and standards; Apply knowledge to solve
practical challenges in mobile communication, such as interference reduction, handover optimization,
and network scalability.
Objective:
The primary objective of the course Communication Network Management and Security is to equip
students with a comprehensive understanding of how modern communication networks are managed
and secured. It aims to build foundational knowledge of network architectures, protocols, and
operations while emphasizing the principles and practices necessary to ensure network security. The
course prepares students to analyze, design, and implement robust network management strategies,
leveraging cutting-edge technologies to address challenges like scalability, performance optimization,
and cybersecurity threats.
Content:
The course is divided into three broad modules, each focusing on a key aspect of network management
and security:
Page 29 sur 86
networks: firewalls, intrusion detection/prevention systems (IDS/IPS), and Virtual Private Networks
(VPNs).
Cryptographic tools for secure communication: encryption, authentication protocols, and Public Key
Infrastructure (PKI).; Strategies for incident response, forensics, and risk assessment.
Outcome:
Theoretical Knowledge: Students will understand the architecture, protocols, and technologies
underlying communication networks. They will also grasp the fundamental principles of network
management and security, including the ability to analyze the lifecycle of a network.
Practical Skills: Students will gain hands-on experience with tools and techniques for managing and
securing communication networks. They will be proficient in configuring and troubleshooting network
devices, securing communication channels, and implementing monitoring systems.
Analytical Abilities: Students will develop critical thinking skills to evaluate network performance,
identify vulnerabilities, and propose solutions for optimizing management and security.
Objective
This course is designed to equip students with the fundamental understanding and practical skills to
solve engineering problems using numerical techniques and computational tools. By integrating
mathematical theory and MATLAB programming, the course enables students to analyze,
approximate, and interpret complex problems encountered in engineering disciplines.
Content
The course covers a broad spectrum of topics that intertwine the principles of numerical methods with
MATLAB programming. Key areas of study include:
Error analysis: Sources of error, propagation, and mitigation strategies: Approximation and rounding
errors; Linear Algebraic Equations
Direct methods: Gaussian elimination and LU decomposition: Iterative methods: Jacobi, Gauss-Seidel,
and Successive Over-Relaxation (SOR); Roots of Equations; Techniques such as bisection, Newton-
Raphson, and secant methods, Interpolation and Curve Fitting, Polynomial and spline interpolation,
Least squares regression and fitting techniques, Numerical Differentiation and Integration; Initial
value problems: Euler’s method, Runge-Kutta methods.
Page 30 sur 86
MATLAB Programming
Outcome
Understand Core Numerical Techniques: Develop a deep understanding of numerical methods and
their applications in solving engineering problems; Proficiency in MATLAB: Gain hands-on
experience with MATLAB, enabling them to create, debug, and optimize scripts for real-world
engineering challenges; Problem-Solving Skills: Apply numerical methods to model and solve
practical engineering problems, demonstrating an ability to evaluate and interpret results effectively;
Critical Thinking and Analysis: Recognize the limitations of numerical techniques and their
appropriateness for various types of problems.
COURSE STRUCTURE
YEAR ONE
First Semester
Course Course Title Credit Status L T P Prerequisite
Code Value
SDE2101 Computational thinking and C
5 C 25 10 15
Programming
SDE2102 Introduction to Computer
Networks and Practicals 4 C 20 10 10
(analysis and design)
SDE2103 Engineering Mathematics I 4 C 30 10 0
SDE2104 Computer Architecture and
4 C 30 10 0
Organization
SDE2106 Engineering Physics 5 C 35 15 0
NSA2101 Analogue Electronics 4 C 20 10 10
SDE2107 General English I 2 C 20 0 0
SDE2108 General French I 2 C 20 0 0
TOTAL 30 225 60 35
Second Semester
Course Course Title Credit Status L T P Prerequisite
Code Value
SDE2201 Operating Systems 6 C 35 15 10
SDE2202 Engineering Mathematics II 4 C 30 10 0
NSA2203 Industrial Attachment 3 C 0 0 30
SDE2203 Data structures and Algorithms 5 C 30 15 5
Page 31 sur 86
NSA2202 Computer Maintenance 4 C 20 5 15
SDE2205 Digital Electronics I 4 C 25 10 5
SDE2107 General English II 2 C 20 0 0
SDE2108 General French II 2 C 20 0 0
TOTAL 29 180 55 65
Second Semester
Page 32 sur 86
YEAR THREE
First Semester
Second Semester
Page 33 sur 86
LIST OF COURSES
YEAR ONE
First Semester
Second Semester
YEAR TWO
First Semester
Second Semester
Page 34 sur 86
SDE3201 Analogue and Digital Control Systems
NSA3203 Signals and Systems
NSA3206 Telecommunication Technology
YEAR THREE
First Semester
Second Semester
Content: Stages of the program formation. The concept and features of the algorithm. Ways
of writing the algorithm. Basic programming constructs. Elements of the flowchart. The
functional scheme of the structure of the computer and the scheme and the command cycle of
the processor as executives for the algorithm. The meta-language of writing the algorithm.
Types of translators. Programming paradigms. The criteria for the classification of
programming languages. Types of programming languages. The criteria for the classification
of computer memory as the storage of data and programs. Programming Basics: Notions of
algorithms, flowcharts and programming, iteration and recursion. Imperative style of
programming, Functional style of programming, correctness and efficiency issues.
Programming languages, Interpreter, Compiler. Overview of Programming language C,
constants variables and data types, operators and expressions, data input output, decision
making and looping: If, Ifelse, while, do-while, for, switch. Function declarations and
prototypes, pass by value, and pass by reference. User defined function in C, iterative function
and recursive functions. Arrays: One dimension array, array initialization, Searching,
Insertion, deletion of an element from an array; finding the largest/smallest element in an
array, two dimension array, addition/multiplication of two matrices, transpose of a square
matrix; passing array to function , character array and string. Pointers: Address operators,
pointer type declaration, pointer assignment, pointer initialization, pointer arithmetic,
functions and pointers, arrays and pointers, pointer arrays.
Structure & Unions: Defining a structure, declaring structure variables, Accessing structure
members, structure initialization, copying & comparing structure variables, operation on
individual members, Array of structures, structure & functions, Unions, Size of Structure.
Files management in C: Defining & opening a file, closing a file, I/O operations on files,
Error handling during I/O files, Random Access to files. Introduction to Dynamic Memory
Allocation.
Outcomes: The student after undergoing this course will be able to: Explain the use of
formatted and unformatted input and output statements in “C”; State typical usage of
sequence control statements of “C’; Enlist the fundamental data types and data structures of
“C” and explain the usage of arrays and pointers in “C” and differentiate between a structure
and a union plus explain the commands of File Management in “C”; A student receives a
basic knowledge about fundamentals of programming; the ability of reading with
understanding programs saved in an imperative programming language, symbolic execution
of simple programs for verification; and writing and running simple programs of the size of
the order of 100 lines of the code in C language.
Page 36 sur 86
SDE2102 Introduction to Computer Networks and Practicals (analysis and design)
4 Credits (20 - 10 - 10)
Objectives: This course aims to equip the student with: The basics concepts in computer
network; The various types of computer networks; Experience in designing communication
protocols; The description of TCP/IP and UDP models and protocol suite; basic
understanding of Computer networks starting with OSI Reference Model, Protocols at
different layers with special emphasis on IP, TCP & UDP and Routing algorithms;
Content: This course provides an introduction to fundamental concepts in the design and
implementation of computer communication networks, their protocols, and applications.
Topics to be covered include: Network Architecture – Historical review – Network software
architecture: layers and protocol, OSI Vs TCP. Network hardware architecture: topologies,
devices. Introduction to types of networks - Optical Networks, Sensor networks, applications
(HTTP, FTP), network programming interfaces (e.g., sockets), transport (TCP, UDP), flow
control, congestion control, IP, routing , IPv6, 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. In this course, we take an analytical approach to understanding resource
allocation on the Internet. We first study the system in a global sense, and use a deterministic
approach to study congestion control protocols. We then study individual queues and routers,
and use a stochastic approach to understanding system performance.
Outcomes: Upon successful completion of this course, students will be able to: Describe the
general principles of data communication and how computer networks are organized with the
concept of layered approach; Describe how signals are used to transfer data between nodes
and implement a simple LAN with hubs, bridges and switches and how packets in the Internet
are delivered and analyse the contents in a given Data Link layer packet, based on the layer
concept; Design logical sub-address blocks with a given address block and ecide routing
entries given a simple example of network topology as well as describe what classless
addressing scheme and how routing protocols work;
SDE2104 Computer Architecture and Organization 4 Credits (20-10-10)
Objectives: The subject aims to provide the student with: 1. An understanding of relationship
between hardware and software. 2. An ability to recognize how machine organization impacts
the efficiency of applications written in a high-level language. 3. Introduce students to the
internal design of the computer; and 4. Provide students with opportunities to develop basic
skills in identifying computers.
Content: Introduction to Computer Organization: Computer components, Functions,
interconnection Structure, Bus Interconnection. Computer Arithmetic: Integer Representation-
unsigned numbers, signed numbers, signed magnitude, 2’s compliment, Biased
Representation. Integer Arithmetic: Addition, Subtraction, Multiplication unsigned, signed
(Booths Algorithm), Division-unsigned, signed. Floating-Point Representation: IEEE 32 bits,
64 bits. Floating-Point Arithmetic: Addition, Subtraction, Multiplication, Division. Internal
Memory: Semiconductor Memory - Memory Hierarchy, Characteristics of Memory System,
Semiconductor RAM Memories, Internal Organization of Memory Chip, Static RAM,
Asynchronous DRAM, Synchronous DRAM, Connection of Memory to the processor, RAM
Bus memory. Cache Memory: Basics of Cache, Structure, Read operation, Elements of Cache
Design. Associative Memory: External Memory: Magnetic Disk, RAID, optical Memory.
Virtual Memory: Logical VS Physical Address space, working Principle, Mapping Functions,
Replacement Policy. Instruction set, addressing modes.
Page 37 sur 86
Outcomes: By the end of this course, students should be able to: understand the basics of
computer hardware and how software interacts with computer hardware and analyse and
evaluate computer performance; understand how computers represent and manipulate data as
well computer arithmetic and be able to convert between different number systems;
understand basics of Instruction Set Architecture (ISA) – MIPS, assemble a simple computer
with hardware design including data format, instruction format, instruction set, addressing
modes, bus structure, input/output, memory, Arithmetic/Logic unit, control unit, and data,
instruction and address flow; understand the use of Boolean algebra as related to designing
computer logic, through simple combinational and sequential logic circuits
Outcomes: The student after undergoing this course will be able to: Design algorithms using
principles of recursion. Demonstrate the use of data structures like linked lists, stacks and
queues. Explain the applications of linked lists, stacks and queues in Computer Engineering.
Apply the knowledge of data structures to a given problem plus illustrate searching, sorting
and hashing techniques. Understanding the principle of Hash table; demonstrate the skills in
manipulating collectors.
.
NSA2202 Computer Maintenance 4 Credits (20 - 5 - 15)
Objectives: Give the fundamentals of hardware repairs.
Content: This course develops a student's knowledge of computer hardware for installation
and maintenance at the equipment level. Students will learn to install, protect, and
troubleshoot CPUs, disk drives, memory, circuit boards, video adapters, displays, CD-ROM
drives, etc. Students will learn how to use the Internet to upgrade and maintain computers.
This course will also bring together all the physical components of equipment evaluation for
purchase, future maintenance, and growth. In addition, this course will help to prepare
students for the content covered on the CompTIA A+ certification exam
Outcomes: In order to evidence success in this course, the students will be able to: identify
the essential and describe the function of the essential components of a computer; develop a
computer system proposal/presentation for a client
Content: Networks today are high-speed, heterogeneous, large-scale and delivers different
media including data, audio and video. How do you effectively manage today’s complex
computer networks? This class provides complete yet accessible answers to network
managers and researchers in this field. The course covers the basics of network management,
alternative architectures, evaluation techniques, network management system components,
SNMP and CMIP management protocols and the ISO network management applications: fault
management, performance management, configuration management, security management,
and accounting management (FCAPS). The course emphasizes the practical experience of
developing network and distributed systems management tools using the SNMP++, Nagios,
MRTG and AdventNet wrappers. This course also highlights the latest advances in networks
and distributed management area and shows case studies of academic and industrial systems
such as HiFi, SMARRT, OpenView, NetView and Tivoli.
Outcomes: Students will become familiar with the SNMP protocol; with how large-scale
Network Management Systems operate and are configured; and with advanced network
configuration.
Page 42 sur 86
SDE3104 Data security, integrity and Cryptography 4 Credits (30 - 10 - 0)
Objectives: To be able to implement and analyse algorithms for integer factorization and
primality testing; to be able to use a system like Maple to explore concepts and theorems from
number theory. To understand fundamental algorithms from symmetric key and public key
cryptography. Basic understanding of data security tools such as access control mechanisms,
authentication tools and cryptographic constructs
Content: Covers fundamental algorithms for integer arithmetic, greatest common divisor
calculation, modular arithmetic, and other number theoretic computations. Algorithms are
derived, implemented and analysed for primality testing and integer factorization.
Applications to cryptography are explored including symmetric and public-key
cryptosystems. A cryptosystem will be implemented and methods of attack investigated.
Basic principles about security models such as for example - Bell-La Padula, - Chinese Wall,
- Biba, - Clark-Wilson, Security for operating system , Information security, Data Security ,
System security, Introduction to encryption, Security services, - Confidentiality,
Authentication, Integrity, Access Control , Threats and risks such as for example, - Viruses,
troyans, worms, Web security, Database security, Network security, IDS systems, Security
evaluation such as for example, - TCSEK, - ITSEC, - Common Criteria, Risk analysis, risk
management
Outcomes: To understand fundamental number theoretic algorithms such as the Euclidean
algorithm, the Chinese Remainder algorithm, binary powering, and algorithms for integer
arithmetic; To understand fundamental algorithms for symmetric key and public key
cryptography and number theoretic foundations of modern cryptography and the principles
behind their security;To implement and analyse cryptographic and number theoretic
algorithms. To be able to use Maple to explore mathematical concepts and theorems; Identify,
describe and analyse threat and risks for different systems; have basic knowledge about
security mechanisms and security services, encryption techniques, IDS and firewalls, network
security and be familiar with the malicious of different types programs and countermeasures
NSA3102: Devices and Networks Maintenance 4 credits (20-0-20)
Objectives: In this course, students will learn the basics of mobile phone repairs, computer
repair and maintenance and networking. They will focus on hardware, software, computer
history, Internet fundamentals, and networking fundamentals. This will be backed by many
opportunities are for students to get hands‐on experience.
Content: Personal Computer Components: Identify the fundamental principles of using
personal computers, Identify the names, purposes and characteristics of storage devices,
Identify the names, purposes and characteristics of motherboards, Identify the names,
purposes and characteristics of power supplies, for example: AC adapter, ATX, proprietary,
voltage etc; Install, configure, optimize and upgrade personal computer components (add,
remove and configure internal/external storage devices, display, I/O multimedia devices,
tools and diagnostics procedures, Laptops and Portable Devices, OS installations,
printers/scanners, network installation and configuration, maintenance, tools etc.,
Introduction to mobile phones, Generations of mobile phones, FHSS networks, GSM, Spread
spectrum, CDMA, TDMA & Basic electronics components. Handset Specific operating
systems, Handset features & applications, working principle of mobile
handset & Components used in mobile handsets, Tools & equipment used for repairing &
maintenance of mobile handsets, types of power supply & batteries, boosting a battery,
Page 43 sur 86
Troubleshooting basics; Network problems, Power failure (dead), Mobile phone hardware
troubleshooting (water damage, hanging, charging & keypad problems), Handsets assembly&
disassembly, Soldering & desoldering &SMD rework station; Basics of Computer,
Installation of software, Flashing, PC based diagnostic tools, mobile sets formatting, used of
secret codes; Mobile softwares, Data cable, Card reader, Mobile display, Remove/replace
Component & Mobile
phone hardware troubleshooting (Troubleshooting through circuit diagram, transmission,
transmitter filter, microphone, reception, Antenna, RF power amplifier, local oscillator, Audio
IC, speaker, charger etc. ).
Outcomes: upon completion of this course, students should be able to: identify
faults/problems on both PC, networks and mobile phones; choose the most effective
procedures to resolve these faults, choose the most appropriate tools to use; make
recommendations on whether to repair/recycle or replace the device(s)
SDE3107 Database Management systems 4 Credits (20 - 5 - 15)
Objectives: The purpose of this course is: 1. To present an introduction to database
management systems (DBMS), with an emphasis on how to organize, maintain and retrieve
efficiently, and effectively the information from a DBMS. 2. To explain the fundamental
concepts of the relational model, including relations, attributes, domains, keys, foreign keys,
entity integrity and referential integrity. 3. To demonstrate how relations can be normalized.
The normalization process requires an understanding of first through fifth normal forms,
functional dependencies and multi-valued dependencies. 4. To list the operations of relational
algebra and show how they can be used to create new relations from existing relations. 5. To
define and manipulate the relational databases in SQL
Content: Introduction to databases and their applications- Overview of a Database
Management System-Data Abstraction And Database Architecture - The Entity-Relationship
Data Model: Elements Of The E/R Model , Design Principles, The Modelling Of Constraints,
Weak Entity Sets - Basics Of The Relational Model-From E/R Diagrams To Relational
Designs-Converting Subclass Structures To Relations. THE RELATIONAL DATABASES &
SQL: Functional Dependencies-Rules About Functional Dependencies-Design Of Relational
Database Schemas – Multivalued Dependencies - Normalization - Relational Algebra:
Relational Operations, Extended Operators Of Relational Algebra, Constraints On Relations -
Tuple Relational Calculus And Domain Relational Calculus - Introduction To SQL - Entering
Information – Extracting Information Sql Advanced Database Design And Pl/Sql: Ensuring
Data Validity With Constraints - Speeding Up Results With Indexes - Manipulating Data -
Grouping And Aggregating Data - Selecting Data From Different Tables - Queries Within
Queries - Views - Security And User Authorization In SQL - PL/SQL: Fundamentals -
Conditional And Sequential Control- Loops - Cursors In PL/SQL - Stored Procedures And
Functions. FILES ORGANIZATIONS, QUERY OTIMIZATION, CONCURRENCY
CONTROL: Index Structures: Indexes On Sequential Files, B-Trees, Hash Tables – Query
Processing And Optimization: Selection And Join Processing Algorithms, Query Tree, Query
Transformation, And Evaluation Plan - ACID Properties – Concurrency Control By Lock,
Timestamp, Validation.
UNIT V-FAILURE RECOVERY AND CASE STUDIES: Transaction Management:
Serializability And Recoverability, View Serializability, Log-Based Recovery, Resolving
Deadlocks - Distributed Databases – XML Databases – Open Source Database Tools: Mysql,
Postgresql, Sqlite.
Outcomes: Upon successful completion of the course, the student will be able to: 1.
Differentiate database systems from file systems by enumerating the features provided by
Page 44 sur 86
database systems and describe each in both function and benefit and define the terminology,
features, classifications, and characteristics embodied in database systems. 2. analyse an
information storage problem and derive an information model expressed in the form of an
entity relation diagram and other optional analysis forms, such as a data dictionary plus
demonstrate an understanding of the relational data model. 3. Transform an information
model into a relational database schema and to use a data definition language and/or utilities
to implement the schema using a DBMS. 4. Formulate, using relational algebra, solutions to a
broad range of query problems and use a desktop database package to create, populate,
maintain, and query a database.
Content: Introduction: Definition and basic characteristics of a local area network (LAN).
Types of local networks. Standards and recommendations. Standards and protocols in local
networks: IEEE802.3 CSMA/CD (Ethernet), IEEE 802.4 Token bus networks, IEEE802.5
Token Ring networks, fast LAN and MAN networks. Switching on the local network. LAN
Technology: Fast Ethernet, Gigabit Ethernet and 10 Gigabit Ethernet. Wireless local area
networks (WLAN): types of wireless LANs, basic features WLAN topology WLAN, WLAN
standards. Manage local network. Connect to local networks. Access networks: definition and
basic characteristics, types, architecture and technology access networks (SDH, xDSL, FITL,
FTTZ, FTTR, FTTC, FTTB, FTTH, FTTH-PON, ATM-PON, HFC). Management of access
network. Tests and measurements in the network. Network Protection
Outcomes: In order to pass the course, the students should be able to: define the types of
networks according to the recommendations of the IEEE 802.2 to 802.15; describe the
application of these recommendations in the implementation of certain types of network and
display measurement parameters in local and access networks in laboratory models (IT
GURU/Wireshark); calculate the parameters of computer networks using the measured results
as guidelines and propose a configuration of one type of local network that will meet the
assumed or actual traffic parameters and apply engineering approach to problem solving in
networks using knowledge of specific mathematical areas.
Page 46 sur 86
Objective: The man gaol is to learn how to use tools to wire a network, configure and filter
packages
Content: Practical part consists of exploring the network, data transport in practise, and
setting up a small network. Ethernet and other physical technologies, common tools for
network debugging, and introduction to data security
Outcomes: In order to pass the course, the students should be able to: Explain in a concise
manner how the Internet is constructed and functions. Reason about design choices at
different layers in the TCP/IP protocol stack and use standard tools to debug a network path.
Theorize about establishing and maintaining communication at different levels of abstraction
and dentify and discuss usual security issues regarding computer network protocols and
applications.
Outcomes: In order to pass the course, the students should be able to: Configure and
Troubleshoot Domain Name System; Maintain Active Directory Domain Services, Manage
User and Service Accounts; Implement Group Policy Infrastructure, Manage User Desktops
using Group Policy, Install, Configure and Troubleshoot Network Policy Server, Implement
Network Access Protection; Implement Remote Access, Optimize File Services; Configure
Encryption and Advanced Auditing, Deploy and Maintain Server Images, Implement Update
Managements, Monitor Windows Server 2012.
Outcomes: Student comments are solicited at the end of the Attachment regarding the
service, service site and the Faculty Attachment coordinator. The Guidelines will contain the
Service Log or Daily Diary of a record of hours served (8 weeks minimum) and specific
activities each visit. Form is typically kept on-site. If a site requires a separate sign-in, the
student should ask who will fill out the Service Log.
Page 47 sur 86
SDE3202 Introduction to IoT 4 Credits (25 - 5 - 10)
Objectives: The overall goal of this course is to enable the learner to build an IoT system
from the ground up. There’s extensive variety insofar as what an IoT system can be. That
said, during this course, you’ll learn the various kinds of IoT systems that you’ll encounter
and build one using representative technologies.
Content: The course introduces the concept of a network foundation connecting billions of
things and trillions of gigabytes of data to enhance our decision making and interactions.
Course modules describe how IoT drives the convergence between an organization’s
operational technology (OT) and information technology (IT) systems, and the business
processes for evaluating a problem and implementing an IoT solution. Machine-to-machine
(M2M), machine-to-people (M2P), and people-to-people (P2P) connections in an IoE solution
are also covered. IOT concepts: Technologies that led to the evolution of IoT, IOT and
SCADA iii) IOT and M2M, IoT and Big Data, IOT Standards: Requirement of
international standard (case study), IOT standards in practice. iii) Operating platforms
/systems, Components of IoT System. (Lab): i) Design of IoT systems ii) Development of
prototypes. Relevance of IoT for the future: IOT in everyday life, Internet of Everything, IOT
and Individual Privacy, IoT Applications: Lighting as a service (case study), Intelligent
Traffic systems (case study), Smart Parking (case study), Smart water management (case
study), IoT for smart cities (Case study Smart city Bamenda), IoT in Cameroon Scenario: IOT
for health services, IOT for financial inclusion, IOT for rural empowerment. Challenges in
IoT implementation: Big Data Management. Connectivity challenges. Mission-critical
applications.
Outcomes: 1. Describe what IoT is and how it works today and recognise the factors that
contributed to the emergence of IoT. 2. Design and program IoT devices, use real IoT
protocols for communication and secure the elements of an IoT device. 3. Design an IoT
device to work with a Cloud Computing infrastructure, transfer IoT data to the cloud and in
between cloud providers and define the infrastructure for supporting IoT deployments. 4.
Design an IoT device to work with a Cloud Computing infrastructure, transfer IoT data to the
cloud and in between cloud providers and define the infrastructure for supporting IoT
deployments.
Page 48 sur 86
The concept of stability, necessary conditions for stability, Routh –Hurwitz Stability
Criterion, Criterion, Application of Routh –Hurwitz Stability criterion to Linear Feedback
Systems.
Frequency Domain Analysis:
Introduction, Bode diagram, Polar Plots, Log magnitude versus Phase Plots, Nyquist stability
criterion, Stability Analysis, Relative stability, Closed Loop Frequency Response: Constant
M-Circles, Nichols Chart, Use of MATLAB for performance studies.
Characteristics of Feedback control systems
Feedback and non-feedback systems, Reduction of parameter variation by use of feedback,
Control of the Effects of Disturbance Signals by use of feedback, Regenerative Feedback.
Classical Control Design Techniques
Controllers design in frequency Domain: P, PI, PD and PID Controllers.
Objectives: The course aims to provide students with a comprehensive understanding of the
fundamental concepts and principles that govern the analysis and processing of signals and
systems. It is designed to equip students with analytical tools and techniques for modeling,
interpreting, and designing systems that interact with signals in various forms, such as
electrical, mechanical, and biological. The course bridges theoretical concepts with practical
applications in fields like communications, control systems, and signal processing.
Content
Introduction to Signals and Systems: Definitions, classifications (continuous-time vs. discrete-
time, periodic vs. aperiodic), and basic operations on signals.
System Properties: Linearity, time-invariance, causality, stability, and memory.
Time-Domain Analysis: Convolution, impulse and step response, and differential/difference
equations.
Sampling and Discrete-Time Systems: Nyquist-Shannon sampling theorem.
Applications: Overview of applications in communication systems, control systems, and
signal processing.
Outcomes
Upon completing this course, students will: Understand Key Concepts: Grasp the fundamental
properties and classifications of signals and systems; Analyze Systems: Apply time-domain
and frequency-domain techniques to analyze and design linear time-invariant (LTI) systems;
Develop Problem-Solving Skills: Tackle real-world engineering problems related to signal
processing, communications, and control systems.
NSA3206 Telecommunication Technology 3 Credits (20-0-10)
Page 49 sur 86
Objectives: The goal is to provide students with hands-on experience in telecommunications
technologies and practices. This course aims to bridge the gap between theoretical knowledge
and practical application, allowing students to develop essential skills in installing,
configuring, and troubleshooting telecommunications systems.
Content: The course encompasses a variety of practical activities and topics, including:
Introduction to Telecommunications Equipment: Familiarization with various
telecommunications devices, including routers, switches, modems, and fiber optic equipment.
Network Installation: Techniques for installing and configuring local area networks (LANs),
including cabling standards, network topology, and hardware setup.
Testing and Troubleshooting: Hands-on experience with testing equipment and
troubleshooting methodologies to identify and resolve common network issues.
Protocols and Standards: Overview of the key protocols used in telecommunications, such as
TCP/IP, Ethernet, and wireless standards.
Outcomes: Upon successful completion, students will be able to: Demonstrate proficiency in
installing and configuring telecommunications equipment; Apply testing and troubleshooting
techniques to diagnose and resolve network issues; Understand and implement networking
protocols and standards effectively.
SDE41014101 Embedded Systems 3 Credits (20-0-10)
Objectives: The aim of this course is to enable students develop theoretical and practical
knowledge about embedded systems hardware as well as acquire skills in programming
embedded processors.
Content: This course provides an introduction to Embedded Systems.
Through the use of simulation software, real devices interfaced to a PC and with embedded
devices, you will develop competence in microprocessor based digital system design and
interfacing.
Specific Topics: Registers & Memory of AT89C51: Description of RAM; Description of
CPU Registers; Functions of SFR. Introduction of EMBEDDED C; Introduction to Embedded
C; Difference between C & Embedded C; Programming style; Basic structure of C program;
Introduction To Softwares: Kiel Compiler; Proteus; Interfacing of LED: Introduction of
LED’s; Interfacing Circuit Description of LED’s; Programming of LED’s Interfacing;
Interfacing of Seven Segment Display: Introduction to 7 Segment Display; Types of 7
Segment Display; Interfacing of LCD; Interfacing of Switches & Keyboard Matrix;
Interfacing of MotorsTimers & Counters Programming; Serial Communication Programming;
Interfacing Of ADC; Sensor Interfacing; Embedded Networking; Linux Fundamentals &
Device Driver Programming.
Outcomes: On successful completion of this course, you will be able to: understand, analyse
and explain the basic building blocks of embedded systems hardware; describe the hardware
and software architecture of processors used in embedded systems; be able to perform
measurements and trouble shootings in digital systems.
NSA4101 Computer Network Security 4 Credits (15 - 10 - 15)
Objectives: The course covers basic security topics, including symmetric and public key
cryptography, digital signatures, hash functions, and network security protocols. By the end of
Page 50 sur 86
this course, students will understand basic security terms such as plaintext, cipher-text,
encryption/decryption, and authentication. Students will be able to explain the basic number
theory required for cryptographic applications, and manually encrypt/decrypt and sign/verify
signatures using cryptographic approaches. Students will be able to identify typical security
pitfalls in authentication protocols, and outline the protocols, i.e., AH and ESP protocols, for
IPSecurity.
Content: The course is a study of fundamental concepts and principles of computing and
network security. The course covers basic security topics, including symmetric and public key
cryptography, digital signatures, cryptographic hash functions, authentication pitfalls, and
network security protocols.
Outcomes: By the end of the course, students will: 1. be tested on at least three core network
security problems in the tests or quizzes. 2. Implement at least two key security algorithms
regarding public key and symmetric key cryptographic operations as part of their assignments.
3. Design, implement, or use security techniques learned in the course as part of their project.
NSA4102 Network Administration and Monitoring 4 credits (15-10-15)
Objectives: To build the understanding and skills required to design, configure and manage a
single domain network.
Content: In this program, students learn how to analyse the business requirements and design
and implement the infrastructure for business solutions based on the Microsoft© Windows
platform. Implementation responsibilities include installing, configuring, and troubleshooting
network systems.
Outcomes: Provides graduates the range of skills required to effectively analyse business
requirements for IT; design and implement the infrastructure for business solutions based on
the Microsoft Windows® 2003 platform; Prepare for entry-level employment as Computer
Repair/Support Technicians, Desktop Support Technicians, Help Desk Technicians, and
Networking Support, Network Administrators, and Network Designers.
Page 51 sur 86
methods, qualitative methods of data collection, and Survey methods of data collection 7.
Attitude measurement and scaling – Types of measurement scales; Questionnaire designing –
Reliability and Validity 8. Sampling techniques – The nature of sampling, Probability
sampling design, Nonprobability sampling design, Determination of sample size 9. Processing
and analysis of data 10. Ethical issues in conducting research 11. Report generation, report
writing, and APA format – Title page, Abstract, Introduction, Methodology, Results,
Discussion, References, and Appendices.
Outcomes: Students should be able to carry out research using prescribe scientific research
method of the field of study.
Objectives: The objectives of this course are to: Equip students with the required object-
oriented programming skills required to build, Highly reusable, robust and maintainable
software systems. Evaluate the acquired skills via means such as group coding, individual
projects, and Impromptu programming challenge in Java; students will create dynamic web
applications using server-side technology with Java Database Connectivity; Students can
learn networking and remote method invocation using Java API. Different Java frameworks
like Spring, Java Server Faces and Hibernate will increase ability of students in web
application development.
Content: Introduction to object-oriented programming. Emphasis on the fundamentals of
structured design with classes, including development, testing, implementation, and
documentation. Includes object-oriented programming techniques, classes, and objects. The
Java programming language is used as the teaching vehicle for this course. This course is an
extension of courses exposing students to the many concepts of programming. The course is
an expository of the object-oriented programming methodology with emphasis on software
design and code reuse as its core objectives. As a practical course, the focus is to equip
students with adequate high-level object-oriented programming techniques required for
successful design, development, and deployment of today’s complex software systems.
Furthermore, the students are actually mentored to master how the Java technology can be
used to develop modern software systems. Drivers, Introduction to major JDBC Classes and
Interface, Creating simple JDBC Application, Types of Statement (Statement Interface,
PreparedStatement, CallableStatement), Exploring ResultSet Operations, Batch Updates in
JDBC, Creating CRUD Application, Using Rowsets Objects, Managing Database
Transaction. Servlet API and Overview Servlet Introduction, Servlet Life Cycle, Types of
Servlet, Servlet Configuration with Deployment Descriptor, Working with ServletContext and
ServletConfig Object, Attributes in Servelt,, Response and Redirection using Request
Dispacher and using sendRedirect Method, Filter API, Manipulating Responses using Filter
API, Session Tracking: using Cookies, HTTPSession, Hidden Form Fields and URL
Rewriting,Types of Servlet Event: ContextLevel and SessionLevel. Java Server Pages
Introduction to JSP, Comparison with Servlet, JSP Architecture, JSP Life Cycle, JSP
Scripting Elements, JSP Directives, JSP Action, JSP Implicit Objects, JSP Expression
Language, JSP Standard Tag Libraries, JSP Custom Tag, JSP Session Management, JSP
Exception Handling, JSP CRUD Application.
Outcomes: Upon successful completion of this course, the student will be able to: explain the
many concepts in Object-oriented programming paradigm with respect Java technology, its
features and strengths; understand and explain how Java achieves platform portability;
understand the theory behind many programming structures, constructs, library codes exposed
Page 52 sur 86
by the Java language; Distinguish Web Server, Web Container and Application Server,
Serialization, Internationalization, naming services and JNDI; Gain the knowledge of Server
Side programing by implementing Servlet and JSP and understand and write the deployment
descriptor and enterprise application deployment.
Content: This course is offered to undergraduates and introduces students to the formulation,
methodology, and techniques for numerical solution of engineering problems. Topics covered
include: fundamental principles of digital computing and the implications for algorithm
accuracy and stability, error propagation and stability, the solution of systems of linear
equations, including direct and iterative techniques, roots of equations and systems of
equations, numerical interpolation, differentiation and integration, fundamentals of finite-
difference solutions to ordinary differential equations, and error and convergence analysis.
The following topics will be covered: Introduction to numerical techniques , Solution of
systems of linear equations , Gaussian elimination, matrix decomposition, ill-conditioned
systems, Systems of non-linear equations , Interpolation and curve fitting, Least-Squares
Regression, Interpolation by polynomials and splines, Numerical differentiation , Numerical
integration (Quadrature) methods, associated errors , Solution of ordinary differential
equations: initial value problems, First-order ODE’s Euler, Heun’s Runge-Kutta methods,
Solution of systems of ODE’s and higher-order ODE’s, Introduction of partial differential
equation solution and boundary value problems, Optimization
Outcomes: In order to pass the course, the students should be able to: Develop and
implement numerically stable and accurate algorithms for all the basic tasks of computational
science and engineering including developing stable algorithms for solving linear systems of
equations. Develop efficient and stable algorithms for finding roots of non-linear equations
and implement numerically stable recursion algorithms for evaluating mathematical functions.
Understand the use of interpolation for numerical differentiation and integration and develop
stable solution algorithms for ordinary differential equations
Page 53 sur 86
Outcomes: At the completion of this course, students are expected to understand and apply
knowledge of the key issues that differentiate wireless and wired communication. The
students will also be well-versed with selected recent paradigm-shifting concepts being
developed in the research community. Through hands-on projects, the students are expected
to familiarize themselves with wireless technologies.
Content: This course will prepare students to develop software in and for Linux/UNIX
environments. Topics to be covered include basic operating system concepts, effective
command line usage, shell programming, the C language, programming development tools,
system programming, network programming (client-server model and sockets), and GUI
programming.
Outcomes: In order to pass the course, the students should be able to: Understanding the
basic set of commands and utilities in Linux/UNIX systems plus deploy to develop software
for Linux/UNIX systems. To learn the important Linux/UNIX library functions and system
calls. To understand the inner workings of UNIX-like operating systems and obtain a
foundation for an advanced course in operating systems.
Content: The objective of this course is to develop the students' understanding of the issues
involved in managing Information Systems projects. The course imparts practical knowledge
of the skills and techniques used to manage information systems projects. The success of
many organisations depends on their ability to harness the power of information technology,
but many information systems implemented by organisations either fail completely or do not
live up to their potential. Organisations are recognising that it is many of the “behind the
scenes” activities that result in a successful information system and are investing in project
managers and their education. Project managers need many skills above and beyond the
technical skills required to implement information systems. Management of time, scope and
cost are vital, as are the “soft” skills of managing the team and communicating with the
stakeholders.
Page 54 sur 86
Outcomes: Upon completion of this course you will be able to: Understand the importance of
project management certification, Describe the project management process groups and
describe the process of project integration management;
Content: Entrepreneurship: Definition and philosophy, History, Role within the economy;
Entrepreneurship in different contexts: Social (donating profits, “doing good”, non-profit),
Organizational (start-ups, corporate, public sector), Individual (career management); Types of
new ventures: Franchises, Family businesses, Business-within-a-business (entrepreneurship),
Start-ups; Entrepreneurial style: Nature vs. nurture (personality traits, teachable behaviours),
Strengths and weaknesses, Sustainable across time and organizational settings; Creative
problem-solving, Courage to create, Overcoming obstacles, Selling your idea to others; The
entrepreneurial management process: Opportunity and the entrepreneur, Recognizing and
testing opportunity, Developing and testing the business concept; Building a team (diversity,
roles), Analyzing industry risks and benefits, Analyzing customer risks and benefits,
Analyzing financial and legal risks
Preparing for the future - planning for growth; Business concepts/models: From solution to
innovative product/service, From product/service to business concept (value proposition),
From business concept to feasibility study; Ethics and social responsibility: Dilemmas and
choices (partners vs. solo, money and control, technology and innovation, etc.), Giving back
to the community
Outcomes: At the end of the course, students should be able to: Identify business
opportunities, Carry out feasibility studies, Model and plan a small business, Engage in start-
ups.
NSA4203 Design project 5 Credits (0 - 0 - 50)
Objectives: The course is designed to expose students to new developments in and
applications of communication technologies so that students can explain the main foundations
of emerging technologies.
Content: A senior level course covering current topics and concerns in the
telecommunications field. Students conduct research of the current literature on topics and
information that are timely and important to the technology.
Page 55 sur 86
Outcomes: Upon completion of this course students will be exposed to new developments in
and applications of emerging technologies of telecommunications
Page 56 sur 86
SDE4206 Introduction to Artificial Intelligent Systems 3 Credits (20 - 5 - 5)
Objectives: The objectives of this course are to provide graduate students of M.Sc.
Information Systems with comprehensive and in-depth knowledge of AI principles and
techniques by introducing AI’s fundamental problems, and 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 and information systems, while providing a
sufficiently strong foundation to encourage further research.
Content: To provide a broad introduction to Artificial Intelligence. The course will cover
both fundamental concepts such as search and knowledge representation, as well as applied
work in areas such as planning and vision. This course is intended for both students majoring
in Computer Science as well as non-specialists with the necessary background who wish to
acquire a general familiarity with Artificial Intelligence. Topics covered are: Search: Problem
Spaces. Weak Methods, Game Trees, Knowledge Representation and Reasoning: Logic,
Resolution Semantic Nets.Frames, Planning, Machine Learning: Concept Learning,
Connectionism, and Natural Language: Grammars. Transition Networks, Vision, Expert
Systems
Outcomes: In order to pass the course, the students should be able to: will be prepared to
contribute to a rapidly changing field by acquiring a thorough grounding in the core principles
and foundations of computer science (e.g., techniques of program design, creation, and
testing; key aspects of computer hardware; algorithmic principles). Will acquire a deeper
understanding on (elective) topics of more specialized interest, and be able to critically
review, assess, and communicate current developments in the field. Will be prepared for the
next step in their careers, for example, by having done a research project (for those headed to
graduate school), a programming project (for those going into the software industry), or some
sort of business plan (for those going into startups).
NSA4205 New Generation Networks 3 Credits (15 - 0 - 5)
Objectives: The course will let students: Understand the core technologies, theories, and
dilemmas that face next generation network engineers in this field. Understand best practices
about how to design, deploy, and troubleshoot next generation networks. Utilize multivendor,
vendor neutral (bare metal), and commercial equipment (such as ADTRAN, Arista, Brocade,
Dell, HP, Juniper, Pica8, etc.) to prepare for real-world scenarios in industry. The students
will be able to expand upon the knowledge learned and apply it to advanced SDNFV specific
industry certifications, such as the ONF Certified SDN Engineer (OCSE).
Content: This course provides an advanced, in-depth immersion into the theories and
technologies of Software-Defined Networking (SDN), Network Functions Virtualization
(NFV) and emerging technologies for computer networks. Students will expand on the
experience with real-world lab experiments and demonstrations learned from the course pre-
requisite (TLEN5830-Next Generation Networks), which will give them an advantage in the
job market for this in-demand, constantly changing subject. Popular software and
technologies in industry, such as CORD, Docker, Floodlight, OpenContrail, Open vSwitch,
OpenFlow, OpenDaylight, OpenStack, ONOS, REST API, Ryu, etc., will be used throughout
the course to facilitate the understanding of how high-level software programs control the
behaviour of the entire physical network. This course is essential in preparing students to
apply their networking knowledge to the real world they will enter upon graduation. In this
class students expand on the fundamentals of next generation network technologies, services,
and tools used in industry to design, deploy, and troubleshoot next generation networks and
transition their foundational SDNFV knowledge to enterprise and ISP level SDN
Page 57 sur 86
implementations. Students will learn to work in a collaborative, and dynamic real-world SDN
environment, by writing software applications to manipulate real-world hardware in the lab,
create large-scale SDNFV deployments and cloud based dynamic infrastructures. Students
successfully completing this course should gain a much greater appreciation of the
technologies and procedures required in designing, deploying, and troubleshooting next
generation networks. The complex interactions among these aspects are shaping the future of
this critical sector of network engineering. The resulting understanding should enhance
employment or promotion opportunities in the network engineering sector and enhance the
student’s ability to participate in the public discourse regarding the future of the next
generation networks as a subject matter expert. In the competitive job market, having an
expert-level knowledge of the future of networking is necessary. The knowledge and skills
gained from this course, when combined with the core ITP courses, will provide a well-
rounded, highly desirable network engineer.
Outcomes: The students will be able to; understand popular software and technologies in
industry, such as CORD, Docker, Floodlight, OpenContrail, Open vSwitch, OpenFlow,
OpenDaylight, OpenStack, ONOS, REST API, Ryu; Undertsand and use the theories and
technologies of Software-Defined Networking (SDN), Network Functions Virtualization
(NFV) and emerging technologies for computer networks; expand upon the knowledge
learned and apply it to advanced SDNFV specific industry certifications, such as the ONF
Certified SDN Engineer (OCSE);
SDE4208 Entrepreneurship and Enterprise Creation 3 Credits (25-5-0)
Objectives: This course is an attempt to introduce the student to the various requirements
inherent in starting and managing a new business. Emphasis will be on idea
creation/opportunity analysis, risk management, capital acquisition, support sourcing, some
legal requirements and location selection considerations. Students will work in groups of two
(or three, maximum) in order to formulate a business plan and be prepared to discuss its
strengths and weaknesses.
Content: Concept of Entrepreneur, Entrepreneurship and Functions, Entrepreneurial
Characteristics and software engineering/IT projects – Entrepreneurship, Cameroon Economy
and Systems on Entrepreneurship, Generation, Incubation and Commercialization of Business
Ideas, Planning, Budgeting, Monitoring, Evaluation and Follow-Up in Running an Enterprise,
Project- Meaning, Writing, Importance, Components and Preparation. Entrepreneurial
Perspective (Concepts of entrepreneur, entrepreneurship and enterprise, Advantages of
entrepreneurship, Nature and development of entrepreneurship, Gender issues in
entrepreneurship, Dynamic role of small businesses in economic development, Personality of
entrepreneurs and of intrapreneurs, Innovation and entrepreneurship. Entrepreneurial
Environment (Policy perspectives to promote entrepreneurship and enterprises; Analysis of
business opportunities in different sectors of economy at national and global levels; Quick–
start routes to enterprises (franchises, ancillaries and acquisitions); Support organizations for
entrepreneurs and their role; Legal framework for starting a business in Cameroon. Launching
Enterprises (Product and project identification; Developing a project report or business plan;
Business financing including VC finance; Managing early growth; Business incubation; New
venture expansion – strategies and issues.
Outcomes: recognize and learn to apply the abilities, skills, and rewards associated with true
entrepreneurship. Be able to recognize and take advantage of the various opportunities
available to an entrepreneur in the legal/political, social/cultural, technological, economic,
demographic, and competitive environments of the twenty-first century. At the end of this
Page 58 sur 86
course students should be able to: develop entrepreneurial perspective, master the
environment surrounding entrepreneurs and be able to launch their own enterprise. Have the
ability to: draw their own business plan; identify opportunities and realize them, support
organizations to succeed in their endeavours.
COURSE STRUCTURE
YEAR ONE
First Semester
Course Course Title Credit Stat L T P Prerequisite
Code Value us
Computational thinking and C
5 C 25 10 15
SDE2101 Programming
Introduction to Computer Networks and
4 C 20 10 10
SDE2102 Practicals (analysis and design)
SDE2103 Engineering Mathematics I 4 C 30 10 0
SDE2104 Computer Architecture and Organization 4 C 30 10 0
Business software and Fundamentals of
4 C 25 5 10
SDE2105 Software engineering
SDE2106 Engineering Physics 5 C 35 15 0
SDE2107 General English I 2 C 20 0 0
SDE2108 General French I 2 C 20 0 0
TOTAL 30 225 60 35
Page 59 sur 86
C = Compulsory, L= Lecture Hours, T = tutorial hours, P = practical hours
YEAR TWO
First Semester
Course Course Title Credit Statu L T P Prerequisite
Code Value s
SDE3101 Object Oriented Programming C++ 3 C 15 5 10
SDE3102 Information System Modelling, Analysis
4 C 25 5 10
and Design
SDE3103 Data Processing Python/R 3 C 15 5 10
Data security, integrity and
SDE3104 4 C 30 10 0
Cryptography
SDE3105 Microprocessors and Microcontrollers 4 C 25 5 10
SDE3106 Client + Server sides Web development 4 C 30 0 10
SDE3107 Database Management systems 4 C 20 5 15
SDE3108 Digital Electronics II 4 C 25 5 10
TOTAL 30 185 40 75
Second Semester
YEAR THREE
First Semester
Page 60 sur 86
TOTAL 30 180 45 75
Second Semester
LIST OF COURSES
YEAR ONE
First Semester
Second Semester
YEAR TWO
First Semester
Second Semester
YEAR THREE
First Semester
Second Semester
Page 62 sur 86
SDE4202 Industrial project and Entrepreneurship in IT
SDE4203 Design project
SDE4204 Internet Application in Programming
SDE4205 Linux Programming
SDE4206 Introduction to Mechatronics
SDE4207 Introduction to Artificial Intelligent Systems
SDE4208 Computer Graphics
Course Description
SDE2103 Engineering Mathematics I 4 Credits (30 - 10 - 10)
Objectives: The primary objectives of this course are: to develop abstract and logical
(probative) thinking, understanding how to set and solve problems, acquiring a basic
knowledge of linear algebra and analytic geometry, Appreciating the value of continued
mathematical education for the major.
Content: Matrix algebra, properties of matrix operations, Systems of linear equations.
Determinant. Kramer rule, Systems of linear equations. Gauss-Jordan method, Inverse of a
matrix and application to the systems of linear equations, Applications of the linear algebra
methods (optional): Cryptography, Input-Output Models, Leontief’s Model, Cartesian
coordinate system on a plane and in a space. Distance between two points. Segment division,
Vectors. Linear space, properties of vectors operations, geometric interpretation of vector.
The scalar (dot) product, angle between vectors. Linear independence and expressing a vector
by the basic vectors. Vector (cross) product, Analytical geometry on plane. Straight line on
plane. Equation of line in the Cartesian system of coordinates, angle between lines, parallel
lines. Different methods of the line representation. Distance from point to line. Algebraic
curves of the second order: ellipsis, parabola, hyperbola, Analytical geometry in space. The
plane and line in space. Equations of plane and line in Descartes coordinate system, angle
correlations: between planes, between lines, between line and plane in space. Distances: from
point to plane, from point to line. Surfaces of the second order: cylinder, cone, ellipsoid,
hyperboloids and paraboloids, Applications of the analytical geometry methods (optional):
Linear Programming. A geometric approach to linear programming problems. Applications of
linear programming. Optimum production output. Diet problem. Transportation problem.
Outcomes: Upon completion of this course, the student will be able to: Understand basic
matrix operations and solve systems of linear equations; Develop the algebraic skills
necessary for problem solving. Develop the ability to model linear, quadratic, and other
nonlinear relations, including the use of the graphing techniques and geometrical principles as
tools, for the purpose of solving real-world problems.
Content: Stages of the program formation. The concept and features of the algorithm. Ways
of writing the algorithm. Basic programming constructs. Elements of the flowchart. The
functional scheme of the structure of the computer and the scheme and the command cycle of
Page 63 sur 86
the processor as executives for the algorithm. The meta-language of writing the algorithm.
Types of translators. Programming paradigms. The criteria for the classification of
programming languages. Types of programming languages. The criteria for the classification
of computer memory as the storage of data and programs. Programming Basics: Notions of
algorithms, flowcharts and programming, iteration and recursion. Imperative style of
programming, Functional style of programming, correctness and efficiency issues.
Programming languages, Interpreter, Compiler. Overview of Programming language C,
constants variables and data types, operators and expressions, data input output, decision
making and looping: If, Ifelse, while, do-while, for, switch. Function declarations and
prototypes, pass by value, and pass by reference. User defined function in C, iterative function
and recursive functions. Arrays: One dimension array, array initialization, Searching,
Insertion, deletion of an element from an array; finding the largest/smallest element in an
array, two dimension array, addition/multiplication of two matrices, transpose of a square
matrix; passing array to function , character array and string. Pointers: Address operators,
pointer type declaration, pointer assignment, pointer initialization, pointer arithmetic,
functions and pointers, arrays and pointers, pointer arrays.
Structure & Unions: Defining a structure, declaring structure variables, Accessing structure
members, structure initialization, copying & comparing structure variables, operation on
individual members, Array of structures, structure & functions, Unions, Size of Structure.
Files management in C: Defining & opening a file, closing a file, I/O operations on files,
Error handling during I/O files, Random Access to files. Introduction to Dynamic Memory
Allocation.
Outcomes: The student after undergoing this course will be able to: Explain the use of
formatted and unformatted input and output statements in “C”; State typical usage of
sequence control statements of “C’; Enlist the fundamental data types and data structures of
“C” and explain the usage of arrays and pointers in “C” and differentiate between a structure
and a union plus explain the commands of File Management in “C”; A student receives a
basic knowledge about fundamentals of programming; the ability of reading with
understanding programs saved in an imperative programming language, symbolic execution
of simple programs for verification; and writing and running simple programs of the size of
the order of 100 lines of the code in C language.
Content: This course provides an introduction to fundamental concepts in the design and
implementation of computer communication networks, their protocols, and applications.
Topics to be covered include: Network Architecture – Historical review – Network software
architecture: layers and protocol, OSI Vs TCP. Network hardware architecture: topologies,
devices. Introduction to types of networks - Optical Networks, Sensor networks, applications
(HTTP, FTP), network programming interfaces (e.g., sockets), transport (TCP, UDP), flow
control, congestion control, IP, routing , IPv6, 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. In this course, we take an analytical approach to understanding resource
allocation on the Internet. We first study the system in a global sense, and use a deterministic
Page 64 sur 86
approach to study congestion control protocols. We then study individual queues and routers,
and use a stochastic approach to understanding system performance.
Outcomes: Upon successful completion of this course, students will be able to: Describe the
general principles of data communication and how computer networks are organized with the
concept of layered approach; Describe how signals are used to transfer data between nodes
and implement a simple LAN with hubs, bridges and switches and how packets in the Internet
are delivered and analyse the contents in a given Data Link layer packet, based on the layer
concept; Design logical sub-address blocks with a given address block and ecide routing
entries given a simple example of network topology as well as describe what classless
addressing scheme and how routing protocols work;
SDE2104 Computer Architecture and Organization 4 Credits (20-10-10)
Objectives: The subject aims to provide the student with: 1. An understanding of relationship
between hardware and software. 2. An ability to recognize how machine organization impacts
the efficiency of applications written in a high-level language. 3. Introduce students to the
internal design of the computer; and 4. Provide students with opportunities to develop basic
skills in identifying computers.
Content: Introduction to Computer Organization: Computer components, Functions,
interconnection Structure, Bus Interconnection. Computer Arithmetic: Integer Representation-
unsigned numbers, signed numbers, signed magnitude, 2’s compliment, Biased
Representation. Integer Arithmetic: Addition, Subtraction, Multiplication unsigned, signed
(Booths Algorithm), Division-unsigned, signed. Floating-Point Representation: IEEE 32 bits,
64 bits. Floating-Point Arithmetic: Addition, Subtraction, Multiplication, Division. Internal
Memory: Semiconductor Memory - Memory Hierarchy, Characteristics of Memory System,
Semiconductor RAM Memories, Internal Organization of Memory Chip, Static RAM,
Asynchronous DRAM, Synchronous DRAM, Connection of Memory to the processor, RAM
Bus memory. Cache Memory: Basics of Cache, Structure, Read operation, Elements of Cache
Design. Associative Memory: External Memory: Magnetic Disk, RAID, optical Memory.
Virtual Memory: Logical VS Physical Address space, working Principle, Mapping Functions,
Replacement Policy. Instruction set, addressing modes.
Outcomes: By the end of this course, students should be able to: understand the basics of
computer hardware and how software interacts with computer hardware and analyse and
evaluate computer performance; understand how computers represent and manipulate data as
well computer arithmetic and be able to convert between different number systems;
understand basics of Instruction Set Architecture (ISA) – MIPS, assemble a simple computer
with hardware design including data format, instruction format, instruction set, addressing
modes, bus structure, input/output, memory, Arithmetic/Logic unit, control unit, and data,
instruction and address flow; understand the use of Boolean algebra as related to designing
computer logic, through simple combinational and sequential logic circuits
Page 65 sur 86
Content: Microsoft Windows commands and shortcuts, writing VBA codes and building
excel forms, data generation and data saving in csv format, password file protection. Teaches
techniques for composing, organizing, editing, and revising business and technical writing.
Includes professional report writing, workplace writing, and writing for electronic and paper
publication. Microsoft PowerPoint and other presentation software necessary to produce
complex, professional-quality presentations, Social media for Business, records information
management for electronic and physical records; includes database software used for records
management and drawing with Visio. Scope of software engineering: Historical Aspects,
Economic Aspects, Maintenance Aspects, Requirements, Analysis and Design Aspects, Team
Development Aspects. Software Life-Cycle Models: Code-and-Fix Life-Cycle Model,
Waterfall Life-Cycle Model, Rapid-Prototyping Life-Cycle Model, Open Source Life-Cycle
Model, Agile Processes, Synchronize-and-Stabilize Life-Cycle Model, Spiral Life-Cycle
Model. Software Process.
Outcomes: Upon successful completion of this course, the student will be able to: Design a
specification a software system for any existing system; Demonstrate the skills of a Software
Designer, Software Architect or Project Manager for the development of software to solve
business and technical problems; Solve a system of linear equations in Excel, pivot tables,
etc…use goalseek function to solve non-linear equation and write VBA user defined
functions; use complex text editor capabilities such as mailing, paging, references;
Outcomes: The student after undergoing this course will be able to: Design algorithms using
principles of recursion. Demonstrate the use of data structures like linked lists, stacks and
queues. Explain the applications of linked lists, stacks and queues in Computer Engineering.
Apply the knowledge of data structures to a given problem plus illustrate searching, sorting
and hashing techniques. Understanding the principle of Hash table; demonstrate the skills in
manipulating collectors.
Content: This course starts with basic language structures, data types, basic operations,
conditions, loops, functions and modules in Python. With them, we can write some useful
programs. Data Acquisition and Presentation: the modes of acquiring local data and network
data in Python and use the basic and yet very powerful data structure sequence, string, list and
tuple in Python to fast and effectively present data and simply process data. Data visualization
libraries: matplotib, Image…Powerful Data Structures and Python Extension Libraries: data
structure dictionaries and sets. In some applications, they can be very convenient. What’s
special here is that, you can also feel the charm of such concise and efficient data structures:
ndarray, Series and DataFrame in the most famous and widely applied scientific computing
package SciPy in Python. Python Data Statistics and Mining: Data Clean of Data Exploration
and Preprocessing, Basic Data Characteristics Analysis of Data Exploration, Data Statistics
and Analysis Based on pandas. Object Orientation and Graphical User Interface: Abstraction,
inheritance, Basic Framework of GUI, Common Components of GUI, Layout Management
Outcomes: After which student should be able to: Use native python data structures (like sets,
dictionaries, and tuples); quickly learn to use new python packages and know how to find
documentation for them; import, analyse and visualize data; create advanced plots.
Content: Covers fundamental algorithms for integer arithmetic, greatest common divisor
calculation, modular arithmetic, and other number theoretic computations. Algorithms are
derived, implemented and analysed for primality testing and integer factorization.
Applications to cryptography are explored including symmetric and public-key
cryptosystems. A cryptosystem will be implemented and methods of attack investigated.
Basic principles about security models such as for example - Bell-La Padula, - Chinese Wall,
- Biba, - Clark-Wilson, Security for operating system , Information security, Data Security ,
System security, Introduction to encryption, Security services, - Confidentiality,
Authentication, Integrity, Access Control , Threats and risks such as for example, - Viruses,
troyans, worms, Web security, Database security, Network security, IDS systems, Security
evaluation such as for example, - TCSEK, - ITSEC, - Common Criteria, Risk analysis, risk
management
Outcomes: To understand fundamental number theoretic algorithms such as the Euclidean
algorithm, the Chinese Remainder algorithm, binary powering, and algorithms for integer
arithmetic; To understand fundamental algorithms for symmetric key and public key
cryptography and number theoretic foundations of modern cryptography and the principles
behind their security;To implement and analyse cryptographic and number theoretic
algorithms. To be able to use Maple to explore mathematical concepts and theorems; Identify,
describe and analyse threat and risks for different systems; have basic knowledge about
security mechanisms and security services, encryption techniques, IDS and firewalls, network
security and be familiar with the malicious of different types programs and countermeasures
SDE3107 Database Management systems 4 Credits (20 - 5 - 15)
Page 71 sur 86
Objectives: The purpose of this course is: 1. To present an introduction to database
management systems (DBMS), with an emphasis on how to organize, maintain and retrieve
efficiently, and effectively the information from a DBMS. 2. To explain the fundamental
concepts of the relational model, including relations, attributes, domains, keys, foreign keys,
entity integrity and referential integrity. 3. To demonstrate how relations can be normalized.
The normalization process requires an understanding of first through fifth normal forms,
functional dependencies and multi-valued dependencies. 4. To list the operations of relational
algebra and show how they can be used to create new relations from existing relations. 5. To
define and manipulate the relational databases in SQL
Content: Introduction to databases and their applications- Overview of a Database
Management System-Data Abstraction And Database Architecture - The Entity-Relationship
Data Model: Elements Of The E/R Model , Design Principles, The Modelling Of Constraints,
Weak Entity Sets - Basics Of The Relational Model-From E/R Diagrams To Relational
Designs-Converting Subclass Structures To Relations. THE RELATIONAL DATABASES &
SQL: Functional Dependencies-Rules About Functional Dependencies-Design Of Relational
Database Schemas – Multivalued Dependencies - Normalization - Relational Algebra:
Relational Operations, Extended Operators Of Relational Algebra, Constraints On Relations -
Tuple Relational Calculus And Domain Relational Calculus - Introduction To SQL - Entering
Information – Extracting Information Sql Advanced Database Design And Pl/Sql: Ensuring
Data Validity With Constraints - Speeding Up Results With Indexes - Manipulating Data -
Grouping And Aggregating Data - Selecting Data From Different Tables - Queries Within
Queries - Views - Security And User Authorization In SQL - PL/SQL: Fundamentals -
Conditional And Sequential Control- Loops - Cursors In PL/SQL - Stored Procedures And
Functions. FILES ORGANIZATIONS, QUERY OTIMIZATION, CONCURRENCY
CONTROL: Index Structures: Indexes On Sequential Files, B-Trees, Hash Tables – Query
Processing And Optimization: Selection And Join Processing Algorithms, Query Tree, Query
Transformation, And Evaluation Plan - ACID Properties – Concurrency Control By Lock,
Timestamp, Validation.
UNIT V-FAILURE RECOVERY AND CASE STUDIES: Transaction Management:
Serializability And Recoverability, View Serializability, Log-Based Recovery, Resolving
Deadlocks - Distributed Databases – XML Databases – Open Source Database Tools: Mysql,
Postgresql, Sqlite.
Outcomes: Upon successful completion of the course, the student will be able to: 1.
Differentiate database systems from file systems by enumerating the features provided by
database systems and describe each in both function and benefit and define the terminology,
features, classifications, and characteristics embodied in database systems. 2. analyse an
information storage problem and derive an information model expressed in the form of an
entity relation diagram and other optional analysis forms, such as a data dictionary plus
demonstrate an understanding of the relational data model. 3. Transform an information
model into a relational database schema and to use a data definition language and/or utilities
to implement the schema using a DBMS. 4. Formulate, using relational algebra, solutions to a
broad range of query problems and use a desktop database package to create, populate,
maintain, and query a database.
Content: This course will cover: Modern HTML and CSS, Responsive Design, Programming
in JavaScript, DOM and Interactivity, Asynchronous Data; ES6, React, Firebase, Client-Side
Routing. We will use a problem-centered approach to web development that addresses web
coding in context rather than studying particular elements of the various web languages
separately. The main goal is that you be able to develop a course project of your own
choosing and understand the code it uses. We will use three class projects in the process of
learning web coding. This course covers several aspects for Client/Server systems, including:
client-server models, transaction processing, communications, programming, security,
middleware, and developments. This course builds on socket programming to develop
Client/Server applications. This course is intended to improve student’s network
programming skills. Thus, students are expected to build a Server in Java, design their
application level Protocol and submit a Client/Server project. The Server must be written in
Java. Whereas, Clients might be written in Java, C#, C++, Python, etc. The course will also
include: TCP/IP protocol architecture; user datagram protocol (UDP); multicasting;
transmission control protocol (TCP); standard Internet services, and protocol usage by
common Internet applications. Sockets programming; client/server; peer-to-peer; Internet
addressing; TCP sockets; UDP sockets; raw sockets. Multithreading and exception handling.
Finger, DNS, HTTP, and ping clients and servers. Routers and architectures, routing
protocols.
Outcomes: At the end of this course, the student should be able to: Recognize and describe
the working of Computer Networks, Client server computing; Illustrate reference models with
layers, protocols and interfaces; Summarize functionalities of different Layers; Combine and
distinguish functionalities of different Layers. Test and validate your web site using
professional guidelines and tools; Discuss the issues of ethics as it relates to website design
and development; Develop dynamic web pages using basic JavaScript and JavaScript libraries
such as JQuery.
Page 73 sur 86
Objectives: Our internship program is designed to help you: Contribute to local industry,
Develop work-based skills, Establish industry networks and contacts, Improve your cross-
cultural communication skills; Learn about work culture
Content:
Outcomes: Student comments are solicited at the end of the Attachment regarding the
service, service site and the Faculty Attachment coordinator. The Guidelines will contain the
Service Log or Daily Diary of a record of hours served (8 weeks minimum) and specific
activities each visit. Form is typically kept on-site. If a site requires a separate sign-in, the
student should ask who will fill out the Service Log.
Content: The course introduces the concept of a network foundation connecting billions of
things and trillions of gigabytes of data to enhance our decision making and interactions.
Course modules describe how IoT drives the convergence between an organization’s
operational technology (OT) and information technology (IT) systems, and the business
processes for evaluating a problem and implementing an IoT solution. Machine-to-machine
(M2M), machine-to-people (M2P), and people-to-people (P2P) connections in an IoE solution
are also covered. IOT concepts: Technologies that led to the evolution of IoT, IOT and
SCADA iii) IOT and M2M, IoT and Big Data , IOT Standards: Requirement of
international standard ( case study), IOT standards in practice. iii) Operating platforms
/systems, Components of IoT System. (Lab): i) Design of IoT systems ii) Development of
prototypes. Relevance of IoT for the future: IOT in everyday life, Internet of Everything, IOT
and Individual Privacy, IoT Applications: Lighting as a service (case study), Intelligent
Traffic systems (case study), Smart Parking (case study), Smart water management (case
study), IoT for smart cities (Case study Smart city Bamenda), IoT in Cameroon Scenario: IOT
for health services, IOT for financial inclusion, IOT for rural empowerment. Challenges in
IoT implementation: Big Data Management. Connectivity challenges. Mission-critical
applications.
Outcomes: 1. Describe what IoT is and how it works today and recognise the factors that
contributed to the emergence of IoT. 2. Design and program IoT devices, use real IoT
protocols for communication and secure the elements of an IoT device. 3. Design an IoT
device to work with a Cloud Computing infrastructure, transfer IoT data to the cloud and in
between cloud providers and define the infrastructure for supporting IoT deployments. 4.
Design an IoT device to work with a Cloud Computing infrastructure, transfer IoT data to the
cloud and in between cloud providers and define the infrastructure for supporting IoT
deployments.
Page 74 sur 86
Content: The design and analysis of algorithms is central to computer science. This course
will focus both on presenting general techniques for designing correct and efficient
algorithms, as well as on formal methods for proving the correctness and analysing the
complexity of such algorithms. It will include: Preliminaries: asymptotic notations, solving
summations, recurrences, invariants, proof techniques. Dynamic programming algorithms:
edit distance, seam-carving, Bellman-Ford, Floyd-Warshall; Divide-and-conquer algorithms:
multiplication, binary search, merge-sort, proof of Master theorem, the fast-Fourier transform;
Data structures: priority queues, search trees, suffix trees, suffix arrays; Probabilistic
algorithms: hashing, selection; Competitive analysis: ski problem, multiplicative weights
update algorithm; Greedy algorithms: minimum spanning trees, clustering, Huffman
encoding, Lempel-Ziv, JPEG compression, Burrows-Wheeler transform; Graph algorithms:
search algorithms, topological sorting, matching, maximum flow/minimum cut; Intractable
problems: NP-completeness, reductions, satisfiability, graph theoretic problems; Advanced
topics: parallel algorithms, approximation algorithms, optimization algorithms;
Outcomes: By the end of the course students are expected to have the following abilities:
Explain and use fundamental algorithms and algorithmic techniques (brutal force techniques,
greedy techniques, divide-and-conquer and dynamic programming, randomized algorithms);
Explain the use of big-O, Omega, and Theta notation to describe the amount of work done by
an algorithm, and apply them to provide tight bounds on algorithmic complexity; Discuss
factors other than computational efficiency that influence the choice of algorithms, such as
programming time, maintainability; use of application specific patterns in the input data.
Content: This course covers several aspects for Client/Server systems, including: client-
server models, transaction processing, communications, programming, security, middleware,
and developments. This course builds on socket programming to develop Client/Server
applications. This course is intended to improve student’s network programming skills. Thus,
students are expected to build a Server in Java, design their application level Protocol and
submit a Client/Server project. The Server must be written in Java. Whereas, Clients might be
written in Java, C#, C++, Python, etc. The course will also include: TCP/IP protocol
architecture; user datagram protocol (UDP); multicasting; transmission control protocol
(TCP); standard Internet services, and protocol usage by common Internet applications.
Sockets programming; client/server; peer-to-peer; Internet addressing; TCP sockets; UDP
sockets; raw sockets. Multithreading and exception handling. Finger, DNS, HTTP, and ping
clients and servers. Routers and architectures, routing protocols.
Outcomes: Upon completion of course, students will be able to Recognize and describe the
working of Computer Networks, Client server computing; Illustrate reference models with
layers, protocols and interfaces; Model the Client- Server computing using different media
and apply client –server computing in real life application development; Model the Client-
Server computing using different media and apply client –server computing in real life
application development.
Page 75 sur 86
Content: This course provides an introduction to the fundamental principles and techniques
of software development that have greatest impact on practice. Topics include capturing the
essence of a problem by recognizing and inventing suitable abstractions; key paradigms,
including state machines, functional programming, and object-oriented programming; use of
design patterns to bridge gap between models and code; the role of interfaces and
specification in achieving modularity and decoupling; reasoning about code using invariants;
testing, test-case generation and coverage; and essentials of programming with objects,
functions, and abstract types. The course includes exercises in modelling, design,
implementation and reasoning. This course also include: Unix filters, Shell programming,
Introduction to Version Control with Git, Perl programming, Tools for Performance Analysis
and Deployment.
Outcomes: After completing this course, students will have: practical experience in
programming with the Unix shell and Perl; exposure to tools for version control, performance
improvement, configuration, and debugging; improved their ability to articulate and
communicate concepts related to programming and systems.
Outcomes: Upon successful completion of this course the student will be able to: Use the
Adobe Photoshop, Macromedia Dreamweaver; Describe Macromedia Flash software
applications; Effectively apply the fundamentals of multimedia design including the aesthetic
and technical aspects; Incorporate all of the various multimedia elements to produce
an interactive multimedia product
Objectives: The objectives of this course are to: Equip students with the required object-
oriented programming skills required to build, Highly reusable, robust and maintainable
software systems. Evaluate the acquired skills via means such as group coding, individual
projects, and Impromptu programming challenge in Java; students will create dynamic web
applications using server-side technology with Java Database Connectivity; Students can
learn networking and remote method invocation using Java API. Different Java frameworks
like Spring, Java Server Faces and Hibernate will increase ability of students in web
application development.
Content: Introduction to object-oriented programming. Emphasis on the fundamentals of
structured design with classes, including development, testing, implementation, and
documentation. Includes object-oriented programming techniques, classes, and objects. The
Java programming language is used as the teaching vehicle for this course. This course is an
extension of courses exposing students to the many concepts of programming. The course is
an expository of the object-oriented programming methodology with emphasis on software
design and code reuse as its core objectives. As a practical course, the focus is to equip
students with adequate high-level object-oriented programming techniques required for
successful design, development, and deployment of today’s complex software systems.
Furthermore, the students are actually mentored to master how the Java technology can be
used to develop modern software systems. Drivers, Introduction to major JDBC Classes and
Interface, Creating simple JDBC Application, Types of Statement (Statement Interface,
PreparedStatement, CallableStatement), Exploring ResultSet Operations, Batch Updates in
JDBC, Creating CRUD Application, Using Rowsets Objects, Managing Database
Page 78 sur 86
Transaction. Servlet API and Overview Servlet Introduction, Servlet Life Cycle, Types of
Servlet, Servlet Configuration with Deployment Descriptor, Working with ServletContext and
ServletConfig Object, Attributes in Servelt,, Response and Redirection using Request
Dispacher and using sendRedirect Method, Filter API, Manipulating Responses using Filter
API, Session Tracking: using Cookies, HTTPSession, Hidden Form Fields and URL
Rewriting,Types of Servlet Event: ContextLevel and SessionLevel. Java Server Pages
Introduction to JSP , Comparison with Servlet, JSP Architecture, JSP Life Cycle, JSP
Scripting Elements, JSP Directives, JSP Action, JSP Implicit Objects, JSP Expression
Language, JSP Standard Tag Libraries, JSP Custom Tag, JSP Session Management, JSP
Exception Handling, JSP CRUD Application.
Outcomes: Upon successful completion of this course, the student will be able to: explain the
many concepts in Object-oriented programming paradigm with respect Java technology, its
features and strengths; understand and explain how Java achieves platform portability;
understand the theory behind many programming structures, constructs, library codes exposed
by the Java language; Distinguish Web Server, Web Container and Application Server,
Serialization, Internationalization, naming services and JNDI; Gain the knowledge of Server
Side programing by implementing Servlet and JSP and understand and write the deployment
descriptor and enterprise application deployment.
Content: This course is offered to undergraduates and introduces students to the formulation,
methodology, and techniques for numerical solution of engineering problems. Topics covered
include: fundamental principles of digital computing and the implications for algorithm
accuracy and stability, error propagation and stability, the solution of systems of linear
equations, including direct and iterative techniques, roots of equations and systems of
equations, numerical interpolation, differentiation and integration, fundamentals of finite-
difference solutions to ordinary differential equations, and error and convergence analysis.
The following topics will be covered: Introduction to numerical techniques , Solution of
systems of linear equations , Gaussian elimination, matrix decomposition, ill-conditioned
systems, Systems of non-linear equations , Interpolation and curve fitting, Least-Squares
Regression, Interpolation by polynomials and splines, Numerical differentiation , Numerical
integration (Quadrature) methods, associated errors , Solution of ordinary differential
equations: initial value problems, First-order ODE’s Euler, Heun’s Runge-Kutta methods,
Solution of systems of ODE’s and higher-order ODE’s, Introduction of partial differential
equation solution and boundary value problems, Optimization
Outcomes: In order to pass the course, the students should be able to: Develop and
implement numerically stable and accurate algorithms for all the basic tasks of computational
science and engineering including developing stable algorithms for solving linear systems of
equations. Develop efficient and stable algorithms for finding roots of non-linear equations
and implement numerically stable recursion algorithms for evaluating mathematical functions.
Understand the use of interpolation for numerical differentiation and integration and develop
stable solution algorithms for ordinary differential equations
Outcomes: After successfully completing this course, students will be able to: Distinguish the
different types of NoSQL databases; Understand the impact of the cluster on database design;
State the CAP theorem and explain it main points; Work with the Hadoop Distributed File
System (HDFS) as a foundation for NoSQL technologies and Warehouse HDFS data using
Apache Hive.
Page 80 sur 86
SDE4104: Mobile Application Development 3 Credits (10-10-10)
Objectives: Apply layout management and multi-layout definition techniques to create
adaptable user interfaces for mobile applications that share a common data model. Manage
user data and multimedia on a mobile device via the Android framework libraries. Use the
sensors available on mobile devices to enhance user interaction and feedback.
Publish Applications to the Google Play Store.
Outcomes: Upon completing requirements for this course, the student will be able to: Create
a mobile application using the Swift programming language. Debug a mobile application
written in the Swift programming language. Test a mobile application written in the Swift
programming language.
Objectives: Upon completion of this course students will be able to apprehend basic database
concepts; concepts of database storage structures; entity Relationship model for a database;
the importance of normalization in databases, identify database access techniques,
demonstrate the use of constraints and relational algebra operations, describe the basics of
SQL and construct queries using SQL.
Content:
INTRODUCTION: Introduction and applications of DBMS, Purpose of data base, Data,
Independence, Database System architecture- Levels, Mappings, Database, users and DBA
DATABASE DESIGN: Database Design Process, ER Diagrams - Entities, Attributes,
Relationships, Constraints, keys, extended ER features, Generalization, Specialization,
Aggregation, Conceptual design with the E-R model.
THE RELATIONAL MODEL: Introduction to the relational model, Integrity constraints over
relations, Enforcing integrity constraints, Querying relational data, Logical database design:
E-R to relational, Introduction to views, Destroying/altering tables and views. RELATIONAL
ALGEBRA AND CALCULUS: Preliminaries, relational algebra operators, relational calculus
- Tuple and domain relational calculus, expressive power of algebra and calculus.
SQL: Basics of SQL, DDL, DML,DCL, structure – creation, alteration, defining constraints –
Primary key, foreign key, unique, not null, check, IN operator, Functions - aggregate
functions, Built-in functions – numeric, date, string functions, set operations, sub-queries,
correlated sub-queries, Use of group by, having, order by, join and its types, Exist, Any, All ,
view and its types. transaction control commands – Commit, Rollback, Save point, cursors,
stored procedures,Triggers
Page 81 sur 86
SCHEMA REFINEMENT AND NORMAL FORMS: Introduction to schema refinement,
functional dependencies, reasoning about FDs. Normal forms: 1NF, 2NF, 3NF, BCNF,
properties of decompositions, normalization, schema refinement in database design, case
studies.
TRANSACTIONS MANAGEMENT: Transaction concept, transaction state, implementation
of atomicity and durability, concurrent executions, Serializability, recoverability,
implementation of isolation, transaction definition in SQL, testing for Serializability.
CONCURRENCY CONTROL AND RECOVERY SYSTEM: Concurrency control, lock
based protocols, time-stamp based protocols, validation based protocols, multiple granularity.
Recovery system - failure classification, storage structure, recovery and atomicity, log- based
recovery, shadow paging, buffer management, failure with loss of non-volatile storage,
advanced recovery techniques, remote backup systems.
OVERVIEW OF STORAGE AND INDEXING: Tree structured indexing - intuition for tree
indexes, indexed sequential access method (ISAM), B+ Trees - a dynamic tree structure.
Outcomes: Students should be able to use the basic concepts of Database Systems in
Database design, apply SQL queries to interact with Database, design a Database using ER
Modelling, apply normalization on database design to eliminate anomalies, analyze database
transactions and can control them by applying ACID properties.
Content: The objective of this course is to develop the students' understanding of the issues
involved in managing Information Systems projects. The course imparts practical knowledge
of the skills and techniques used to manage information systems projects. The success of
many organisations depends on their ability to harness the power of information technology,
but many information systems implemented by organisations either fail completely or do not
live up to their potential. Organisations are recognising that it is many of the “behind the
scenes” activities that result in a successful information system and are investing in project
managers and their education. Project managers need many skills above and beyond the
technical skills required to implement information systems. Management of time, scope and
cost are vital, as are the “soft” skills of managing the team and communicating with the
stakeholders.
Outcomes: Upon completion of this course you will be able to: Understand the importance of
project management certification, Describe the project management process groups and
describe the process of project integration management;
Content: Entrepreneurship: Definition and philosophy, History, Role within the economy;
Entrepreneurship in different contexts: Social (donating profits, “doing good”, non-profit),
Organizational (start-ups, corporate, public sector), Individual (career management); Types of
new ventures: Franchises, Family businesses, Business-within-a-business (entrepreneurship),
Start-ups; Entrepreneurial style: Nature vs. nurture (personality traits, teachable behaviours),
Strengths and weaknesses, Sustainable across time and organizational settings; Creative
problem-solving, Courage to create, Overcoming obstacles, Selling your idea to others; The
entrepreneurial management process: Opportunity and the entrepreneur, Recognizing and
testing opportunity, Developing and testing the business concept; Building a team (diversity,
roles), Analyzing industry risks and benefits, Analyzing customer risks and benefits,
Analyzing financial and legal risks
Preparing for the future - planning for growth; Business concepts/models: From solution to
innovative product/service, From product/service to business concept (value proposition),
From business concept to feasibility study; Ethics and social responsibility: Dilemmas and
choices (partners vs. solo, money and control, technology and innovation, etc.), Giving back
to the community
Outcomes: At the end of the course, students should be able to: Identify business
opportunities, Carry out feasibility studies, Model and plan a small business, Engage in start-
ups.
SDE4203 Design project 5 Credits (15 - 5 - 30)
Objectives: The course is designed to expose students to new developments in and
applications of communication technologies so that students can explain the main foundations
of emerging technologies.
Content: A senior level course covering current topics and concerns in the
telecommunications field. Students conduct research of the current literature on topics and
information that are timely and important to the technology.
Outcomes: Upon completion of this course students will be exposed to new developments in
and applications of emerging technologies of telecommunications
Page 83 sur 86
scripting to be able to successfully read and write bash shell scripts; know how to use
UNIX/Linux resources to find additional information about UNIX/Linux commands.
Content: This course will prepare students to develop software in and for Linux/UNIX
environments. Topics to be covered include basic operating system concepts, effective
command line usage, shell programming, the C language, programming development tools,
system programming, network programming (client-server model and sockets), and GUI
programming.
Outcomes: In order to pass the course, the students should be able to: Understanding the
basic set of commands and utilities in Linux/UNIX systems. To learn to develop software for
Linux/UNIX systems. To learn the C language and get experience programming in C. To
learn the important Linux/UNIX library functions and system calls. To understand the inner
workings of UNIX-like operating systems. To obtain a foundation for an advanced course in
operating systems.
SDE4204 Introduction to Mechatronics 3 Credits (20-0-5)
Objectives: To understand the need of Mechatronics systems, the principle of operation of
various sensors and transducers.
Content: This course introduces Mechatronics Engineering as a multi-disciplinary
professional area. The course shows how to integrate the principles of mechanics, electronics
and computing to generate simple, economical and reliable mechatronic systems. The course
will then build on your theoretical knowledge to understand how mechatronic systems or
robots are programmed. The course will specifically: Provide an understanding of the role of
mechatronics based technology in industry; Develop analytical skills for analysis and
synthesis of both DC and AC electric circuits; Develop skills required for writing computer
programs for embedded systems; Practice the art of designing a mechatronics system.
Outcomes: Upon successful completion of this course you should be able to: Develop simple
mechatronics systems via programming of an embedded system. Develop creative and
innovative mechatronic solutions for simple problems, anticipating financial and social
consequences of any intended action. Conduct feasibility study for using mechatronics
systems for solving assistive technology applications
SDE42097 Computer Graphics 2 Credits (15 - 0 - 5)
Objectives: After successfully completing this course, students should be able to:
comfortably use basic UNIX/Linux commands from the command line (from a terminal
window); organize and manage their files within the UNIX/Linux file system; organize and
manage their processes within UNIX/Linux; usefully combine UNIX/Linux tools using
features such as filters, pipes, redirection, and regular expressions; customize their
UNIX/Linux working environment; be knowledgeable enough about basic UNIX/Linux shell
scripting to be able to successfully read and write bash shell scripts; know how to use
UNIX/Linux resources to find additional information about UNIX/Linux commands.
Content: This course will prepare students to develop software in and for Linux/UNIX
environments. Topics to be covered include basic operating system concepts, effective
command line usage, shell programming, the C language, programming development tools,
system programming, network programming (client-server model and sockets), and GUI
programming. Drivers development
Page 85 sur 86
entrepreneurs and their role; Legal framework for starting a business in Cameroon. Launching
Enterprises (Product and project identification; Developing a project report or business plan;
Business financing including VC finance; Managing early growth; Business incubation; New
venture expansion – strategies and issues.
Outcomes: recognize and learn to apply the abilities, skills, and rewards associated with true
entrepreneurship. Be able to recognize and take advantage of the various opportunities
available to an entrepreneur in the legal/political, social/cultural, technological, economic,
demographic, and competitive environments of the twenty-first century. At the end of this
course students should be able to: develop entrepreneurial perspective, master the
environment surrounding entrepreneurs and be able to launch their own enterprise. Have the
ability to: draw their own business plan; identify opportunities and realize them, support
organizations to succeed in their endeavours.
Page 86 sur 86