You may be trying to access this site from a secured browser on the server. Please enable scripts and reload this page.
Turn on more accessible mode
Turn off more accessible mode
Skip Ribbon Commands
Skip to main content
Turn off Animations
Turn on Animations
Quick Navigation »
About UOP +
Vision, Mission, Objectives & Values
Board of Trustees
The Chancellor of the University and the Board of Trustees
Centers and Units
Departments and Offices
Vice President's Office
Global Partnerships & Relations
Faculty of Information Technology
Faculty of Architecture & Design
Faculty of Administrative & Financial Sciences
Facultyof Arts & Sciences
Faculy of Law
Faculty of Pharmacy & Medical Sciences
Faculty of Mass Communication
Faculty of Engineering
Majors' Tuition & Fees
New Students Registration
Graduate Studies Board
Office of External Funding for Research Projects (OFFER)
Human Resources +
Electronic Library and Databases
A Bridge Towards Knowledge
Faculty of Information Technology
Programming Language (1) (3:3-2)
This course introduces the fundamental concepts of programming languages in JAVA. Topics covered: The anatomy of a Java program, primitive data types and operations, numerical data types, control structures, selections, loops and methods (iterative and recursive methods), passing parameters, arrays (one dimensional and two dimensional arrays) including some applications such as sorting and searching arrays, introduction to object oriented programming including objects and classes in Java.
Programming Language (2) (3:3-2)
This course introduces the basic concepts of Object-Oriented Programming (OOP) using JAVA programming language. Topics covered: OOP features including: Abstraction, encapsulation, inheritance and polymorphism. Classes, objects, constructors, overloading and overriding, interfaces, packages, exception handling, applets and introduction to GUI programming are explained.
Data Structures (3:3-2)
Prerequisite: 601212 + 103250
This course introduces the main concepts of data structures. Topics covered: Concepts of Abstract Data Types (ADT), specification of different data structures such as: (Lists, Stacks, Queues, Dictionaries, and Trees) as ADT, different implementations using an object oriented approach, algorithms analysis in terms of time and size for the different implementations. Recursion as problem solving technique and a brief introduction to graphs is also covered.
Computer Logic Design (3:3-2)
This course provides an introduction to computer logic design. Topics covered: numbering systems and their internal representation, Boolean expressions and functions of combinational and sequential circuits, Boolean functions simplification methods, design of logic basic building blocks (adders, subtractions, comparators, multiplexers, decoders, encoders, flip-flops, registers, counters, Read Only Memory “ROM”, and Programming Logic Array “PLA”) and basic concepts of the Random Access Memory “RAM”.
Computer Organization (3:3-2)
This course introduces Computer system organization and machine language covering: The basic components and organization of all 80x processors and their registers, memory segments, addressing modes. Introduction to assembly language: Date declaration and formats, instruction set, procedures, interrupts, macros and input & output.
Database (1) (3:3-2)
This course provides an overview of database concepts and Database Management System (DBMS). Topics covered: Introduction to the relational database model including: Relational algebra, relational calculus, Structural Query Language (SQL), database design methodologies, Entity-Relationship Model (ER), integrity constraints, conceptual database design, functional dependencies and normalization.
Computation Theory (3:3-0)
This course introduces the basic concepts of computation theory. Topics covered: Automata theory, deterministic and nondeterministic finite automata, regular expressions, regular languages and their properties, context-free grammars, context-free languages and their properties, pushdown automata, introduction to Turing machines, undesirability, and intractable problems.
Programming Languages & Design (3:3-0)
This course introduces the developments of programming language and design concepts. Topics covered: Evolution of Major Programming Languages, Syntax and Semantics statements describing, Lexical and Syntax Analysis, variable Names including: Bindings, Type Checking, and Scopes, in addition to Data Types, Expressions, Assignment Statements, and Statement-Level Control Structures.
Algorithms Design & Analysis (3:3-0)
This course introduces the concepts of designing and analyzing algorithms. Topics covered: Review of abstract data types and data structures, definition of algorithms, classifying functions and computational complexities of algorithms, algorithms analysis & design techniques including: Divide and conquer greedy methods, searching and sorting, trees, graphs, hashing, combinatorial algorithms and P/NP problems.
Computer organization and Architecture (3:3-0)
This course provides an introduction to computer organization and the assembly language for the Intel 8086 family of processors. Representation of numbers and characters; Number systems, conversion between number systems, addition and subtraction, and two’s complement representation. Emphasis will be on the structure of the processor 8086 and its assembly language. This includes: Introduction to IBM PC assembly Language; The processor status and the flag register; Flow control instructions; Logic, shift, and rotate instructions and their application; Stack application and introduction to procedures; Multiplication and division; Arrays and addressing modes. Memory Hierarchy will be addressed in details.
Operating Systems (3:3-0)
This course introduces the fundamental concepts of operating systems. Topics covered: Evolution of operating systems (OS), operating system structure, operating system tasks including: Process management and scheduling (time sharing, deadlock), strategies of storage management and its protection, secondary storage structure; Distributed Systems, I/O system management.
Computer Architecture (3:3-0)
This course provides an introduction to hardware and software aspects of computer architecture. Topics covered: Computer structures and their types, instructions’ set architecture, arithmetic logic unit, control unit, buses, control signals and statements, memory hierarchy, computer performance measurement, enhancing performance with pipelining. Connecting and interfacing I/O devices to CPU.
Artificial Intelligence (3:3-0)
This course provides the general concepts of Artificial Intelligence. Topics covered: Search strategies, knowledge representation methods, structures for state space search, propositional and predicate calculus, strategies for state space search, heuristic search, control and implementation of state space search. Research and application oriented topics are also covered including: Expert systems, machine learning, intelligent agents and neural networks. Prolog programming language is also introduced.
Computer Graphics (3:3-0)
This course introduces the principles of computer graphics. Topics covered: Two-dimensional graphics in details, an introduction to three-dimensional concepts and methods (3D transformations and representation. (Animation
and spin curves, raster operations, modeling entities planar and three-dimensional, generate realistic optical manifestations on dot-matrix display devices, characterization of the different elements that support the computer graphics including: Algebra, geometry, algorithms, optics and physics), in addition to the interaction of these elements in the design of graphics software systems.
Field Training (3:0-3)
Prerequisite: Dept. Approval
This course provides the ability to practice on using computer tools and applications in various fields, either in a public or private sectors under the supervision of the department members. The purpose of the supervised field training experiences is for students to synthesize the knowledge and skills developed during the academic portion of the program in a practical setting. Field training is both a learning experience for students and contributes to the work undertaken by the field training site. The expectation is that the field training will provide learning opportunities unavailable in a classroom setting.
Graduation Project (3:0-3)
Prerequisite: 603392 +
This course gives the students the chance to demonstrate their intellectual, technical and creative abilities through developing projects in one of information technology fields. The Graduation Project challenges students to go beyond the learning that occurs as the result of their prescribed educational program. Students shall complete their projects in areas of concentrated study under the direction and supervision of faculty members. The projects will demonstrate the students' ability to: Apply, analyze, synthesize, evaluate information, and communicate significant knowledge and comprehension.
Database (2) (3:3-2)
This course illustrates the advance database concepts and application design techniques. Topics covered: Normalization theory and schema refinement, physical disk storage, transaction processing concepts and theory, concurrency control techniques and GUI design (oracle developers: forms and reports).
Selected Topics in Computer Science (3:3-0)
Prerequisite: Depart. Approval
This course provides topics that are selected by instructors according to the interest of the department and students and cover the novel areas in current advancements in various information technology fields. Suggested topics include: Advance-programming languages not included in the degree plan, advance topics in networks, advance topics in database, management information system, advanced topics in internet and web, case study in different areas.
Compiler Design (3:3-0)
This course provides a deep understanding of techniques and concepts involved in different phases of the compilation. Topics covered: Lexical analysis, syntax analysis, top-down parsing and bottom–up parsing, semantic analysis, synthesis stage of compilation, storage allocation and code generation.
Expert Systems (3:3-0)
This course presents an introduction to the fundamental concepts of Expert Systems and their applications. Topics covered: Rule-Based Expert Systems and their applications, reasoning under uncertainty and representing imprecise and/or uncertain knowledge, expert systems technology (knowledge acquisition, design and diagnosis), expert systems languages and tools. Related topics covered include Machine Learning, Artificial Neural Works and Dialog using Natural Language processing.
Professional Ethics for Information Technology (1:1-0)
This course introduces students to the topics of information technology ethics including: definitions, rules & policies of computer ethics, hacking, viruses, Internet ethics, freedom of expression on the Internet, computer professionals and social responsibilities, software copyright, intellectual property, software piracy, cyber law and privacy & security of computerized information.
Image Processing (3:3-0
This course presents fundamental concepts of digital image processing. Topics covered: Image formation (Sampling and quantization), image resolution (spatial, gray, color), and image enhancement in spatial domain (point to point enhancement (stretching, slicing, threshold) and area to point enhancement (smoothing, sharpening, and noise reduction), enhancement in the frequency domain (sharpening, smoothing). The course also introduces the FFT theory in one and two dimensions in both continuous and discrete form; Image restoration; Image analysis, line detection, edge detection, segmentation techniques (threshold, splitting and merging, region growing); Image encoding such as Huffman and Run-length are also introduced.
Department Chair's Message, Dr. Mohammed Abu-Arqoub
I would like to express my warmest welcome to you as the Chair to the Department of Computer Science at the University of Petra.
Temporary Suspension of Electronic Services at University of Petra
Formation of an Athletics Team to Represent the University in Intercollegiate Championships
A Decision Regarding Working Hours on Wednesday and Thursday 31/5-1/6/2023
Independence Day Holiday 2023
"In-Person Training Course Entitled: "Community Happiness Initiatives"
Employee Attendance Control
Petra Friendly Sites
Ministry of Higher Education
The Jubilee School
University Location Map
© 2021 University Of Petra - All Rights Reserved.