Semester 1 
INFE115 
Introduction to Logic Design Variables and functions. Boolean algebra and truth tables. Logic gates, Karnaugh maps. Incompletely specified functions, Multilevel logic circuits. Tabular minimization. Number representation. Arithmetic circuits. Binary codes. Programmable logic devices. Multiplexers, decoders and encoders. Synchronous sequential circuits, flipflops, synchronous counters. 
1 
4 
4 
1 
 
7 
ENGL181 
Academic English  I ENGL 181 is a first semester freshman academic English course. It is designed to help students improve the level of their English to B1 level, as specified in the Common European Framework of Reference for Languages. The course connects critical thinking with language skills and incorporates learning technologies such as Moodle. The purpose of the course is to consolidate students? knowledge and awareness of academic discourse, language structures and lexis. The main focus will mainly be on the development of productive (writing and speaking) and receptive (reading) skills in academic settings. 
1 
3 
5 
1 
 
5 
ENGL191 
Communication in English  I ENGL 191 is a first semester freshman academic English course. It is designed to help students improve the level of their English to B1 level, as specified in the Common European Framework of Reference for Languages. The course connects critical thinking with language skills and incorporates learning technologies such as Moodle. The purpose of the course is to consolidate students? knowledge and awareness of academic discourse, language structures and lexis. The main focus will be on the development of productive (writing and speaking) and receptive (reading) skills in academic settings. 
1 
3 
3 
1 
 
5 
PHYS101 
Physics  I Physical quantities and units. Vector calculus. Kinematics of motion. Newton`s laws of motion and their applications. Workenergy theorem. Impulse and momentum. Rotational kinematics and dynamics. Static equilibrium.PLAB101 must be taken with PHYS101 lab. 
1 
4 
4 
1 
 
6 
MATH151 
Calculus  I Limits and continuity. Derivatives. Rules of differentiation. Higher order derivatives. Chain rule. Related rates. Rolle's and the mean value theorem. Critical Points. Asymptotes. Curve sketching. Integrals. Fundamental Theorem. Techniques of integration. Definite integrals. Application to geometry and science. Indeterminate forms. L'Hospital's Rule. Improper integrals. Infinite series. Geometric series. Power series. Taylor series and binomial series.

1 
4 
4 
 
1 
6 
MATH163 
Discrete Mathematics Set theory, functions and relations; introduction to set theory, functions and relations, inductive proofs and recursive definitions. Combinatorics; basic counting rules, permutations, combinations, allocation problems, selection problems, the pigeonhole principle, the principle of inclusion and exclusion. Generating functions; ordinary generating functions and their applications. Recurrence relations; homogeneous recurrence relations, inhomogeneous recurrence relations, recurrence relations and generating functions, analysis of algorithms. Propositional calculus and boolean algebra; basic boolean functions, digital logic gates, minterm and maxterm expansions, the basic theorems of boolean algebra, simplifying boolean function with karnaugh maps. Graphs and trees; adjacency matrices, incidence matrices, eulerian graphs, hamiltonian graphs, colored graphs, planar graphs, spanning trees, minimal spanning trees, Prim's algorithm, shortest path problems, Dijkstra's algorithms .

1 
3 
3 
1 
 
6 
Semester 2 
INFE102 
Introduction to Information Systems Engineering A series of seminars are held in current topics and areas of specialization in Electrical, Electronic, and Information Systems Engineering. Speakers are invited from different departments of EMU or other International Universities, Industry and Consulting firms, to deliver seminars in all aspects of engineering that are not normally covered in the lecture courses. These include, safety at work, standards, quality control, engineering ethics, etc 
2 
NoCredit 
 
 
 
1 
INFE112 
Introduction to Programming Highlevel programming environments. Variables, expressions and assignments. Introducing C programming. Structured programming; sequential, selective and repetitive structures. Function definition and function calls. Prototypes and header files. Recursive functions. Arrays and pointers. Dynamic memory management. Parameter passing conventions. Multi dimensional arrays. Structures and unions. Conditional compilation, modular programming and multifile programs. Exception handling. File processing. Formatted I/O. Random file access. Index structures and file organization. 
2 
4 
4 
1 
 
7 
PHYS102 
Physics  II Kinetic theory of ideal gases. Equipartition of energy. Heat, heat transfer and heat conduction. Laws of thermodynamics, applications to engine cycles. Coulombs law and electrostatic fields. Gauss’s law. Electric potential. Magnetic field. Amperes law. Faradays law. PLAB102 must be taken with PHYS102 lab.

2 
4 
4 
1 
 
6 
MATH106 
Linear Algebra Cartesian coordinate system; Linear equations and lines, system of linear equations, quadratic equations, functionsSelected application to economics and accounting. Matrices, determinants, systems of linear equations and their solutions using Cramer's Rule. . Set theory, counting theory, discrete probability. Descriptive statistics

2 
3 
3 
1 
 
5 
MATH152 
Calculus  II Vectors in R3. Lines and Planes. Functions of several variables. Limit and continuity. Partial differentiation. Chain rule. Tangent plane. Critical Points. Global and local extrema. Lagrange multipliers. Directional derivative. Gradient, Divergence and Curl. Multiple integrals with applications. Triple integrals with applications. Triple integral in cylindrical and spherical coordinates. Line, surface and volume integrals. Independence of path. Green's Theorem. Conservative vector fields. Divergence Theorem. Stokes' Theorem.

2 
4 
4 
1 
 
6 
ENGL182 
Academic English  II ENGL 182 is a second semester freshman academic English course. It is designed to help students improve the level of their English to B2 level, as specified in the Common European Framework of Reference for Languages. The course connects critical thinking with language skills and incorporates learning technologies such as Moodle. The purpose of the course is to consolidate students? knowledge and awareness of academic discourse, language structures and lexis. The main focus will mainly be on the development of language skills in reading, writing, listening and speaking and the improvement of general academic study skills necessary in an academic setting. 
2 
3 
5 
1 
 
5 
ENGL192 
Communication in English  II This course is designed to further help students improve their English to B2 level, as specified in the Common European Framework of References for Languages. The course aims to reconsolidate and develop students? knowledge and awareness of academic discourse, language structures, and critical thinking. The course also incorporates use of technologies such as MOODLE. The course will focus on reading, writing, listening, speaking and introducing documentation, and will also focus on presentation skills in academic settings. 
2 
3 
3 
 
1 
5 
Semester 3 
INFE212 
Algorithms and Data Structures Structures and unions. Storage structures and memory allocations. Primitive data structures. Data abstraction and Abstract Data Types. Array and record structures. Sorting algorithms and quick sort. Linear & binary search. Complexity of algorithms. String processing. Stacks & queues; stack operations, implementation of recursion, polish notation and arithmetic expressions. Queues and implementation methods. Dequeues & priority queues. Linked storage representation and linkedlists. Doubly linked lists and circular lists. Binary trees. Tree traversal algorithms. Tree searching. General trees. Graphs; terminology, operations on graphs and traversing algorithms. 
3 
4 
4 
1 
 
8 
INFE221 
Electrical Circuits Circuit variables and circuit elements. Some circuit simplification techniques. Techniques of circuit analysis. The operational amplifiers. The natural and step response of RL and RC circuits. Natural and step responses of RLC circuits. Sinusoidal steadystate analysis. Introduction to the Laplace Transform. The Laplace Transform in circuit analysis. 
3 
4 
4 
1 
 
8 
UE01 
University Elective  I 
3 
3 
3 
 
 
3 
MATH207 
Differential Equations Firstorder differential equations. Higher order homogeneous linear differential equations. Solution space. Linear differential equations with constant coefficient. Nonhomogeneous linear equations; variation of parameters, operator methods. System of linear differential equations with constant coefficients. Laplace transforms. Power series solutions. Bessel and Legendre equations. Orthogonal functions and Fourier expansions. Introduction to partial differential equations. First and secondorder linear PDE's. Separation of variables. Heat and wave equations.

3 
4 
4 
1 
 
8 
TUSL181 
Turkish as a Second Language 
3 
2 
2 
 
 
3 
HIST280 
Atatürk's Principles and History of Turkish Reforms 
3 
2 
2 
 
 
3 
Semester 4 
INFE213 
Object Oriented Programming Object oriented concepts. Data typing, data encapsulation and the abstract data type. Object identity, inheritance, reusability, polymorphism. Object oriented programming languages. Classes, functions references. Object declarations and data types. Expressions and statements. Dynamic storage management. Operators, overloading and friends. Derived classes, initialization, inheritance, I/O libraries. Building generic libraries. Error handling in libraries. 
4 
4 
4 
1 
 
7 
CMPE211 
Object Oriented Programming Basics of C++ and Control structures. Program design, ObjectOriented programming and its specific
features. Layout of a simple C++ program (elementary C++ programming. Fundamental types, scope.
Overview of selection and iteration structures of C and C++ languages. Examples of C++ programs.
Functions and Arrays. Review of functions and arrays. Prototypes (declarations), function definition,
function overloading, inline functions, scope resolution operator (::), callbyvalue, callbyreference
(reference parameters), default arguments, array declarations, operations on arrays, using arrays as
function arguments. Pointers, C strings and C++ strings. Pointer variables, declaration and initialization.
Use of pointers in callbyreference function calls, returning a reference, arrays of pointers, pointers to
arrays, pointers to functions, dynamic memory allocation with C++ operators new and delete, Cstrings,
input/output operations, standard Cstring functions, formatted and unformatted input /output, C++ string
type (the standard string class). Classes and Data abstraction. Structure definition, accessing members
2
of structures, class declarations, constructors, constructor initialization lists. Class destructor, member
access specifiers public and private, const member functions, friend functions and classes, static data
and function members. Operator Overloading. Fundamentals and restrictions of operator overloading,
this pointer, overloading unary and binary operators. Composition and Inheritance. Base classes and
derived classes, protected class members, virtual functions and polymorphism, virtual destructors,
private access vs. protected access, abstract base classes. Revision of the material discussed in the
course. 
4 
4 
4 
1 
 
7 
INFE226 
Signals and Systems Continuoustime and discretetime signals and systems. Linear timeinvariant (LTI) systems: system properties, convolution sum and the convolution integral representation, system properties, LTI systems described by differential and difference equations. Fourier series: Representation of periodic continuoustime and discretetime signals and filtering. Continuous time Fourier transform and its properties: Time and frequency shifting, conjugation, differentiation and integration, scaling, convolution, and the Parseval?s relation. Representation of aperiodic signals and the Discretetime Fourier transform. Properties of the discretetime Fourier transform. 
4 
4 
4 
1 
 
7 
INFE242 
Electronics Semiconductor devices, basic amplifier concepts, diodes, PN junction diodes, Schottky diodes, Bipolar Junction Transistors (BJTs), FieldEffect Transistors: MOSFETs, JFETs, transistor biasing. 
4 
4 
4 
1 
 
7 
MATH252 
Mathematical Methods for Engineers Complex numbers. Algebra of complex numbers. Polar representation. Complex functions. Limit and continuity. Analyticity. Analytic functions. CauchyRiemann equations. Line integrals. Cauchy integral formula. Isolated singularities. Residue theorem. Numerical error. Solution of nonlinear equations. Convergence. Solution of linear system of equations: direct and iterative methods. Interpolation. Curve fitting. Numerical differentiation and integration.

4 
4 
4 
1 
 
6 
UE02 
University Elective  II 
4 
3 
3 
 
 
3 
Semester 5 
INFE214 
Software Engineering The software life cycle. Requirements analysis and specification of requirements. Software design and selection. Initial design, modularity, structure charts and partitioning. Detailed design and notations. Data modeling and design. The Relational database model. Software testing, documentation and maintenance. Object modeling and principles of OO analysis 
5 
4 
4 
1 
 
6 
CMSE201 
Fundamentals of Software Engineering Introducation to Software Enginering 
5 
4 
4 
1 
 
6 
INFE360 
Communication Systems  I Review of Fourier transform and its properties. Transmission of signals through linear systems. Power spectral density and autocorrelation function. The sampling theorem and the Nyquist rate, aliasing distortion. Nonideal sampling: Pulse amplitude modulation (PAM) and flattop PAM and equalization. Digital signaling: quantization, encoding and pulse code modulation (PCM), line codes and their spectra, regenerative repeaters. Pulse transmission: Intersymbol interference (ISI), Nyquist method for zero ISI, time division multiplexing (TDM), pulsetime modulation techniques. Complex envelope representation of bandpass and modulated signals. RF circuits: limiters, converters, multipliers, detectors, PLL circuits and etc. Analog modulation techniques: AM, DSBSC, SSB etc. Binary modulation techniques: ASK, BPSK, FSK. 
5 
4 
4 
1 
 
6 
INFE410 
Microprocessors  I Basic computer organization and introductory microprocessor architecture. Introduction to assembly language programming: basic instructions, program segments, registers and memory. Control transfer instructions; arithmetic, logic instructions; rotate instructions and bitwise operations in assembly language. Basic computer architecture: pin definitions and supporting chips. Memory and memory interfacing. Basic I/O and device interfacing: I/O programming in assembly and programmable peripheral interface (PPI). Interfacing the parallel and serial ports. 
5 
4 
4 
1 
 
6 
INFE420 
Digital Signal Processing Overview of digital signals and systems. Frequency and time representation of sampling, decimation, interpolation. Ztransform: Evaluation, region of convergence (ROC) and properties. Discrete time system structures: tapped delay line and lattice structures. Fast Fourier Transform (FFT). Digital filter design: Finite impulse response (FIR), infinite impulse response (IIR), windowing, Hilbert transform. 
5 
4 
4 
1 
 
6 
MATH322 
Probability and Statistical Methods Introduction to probability and statistics. Operations on sets. Counting problems. Conditional probability and total probability formula, Bayes' theorem. Introduction to random variables, density and distribution functions. Expectation, variance and covariance. Basic distributions. Joint density and distribution function. Descriptive statistics. Estimation of parameters, maximum likelihood estimator. Hypothesis testing.

5 
3 
3 
1 
 
6 
Semester 6 
INFE216 
Computing Systems Machine level representation of data. Assembly level machine organization. Memory system organization. I/O and communication. CPU implementation. Operating system principles. Concurrency. Scheduling and dispatch; preemptive and nonpreemptive scheduling. Process and threads. Physical memory and memory management hardware. Virtual memory; paging and segmentation. Memory mapped files. Device management. Characteristics of serial or parallel devices. Buffering strategies. Servers and interrupts. Security and protection; security methods and devices. Protection, access and authentication. Encryption. 
6 
4 
4 
1 
 
6 
CMPE242 
Operating Systems Operating system definition, simple batch systems, multiprogramming, timesharing, personal computer
systems, parallel systems. introduction to process, process scheduling, operations on processes,
cooperating processes, interprocess communications, interrupts, process synchronization, criticalsection
problem, atomic instructions, semaphores, synchronization problems, CPU scheduling,
scheduling criteria and algorithms, multiple processes and realtime scheduling, algorithm evaluation,
deadlocks, characterization and handling of deadlocks, deadlock prevention avoidance and detection,
deadlock recovery, memory management and virtual memory, address spaces, swapping, memory
allocation, paging, segmentation, filesystems, file concepts, access methods, directory structure. 
6 
4 
4 
1 
 
6 
INFE312 
Information Management Database systems; components of database systems, DBMS functions, database architecture and data independence, hypertext, hypermedia and multimedia. Data modeling. Entityrelationship model. Objectoriented model. Relational data model. Entity and referential integrity. Relational algebra and relational calculus. Relational database design. Functional dependency and normal forms. Transaction processing. Distributed databases. Physical database design; storage and file structures, indexed files, hashed files, Btrees, files with dense index, files with variable length records. 
6 
4 
4 
1 
 
6 
CMPE354 
Database Management Systems This course introduces the student to the fundamentals of database management. Topics covered
include: the EntityRelationship model; the Relational model and its mathematical foundations; most
important features of Structured Query Language (including basic structure, aggregate functions, nested
queries, index definition, stored procedures and functions, views, database modification, domain
constraints, assertions, triggers, transaction definition, data definition language, granting privileges,
security), query languages Datalog and QBE; ObjectOriented and ObjectRelational databases; design
principles of Relational databases (normal forms, functional dependencies, decomposition). 
6 
4 
4 
1 
 
6 
INFE320 
Data Communications and Computer Networks Principles of data communications; information transfer, computer networks and their applications. Network structures, architectures and protocols. Open systems and the OSI reference model; services and network standardization. Communication systems: transmission media, analog and digital transmission. PSTN, modems, PCM, encoding and digital interface. Transmission and switching: FDM, TDM, modulation, circuit, packet and message switching. The store and forward concept. Networking characteristics. Storage, delay, multiplexing, bandwidth sharing and dynamic bandwidth management, QoS. Channel organization, framing, channel access control. PSPDN and integrated digital network concept: ISDN. LANs, MANs and WANs. ATM and gigabit networking. Communication models. Defacto standards. The Internet open architecture and the protocol suite. Modern applications of networking. 
6 
4 
4 
1 
 
6 
CMPE344 
Computer Networks Basic concepts of data transmission. Overview of networks. The layered network architecture, ISO reference model. Circuit switching, packet switching. Physical layer. Communication techniques. Frequency and time division multiplexing, modulation, modems, error detecting. Data link layer. Data link protocols. Network layer. Routing and congestion. Local area networks. Other layers. Examples of commonly used networks and their protocols. Basics of LANs ,wireless LANs, new trends in computer communication and computer networks 
6 
4 
4 
1 
 
6 
INFE362 
Digital Communication Review of probability and random variables. Random processes, stationarity, correlation, covariance and ergodicity concepts. Transmission of random processes through linear filters, power spectral density. Gaussian random processes, white noise, filtered noise and narrowband noise. Baseband pulse transmission and optimal (matched filter) receiver. Probability of error for pulse transmission. Nyquist criterion for distortionless binary transmission, partial response signaling, multilevel signaling and tapped delay line equalization. Geometric interpretation of signals, coherent detection of signals in noise. Digital modulation techniques such as PSK, FSK, QPSK and etc. Detection of the digitally modulated signals. 
6 
4 
4 
1 
 
6 
ENGL201 
Communication Skills ENGL 201 is a Communication Skills course for students at the Faculty of Engineering. The course aims to introduce a range of skills, including effective written and oral communication, research skills and study skills. Throughout the course the students will be involved in project work intended to help them in their immediate and future academic and professional life. This will include library research, technical report writing and an oral presentation. By investigating a topic of their own choice, students will develop their understanding of independent research skills. During the report writing process, students will improve their writing and develop the ability to produce organized, cohesive work. The oral presentation aims to enhance spoken fluency and accuracy and provide training in the components of a good presentation. 
6 
3 
3 
1 
 
6 
Semester 7 
INFE405 
Graduate Design Project Proposal This is a onecredit course that can be taken in the 7th academic semester. It forms a preparation phase for the INFE406. Students are expected to familiarize with their projects, carry out literature survey and prepare materials, study components and relevant standards before the implementation phase in the following semester. 
7 
1 
1 
 
1 
1 
INFE403 
Summer Training In partial fulfillment of graduation requirements, each student is required to complete 40 continuous working days of training during the summer vacations, normally at the end of the junior year, in accordance with rules and regulations set by the Department. Special attention should be given to most but not necessarily all of the following areas of training: production, operation, maintenance, management and safety. A formal report describing the projects the student was involved in is to be submitted. 
7 
NoCredit 
 
 
 
1 
INFE421 
Client Server Computing The sevenlayer reference model; physical, data link, network, transport, session, presentation and application. Host name resolution and the domain name service. Publickey cryptography. The WEB as an example client server computing; designing clients and servers. Technologies of the web; URLs, HTML, HTTP, applets etc. Communication and networking; protocol suites, streams and datagrams, remote procedure calls, internetworking and routing. Distributed object systems; serializing objects, distributed object frameworks. COM and DCOM. Collaboration technology and groupware. Distributed operating systems. 
7 
4 
4 
1 
 
6 
CMPE343 
Systems Programming Scope of systems programming. System programming in UNIX. Programming processes in UNIX. Creation of processes. System calls for files. Local Interprocess communication mechanisms: Pipes, message queues, shared memory, semaphores, signals. Remote interprocess communication: Sockets. Remote procedure call. Introductory concepts systems programming in Windows OS. 
7 
4 
4 
1 
 
6 
INFE467 
Information Theory Modeling of information sources and measure of information. Joint and conditional entropy. Source Coding: Huffman, Lempel Ziv coding and arithmetic coding. The Rate distortion theory. Modeling of communication channel and the Channel Capacity Theorem. Scalar and vector quantization and Transform coding. Coding of discrete information sources: Block codes, cyclic codes, convolutional codes. Combined modulation and coding, trellis coded modulation (TCM). 
7 
4 
4 
1 
 
7 
CMPE423 
Embedded System Design The objective of the course is to introduce the concept of Harvard + RISC architecture microcontrollers and design of embedded computing systems on typical applications including interrupts, timers, LCD and LED displays, keypads, a/d converters, rotary coders, stepper motors, serial and parallel communication interfacing. The design applications are introduced on a very widely used typical 16bit embedded microcontroller unit, PIC18F452. The scope of the course is the simple, distinct PIC18F452 embedded system design with the applications in C and RISC assembly programming. The design/theory scale of the course is around 60/40. 
7 
4 
4 
1 
 
7 
CMPE466 
Computer Graphics This course studies; computational geometry, curve, surface and object representations, geometric transformations, three dimensional graphics, color, shading, shadowing, hidden line elimination, surface removal, antialiasing, digitizing and scanning, display algorithms, graphics hardware, display devices. 
7 
4 
4 
1 
 
7 
CMPE451 
Information Security Information security requirements, security threats, attacks, and methods providing information
protection, discretionary and mandatory access models. Malicious software. Symmetric and asymmetric
cryptographic methods, DES, AES, RSA. Authentication, digital signature, certificates, onetime
passwords, hash functions. Practical aspects of information security in operating systems, databases,
network applications. 
7 
4 
4 
1 
1 
7 
CMPE471 
Automata Theory Mathematical preliminaries and basic concepts. Strings, Languages and Grammars. Chomsky hierarchy
of grammars. Deterministic and nondeterministic finite automata. Equivalence of deterministic and
nondeterministic finite automata. Minimization of finite automata. Regular grammars and regular
expressions. Pushdown automata. Context free grammars. Chomsky normal form. Greibach normal
form. Correspondence of pushdown automata and context free grammars. Introduction to Parsing 
7 
4 
4 
1 
 
7 
CMSE321 
Software Requirements Analysis and Specification Functional, nonfunctional and domain requirements. User and system requirements. Feasibility study.
Estimation techniques. Languages and models for representing requirements. Performance, reliability,
availability, safety, and security issues. Requirements documentation standards. Requirements
management: handling requirements changes 
7 
4 
4 
1 
 
7 
CMPE371 
Analysis of Algorithms Design, analysis and representation of algorithms. Models of computation, fundamental strategies divide and conquer, recursion, search and traversal, backtracking, branch and bound, analysis tools and techniques for algorithms, representation of sets and graphs, algorithms on graphs, NPcompleteness and intractability 
7 
4 
4 
1 
 
7 
CMSE326 
Software Quality Assurance and Testing Software metrics. Quality planning and quality control. Inspections and formal technical reviews. Blackbox
and whitebox testing, problem analysis and reporting techniques. Verification and validation
techniques. Process and product quality assessment. Process measurement. Software quality
assurance standards. 
7 
4 
4 
1 
 
7 
AE01 
Area Elective  I 
7 
3 
3 
 
 
7 
CMPE416 
Object  Oriented Programming and Graphical User Interfaces The purpose of this course is to expose the Object Oriented Programming approach and its use in building Graphical User Interfaces. It will be done in fact through the presentation of the JAVA language. The student is to learn the language structure of JAVA, its object oriented aspect, the similarities and differences with C. He must also acquire a practical programming experience in Java through a number of exercises and projects. Concerning the applications of the language, we will focus on the implementation of Graphical User Interfaces as well as animation programs. Blueprints and a practical object oriented development methodology will be given for such applications. 
7 
4 
4 
1 
 
7 
CMSE321 
Software Requirements Analysis and Specification Functional, nonfunctional and domain requirements. User and system requirements. Feasibility study.
Estimation techniques. Languages and models for representing requirements. Performance, reliability,
availability, safety, and security issues. Requirements documentation standards. Requirements
management: handling requirements changes 
7 
4 
4 
1 
 
7 
CMPE471 
Automata Theory Mathematical preliminaries and basic concepts. Strings, Languages and Grammars. Chomsky hierarchy
of grammars. Deterministic and nondeterministic finite automata. Equivalence of deterministic and
nondeterministic finite automata. Minimization of finite automata. Regular grammars and regular
expressions. Pushdown automata. Context free grammars. Chomsky normal form. Greibach normal
form. Correspondence of pushdown automata and context free grammars. Introduction to Parsing 
7 
4 
4 
1 
 
7 
CMPE451 
Information Security Information security requirements, security threats, attacks, and methods providing information
protection, discretionary and mandatory access models. Malicious software. Symmetric and asymmetric
cryptographic methods, DES, AES, RSA. Authentication, digital signature, certificates, onetime
passwords, hash functions. Practical aspects of information security in operating systems, databases,
network applications. 
7 
4 
4 
1 
1 
7 
CMPE466 
Computer Graphics This course studies; computational geometry, curve, surface and object representations, geometric transformations, three dimensional graphics, color, shading, shadowing, hidden line elimination, surface removal, antialiasing, digitizing and scanning, display algorithms, graphics hardware, display devices. 
7 
4 
4 
1 
 
7 
CMPE423 
Embedded System Design The objective of the course is to introduce the concept of Harvard + RISC architecture microcontrollers and design of embedded computing systems on typical applications including interrupts, timers, LCD and LED displays, keypads, a/d converters, rotary coders, stepper motors, serial and parallel communication interfacing. The design applications are introduced on a very widely used typical 16bit embedded microcontroller unit, PIC18F452. The scope of the course is the simple, distinct PIC18F452 embedded system design with the applications in C and RISC assembly programming. The design/theory scale of the course is around 60/40. 
7 
4 
4 
1 
 
7 
CMPE416 
Object  Oriented Programming and Graphical User Interfaces The purpose of this course is to expose the Object Oriented Programming approach and its use in building Graphical User Interfaces. It will be done in fact through the presentation of the JAVA language. The student is to learn the language structure of JAVA, its object oriented aspect, the similarities and differences with C. He must also acquire a practical programming experience in Java through a number of exercises and projects. Concerning the applications of the language, we will focus on the implementation of Graphical User Interfaces as well as animation programs. Blueprints and a practical object oriented development methodology will be given for such applications. 
7 
4 
4 
1 
 
7 
CMPE371 
Analysis of Algorithms Design, analysis and representation of algorithms. Models of computation, fundamental strategies divide and conquer, recursion, search and traversal, backtracking, branch and bound, analysis tools and techniques for algorithms, representation of sets and graphs, algorithms on graphs, NPcompleteness and intractability 
7 
4 
4 
1 
 
7 
AE02 
Area Elective  II 
7 
3 
3 
 
 
7 
CMSE326 
Software Quality Assurance and Testing Software metrics. Quality planning and quality control. Inspections and formal technical reviews. Blackbox
and whitebox testing, problem analysis and reporting techniques. Verification and validation
techniques. Process and product quality assessment. Process measurement. Software quality
assurance standards. 
7 
4 
4 
1 
 
7 
IENG450 
Industrial Management This is a service course offered to nonIE engineering students. The aim is to prepare the students to assume positions in industry as engineering managers. The topics covered include the historical development of industrial management, introductory operations management, functions of technology management, managing technological change, managing engineering projects, and managing the engineering career. 
7 
3 
3 
 
 
3 
IENG420 
Fundamentals of Engineering Economy An introduction to the basics of economic analysis for decisions in engineering design, in manufacturing, in manufacturing equipment, and in industrial projects. Time value of money. Cashflow analysis. Cost of capital. Return on investment. Elements of cost and cost estimation. Breakeven analysis. Decision making among alternatives. Effects of depreciation. Taxes. Replacement analysis. Inflation. 
7 
3 
3 
 
 
3 
ECON101 
Introduction to Economics  I This course introduces students to the key concept and topic of microeconomics such as demand and supply, elasticity, utility, preferences, production, costs, perfect competition, monopoly, monopolistic competition, oligopoly and factor markets. 
7 
3 
3 
1 
 
3 
UE03 
University Elecitive  III 
7 
3 
3 
 
 
3 
CMPE466 
Computer Graphics This course studies; computational geometry, curve, surface and object representations, geometric transformations, three dimensional graphics, color, shading, shadowing, hidden line elimination, surface removal, antialiasing, digitizing and scanning, display algorithms, graphics hardware, display devices. 
7 
4 
4 
1 
 
7 
CMPE451 
Information Security Information security requirements, security threats, attacks, and methods providing information
protection, discretionary and mandatory access models. Malicious software. Symmetric and asymmetric
cryptographic methods, DES, AES, RSA. Authentication, digital signature, certificates, onetime
passwords, hash functions. Practical aspects of information security in operating systems, databases,
network applications. 
7 
4 
4 
1 
1 
7 
CMPE423 
Embedded System Design The objective of the course is to introduce the concept of Harvard + RISC architecture microcontrollers and design of embedded computing systems on typical applications including interrupts, timers, LCD and LED displays, keypads, a/d converters, rotary coders, stepper motors, serial and parallel communication interfacing. The design applications are introduced on a very widely used typical 16bit embedded microcontroller unit, PIC18F452. The scope of the course is the simple, distinct PIC18F452 embedded system design with the applications in C and RISC assembly programming. The design/theory scale of the course is around 60/40. 
7 
4 
4 
1 
 
7 
CMPE416 
Object  Oriented Programming and Graphical User Interfaces The purpose of this course is to expose the Object Oriented Programming approach and its use in building Graphical User Interfaces. It will be done in fact through the presentation of the JAVA language. The student is to learn the language structure of JAVA, its object oriented aspect, the similarities and differences with C. He must also acquire a practical programming experience in Java through a number of exercises and projects. Concerning the applications of the language, we will focus on the implementation of Graphical User Interfaces as well as animation programs. Blueprints and a practical object oriented development methodology will be given for such applications. 
7 
4 
4 
1 
 
7 
CMPE371 
Analysis of Algorithms Design, analysis and representation of algorithms. Models of computation, fundamental strategies divide and conquer, recursion, search and traversal, backtracking, branch and bound, analysis tools and techniques for algorithms, representation of sets and graphs, algorithms on graphs, NPcompleteness and intractability 
7 
4 
4 
1 
 
7 
AE03 
Area Elective  III 
7 
3 
3 
 
 
7 
CMPE471 
Automata Theory Mathematical preliminaries and basic concepts. Strings, Languages and Grammars. Chomsky hierarchy
of grammars. Deterministic and nondeterministic finite automata. Equivalence of deterministic and
nondeterministic finite automata. Minimization of finite automata. Regular grammars and regular
expressions. Pushdown automata. Context free grammars. Chomsky normal form. Greibach normal
form. Correspondence of pushdown automata and context free grammars. Introduction to Parsing 
7 
4 
4 
1 
 
7 
CMSE326 
Software Quality Assurance and Testing Software metrics. Quality planning and quality control. Inspections and formal technical reviews. Blackbox
and whitebox testing, problem analysis and reporting techniques. Verification and validation
techniques. Process and product quality assessment. Process measurement. Software quality
assurance standards. 
7 
4 
4 
1 
 
7 
CMSE321 
Software Requirements Analysis and Specification Functional, nonfunctional and domain requirements. User and system requirements. Feasibility study.
Estimation techniques. Languages and models for representing requirements. Performance, reliability,
availability, safety, and security issues. Requirements documentation standards. Requirements
management: handling requirements changes 
7 
4 
4 
1 
 
7 
AE04 
Area Elective  IV 
7 
3 
3 
 
 
7 
CMPE371 
Analysis of Algorithms Design, analysis and representation of algorithms. Models of computation, fundamental strategies divide and conquer, recursion, search and traversal, backtracking, branch and bound, analysis tools and techniques for algorithms, representation of sets and graphs, algorithms on graphs, NPcompleteness and intractability 
7 
4 
4 
1 
 
7 
CMPE416 
Object  Oriented Programming and Graphical User Interfaces The purpose of this course is to expose the Object Oriented Programming approach and its use in building Graphical User Interfaces. It will be done in fact through the presentation of the JAVA language. The student is to learn the language structure of JAVA, its object oriented aspect, the similarities and differences with C. He must also acquire a practical programming experience in Java through a number of exercises and projects. Concerning the applications of the language, we will focus on the implementation of Graphical User Interfaces as well as animation programs. Blueprints and a practical object oriented development methodology will be given for such applications. 
7 
4 
4 
1 
 
7 
CMPE423 
Embedded System Design The objective of the course is to introduce the concept of Harvard + RISC architecture microcontrollers and design of embedded computing systems on typical applications including interrupts, timers, LCD and LED displays, keypads, a/d converters, rotary coders, stepper motors, serial and parallel communication interfacing. The design applications are introduced on a very widely used typical 16bit embedded microcontroller unit, PIC18F452. The scope of the course is the simple, distinct PIC18F452 embedded system design with the applications in C and RISC assembly programming. The design/theory scale of the course is around 60/40. 
7 
4 
4 
1 
 
7 
CMSE326 
Software Quality Assurance and Testing Software metrics. Quality planning and quality control. Inspections and formal technical reviews. Blackbox
and whitebox testing, problem analysis and reporting techniques. Verification and validation
techniques. Process and product quality assessment. Process measurement. Software quality
assurance standards. 
7 
4 
4 
1 
 
7 
CMPE451 
Information Security Information security requirements, security threats, attacks, and methods providing information
protection, discretionary and mandatory access models. Malicious software. Symmetric and asymmetric
cryptographic methods, DES, AES, RSA. Authentication, digital signature, certificates, onetime
passwords, hash functions. Practical aspects of information security in operating systems, databases,
network applications. 
7 
4 
4 
1 
1 
7 
CMSE321 
Software Requirements Analysis and Specification Functional, nonfunctional and domain requirements. User and system requirements. Feasibility study.
Estimation techniques. Languages and models for representing requirements. Performance, reliability,
availability, safety, and security issues. Requirements documentation standards. Requirements
management: handling requirements changes 
7 
4 
4 
1 
 
7 
CMPE471 
Automata Theory Mathematical preliminaries and basic concepts. Strings, Languages and Grammars. Chomsky hierarchy
of grammars. Deterministic and nondeterministic finite automata. Equivalence of deterministic and
nondeterministic finite automata. Minimization of finite automata. Regular grammars and regular
expressions. Pushdown automata. Context free grammars. Chomsky normal form. Greibach normal
form. Correspondence of pushdown automata and context free grammars. Introduction to Parsing 
7 
4 
4 
1 
 
7 
CMPE466 
Computer Graphics This course studies; computational geometry, curve, surface and object representations, geometric transformations, three dimensional graphics, color, shading, shadowing, hidden line elimination, surface removal, antialiasing, digitizing and scanning, display algorithms, graphics hardware, display devices. 
7 
4 
4 
1 
 
7 
Semester 8 
INFE406 
Graduate Design Project Design and practical works oriented projects will be given to students with an aim to stimulate application of theoretical knowledge to practical situations. EENG406 can be taken in the 8th academic semester. It provides experience in designing and implementing systems within multiple realistic constraints using conventional materials, components, equipments and software. Projects should be implemented conforming to relevant standards, ethical issues and environmental policies. 
8 
3 
3 
 
1 
8 
UE04 
Uni.Elecitive  IV 
8 
3 
3 
 
 
3 
IENG355 
Ethics in Engineering This course is designed to introduce moral rights and responsibilities of engineers in relation to society, employers, colleagues and clients. Analysis of ethical and value conflict in modern engineering practice. Importance of intellectual property rights and conflicting interests. Ethical aspects in engineering design, manufacturing, and operations. Costbenefitrisk analysis and safety and occupational hazard considerations. 
8 
3 
3 
 
 
3 
PHIL401 
Ethics in Professional Life 
8 
3 
3 
 
 
3 