| courses descriptions
(ARAB 101)
Topics covered in this course include: studying chosen parts of Arabic grammar, verbs, the five verbs, nouns that are subject to desinential infliction with letters, derivatives, abrogative, indeclinable, numbers, and hamzah in a practical way with numerous applications
(ARAB 201)
The topics covered in this course include: sources of objective writing, Holly Quran and Hadith and contemporary literature, Punctuation, Report writing, Arabic Dictionaries, Summary style and steps, Scientific research steps and characteristics, Speech, and Curriculum Vitae writing, Objective essay and Administrative letters.
(ARAB 301)
The topics covered in this course include: the objectives of communication and its elements, skills needed for personal reading, interviews, speeches, lectures, symposia and how to behave as a listener. Tips are given to avoid and prevent common mistakes.
(ISLM 101)
This is a course to vitalize the students’ knowledge and commitment to Islamic doctrine, seeking thereby to fortify them against the onslaught of godless ideologies. Topics include an introduction to faith, its foundations and sources; the fundamentals of belief
(ISLM 201)
This course discusses the topics of Islamic legislation and its sources, the economics of Islam and its principles, human rights according to the Islamic concept and the five necessities
(ISLM 301)
This course discusses the ethical system in Islam, its concept and its effects, as well as studying the ethics of the profession, its sources, its applications, and its relation to other sciences
ENGL 101)
This course aims to teach how to write paragraphs effectively. Using an approach that views writing as a process successfully completed at several stages, the students are trained to write effective paragraphs from editing and revising techniques. The students also learn how to correct fragments and run-ons sentences, structure ideas in sentences clearly and logically using a common checklist.
(ENGL 331)
This course comprises 3 parts; Speaking, Public Speaking and Presentations. It is based on the 3 Ps (presentation, practice and production) approach. The speaking portion aims, through a hands-on approach, at training students in everyday, naturally occurring conversations in both formal and informal settings. The course will progress from personal introductions and everyday conversations to leading meetings and negotiations. The final portion is dedicated to presentations. The focus is on the preparation
(ENGL 332)
In this course, students are introduced to the basic skills of writing a successful technical report that satisfies the requirements of formal writing in English. The course makes use of the students’ background knowledge of academic writing in ENGL 101 and ENGL 131 as well as their professional communication skills. By the end of this course, students will be able to produce a unique business report that is plagiarism-free, making use of knowledge and skillsobtained in this course and other previous course
(PE 101)
This course is designed to provide the students with comprehensive physical fitness program to make them gain the proper physical shape in order to develop the mental, emotional, physical, and social aspects of living, necessary for a happy and productive life. The students will be introduced to the fundamentals of sports such as volleyball game focusing on skills, rules, and game strategy.
(PE 102)
This course provides students with an integrated fitness program in which they can reach a level of fitness that enables them to carry out their daily duties in keeping with their life conditions and the demands of their studies. Through this program, the course equips students with the ability to lead an active life, fatigue-free. In addition, students practice basketball skills and are taught the rules so that they can practice this game properly.
(MATH 101)
This course is intended to provide a strong base for three semester calculus sequence, emphasis is given to prime topics of differential calculus including: Limits and Continuity of functions of a single variable; Derivatives; Techniques of Differentiation; Applications of first (second) order derivatives to the problems dealing with related rates, linear approximations, behavior of functions, inflection, extreme values and optimization; Newton’s method for approximate roots; Rolle’s and Mean Value theorems
(MATH 102)
This course includes: knowledge of the fundamental concepts behind definite and indefinite integration for a function of single variable, i.e. Anti- differentiation, Riemann Sums and the Fundamental Theorem of Calculus, different techniques of integration; applications of definite integral in finding areas, volumes, arc lengths and average values; sequences and series including various tests for convergence; alternating series, absolute and conditional convergence; Maclaurin and Taylor series
(MATH 204)
This course contains two parts, linear algebra and differential equations. The first part covers: Linear Systems of equations and their solutions, eigenvalues and eigenvectors, diagonalization of matrix, vector spaces and subspaces, linear combination and independence of vectors, basis and dimension for vector spaces. The second part is a study of differential equations and mathematical models. Topics include: The solution of first order differential equations with real-life applications, the solutions
(MATH 206)
This course is an introduction to the numerical analysis. The primary objective of the course is to develop the basic understanding of numerical algorithms and skills to implement algorithms to solve mathematical problems. This course gives a complete procedure for solving different kinds of problems that occur in computer science and engineering numerically.
(PHYS 101)
General Physics I is a calculus-based course for computer science and engineering program. It focuses on basic concepts of Physics and their connections to everyday life. The topics covered in this course include the following fields: Measurements, vector analysis, motion in one and two dimensions, force and motion, work, energy and power, rotational dynamics, Conservation laws, equilibrium, elasticity, gravitation, fluid dynamics, and oscillatory motion.
(PHYS 102)
This course uses calculus based mathematical models to introduce the fundamental concepts of physics. Topics covered include: wave motion and sound, temperature, first and second law of thermodynamics, kinetics theory of gases, coulomb’s law, electric field, Gauss’ law, electric potential, capacitors and dielectrics, D.C. circuits, the magnetic field, Ampere’s, and Faraday’s laws. Upon completion, students will be able to understand the principles involved and display analytical problem-solving ability
(CS 101)
This course will introduce students with basic programming concept. The topics covered in this course include: an introduction to basic structured programming skills, basic data types and operators, console input/output, logical expressions, control structures, functions, arrays, pointers, strings, and structures, algorithms and problem solving, problem analysis, solution design, testing, and fundamental of programming constructs. The laboratory work is designed to implement and support
(CS 102)
Topics covered in this course include introduction to computer science, simple graphical user interfaces element and design, object-oriented programming concepts, classes, objects, methods, encapsulation, inheritance, polymorphisms, method overloading, exception handling, and constructors and destructors. The lab works are designed to complement the theoretical concepts covered in the lectures through program implementation.
(CS 201)
Study of digital logic with an introduction to Boolean algebra, number systems and coding. Digital functions are implemented using logic gates, flip-flops and other integrated circuits. Emphasis is on analysis and design, including timing and gate level minimization techniques for combinational and sequential circuits. Coverage includes decoders, encoders, multiplexers, demultiplexers, latches, flip-flops, registers and counters, ROM and RAM memory. Students are exposed to implementing complex designs using
(CS 202)
This course introduces the foundation of discrete mathematics as they apply to computer science. Topics covered will include basic mathematical notions of sets and functions; logic, propositional logic, truth tables, issues of equivalence; predicate logic; proof techniques; commonly occurring mathematical concepts such as graphs, trees; representational issues; recursion; counting; combinatorics.
(CS203)
The coverage of topics are the Basics of Computer Organization, Performance evaluation and Fundamentals of Computer architecture and Assembly language programming. Other Topics include Computer arithmetic, CPU organization; Data and Control path design, Pipelining, Memory system with Cache and I/O Organization
(CS 204)
This course is designed to provide the students with solid foundations in the basic concepts of programming: data structures and algorithms. Topics to cover include: Abstract Data Types (ADTs), Arrays, Records, Data representation in memory; Static, stack, and heap allocation, Linked structures, Implementation strategies for stacks, queues,
(CS 277)
This course covers software engineering disciplines in software processes, software project management, tools and environment, requirement engineering, software design, software development, software testing and software maintenance.
(CS 302)
This course provides elementary introduction of concepts related to algorithm design and analysis. Specifically, it discusses elementary ideas and results on discrete probability, mathematical foundations needed to support measures of complexity and performance; along with recurrence relations and illustrates their role in asymptotic and probabilistic analysis of algorithms.
(CS311)
This course is designed to teach the fundamental concepts of database design and its use. It provides a study of data model, data description languages, and query facilities using SQL, project requirement, ERD diagram, functional dependency, data normalization and optimization, a review of transactions, backup and recovery concepts. The knowledge of above topics will be applied in the design and implementation of database application using a targeted DBMS as part of a semester-long project.
(CS 331)
The areas that cover in this course are Introduction to state of the art of artificial intelligence in modern world, fundamental issues, searching strategies, Knowledge representation & reasoning, Basic machine learning, Perception & Computer vision, Reasoning under uncertainty, intro to Virtual reality (Modelling & simulation). The concepts are implemented in any language/tools.
(CS 306)
This course is designed to provide the students with solid foundations in the basic concepts of programming languages. The course covers the common knowledge about the evaluation of programming languages, the history and evolution of the major programming languages, study of syntax and semantics analysis, bindings, type checking, and scopes. An in-depth examination of design and concepts of various programming languages
(CS 378)
This is an introductory course in web development. This course starts with the introduction to HTML5 and the basic HTML5 elements. Students will setup a local development environment including a data store. The presentation layer topics will include fundamentals of HTML5 and CSS. The course will cover the fundamentals of form data, request/response headers, session tracking and cookies. The basic concepts of backend programming will be covered for the server-side processes and the connection to databases.
(CS 379)
The course provides a comprehensive study of Human-Computer Interaction (HCI) designs. The topics include the basic concepts of graphical visualization, practical principles and guidelines to develop quality interface design, foundation of human-computer interaction related to software lifecycle, interaction styles, interaction devices and technologies, human-computer dialogue based on cognitive models, and the discussion of design issues and design usability.
(CS 401)
This course covers the basic of computer architecture: I/O fundamentals, Buses, direct-memory access (DMA) and Parallelism Fundamentals: Introduction to parallelism, Parallel Decomposition, Parallel architecture, distributed systems and Cloud Computing.
(CS 480)
This is an introductory course on the internal operations and fundamental principles of operating systems (OS). Topics covered in this course include: Operating system History and overview. Operating system design principles. Concurrency, Synchronization, Scheduling and Dispatch, Memory management, device management, security and protection, and File systems.
(CSE361)
This is an introductory course on computer networking. The course explains Internet, the network topology, performance, security, and protocols. Layered protocol. Application Layer - principles of network applications, application layer protocols and client-server and P2P applications. Transport Layer – connectionless transport (UDP), connection-oriented transport (TCP), reliable data transfer, flow and congestion control.
(NET 363)
This course provides an overview on history and examples of computer crime, security definitions and basic security principles. Covers security policies, procedures, risk assessment and mechanisms. Access control models. Implementation and usability issues. Physical and Infrastructure security. Authentication technologies. Operating system security. Encryption algorithms and protocols. External and internal firewalls. Software flaws and malware
(CS 492 & CS 493)
A continuous period of 28 weeks spent in industry with the purpose of acquiring practical experience in different areas of Computer Engineering. The period starts with an orientation course in one semester and then follows with the COOP course in the second semester. During this period, a student is exposed to the profession of Computer Science by working in the field.
(CS 494)
The starting of the cooperative work in the summer for nine (9 )weeks duration just preceding the senior year. The student completing summer training have to submit report about the experience and the knowledge gained.
(CS 495)
A continuous period of 16 weeks spent in industry with the purpose of acquiring practical experience in different areas of Computer Science. During this period, a student is exposed to the profession of Computer Science by working in the field. Students are required carry a major design project and to submit a final report and give a presentation about the experience and the knowledge they gained during their cooperative work.
(CS 496)
This course is phase one preparation for completing a design for project. The course requires the students to work in small team to design, develop and implement a computer science related problem in conjunction with a faculty advisor. The course reinforces principles of the software design and development process and serves as the capstone to the computer science degree program
(CS 497)
This course is phase two for completing a design for project. The course requires the students to work in small team to design, develop and implement a computer science related problem in conjunction with a faculty advisor. The course reinforces principles of the software design and development process and serves as the capstone to the computer science degree program.
(CS 381)
Track Elective I. This is an advanced course in web engineering. It covers advanced topics in HTML5 including audio, video, maps, client-side storage, session, SSE etc. Advanced concept of CSS3 will be introduced. Advanced topics in JavaScript will be taught including regular expression, exception handling, dynamic user interface, AJAX etc. Students will be introduced with XML and JSON message formats. Students will be able to create and consume structures and work with a database using PHP.
(CS 382)
Track Elective II. This course focuses on object – oriented approach to web development. It will introduce the object – oriented programming using JavaScript and PHP. Rich user interface techniques using jQuery will be taught. Model – View - Controller design pattern for web application will be introduced. It will be implemented using the Zend framework. Persistence layer topics like object – relation mapping will be covered.
(CS 383)
Track Elective III. This course is about enterprise level commercial quality applications. It will cover responsive user interface design using Bootstrap. It will also cover web components for data grid and reports. It will address the design and implementation of enterprise application features like internationalization and accessibility. Students will experience the design and implementation of business process automation.
(CS 385)
Track Elective I. This course introduces mobile application development for the Android platform. It is considered to be a beginner’s course to the Android development framework. The course assumes that the students know java from before. Topics include creating basic activity applications that talk to a database, communicate with a server, download content and use the GPS and camera of the Smartphone.
(CS 386)
Track Elective II. This course introduces the Hybrid Web Mobile application paradigm (where one writes a JavaScript, html and CSS application which runs natively on all supported mobile platforms like Android, Apple IOS, and Windows Phone). The course introduces the approach of "Write Hybrid or Web apps once and deploy too many app stores of different mobile platforms".
(CS 387)
Track Elective III. This course continues from where the previous course Mobile Application Development with Android left off. It goes deeper into creating more advanced mobile applications that include activities, services, content providers and broadcast receiver objects. It covers the APIs of the other sensors on an android Smartphone, media, graphics, widgets and user interface.
(XE 452)
This course on ICT (Information and Computer Technology) is designed as a social/general elective for MIS, CS and CE undergraduate level students. It provides a comprehensive treatment of the issues faced by computer professionals in today’s modern working environment reflecting the latest trends and technologies, with a socio-technological perspective. It focuses on the work of few individuals that has an impact on many people world-wide.
(XX XXX)
A Free elective gives the opportunity to study a course from any discipline in the University, providing you meet the pre-requisites and/or co-requisites of that course. A free elective course is worth 3 credit hours and can be either level 1, 2, 3 or 4. It is highly encouraged to get advice from the advisor in choosing the free elective.
(CS XXX)
A Department elective gives the opportunity to study a course from any program including Computer Science offered within the department, providing you meet the pre-requisites and/or co-requisites of that course. A department elective course is worth 3 credit hours and can be either level 1, 2, 3 or 4. It is highly encouraged to get advice from the advisor in choosing the department elective.
(MATH XXX)
This elective gives the opportunity to study an additional math or science course from any program offered in the university, providing you meet the pre-requisites and/or co-requisites of that course. A math/science elective course is worth 3 credit hours and can be either level 1, 2, 3 or 4. It is highly encouraged to get advice from the advisor in choosing the department elective.