version 13.5 curriculum of computer engineering b.sc...
TRANSCRIPT
Version 13.5
1
Curriculum of Computer Engineering B.Sc. Program 2005
Department of Electrical and Computer Engineering
Faculty of Engineering
Islamic University of Gaza
University Requirements: 37 credit hours
Faculty Requirements: 27 credit hours
Program Core Requirements: 91 credit hours
Program Elective Requirements: 15 credit hours
TOTAL: 170 credit hours
Version 13.5
2
University Requirements: 37 credit hours
Credit Hours Course Name Course Code No.
3 Arabic Language (Grammar) ARAB 1301 1
2 Arabic Writing & Expression Skills ARAB 3202 2
2 Principles of Economy & Islamic
Economy
ECON 4203 3
3 English Language ENGL 1301 4
1 Holly Quran 1 (Part 30) HADT A 1100 5
1 Holly Quran 2 (Part 29) HADT B 1100 6
1 Holly Quran 3 (Part 28) HADT C 2100 7
1 Holly Quran 4 (Part 27) HADT D 2100 8
1 Holly Quran 5 (Part 26) HADT E 3100 9
3 Biography of Prophet Mohammed HADT 1302 10
2 Quranic Studies HADT 2201 11
3 Studies in Faith HADT 2303 12
3 Islamic World Today HADT 3306 13
2 Studies in Hadith HADT 4204 14
0 First Aids NURS 4000 15
2 Palestinian Studies POLS 3220 16
3 Studies in Figh SHAR 1303 17
2 Islamic Institutional Systems SHAR 2207 18
2 Human Rights in Shariah and Law SHAR 2208 19
37 University Requirements
Version 13.5
3
Faculty Requirements: 27 credit hours
Credit Hours Course Name Course Code No.
2 Engineering Chemistry CHEM 1203 5
1 Introduction to Engineering ENGG 1101 8
1 Workshop Technology ENGG 1105 11
2 Introduction to Computers ENGG 1203 9
2 Engineering Drawing ENGG 1204 10
3 Technical English Writing ENGG 1305 12
3 General Physics (A) PHYSA 1301 1
1 Physics Lab (A) PHYSA 1102 2
3 General Physics (B) PHYSB 1301 3
1 Physics Lab (B) PHYSB 1102 4
4 Calculus (A) MATHA 1401 6
4 Calculus (B) MATHB 1401 7
27 Faculty Requirements
Version 13.5
4
Program Core Requirements: 91 credit hours
LT = Lecture, LB = Lab, TT = Tutorial, CR = Credit
Course Prerequisite
Code Name LT
Hrs
LB
Hrs
TT
Hrs
CR
Hrs
Code Name
ECOM 2311 Discrete Mathematics 3 0 1 3 ENGG 1203 Introduction to Computers
ECOM 2312 Digital Logic Design 3 0 1 3 ENGG 1203
PHYSB 1301
Introduction to Computers
General Physics (B)
ECOM 2112 Digital Logic Design Lab 0 3 0 1 Concurrent with ECOM 2312 Digital
Logic Design
ECOM 2314 Computer Programming I 3 0 1 3 ENGG 1203 Introduction to Computers
ECOM 2114 Computer Programming I Lab 0 3 0 1 Concurrent with ECOM 2314 Computer
Programming I
ECOM 2324 Computer Programming II 3 0 1 3 ECOM 2314 Computer Programming I
ECOM 2124 Computer Programming II
Lab
0 3 0 1 Concurrent with ECOM 2324 Computer
Programming II
ECOM 2325 Computer Organization and
Assembly Language
3 0 1 3 ECOM 2312 Digital Logic Design
ECOM 2125 Computer Organization and
Assembly Language Lab
0 3 0 1 Concurrent with ECOM 2325 Computer
Organization and Assembly Language
ECOM 3311 Computer Architecture 3 0 1 3 ECOM 2325 Computer Organization and Assembly
Language
ECOM 3312 Data Structures and
Algorithms
3 0 1 3 ECOM 2324 Computer Programming II
ECOM 4311 Digital Systems Design 3 0 1 3 ECOM 2312 Digital Logic Design
ECOM 4111 Digital Systems Design Lab 0 3 0 1 Concurrent with ECOM 4311 Digital
Systems Design
ECOM 3322 Embedded Systems 3 0 1 3 ECOM 3311 Computer Architecture
ECOM 4314 Data Communications 3 0 1 3 ECOM 2312
EELE 3340
Digital Logic Design
Probability Theory and Statistics
ECOM 3324 Software Engineering 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 4112 Embedded Systems Lab 0 3 0 1 ECOM 3322 Embedded Systems
ECOM 4321 Computer Networks 3 0 1 3 ECOM 4314 Data Communications
ECOM 4121 Computer Networks Lab 0 3 0 1 Concurrent with ECOM 4321 Computer
Networks
ECOM 4312 Operating Systems 3 0 1 3 ECOM 3311
ECOM 3312
Computer Architecture
Data Structures and Algorithms
ECOM 4313 Database Systems 3 0 1 3 ECOM 3311
ECOM 3324
Computer Architecture
Software Engineering
ECOM 4113 Database Systems Lab 0 3 0 1 Concurrent with ECOM 4313 Database
Systems
ECOM 4123 Seminar 1 0 0 1 Concurrent with ECOM 4322 Research
Methodologies and Advanced Technical
English Writing
ECOM 4322 Research Methodologies and
Advanced Technical English
Writing
3 0 0 3 Completion of 110 credit hours
ECOM 5000 Summer Training 0 0 0 0 Completion of 130 credit hours
ECOM 5311 Final Year Project I 1 6 0 3 ECOM 4322
ECOM 4123
Research Methodologies and Advanced
Technical English Writing
Completion of 130 credit hours
ECOM 5321 Final Year Project II 2 6 0 3 ECOM 5311 Final Year Project I
EELE 2312 Electric Circuits 3 0 1 3 PHYSB 1301 General Physics (B)
EELE 2112 Electric Circuits Lab 0 3 0 1 Concurrent with EELE 2312 Electric
Circuits
EELE 2321 Electronics 3 0 1 3 EELE 2312 Electric Circuits
EELE 2121 Electronics Lab 0 3 0 1 Concurrent with EELE 2321 Electronics
EELE 3321 Digital Electronics 3 0 1 3 EELE 2321
ECOM 2312
Electronics
Digital Logic Design
EELE 3121 Digital Electronics Lab 0 3 0 1 Concurrent with EELE Digital Electronics
EELE 3310 Signals and Linear Systems 3 0 1 3 MATH 2401
EELE 2312
Differential Equations and Linear Algebra
Electric Circuits
EELE 3110 Signals and Linear Systems
Lab
0 3 0 1 Concurrent with EELE 3310 Signals and
Linear Systems
EELE 3340 Probability Theory and
Statistics
3 0 1 3 MATHB 1401 Calculus (B)
Version 13.5
5
EELE 3360 Feedback Control Systems 3 0 1 3 EELE 3310 Signals and Linear Systems
EELE 3160 Feedback Control Systems
Lab
0 3 0 1 Concurrent with EELE 3360 Feedback
Control Systems
EELE 4310 Digital Signal Processing 3 0 1 3 ECOM 2314
EELE 3310
Computer Programming I
Signals and Linear Systems
EELE 4110 Digital Signal Processing Lab 0 3 0 1 Concurrent with EELE 4310 Digital
Signal Processing
MATH 2401 Differential Equations and
Linear Algebra
4 0 1 4 MATHB 1401 Calculus (B)
Program Core Requirements 91
Version 13.5
6
Program Elective Requirements: 15 credit hours from the following list
LT = Lecture, LB = Lab, TT = Tutorial, CR = Credit
Course Prerequisite
Code Name LT
Hrs
LB
Hrs
TT
Hrs
CR
Hrs
Code Name
ECOM 5330 Selected Topics in Computer
Architecture
3 0 1 3 ECOM 3311 Computer Architecture
ECOM 5331 Parallel Computing 3 0 1 3 ECOM 4312 Operating Systems
ECOM 5332 Distributed Systems 3 0 1 3 ECOM 4312 Operating Systems
ECOM 5333 Selected Topics in Embedded
Systems
3 0 1 3 ECOM 3322 Embedded Systems
ECOM 5334 Personal Computers 3 0 1 3 ECOM 3322 Embedded Systems
ECOM 5335 VLSI Design 3 0 1 3 EELE 3321 Digital Electronics
ECOM 5336 Selected Topics in Digital Design 3 0 1 3 ECOM 4311 Digital Systems Design
ECOM 5337 Testing of Digital Circuits 3 0 1 3 EELE 3321 Digital Electronics
ECOM 5339 Artificial Intelligence 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5340 Pattern Recognition 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5341 Mobile Computing 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5342 Fault-Tolerant Computing 3 0 1 3 ECOM 3311 Computer Architecture
ECOM 5343 Design and Analysis of Algorithms 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5344 Selected Topics in Operating
Systems
3 0 1 3 ECOM 4312 Operating Systems
ECOM 5345 Windows Programming 3 0 1 3 ECOM 4312 Operating Systems
ECOM 5346 Selected Topics in Computer
Networks
3 0 1 3 ECOM 4321 Computer Networks
ECOM 5347 Security in Computer Systems 3 0 1 3 ECOM 4321 Computer Networks
ECOM 5348 Internet Technology 3 0 1 3 ECOM 4321 Computer Networks
ECOM 5349 Advanced Internet Technology 3 0 1 3 ECOM 4321 Computer Networks
ECOM 5350 Information Storage and Retrieval 3 0 1 3 ECOM 4313 Database Systems
ECOM 5351 Multimedia Systems 3 0 1 3 ECOM 4321 Computer Networks
ECOM 5352 Selected Topics in Software
Engineering
3 0 1 3 ECOM 3324 Software Engineering
ECOM 5353 Design Patterns 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5354 Selected Topics in Database
Systems
3 0 1 3 ECOM 4313 Database Systems
ECOM 5355 Real Time Systems 3 0 1 3 ECOM 4312 Operating Systems
ECOM 5357 Information Theory and Coding 3 0 1 3 EELE 3340 Probability Theory and Statistics
ECOM 5358 Computer System Performance
Evaluation
3 0 1 3 ECOM 4312 Operating Systems
ECOM 5359 Computer Graphics 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5360 Compiler Design 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5361 Computational Theory 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5362 Information Resources Management 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5363 Numerical Simulation 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5365 Linear Programming 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5367 Human Computer Interaction 3 0 1 3 ECOM 3312 Data Structures and Algorithms
ECOM 5368 Engineering Management 3 0 1 3 Completion of 110 credit hours
EELE 3370 Engineering Communications I 3 0 1 3 EELE 3310
EELE 3340
Signals and Linear Systems
Probability Theory and Statistics
EELE 5310 Digital Image Processing 3 0 1 3 EELE 4310 Digital Signal Processing
EELE 5311 Digital Speech Processing 3 0 1 3 EELE 4310 Digital Signal Processing
EELE 5366 Robotics 3 0 1 3 ECOM 3322
EELE 3360
Embedded Systems
Feedback Control Systems
EELE 5365 Mechatronic Design 3 0 1 3 ECOM 3322
EELE 3360
Embedded Systems
Feedback Control Systems
EELE 5371 Wireless Communications 3 0 1 3 ECOM 4314 Data Communications
EELE 5373 Optical Communications 3 0 1 3 ECOM 4314 Data Communications
ECIV 3306 Numerical Analysis 3 0 1 3 ECOM 3312 Data Structures and Algorithms
EIND 5345 Engineering Economics 3 0 1 3 ECON 4203 Principles of Economy & Islamic
Economy
Version 13.5
7
ثرنبمج هنذلسخ انحبلسىة لسمامةخانجبمعخ اإل
U متطهت جبمعخ F متطهت كهةخ P متطهت تخصص
نثبنيانفصم ا –األونًانسنخ انفصم األول – األونًانسنخ
رقم انمسبق السم انمسبق نىع رقم انمسبق السم انمسبق نىع
U لغح ػزتيح وحى وصزف ARAB 1301 U لغح اوجليشيح ENGL 1301
U ( جشء تثارك2قزآن كزيم ) HADTB 1100 U ( جشء ػم1قزآن كزيم ) HADTA 1100
F كيمياء هىذسيح CHEM 1203 U دراساخ في الفقه SHAR 1303
F قىيح ورشت ENGG 1105 F مقذمح في الهىذسح ENGG 1101
F مقذمح في الحاسثاخ ENGG 1203 F رسم هىذسي ENGG 1204
F لغح اوجليشيح تقىيح ENGG 1305 F )تفاضل وتكامل )أ MATHA 1401
F )ب( تفاضل وتكامل MATHB 1401 F )فيشياء ػامح )أ PHYSA 1301
F )ب( فيشياء ػامح PHYSB 1301 F ف)يشياء ػامح ػمليح )أ PHYSA 1102
F )فيشياء ػامح ػمليح )ب PHYSB 1102
20 18
انفصم انثبني –انسنخ انثبنةخ انفصم األول –انسنخ انثبنةخ
رقم انمسبق السم انمسبق نىع رقم انمسبق السم انمسبق نىع
U ( جشء الذارياخ4قزآن كزيم ) HADTD 2100 U ( جشء قذ3قزآن كزيم ) سمغ HADTC 2100
U دراساخ في الؼقيذج HADT 2303 U دراساخ في السيزج HADT 1302
P ( 2تزمجح حاسىب) ECOM 2324 P رياضياخ متقطؼح ECOM 2311
P ( 2مؼمل تزمجح حاسىب) ECOM 2124 P تصميم مىطقي رقمي ECOM 2312
P تىظيم حاسىب ولغح تجميغ ECOM 2325 P مؼمل تصميم مىطقي رقمي ECOM 2112
P مؼمل تىظيم حاسىب ولغح تجميغ ECOM 2125 P ( 1تزمجح حاسىب) ECOM 2314
P ( 1الكتزووياخ) EELE 2321 P ( 1مؼمل تزمجح حاسىب) ECOM 2114
P ( 1مؼمل الكتزووياخ) EELE 2121 P دوائز كهزتائيح EELE 2312
P مؼادالخ تفاضليح وجثز خطي MATH 2401 P يحمؼمل دوائز كهزتائ EELE 2112
20 19
انفصم انثبني –انسنخ انثبنثخ انفصم األول –انسنخ انثبنثخ
رقم انمسبق السم انمسبق نىع رقم انمسبق السم انمسبق نىع
U وظم إسالميح SHAR 2207 U ( جشء األحقاف5قزآن كزيم ) HADTE 3100
U لغح ػزتيح فه كتاتح وتؼثيز ARAB 3202 U وػلىمه دراساخ في القزآن HADT 2201
P وظم مغمىسح ECOM 3322 P ػمارج حاسثاخ ECOM 3311
P هىذسح تزمجياخ ECOM 3324 P تزاكية تياواخ وخىارسمياخ ECOM 3312
P إلكتزووياخ رقميح EELE 3321 P إشاراخ ووظم خطيح EELE 3310
P مؼمل إلكتزووياخ رقميح EELE 3121 P مؼمل إشاراخ ووظم خطيح EELE 3110
P وظم تحكم تغذيح راجؼح EELE 3360 P وظزيح احتماالخ وإحصاء EELE 3340
P مؼمل وظم تحكم تغذيح راجؼح EELE 3160
18 16
انفصم انثبني –انسنخ انراثعخ انفصم األول –انسنخ انراثعخ
رقم انمسبق السم انمسبق نىع رقم انمسبق السم انمسبق نىع
U شزيؼح والقاوىنحقىق اإلوسان في ال SHAR 2208 U دراساخ فلسطيىيح POLS 3220
U اقتصاد واقتصاد إسالمي ئمثاد ECON 4203 P مؼمل وظم مغمىسح ECOM 4112
P وذوج ECOM 4123 P اتصاالخ تياواخ ECOM 4314
P طزق تحث ولغح إوجليشيح تقىيح متقذمح ECOM 4322 P تصميم وظم رقميح ECOM 4311
P ىبشثكاخ حاس ECOM 4321 P مؼمل تصميم وظم رقميح ECOM 4111
P مؼمل شثكاخ حاسىب ECOM 4121 P وظم تشغيل ECOM 4312
P مؼالجح إشاراخ رقميح EELE 4310 P قىاػذ تياواخ ECOM 4313
P مؼمل مؼالجح إشاراخ رقميح EELE 4110 P مؼمل قىاػذ تياواخ ECOM 4113
P اختياري X3XX
19 17
لسبعخ معتمذح قجم انتسجةم نهتذريت انصةفً( 031) يجت عهً انطبنت إنهبء يتذريت صةف انفصم انثبني –انسنخ انخبمسخ انفصم األول –انسنخ انخبمسخ
رقم انمسبق السم انمسبق نىع رقم انمسبق السم انمسبق نىع
U دراساخ في الحذيث ECON 4204 U حاضز الؼالم اإلسالمي HADT 3306
P ( 2مشزوع تخزج) ECOM 5321 U إسؼافاخ أوليح NURS 4000
P اختياري X3XX P ( 1مشزوع تخزج) ECOM 5311
P اختياري X3XX P اختياري X3XX
P اختياري X3XX
11 12
متطهت إختةبري متطهت تخصص متطهت كهةخ متطهت جبمعخ
لسبعخ معتمذح 05 لسبعخ معتمذح 10 لسبعخ معتمذح 73 لسبعخ معتمذح 33
لسبعخ معتمذح 031 اإلجمبنً
انشئىن األكبديمةخ عمةذ انكهةخ رئةس انقسم
Version 13.5
8
Islamic University of Gaza Computer Engineering Program
U University requirement F Faculty requirement P Program requirement
First Year, First Semester First Year, Second Semester
Code Course Name Type Code Course Name Type
ENGL 1301 English Language U ARAB 1301 Arabic Language (Grammar) U
HADTA 1100 Holly Quran (Part 30) U HADTB 1100 Holly Quran (Part 29) U
SHAR 1303 Studies in Figh U CHEM 1203 Engineering Chemistry F
ENGG 1101 Introduction to Engineering F ENGG 1105 Workshop Technology F
ENGG 1204 Engineering Drawing F ENGG 1203 Introduction to Computers F
MATHA 1401 Calculus (A) F ENGG 1305 Technical English Writing F
PHYSA 1301 General Physics (A) F MATHB 1401 Calculus (B) F
PHYSA 1102 Physics Lab (A) F PHYSB 1301 General Physics (B) F
PHYSB 1102 Physics Lab (B) F
18 20
Second Year, First Semester Second Year, Second Semester
Code Course Name Type Code Course Name Type
HADTC 2100 Holly Quran (Part 28) U HADTD 2100 Holly Quran (Part 27) U
HADT 1302 Biography of Prophet Mohammed U HADT 2303 Studies in Faith U
ECOM 2311 Discrete Mathematics P ECOM 2324 Computer Programming II P
ECOM 2312 Digital Logic Design P ECOM 2124 Computer Programming II Lab P
ECOM 2112 Digital Logic Design Lab P ECOM 2325 Computer Organization and Assembly
Language
P
ECOM 2314 Computer Programming I P ECOM 2125 Computer Organization and Assembly
Language Lab
P
ECOM 2114 Computer Programming I Lab P EELE 2321 Electronics P
EELE 2312 Electric Circuits P EELE 2121 Electronics Lab P
EELE 2112 Electric Circuits Lab P MATH 2401 Differential Equations and Linear Algebra P
19 20
Third Year, First Semester Third Year, Second Semester
Code Course Name Type Code Course Name Type
HADTE 3100 Holly Quran (Part 26) U SHAR 2207 Islamic Institutional Systems U
HADT 2201 Quranic Studies U ARAB 3202 Arabic Writing & Expression Skills U
ECOM 3311 Computer Architecture P ECOM 3322 Embedded Systems P
ECOM 3312 Data Structures and Algorithms P ECOM 3324 Software Engineering P
EELE 3310 Signals and Linear Systems P EELE 3321 Digital Electronics P
EELE 3110 Signals and Linear Systems Lab P EELE 3121 Digital Electronics Lab P
EELE 3340 Probability Theory and Statistics P EELE 3360 Feedback Control Systems P
EELE 3160 Feedback Control Systems Lab P
16 18
Fourth Year, First Semester Fourth Year, Second Semester
Code Course Name Type Code Course Name Type
POLS 3220 Palestinian Studies U SHAR 2208 Human Rights in Shariah and Law U
ECOM 4112 Embedded Systems Lab P ECON 4203 Principles of Economy & Islamic
Economy
U
ECOM 4314 Data Communications P ECOM 4123 Seminar P
ECOM 4311 Digital Systems Design P ECOM 4322 Research Methodologies and Advanced
Technical English Writing
P
ECOM 4111 Digital Systems Design Lab P ECOM 4321 Computer Networks P
ECOM 4312 Operating Systems P ECOM 4121 Computer Networks Lab P
ECOM 4313 Database Systems P EELE 4310 Digital Signal Processing P
ECOM 4113 Database Systems Lab P EELE 4110 Digital Signal Processing Lab P
X3XX Elective P
17 19
Summer Training (Student must complete 131 credits to sign up) Fifth Year, First Semester Fifth Year, Second Semester
Code Course Name Type Code Course Name Type
HADT 3306 Islamic Word Today U ECON 4204 Studies in Hadith U
NURS 4000 First Aids U ECOM 5321 Final Year Project II P
ECOM 5311 Final Year Project I P X3XX Elective P
X3XX Elective P X3XX Elective P
X3XX Elective P
12 11
University Requirements Faculty Requirements Program Requirements Program Electives
37 credit hours 27 credit hours 10 credit hours 05 credit hours
Total 170 credit hours
Head of Department Dean of Faculty Academic Affairs
Version 13.5
9
Course Description of Some Faculty Requirements
ENGG 1203 Introduction to Computers
This course provides an introduction to computers and computing. Topics include the impact of computers
on society, ethical issues, and hardware/software applications, including spreadsheets, databases, word
processors, graphics, the Internet, and operating systems. Upon completion, students should be able to
demonstrate an understanding of the role and function of computers and use the computer to solve problems.
Version 13.5
11
Course Description of Program Core Requirements
ECOM 2311 Discrete Mathematics
Functions, relations, sets, basic logic, proof techniques, basics of counting, graphs, trees, recursion.
ECOM 2312 Digital Logic Design
Binary number system, Digital circuits, Boolean algebra and switching theory, Manipulation and
minimization of Boolean functions, Combinational circuit analysis and design, multiplexers, decoders,
adders, Sequential circuit analysis and design, basic flip-flops, clocking, and edge-triggering, registers,
counters, timing sequences, state assignment and reduction techniques, Register transfer level operations.
ECOM 2112 Digital Logic Design Lab
Hands-on experience in using digital electronics by way of logic gates and integrated circuits, practical
construction, testing, and implementation of combinational and sequential logic circuits.
ECOM 2314 Computer Programming I (For Computer Engineering)
Fundamental concepts of problem solving using a computer, Problem solving through computer
programming, Emphasis on object-oriented computer programming, including data types, control structures,
structured programming, and modular algorithm design, Use of existing libraries, Extending classes and
polymorphism.
ECOM 2114 Computer Programming I Lab (For Computer Engineering)
Lab assignments on topics covered in ECOM 2314 Computer Programming I.
ECOM 2315 Computer Programming (For Electrical Engineering)
Fundamental concepts of problem solving using a computer, Problem solving through computer
programming, Basics of object-oriented computer programming, including data types, control structures,
structured programming, and modular algorithm design, Use of existing libraries, Characters, Strings, File
I/O, Exceptions.
ECOM 2115 Computer Programming Lab (For Electrical Engineering)
Lab assignments on topics covered in ECOM 2315 Computer Programming.
ECOM 2324 Computer Programming II
This course is designed to allow students to experience how a real world computer application ECOMs to
life. This course builds on their previous programming skills and includes more advanced GUI techniques.
In addition to smaller projects, students will work together to complete a large programming project of their
choosing by the end of the semester. After many weeks of coding, they will complete an online help file,
present their work to the class, and create WebPages showcasing their work.
ECOM 2124 Computer Programming II Lab
Lab assignments on topics covered in ECOM 2324 Computer Programming II.
ECOM 2325 Computer Organization and Assembly Language
The purpose of this course is to introduce computing systems below that of a high-level programming
language. The material covered can be broadly separated into the categories of assembly language
programming and computer organization. Under the heading of assembly language programming students
will be introduced to the i386 instruction set, low-level programming, the Linux memory model, as well as
the internal workings of compilers, assemblers and linkers. Topics under computer organization include
basic computer architecture: system bus, memory hierarchy, and input/output devices.
ECOM 2125 Computer Organization and Assembly Language Lab
Lab assignments on topics covered in ECOM 2325 Computer Organization and Assembly Language.
Version 13.5
11
ECOM 3311 Computer Architecture
This course covers organization, structure, and design of computers, starting with a review of the original
Von Neumann machine. Major architectural improvements since 1950 are reviewed, and the contemporary
view of multilevel, virtual machines is introduced. Topics include instruction set designs including RISC,
addressing, interrupt and trap handling, stacks, data paths control, horizontal and vertical
microprogramming, busses, paging, segmentation, and cache. Mapping of twos complement arithmetic onto
register level hardware, including simple control units for Booth’s Algorithm and non-restoring division also
are covered.
ECOM 3312 Data Structures and Algorithms
In this course we will cover both data structures and algorithms. Students are individually responsible for the
specification, design, implementation and practical demonstration of correctness of the abstract data type
sets, functions, sequences, stacks, queues, and strings. Special emphasis will be given to searching and
sorting algorithms. Other algorithms covered will include compression, encryption, hashing, and sorting.
ECOM 3322 Embedded Systems
The Embedded System Design Process, CPUs, Microcontrollers, Instruction Sets, Programming Input and
Output, Co-Processors, Memory System Mechanisms, CPU Performance, CPU Power Consumption, CPU
Bus, Memory Devices, Component Interfacing, Designing with Microprocessors, Development and
Debugging, Manufacturing Testing, Program Design, Models of Programs, Assembly and Linking, Basic
Compilation Techniques, Analysis and Optimization of: Execution Time, Energy, Power, and Program Size,
Program Validation and Testing.
ECOM 3324 Software Engineering
Software engineering is concerned with long-term, large-scale programming projects. Software management,
cost estimates, problem specification and analysis, system design techniques, system testing and
performance evaluation, and system maintenance. Students will design, manage, and implement a medium-
sized project.
ECOM 4311 Digital Systems Design
Hierarchical modular design of digital systems, design modeling with a hardware description language,
functional and timing simulation of digital systems, implementation in programmable logic devices and
field-programmable gate arrays, formal verification, fault models and testing. Designs are developed,
simulated and implemented in field-programmable gate arrays in laboratory sessions.
ECOM 4111 Digital Systems Design Lab
Experiments on topics covered in ECOM 4311 Digital Systems Design.
ECOM 4312 Operating Systems
The goal of the course is to introduce the design and use of modern, process oriented operating systems.
Topics include: Basic concepts of operating systems and system programming. Processes and interprocess
communication/synchronization, Virtual memory, program loading and linking, File and I/O subsystems.
Utility programs, Study of a real operating system.
ECOM 4112 Embedded Systems Lab
Experiments on CPUs, microcontrollers, handshaking, buffering, Memory system design and interfacing,
programmed I/O, interrupt-driven I/O, serial I/O, parallel I/O, DMA, DAC and ADC converters.
ECOM 4315 Embedded Systems (For Electrical Engineers)
Similar to ECOM 3322 Embedded Systems.
ECOM 4115 Embedded Systems Lab (For Electrical Engineers)
Version 13.5
12
Similar to ECOM 4112 Embedded Systems Lab.
ECOM 4313 Database Systems
Data modeling, Relational databases, Database query languages, Relational database design, Transaction
processing, Distributed databases, Physical database design.
ECOM 4113 Database Systems Lab
Lab assignments on topics covered in ECOM 4313 Database Systems.
ECOM 4314 Data Communications
Analog and digital data transmission, transmission media, Modulation Techniques, Data encoding,
asynchronous and synchronous transmissions, USART, RS232-C, RS-449 standards, Data link configuration
and control, error control, multiplexing and de-multiplexing.
ECOM 4321 Computer Networks
ISO/OSI layer modules of computer networks, review of first two layers, Discussion of network, transport,
session, presentation and application layers, Study of LANs and standards, internetworking, routers and
bridges.
ECOM 4121 Computer Networks Lab
Lab assignments on topics covered in ECOM 4321 Computer Networks.
ECOM 4123 Seminar
The purpose of this course is to help improve students' ability for presenting their technical work. It also
teaches students about the nature of engineering as a profession, codes of professional conduct, ethics &
responsibility, and the role of engineering societies. Case studies of conflict between engineering
professional ethical values and external demands. The course features students participation in discussions
held by faculty members and invited guests.
ECOM 4322 Research Methodologies and Advanced Technical English Writing
Preliminary Design: framework for design, review of the literature, writing strategies and ethical
considerations. Designing Research: purpose statement, research questions and hypotheses, use of theory,
definitions, limitations, significance, quantitative methods, qualitative procedures, mixed methods
procedures. Proposals, Progress Report, Technical Reports, Resume Writing, Lab Reports, Memos, Letters,
Interviews, Presentations.
ECOM 5000 Summer Training
The aim of the summer training is to provide students with direct on-the-job experience working with
professionals in the field. This training provides an opportunity to expose students to the reality of
professional practice. Students are required to complete 60 site working hours and submit a report on their
summer training experience and the knowledge gained.
ECOM 5311 Final Year Project I
This course is designed to give students the experience of tackling a realistic engineering problem. The
intent is to show how to put theoretical knowledge gained into practical use by starting from a word
description of a problem and proceeding through various design phases to end up with a practical
engineering solution. Various projects are offered by ECOM faculty in their respective specialization areas.
The project advisor guides the student in conducting feasibility study, preparation of specifications, and the
methodology for the design. Detailed design and implementation of the project are carried out followed by
testing, debugging, and documentation. A draft report is submitted at the end of the semester.
ECOM 5321 Final Year Project II
Version 13.5
13
Continuation of Final Year Project I, An oral presentation and a final report are given at the end of the
semester.
EELE 2312 Electric Circuits (For Computer Engineering and Industrial Engineering)
Circuit variables, basic circuit elements, basic circuit law, Ohm’s law, Kirchhoff’’s laws, resistive circuits,
network theorems, node-voltage, mesh-current, Thevenin and Norton equivalents, inductance, capacitance,
sinusoidal steady-state analysis, three-phase circuits, applications of Laplace transform to circuit analysis.
EELE 2112 Electric Circuits Lab
Hands-on experience consisting of experiments based on topics covered in EELE 2312 Electric Circuits.
EELE 2321 Electronics (For Computer Engineering and Industrial Engineering)
Introduction to Boolean algebra, logic switches and their applications, characteristics of PN junction, the
diode, diode applications, half-wave & full-wave rectifiers, zener diode and its applications., bipolar
junction transistor, construction, basic operation, characteristics and parameters, transistor as amplifier.
Transistor bias circuits, DC operating point, base bias, emitter bias, voltage-divider bias, collector-feedback
bias, field-effect transistor and Biasing, junction field-effect transistor (JFET), JFET characteristics,
parameters, and biasing, power amplifier (class A, B, and C) and their applications, silicon-controlled
rectifiers (SCR) and applications, Diac and triac. Introduction to operational amplifiers
EELE 2121 Electronics Lab
Hands-on experience consisting of experiments based on topics covered in EELE 2321 Electronics.
EELE 3321 Digital Electronics
See Electrical Engineering Program.
EELE 3121 Digital Electronics Lab
See Electrical Engineering Program.
EELE 3310 Signals and Linear Systems
See Electrical Engineering Program.
EELE 3110 Signals and Linear Systems Lab
See Electrical Engineering Program.
EELE 3340 Probability Theory and Statistics
See Electrical Engineering Program.
EELE 3360 Feedback Control Systems
See Electrical Engineering Program.
EELE 3160 Feedback Control Systems Lab
See Electrical Engineering Program.
EELE 4310 Digital Signal Processing
See Electrical Engineering Program.
EELE 4110 Digital Signal Processing Lab
See Electrical Engineering Program.
MATH 2401 Differential Equations and Linear Algebra
See Mathematics Program.
Version 13.5
14
Program Elective Courses
ECOM 5330 Selected Topics in Computer Architecture
Topics not covered in Computer Architecture.
ECOM 5331 Parallel Computing
Parallel Computing is a study of the hardware and software issues in parallel computing. Topics include an
introduction to the basic concepts, parallel architectures and network topologies, parallel algorithms, parallel
metrics, parallel languages, granularity, applications, parallel programming design and debugging. Students
will become familiar with various types of parallel architectures and programming environments.
ECOM 5332 Distributed Systems
The aim of the course is to give the student an overview of concepts and design of distributed systems and to
introduce the student to the upcoming distributed object-oriented middleware platforms. General knowledge
of underlying communication paradigms and protocols is assumed. Topics include Models of Distributed
Computation, Time, Resource Allocation, Global Property Evaluation, Ordering of Messages, Global
Computation, Consensus, Fault-tolerance.
ECOM 5333 Selected Topics in Embedded Systems
Embedded microcontrollers, Embedded programs, Real-time operating systems, Low-power computing,
Reliable system design, Design methodologies, Tool support, Embedded multiprocessors, Networked
embedded systems, Interfacing and mixed-signal systems.
ECOM 5334 Personal Computers
Overview of system features and components, Microprocessor types and specifications, Motherboards, bus
slots and I/O cards, memory, power supply, input devices, video display hardware, and audio hardware.
Floppy disk, hard disk, and CD-ROM drives and controllers, Network cards, Preventive maintenance,
backups, and warranties, Software and hardware diagnostic tools, Software and hardware troubleshooting.
Applications.
ECOM 5335 VLSI Design
MOS transistor operation and limitations, MOS digital logic circuits (NMOS and CMOS), static, dynamic
and sequential MOS logic, IC fabrication and processing, Layout and mask generation, IC design and
verification tools, Applications and case studies.
ECOM 5336 Selected Topics in Digital Design
Topics not covered in Digital Logic Design and Digital Systems Design.
ECOM 5337 Testing of Digital Circuits
Introduction to the testing problem, fault modeling, e.g., stuck-at, bridging, transistor-open and transistor-
short faults, Fault simulation, gate-level testing, automatic test pattern generation (ATPG) algorithms,
Testing of regular structures, Testing of sequential circuits. Signature analysis, Design-for-testability (DFT).
ECOM 5339 Artificial Intelligence
Symbolic representation structures and manipulation, unification, production systems and structures, rule-
based and expert systems, planning and AI system architectures; AI system design
ECOM 5340 Pattern Recognition
Bayesian decision theory, supervised and unsupervised learning, nonparametric techniques, discriminant
analysis, clustering, preprosessing of pictorial data, spatial filtering, shape description techniques,
perspective transformations, projective invariants, linguistic procedures, and artificial intelligence techniques
for scene analysis
Version 13.5
15
ECOM 5341 Mobile Computing
Introduction to mobile computing, Designing computer networks to support user mobility, Models for indoor
and outdoor mobile networks, System issues such as performance, quality of service, reliability, and security
in mobile computing environment, Hardware, and access protocols, for mobile networks, Adapting existing
protocols to support mobility.
ECOM 5342 Fault-Tolerant Computing
Goals and applications of fault-tolerant computing, Conventions in fault-tolerant computing, Fault modeling,
redundancy techniques and reliability evaluation, error detecting and correcting codes, self-checking circuits,
fault diagnosis, software fault tolerance, Design techniques using hardware, information, time and software
redundancy, Evaluation of systems using quantitative and qualitative methods, Design of fault-tolerant
systems, Testing and test pattern generation. Design for testability and testability analysis.
ECOM 5343 Design and Analysis of Algorithms
This course addresses the design and mathematical analysis of fundamental algorithms in computer science.
Algorithms studied may involve search, sorting, data compression, string manipulation, graph traversal and
decomposition, and algebraic and numeric manipulation, Methods of designing algorithms including divide-
and-conquer, the greedy method, dynamic programming, backtracking, and NP-completeness and
approximation algorithms, Emphasis on efficiency issues.
ECOM 5344 Selected Topics in Operating Systems
Topics not covered in ECOM 4312 Operating Systems
ECOM 5345 Windows Programming
An introduction to the fundamental concepts of Windows programming which will enable students to
develop Windows applications using a graphical user interface. Includes a detailed study of the Windows
Application Programming Interface. Windows programming using the WIN32 API for writing applications
that use multitasking, threads, synchronization, and structured exception handling. Covers implementation of
Dynamic Link Libraries (DLLs), Graphic Device Interface (GDI) optimization, and creation of Help files.
Presents techniques to add Object Linking and Embedding (OLE) functionality to Windows applications.
ECOM 5346 Selected Topics in Computer Networks
Topics not covered in Computer Networks
ECOM 5347 Security in Computer Systems
Techniques for achieving security in multi-user computer systems and distributed computer systems, Topics:
physical security; discretionary and mandatory access control; biometrics; information-flow models of
security; covert channels; elementary cryptography; public-key cryptography; logic of authentication;
electronic cash; viruses; firewalls; electronic voting; risk assessment; secure web browsers.
ECOM 5348 Internet Technology
This course will introduce students to the Internet and Electronic Commerce. Topics include the World Wide
Web, electronic mail, telnet, ftp, discussion lists, newsgroups, information searching and retrieval
techniques, and basic web page and programming methodologies (HTML and CGI). Social, economic,
ethical, and political topics will be discussed. Topics include Foundations of the Web, Java Servlets, Java
Server Pages, Databases and JDBC, XML and Web Services.
ECOM 5349 Advanced Internet Technology
The course provides a detailed overview and demonstration of the more complex and advanced components
and concepts of the global Internet as it evolves into the primary information network architecture of the 21st
century. The course is designed as an advanced level course students who wish to better understand how the
advanced technology within modern Internet systems can be used to support and/or replace many existing
network systems and services. The course assumes a basic knowledge of and experience with the Internet
core protocols and their effective operation. The following draft schedule is offered as a guide to course
Version 13.5
16
contents and sequence: Internet Evolution, Internet Protocols, Internet Routing, Advanced Routing, Resource
Reservation, IPv6 Technology, Multicast Technology, Management Technology, Multimedia Technology,
VoIP Technology, Security Technology, VPN Technology, Datalink Technology, DMO Network
Architecture, Internet Futures
ECOM 5350 Information Storage and Retrieval
Inverted Files, Signature Files, PAT Trees and PAT Arrays, File Organization for Optical Disks, Lexical
Analysis and Stoplists, Stemming Algorithms, Thesaurus Construction, String Searching Algorithms,
Relevance Feedback and Other Query Modification Techniques, Boolean Operations, Hashing Algorithms,
Ranking Algorithms, Extended Boolean Models, Clustering Algorithms, Hardware for Information
Retrieval.
ECOM 5351 Multimedia Systems
Fundamental characteristics of multimedia operating and distributed communication systems are presented,
especially scheduling algorithms and other OS supporting approaches for multimedia applications with soft-
real-time deadlines, multimedia file systems and servers with their decision algorithms for data placement,
scheduling and buffer management, multimedia communication, transport, and streaming protocols, services
with their error control, congestion control and other Quality of Service aware and adaptive algorithms,
synchronization services with their skew control methods, and group communication with their group
coordinating algorithms and other distributed services.
ECOM 5352 Selected Topics in Software Engineering
Topics not covered in Software Engineering
ECOM 5353 Design Patterns
Design Patterns is a detailed explanation of how to apply design patterns and develop software architectures.
It provides in-depth examples, and guides students by detailing when, why, and how to use specific patterns.
Design patterns include GoF patterns. Categories include: Basic, Creational, Collectional, Structural,
Behavioral, and Concurrency.
ECOM 5354 Selected Topics in Database Systems
Topics not covered in Database Systems.
ECOM 5355 Real Time Systems
Fundamentals of real time systems design; scheduling, interrupts, process communication and
synchronization, Design of real time systems, Decomposition of real time systems, Applications of real time
systems, Instrumentation for real time applications, Real time operating systems, Case studies.
ECOM 5357 Information Theory and Coding
Unified theory of information with applications to computing, communications, thermodynamics, and other
sciences, Digital signals and streams, codes, compression, noise, and probability, Reversible and irreversible
operations, Information in biological systems. Channel capacity, Maximum-entropy formalism,
Thermodynamic equilibrium, temperature, The Second Law of Thermodynamics, Quantum computation.
ECOM 5358 Computer System Performance Evaluation
Introduction to computer system performance analysis and evaluation, Review of basic probability
distributions and basic concepts of statistics, Performance measures and measurement techniques,
Performance analysis, performance prediction, asymptotic bounds on performance, Simulation and modeling
of computer systems, Experimental and analytical approaches, Introduction to queuing network modeling,
Case studies.
ECOM 5359 Computer Graphics
Computer Graphics is a study of the hardware and software principles of interactive raster graphics. Topics
include an introduction to the basic concepts, 2-D and 3-D modeling and transformations, viewing
Version 13.5
17
transformations, projections, rendering techniques, graphical software packages and graphics systems.
Students will use a standard computer graphics API to reinforce concepts and study fundamental computer
graphics algorithms. Emphasis is on learning the software and on applying basic design skills to the
computer generated image. Students are instructed in the fundamentals of drawing on the computer, and
working with type through a series of realistic graphic design projects. Students are expected to have some
computer experience and be familiar with basic functions of the computer before beginning the class.
ECOM 5360 Compiler Design
Focuses on the "front-end" of compiler design—lexical analysis, parsing, and syntax—topics basic to any
introduction to compiler design, Covers storage management and error handling and recovery, Introduces
important "back-end" programming concepts, including code generation and optimization.
ECOM 5361 Computational Theory
Introduces basic mathematical models of computation and the finite representation of infinite objects, Finite
automata and regular languages, Context-free languages, Turing machines, Partial recursive functions,
Church's Thesis, Undecidability, Reducibility and completeness, Time complexity and NP-completeness,
Probabilistic computation, Interactive proof systems.
ECOM 5362 Information Resources Management
Managing an organization's information resource requirements and opportunities. Surveying organizational
information needs; developing an organizational information strategy; project planning and control; staffing
for success, writing and reviewing requests for proposals and bids; analysis of make vs. buy decisions;
writing and reviewing contracts; management presentations.
ECOM 5363 Numerical Simulation
Introduction to computational techniques for the simulation of a large variety of engineering and engineered
systems, mathematical formulations; network problems; sparse direct and iterative matrix solution
techniques; Newton methods for nonlinear problems; discretization methods for ordinary and partial
differential equations; methods for the solution of integral equations; model-order reduction; and Monte
Carlo techniques.
ECOM 5365 Linear Programming
Introduction to linear optimization and its extensions emphasizing both methodology and the underlying
mathematical structures and geometrical ideas, Covers classical theory of linear programming as well as
some recent advances in the field, Topics: simplex method; duality theory; sensitivity analysis; network flow
problems; decomposition; integer programming; interior point algorithms for linear programming; and
introduction to combinatorial optimization and NP-completeness.
ECOM 5367 Human Computer Interaction
Human-computer interaction is a discipline concerned with the design, evaluation and implementation of
interactive computing systems for human use and with the study of major phenomena surrounding them.
This course will provide a broad overview of the field with an emphasis on interface development and
evaluation. Topics covered include: An overview of the field of human-computer interaction. Introduction to
psychology, Introduction to linguistics and dialogue processes, Computer supported cooperative work.
Models for system design, Dialogue design, Hypertext and hypermedia systems, Meta-information and help
systems, Evaluation techniques.
ECOM 5368 Engineering Management
The course is an introduction to an engineering management, there are many aspects of engineering
management which need to be studied and learned. Management covers a wide range of disciplines and
skills and this course presents an insight into all the functions within an organization which the Engineering
Manager is likely to come into contact with. The course relates theory to practice by presenting a large
number of case studies throughout the course. The course will be customized for computer and electrical
engineering students only.
Version 13.5
18
EELE 3370 Engineering Communications I
See Electrical Engineering Program.
EELE 5310 Digital Image Processing
See Electrical Engineering Program.
EELE 5311 Digital Speech Processing
See Electrical Engineering Program.
EELE 5366 Robotics
See Electrical Engineering Program.
EELE 5365 Mechatronic Design
See Electrical Engineering Program.
EELE 5371 Wireless Communications
See Electrical Engineering Program.
EELE 5373 Optical Communications
See Electrical Engineering Program.
ECIV 3306 Numerical Analysis
See Civil Engineering Program.
EIND 5345 Engineering Economics
See Industrial Engineering Program.