This program is expected to be a four year program leading to the degree of Doctorate of Philosophy in Computer Science. The program is hosted by the Department of Computer Science at the King Hussein School of Computing Sciences and is fully accredited by the Jordanian Ministry of Higher Education. The main objectives of the program are the preparation of PhD holders that are highly-qualified as academics and researchers in the field of Computer Science and related areas, and providing an opportunity for study to potential candidates from Jordan and countries in the region who wish to pursue graduate studies but are prevented from studying abroad due to financial or personal reasons.
The requirements for this degree are 54 credit hours, distributed as follows:
Compulsory requirements:
a. Coursework: 21 credit hours.
b. Dissertation: 18 credit hours.
Elective requirements: 15 credit hours.
A comprehensive examination is required after the students finish the compulsory courses. The program is based on the course work and research approach.
Applicants for this program should fulfill the following requirements:
A Bachelor’s degree from an accredited university in Computer Science or related field such as Computer Engineering, Software Engineering, or Graphic Design, with a rating of at least Good or equivalent.
A Master’s degree from an accredited university in Computer Science or related field such as Computer Engineering, Software Engineering, or Graphic Design, with a rating of at least Very Good or equivalent.
English language proficiency, as required by the Jordanian Accreditation Commission.
Financial Support:
Teaching Assistant ships will be provided to students admitted to the program. These Assistantships will cover tuition fees in addition to a reasonable monthly stipend.
Expenses:
Tuition fees: 300 Jordanian Dinars per credit hour (1 JD ≈ 1.5 US dollars)
Fees: 500 JD per semester (600 JD only for the first semester)
Application Fee: 50 JD
Living Expenses: Variable
(11911) Scientific Research Methods
This two credit hour course will review the major considerations needed in conducting scientific research, particularly in the fields of Computer Science. The topics covered include: Definitions and characteristics of research; Types of research; Topic Selection; Research methodology Evaluation and validation of research results; writing, publishing, presenting research work; intellectual property and ethics.
(11912) Research Seminar
This one credit hour course allows the new doctoral students to familiarize themselves with research activities in their fields. The students will attend seminars given by researchers from PSUT and other institutions to learn about the professor's areas of research before permanently aligning. In addition, the students are expected to prepare and to give seminars about selected topics of research and get feedback from peer researchers.
(11921) Design and Analysis of Algorithms
This course will cover topics related to design and analysis of algorithms. Topics include Turing machines; NP-Complete theory. Algorithmic techniques: divide-and-conquer, greedy, dynamic programming, graph traversal, backtracking, and branch-and-bound. Applications include sorting and searching, graph algorithms, algorithms for social networks, computational biology, optimization algorithms, randomization and algorithm analysis.
(11931) Distributed Systems
(11932) Computer and Network Security
This course introduces key issues in data communication and network security. Topics covered include advanced concepts in encryption, authentication, digital signatures, hashing, mobile security, cloud computing security, intrusion detection firewalls, viruses, access control, and network security protocols. One or more recent research topics are included such as IoT, security in Software Defined Networks, Cloud Computing Security, and others. The recent research topics may vary according to the importance of the topic at the time of the course. Each student is expected to perform a research project during the course.
(11941) Advanced Database Systems
The course aims at advancing database system topics through combining complexity and a more hands-on experience on modern database systems, such as NoSQL, spatio-temporal, data warehousing databases. Students will concentrate on obtaining knowledge on advanced topics including but not limited to: query processing and optimization, query evaluation, transaction processing, concurrency control and recovery in both a centralized and a distributed environment. In addition, students will learn the single and multi-dimensional indexing methods, join evaluation algorithms and SQL Analytics. Students are expected to demonstrate their obtained knowledge by conducting a research-oriented project. The project can be on some specific aspect of the emerging fields in Database systems. Finally, students are expected to present their methodologies and results in a scientific research paper.
(11942) Advanced Database Systems
The course aims at advancing database system topics through combining complexity and a more hands-on experience on modern database systems, such as NoSQL, spatio-temporal, data warehousing databases. Students will concentrate on obtaining knowledge on advanced topics including but not limited to: query processing and optimization, query evaluation, transaction processing, concurrency control and recovery in both a centralized and a distributed environment. In addition, students will learn the single and multi-dimensional indexing methods, join evaluation algorithms and SQL Analytics. Students are expected to demonstrate their obtained knowledge by conducting a research-oriented project. The project can be on some specific aspect of the emerging fields in Database systems. Finally, students are expected to present their methodologies and results in a scientific research paper.
(11942) Artificial Intelligence
The course will provide students with information on advanced artificial intelligence concepts. The course will cover knowledge representation, search techniques and problem solving methods. Topics include Expert systems, fuzzy expert systems, genetic algorithms, AI tools and languages, case-based reasoning, decision trees, machine learning, support vector machines and neural networks. Course work includes both reading, criticizing and summarizing research papers in advanced AI topics and also a final course research project is required.
(11951) Software Engineering Methods
This course presents the theoretical aspect of software development processes, tools and techniques from the perspective of learning what they can and cannot do; deciding when, how and why to apply them; and selecting among the available alternatives. Topics relating to Software methods and processes will be discussed. Topics include personal software development process (PSP), team software process (TSP), Six sigma, DFSS, requirements analysis and specification techniques, life-cycle models, process modeling, software design methods; project planning and management; quality assurance; configuration management; program and system testing. Course work includes both reading, criticizing and summarizing research papers in software engineering method topics and also a final course research project is required.
(11913) Statistics and Probabilities
Course topics include Axiomatic probability theory, independence, and conditional probability. Discrete and continuous random variables, special distributions of importance to CS and expectation. Simulation of random variables and Monte Carlo methods. Central limit theorem. Basic statistical inference, parameter estimation, hypothesis testing, and linear regression. Introduction to stochastic processes. Illustrative examples and simulation exercises from queuing, reliability, and other CS/SE applications.
(11914) Numerical Methods
This course brings out the role of Numerical Approximation theory in the process of developing a numerical recipe for solving practical computer and engineering problems. It familiarizes the student with ideas of convergence analysis of numerical methods and other analytical aspects associated with numerical computation. It is shown that majority of problems can be converted to computable forms (discretized) using three fundamental ideas in the approximation theory, namely Taylor series expansion, polynomial interpolation and least square approximation. In addition, the student is expected to clearly understand role of the following four fundamental tools: Linear Algebraic Equation, Nonlinear Algebraic Equations, Ordinary Differential Equations and Initial Value Problem and Optimization. Topics may vary based on selected research topics.
(11922) Theory of Computation
This course covers extensive and theoretical treatment of the material in Computability, and Complexity. Topics include Automata and Language Theory, Computability Theory, and Complexity Theory.
(11923) Programming Languages and Compiler Design
This will be a project-oriented course focused on advanced topics in programming languages and compilers. Topics will include detailed studies of new programming languages and advanced compiling and optimization techniques used in the translators of modern programming languages. The course will cover topics such as: new features in legacy languages; program analysis and optimization techniques; solver-aided languages; verifying of compilers; advanced parsing techniques; abstract interpretation and model checking; Lexical Analysis, Syntactic Analysis and Semantic Analysis; regular expression pattern matching; insecure constructs in programming languages and how to overcome them; applications of category theory to programming languages; The students will present papers, and write a project report on a topic of mutual interest.
(11926) Graph Theory and Applications
A selected view of advanced topics in graph theory and their applications. Topics drawn from: paths, connectivity, Euler tours, Hamilton cycles, trees, matchings and coverings, vertex and edge colorings, planarity and its generalizations, Ramsey theory and extreme theory, graphical enumeration, random graphs, network flows, graphs and groups, graph algorithms.
(11933) Advanced Computer Architecture
This course aims to offer a firm background for research in computer architecture. The course explores current trends and future directions in processor micro-architecture as well as various hardware and software techniques in high-performance computing. A review of unconventional and parallel architectures, VLSI computer structures, and memory hierarchies is followed by advanced topics including branch prediction, dynamic scheduling, process variability, superscalar techniques, speculative execution, VLIW, multi-core processors, application-specific processors such as those for embedded and multimedia systems, Programmability, speculative threading and parallelization. Course work includes bothreading, criticizing and summarizing research papers in advanced computer architecture topics and also a final course research project is required.
(11934) Advanced Computer Networks
This course explores advanced topics in computer networks, focusing on fundamental research being conducted to improve computer networks and the internet. Topics include advanced developments in the data link layer a specially for wireless and cellular networks, advanced Network Protocols and Security, Internet of things, advances issues of the transport layer, Wireless Ad Hoc Networks, Network traffic measurement. Emphasis will be placed on network performance issues for next-generation Internet protocols and applications. Presentations of research papers and survey articles selected from recent conferences and journals will be discussed and proposing new idea in a form of a research paper is expected as the final project of the course.
(11935) Mobile Computing
This course discusses advanced mechanisms that supports mobile computing systems. Topics include developments of various wireless network and their integration with the internet in order to support ubiquitous mobile computing. Advanced routing protocols over heterogeneous network that could combine MANET, VANET, WSN, cellular, and other wired and wireless networks in order to achieve the goal of anytime, anywhere computing. Advanced Mobility management and location based service management. Data management and organization for mobile computing applications. Security issues in mobile computing environments. Presentations of research papers and survey articles selected from recent conferences and journals will be discussed. Proposing new idea in a form of a research paper is expected as the final project of the course.
(11936) Cloud Computing
Cloud computing represents the emerging Internet-based services/platforms with elastic and scalable computation powers operating at costs associated with services. Topics of the course includes advanced web technologies, distributed computing models and technologies, software cloud tools and languages, SaaS, PaaS, IaaS, virtualization, palletization, security/privacy and the advances in cloud computing. Course work includes both reading, criticizing and summarizing research papers in cloud computing topics and also a final course research project is required.
(11943) Information Retrieval
This course covers Information Retrieval concepts and search engine technologies. Students will learn the basic concepts, principles, and the major techniques in modern information retrieval, which is the underlying science of search engines. This course will cover algorithms, design, and implementation of modern information retrieval systems. Topics include, but not limited to: retrieval system design and implementation, text analysis techniques, retrieval models (e.g., Boolean, vector space, probabilistic, and learning-based methods), search evaluation, retrieval feedback, search log mining, and applications in web information management are included. Student will learn the underlying technologies of modern information retrieval systems, and obtain hands-on experience by using existing information retrieval toolkits to solve real-world problems. In addition, students are expected to demonstrate their obtained knowledge by conducting a research-oriented project and presenting their methodologies and results in a scientific research paper.
(11944) Knowledge Discovery and Data Mining
This course aims to provide students with a practical and technical experience on knowledge discovery and data mining. Topics to be covered include problems of data analysis in databases, discovering patterns in large data, knowledge interpretation, extraction and visualization. The course also covers analysis, comparison and usage of various types of data mining and statistical techniques, such as clustering, classification, association rules, graph mining, prediction, description and scientific visualization. Students are expected to demonstrate their knowledge by conducting a research- oriented project. The project can be on some specific aspect of the emerging fields. This will allow students to explore some in-depth issue(s) and gain unique data mining experience and insights. They are expected to present their methodologies and results in a scientific research paper.
(11945) Natural Language Processing
This course covers statistical, ruled-based and hybrid-model based approaches to natural language processing. There will be a focus on corpus- driven methods that make use of supervised and unsupervised machine learning methods and algorithms. We will examine some of the core topics in natural language processing including morphological analysis, syntactical analysis and parsing, semantic analysis, discourse analysis, and language modeling. Applications such as information extraction, summarization, question and answering, classification, and machine translation will be discussed. In addition, the evaluation of natural language algorithms will also be covered. During the course, a number of problems related to Arabic language NLP systems will be examined, along with the strategies that have been developed to handle these problems. Students should be able to identify the merits and deficiencies of each proposed solution. . Upon completion of this course, the students will be able to explain and apply fundamental algorithms and techniques in the different areas of natural language processing (NLP) and propose new and profitable avenues of NLP research.
(11946) Machine Learning
The course covers a wide range of machine learning baseline algorithms and techniques with focus on practical aspects. The course utilizes theory as well as state-of-the-art research topics to provide students with adequate knowledge for understanding and applying machine learning solutions. Topics covered include: supervised, unsupervised and reinforcement learning, statistical and probabilistic models, ensembles, implementation issues, applications and best practices. Students will apply classroom knowledge in learning techniques to implement a research-based system using real-world application and present their methodologies and results in a scientific research paper.
(11952) Software System Architecture
(11961) Digital Image Processing and Computer Vision
The course covers the fundamental concepts of image analysis, video manipulation and computer vision technologies that can perceive and understand the complex visual world. The student will be exposed to theory and state-of-the-art research in image processing and computer vision with emphasis on real-world applications. Topics covered include: foundational image processing techniques, fundamental models and algorithms in computer vision, object and pattern recognition, Fourier and wavelet transforms, color and multi-spectral image processing, texture identification, shape theory and analysis, radiometric and geometric correction, spectral analysis, classification, change detection, feature detection, statistical methods for multi-dimensional signal processing, medical image processing. Papers from the current literature will be discussed and student participation in a seminar style format may be expected. A final publishable paper is required by each student that gives the opportunity to apply both analytical and synthesis skills, starting with their ability to analyze and provide solution to an image processing task.
(11963) Human Computer Interaction
This course covers advanced topics in: user-center design methods and techniques, skills of task analysis, analytic and empirical usability and interaction design evaluation methods (both quantitative and qualitative). It includes the collection, analysis, and presentation of HCI data as well as a deep review of ethnography, affinity diagrams, state-of-the-art methods of interaction, case studies, laws and models of interaction, and empirical research. The course uses theory and state-of-the-art research from human factors, cognitive science, and social science to understand and design the interactions. Students will apply classroom knowledge in analysis, evaluation and design to implement a research-based project.
(11971) Selected Topics in Computer Science
(11998) Qualification Exam
Students must successfully take a written and oral qualifying examination administered by the department after passing the 21 credit hours of mandatory courses at the end of the second year of study.
(11999) Thesis
The Doctoral Dissertation Research should represent original research. A prospectus for the dissertation must be successfully defended by the end of the fourth or fifth year and approved by the supervisor, external examiner, and the department research committee. Candidates must undergo a final oral examination in which they defend their dissertation and demonstrate a mastery of their field of specialization in relation to their dissertation.
Mandatory Requirements (21 Credit Hours):
(11911) Scientific Research Methodology
(11912) Research Seminar
(11921) Design and Analysis of Algorithms
(11932) Computer and Network Security
(11941) Advanced Database Systems
(11942) Artificial Intelligence
(11944) Knowledge Discovery and Data Mining
(11951) Advanced Software Engineering
Elective Courses (15 Credit Hours):
(11913) Statistics and Probabilities for Computing Science
(11914) Advanced Methods in Numerical Analysis
(11922) Theory of Computation
(11923) Programming Language and Compiler Design
(11924) Cryptography
(11926) Graph Theory and Applications
(11931) Distributed Systems
(11933) Advanced Computer Architecture
(11934) Advanced Computer Networks
(11935) Mobile Computing
(11936) Cloud Computing
(11943) Information Retrieval
(11945) Natural Language Processing
(11946) Machine Learning
(11947) Big Data Science
(11948) Statistical Methods for NLP
(11952) Software System Architecture
(11961) Advanced Digital Image Processing
(11962) Computer Graphics
(11963) Human Computer Interaction
(11971) Selected Topics in Computer Science
(11972) Selected Topics in Computer and Network security
(11973) Independent Study
Qualifying Exam (0 Hour)
(11998) Qualification Exam
Doctoral Dissertation Research ( 18 Credit Hours)
(11999) Thesis