Course Code and Number |
CPE 150 (CPE 150 + CPE 150L) |
Course Name |
Introduction to Programming |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
None |
Status |
Required |
Course Coordinator |
Tasneem Dawahdeh |
Course Description |
This course introduces C++ programming language to students. Main topics include variables, control structures, functions, arrays, pointers and strings, and brief introduction to classes and IO files. In this course students are practically trained on programming in the lab. |
Course Code and Number |
CPE 230 |
Course Name |
Digital Logic Design |
Credit Hours |
3 |
Pre-requisites |
EPE 220 |
Status |
Required |
Course Coordinator |
Sami F. Al-Hamdan |
Course Description |
This course introduces students to the fundamentals of digital logic design and analysis. This includes: Number Systems, Boolean Algebra, Logic Gates, combinational logic circuits analysis & design (gate-level and block-level) such as adders/subtractors, comparators, multiplexers, decoders, and encoders. It also covers analysis, design, and applications of sequential logic circuits (flip-flops, registers, and counters). |
Course Code and Number |
CPE 231 |
Course Name |
Digital Logic Design Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 230 |
Status |
Required |
Course Coordinator |
Sami F. Al-Hamdan |
Course Description |
Hands-on experience on topics that are theoretically covered in the digital logic design course, basic logic gate experiments, combinational logic circuits experiments, and sequential logic circuits experiments. The experiments on all topics vary from functional troubleshooting to gate and block level design implementation. |
Course Code and Number |
CPE 310 |
Course Name |
Numerical Analysis for Engineers |
Credit Hours |
3 |
Pre-requisites |
CPE 150 + MATH 205 |
Status |
Required |
Course Coordinator |
Amin T. Alqudah |
Course Description |
Numerical analysis is a way to do higher mathematics problems on a computer, a technique widely used by scientists and engineers to solve their problems. Numerical analysis involves the Study of methods for computing numerical data and solving mathematical and engineering problems like: Solving nonlinear equations, Sets of equations, Interpolation and curve fitting, Numerical differentiation and integration and Finite difference techniques and Numerical solution of ordinary differential equations. |
Course Code and Number |
CPE 320 |
Course Name |
Computer Organization |
Credit Hours |
3 |
Pre-requisites |
CPE 230 |
Status |
Required |
Course Coordinator |
Dr. Mahmoud Masadeh |
Course Description |
Introduces computer organization and design with coverage of digital logic, machine level data and instruction representation, ALU design, and organization of the processor Datapath and control. Examines performance analysis, memory system hierarchy, pipelining, and communication. |
Course Code and Number |
CPE 344 |
Course Name |
Microprocessor and Microcontroller Systems Design |
Credit Hours |
3 |
Pre-requisites |
CPE 230 |
Status |
Required |
Course Coordinator |
Maher M. Al-Omari |
Course Description |
This course explores the inner workings of microprocessors and microcontrollers from the programmer perspective and bases, all the exercises and examples are on the PIC 16F877 microcontroller. There are four main sections: (a) the basic system hardware, (b) instruction set, addressing and assembly language programming, and (c) interfacing and interface devices. (d) Programming the PIC using CCS library functions. |
Course Code and Number |
CPE 345 |
Course Name |
Microprocessor and Microcontroller Systems Design Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 344 |
Status |
Required |
Course Coordinator |
Maher M. Al-Omari |
Course Description |
This course aims at giving students the hands-on experience on topics that are theoretically covered in the CPE 344 course. This course covers the following topics: utilization of the MPLAB IDE and a real microcontroller (PIC16F877A), to create, compile, simulate, debug projects, draw circuit diagrams using ISIS, do interactive simulation using Proteus VMS, download programs and run wired circuits using the NX-877 experiment board. |
Course Code and Number |
CPE 354 (CPE 354 + CPE 354L) |
Course Name |
Data Structures and Algorithms |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
CPE 150 |
Status |
Required |
Course Coordinator |
Mohammad A. Alzubaidi |
Course Description |
The goal of this course is to provide students with the understanding of the fundamental data structures and algorithms. Topics discussed in this class includes lists, stacks, queues, trees, recursion, graphs, sorting, searching, and hashing. Students are required to apply the concepts learned in class in projects for which they need to develop programs and write codes for different data structures and algorithms. |
Course Code and Number |
CPE 360 (CPE 354 + CPE 354L) |
Course Name |
Advanced Programming (1) |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
CPE 150 |
Status |
Required |
Course Coordinator |
Mohammad A. Al-Jarrah |
Course Description |
Emphasizing the concepts of object-oriented programming and empower students with the necessary skills to build modern GUI applications that are related to realistic problems using a modern language of choice, like Java or C# for example. The course will be divided into two main parts, language syntax and structure, and application development and problem solving. |
Course Code and Number |
CPE 440 |
Course Name |
Computer Architecture |
Credit Hours |
3 |
Pre-requisites |
CPE 320 |
Status |
Required |
Course Coordinator |
Haithem Al-Mefleh |
Course Description |
In this course students are introduced to computer architecture concepts. Topics include: Performance of Computer Architectures, Technology Trends, Instruction Set Architectures, Instruction-Level Parallelism, Memory Organization, Caches, Storage, Communication Architectures, Intro to Multiprocessing, Vector, and Graphics Computing. |
Course Code and Number |
CPE 441 |
Course Name |
Computer Organization Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 440 |
Status |
Required |
Course Coordinator |
Atif A. Nsour |
Course Description |
This course introduces the use of CAD tools to design and simulate the main parts of a computer: the ALU, Registers, Control Unit, Memory, System Bus, and I/O Devices, Integration and Simulation of Computer Design. |
Course Code and Number |
CPE 450 (CPE 450 + CPE 450L) |
Course Name |
Database Systems Design |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
CPE 360 |
Status |
Required |
Course Coordinator |
Safaa Bataineh |
Course Description |
This course provides an introduction to database systems. The following topics are covered: DBMS architecture and advantages, data modeling using the Relational model and Entity-Relationship Model, a complete overview of the Structured Query Language (SQL) that covers both the Data Definition and Data Manipulation parts in SQL, Relational Algebra and Relational Calculus, Query processing and optimization, and Functional dependencies and Normalization. The lab covers the practical aspect of the course, where the students will practice SQL and learn to implement client-side application programs and interface them with the DBMS. |
Course Code and Number |
CPE 452 |
Course Name |
Software Engineering |
Credit Hours |
3 |
Pre-requisites |
CPE 150 |
Status |
Required |
Course Coordinator |
Yazan Al-Issa |
Course Description |
Software engineering is an engineering discipline concerned with theories, models, and tools for professional software development. The fundamentals of software engineering and the software development life cycle (SDLC) are introduced. Topics covered include: Software processes, agile software development, requirement engineering, system modeling, architectural design, design and implementation, software testing, software evolution, and sociotechnical systems. |
Course Code and Number |
CPE 453 |
Course Name |
Software Engineering Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 452 |
Status |
Required |
Course Coordinator |
Yazan Al-Issa |
Course Description |
In this lab, students will practice the software development life cycle (project planning, scheduling, requirements and specifications, systems modeling and design, coding, software testing and validation) using different tools within a professional development environment. |
Course Code and Number |
CPE 460 (CPE 460 + CPE 460L) |
Course Name |
Operating Systems Design |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
CPE 354 |
Status |
Required |
Course Coordinator |
Abedalmuhdi Almomany |
Course Description |
Operating systems are essential to most modern computer systems, from very small computing devices such as mobile phones and tablets to larger computers such as laptops, desktop computers, workstations, clusters, and supercomputers. An operating system has two fundamental tasks: to manage a computer resources (i.e., CPU cycles, memory, disk, network interface, etc.) and to provide applications with an abstract interface to these resources so that they are (relatively) easy to use. In this course you will learn the fundamental principles of operating system design and implementation. You will learn how the principles are used in practice by writing system software and complete components of an operating system, including the system call interface, user processes, virtual memory, and a file system. |
Course Code and Number |
CPE 466 (CPE 466 + CPE 466L) |
Course Name |
Operating Systems Programming |
Credit Hours |
4 (3 Theory + 1 Lab) |
Pre-requisites |
CPE 460 + CPE 360 |
Status |
Required |
Course Coordinator |
Abedalmuhdi Almomany |
Course Description |
Administration and programming of operating systems. File system, software management (installation and un-installation), device management, permissions and security, and network administration. Exploration of parallel machine models, performance evaluation, process and thread creation, mutual exclusion, synchronization, and message passing communication mechanisms. Students gain insight into these concepts through hands-on programming exercises written in C/C++ that employ the MPI and OpenMP. |
Course Code and Number |
CPE 498 |
Course Name |
Graduation Project 1 |
Credit Hours |
1 |
Pre-requisites |
Passing 120 CR + ELE 205 |
Status |
Required |
Course Coordinator |
Chairman |
Course Description |
Theoretical investigation and practical implementation of special projects under the supervision of an academic member of the faculty. |
Course Code and Number |
CPE 500 |
Course Name |
Field Training |
Credit Hours |
6 |
Pre-requisites |
Passing 120 CR |
Status |
Required |
Course Coordinator |
Chairman |
Course Description |
Four months training period provides students with a practical experience about their field. Students are introduced to and gain practical experience in several state-of-the-art techniques/methodologies. Internships may take place in the industrial, commercial institutes, or in the university incubators. |
Course Code and Number |
CPE 542 |
Course Name |
Principles of Embedded Systems |
Credit Hours |
3 |
Pre-requisites |
CPE 344 |
Status |
Required |
Course Coordinator |
Amin Jarrah |
Course Description |
This course introduces the basic principles of embedded systems to students. Main topics include: Fundamentals of embedded system hardware and firmware, Embedded processor selection, hardware/firmware partitioning, circuit design, popular microcontroller for embedded systems, architecture and instruction set of the microcontroller, hardware-software co-design techniques and verification techniques, embedded programming environments, real-time embedded systems, real-time scheduling. |
Course Code and Number |
CPE 543 |
Course Name |
Principles of Embedded Systems Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 542 |
Status |
Required |
Course Coordinator |
Amin Jarrah |
Course Description |
Introduction to Embedded Systems Design Tools and Hardware Programming, Experiments using both Simulation and Practical Implementation of Standard Single Purpose Processors of a Micro-controller Including Timers, Counters, PWM Generation, I/O Interfacing, A/D Conversion, and Serial and Parallel Communications, Experiments to Explore the System Design Process using Hardware-Software Co-design Process. |
Course Code and Number |
CPE 560 |
Course Name |
Distributed Operating Systems |
Credit Hours |
3 |
Pre-requisites |
CPE 460 |
Status |
Elective |
Course Coordinator |
Amin Jarrah |
Course Description |
This course provides an in-depth examination of the principles of distributed systems in general and distributed operating systems in particular. Covered topics include processes and threads, multiple tier business systems, distributed inter-process communication, distributed shared memory, synchronization, consistency, replication, naming, distributed file systems, distributed middleware and applications such as the web and peer-to-peer systems. Some coverage of RAID, Hadoop, Cloud computing and fault tolerance principles will also be included. |
Course Code and Number |
CPE 562 |
Course Name |
Computer Networks |
Credit Hours |
3 |
Pre-requisites |
CME 462 |
Status |
Required |
Course Coordinator |
Manal H. Al-Bzoor |
Course Description |
This course addresses the architectures and designs of computer networks. It covers the following topics: protocols and interfaces, the OSI reference model and Internet architecture, LAN and WAN technologies, networking and internetworking techniques, packet switching, end-to-end protocols, congestion control, network security, and an in-depth coverage of TCP/IP. |
Course Code and Number |
CPE 563 |
Course Name |
Computer Networks Lab |
Credit Hours |
1 |
Pre-requisites |
CPE 562 |
Status |
Required |
Course Coordinator |
Manal H. Al-Bzoor |
Course Description |
Hands-on experience on computer network protocols through utilizing computer network simulators. Students will be exposed to TCP/IP network module, different networks topology, simulate important protocols, simulate physical layer signaling. Student also will have the ability to develop or modify existing protocols. Student will administer and configure network lab that includes multiple routers switches, and workstations. |
Course Code and Number |
CPE 564 |
Course Name |
Computer Networks Protocols |
Credit Hours |
3 |
Pre-requisites |
CPE 562 |
Status |
Elective |
Course Coordinator |
Hussein Al-Zoubi |
Course Description |
This course provides a structured approach to the design, analysis, and implementation of computer networks and protocols. The topics covered include protocol design issues, protocol layering, link layer protocols, LAN protocols, Internet protocols, Internetworking and routing, Transport layer protocols, Traditional applications protocols, Multimedia data and Overlay networks. This course is designed as follow-up to Computer Networks course. |
Course Code and Number |
CPE 570 |
Course Name |
Parallel Processing |
Credit Hours |
3 |
Pre-requisites |
CPE 440 |
Status |
Elective |
Course Coordinator |
Mwaffaq N. Otoom |
Course Description |
Introduction to Parallel Processing and Distributed Systems, Multi-computers, Multiprocessors, Multicores, Graphics Processing Units, Network of workstations, and Scalable systems, Multiprocessor System on Chips, Network on Chip, Interconnection Networks: Topologies, Routing, and Protocols, Distributed Systems Design for Scalability, Reliability, Availability, and Security, Communication Paradigms Including Shared Memory, Message Passing, RPC, and Distributed Objects, Development of Programs and Applications for Parallel and Distributed Systems. |
Course Code and Number |
CPE 574 |
Course Name |
Artificial Neural Networks and Fuzzy Systems |
Credit Hours |
3 |
Pre-requisites |
CME 312 |
Status |
Elective |
Course Coordinator |
Amin T. Alqudah |
Course Description |
This course introduces basic neural network models and learning algorithms, for applications in pattern recognition, image processing, and computer vision. Different forms of learning will be introduced and their applications. The students will have a chance to try out several of these models on practical problems. |
Course Code and Number |
CPE 576 |
Course Name |
Artificial Intelligence |
Credit Hours |
3 |
Pre-requisites |
CME 312 |
Status |
Required |
Course Coordinator |
Hisham M. Almasaeid |
Course Description |
The course addresses the concepts, representations, and techniques used in building practical computational systems (agents) that utilize artificial intelligence (AI). The course covers the following topics: agents, problem solving and search, heuristic search, game playing, planning, constraint satisfaction, logical agents, and machine learning. |
Course Code and Number |
CPE 578 |
Course Name |
Computer Systems Security |
Credit Hours |
3 |
Pre-requisites |
CPE 562 |
Status |
Required |
Course Coordinator |
Haithem Al-Mefleh |
Course Description |
This course introduces computer systems security. The course covers: an introduction to security principles and terminology, cryptography (symmetric key, public key, hash functions), access control (authentication and authorization), security protocols (SSH and SSL), software security issues (malware and OS security). |
Course Code and Number |
CPE 584 |
Course Name |
Digital Image Processing |
Credit Hours |
3 |
Pre-requisites |
CME 312 |
Status |
Required |
Course Coordinator |
Faruq A. Al-Omari |
Course Description |
This course provides an introduction to digital image processing. The course covers: digitization and coding of images, characterization and representation of digital images in spatial and frequency domains, image restoration, perception and enhancement, point-, algebraic-, and geometric operations, discrete image transforms, , image filtering, image reconstruction, pattern recognition principles: segmentation and object measurement. |
Course Code and Number |
CPE 596 |
Course Name |
Special Topics |
Credit Hours |
3 |
Pre-requisites |
Directed by the department |
Status |
Elective |
Course Coordinator |
Chairman |
Course Description |
Contents will vary and will be posted the time the course is offered. |
Course Code and Number |
CPE 598 |
Course Name |
Graduation Project 2 |
Credit Hours |
3 |
Pre-requisites |
CPE 498 |
Status |
Required |
Course Coordinator |
Chairman |
Course Description |
Theoretical investigation and practical implementation of special projects under the supervision of an academic member of the faculty. |