(Bachelor of Science in Computer Science (CS
Program Educational Objectives
The Computer Science program at Jubail University College prepares graduates to:
- be successful in working in a computing–related profession;
- be successful in working as individuals, team members and leaders;
- follow appropriate practices within a professional, legal, and ethical framework; and
- engage in life-long learning, advanced degree programs, or professional development.
Program Outcomes (Student Outcomes)
On successful completion of the program graduates should be able to:
- Outline knowledge of computing and mathematics appropriate to the discipline,
- Analyze a problem, and identify and define the computing requirements appropriate to its solution,
- Design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs,
- Function effectively on teams to accomplish a common goal,
- Show professional, ethical, legal, security and social responsibilities,
- Demonstrate effective communication skills with a range of audiences,
- Recognize the local and global impact of computing on individuals, organizations, and society,
- Demonstrate the need for, and an ability to engage in continuing professional development,
- Utilize current techniques, skills, and tools necessary for computing practice.
- Apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices, and
- Apply design and development principles in the construction of software systems of varying complexity.
CS Program Degree Plan (for students started specialization before 2017/18)
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
MATH 111 | Calculus I | 4 | 0 | 4 | - |
ENGL 117 | English Composition I | 3 | 0 | 3 | - |
GS 132 GS 142 | Physical Education II (Male) Health Education II (Female) | 0/1 | 2/1 | 1 | - - |
SCI 152 | General Physics I | 3 | 3 | 4 | Co-Req: MATH 111 |
SCI 154 | General Chemistry | 3 | 3 | 4 | - |
GS 171 | Belief and its Consequences | 2 | 0 | 2 | - |
| TOTAL | 15/16 | 8/9 | 18 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
MATH 112 | Calculus II | 4 | 0 | 4 | MATH 111 |
ENGL 118 | English Composition II | 3 | 0 | 3 | ENGL 117 |
CS 101 | Introduction to Computing | 2 | 3 | 3 | - |
SCI 153 | General Physics II | 3 | 3 | 4 | SCI 152 |
GS 161 | Arabic Practical Grammar | 2 | 0 | 2 | - |
CS 125 | Computer Programming | 2 | 3 | 3 | MATH 111 |
| TOTAL | 16 | 9 | 19 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 202 | Introduction to Computer Science | 3 | 3 | 4 | CS 101 |
CS 203 | Discrete Structures I | 3 | 0 | 3 | MATH 111 CS 101 |
MATH 211 | Calculus III | 3 | 0 | 3 | MATH 112 |
GS 233 GS 243 | Physical Education III (Male) Health Education III (Female) | 0/1 | 2/1 | 1 | GS 132 GS 142 |
GS 262 | Arabic Professional Writing | 2 | 0 | 2 | GS 161 |
GS 272 | Professional Ethics | 2 | 0 | 2 | GS 171 |
BUS 283 | Industrial Psychology | 3 | 0 | 3 | - |
| Total: | 16/17 | 5/4 | 18 |
|
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 204 | Discrete Structures II | 3 | 0 | 3 | CS 203 |
CS 205 | Data Structures | 3 | 3 | 4 | CS 202 |
CS 206 | Digital Logic Design | 3 | 3 | 4 | SCI 153 |
MATH 216 | Linear Algebra & Differential Equations | 3 | 0 | 3 | MATH 112 |
GS 363 | Arabic Communication Skills | 2 | 0 | 2 | GS 262 |
| TOTAL | 14 | 6 | 16 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 307 | Programming Languages | 3 | 0 | 3 | CS 205 |
CS 308 | Computer Architecture | 3 | 0 | 3 | CS 202 CS 206 |
CS 315 | Software Engineering | 3 | 0 | 3 | CS 205 |
CS 310 | Database Systems | 3 | 3 | 4 | CS 205 |
MATH 312 | Probability & Statistics | 2 | 3 | 3 | MATH 112 |
| TOTAL | 14 | 6 | 16 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
BUS 261 | Business Communication | 3 | 0 | 3 | ENGL 118 |
CS 316 | Object-Oriented Programming | 3 | 3 | 4 | CS 205 |
CS 312 | Computer Organization & Assembly | 3 | 3 | 4 | CS 308 |
CS 313 | Design and Analysis of Algorithms | 3 | 0 | 3 | CS 205 |
CS 314 | Operating Systems | 3 | 3 | 4 | CS 308 |
| TOTAL | 15 | 9 | 18 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 416 | Computer Network Systems | 3 | 3 | 4 | CS 312 |
CS 425 | Web Engineering and Development | 3 | 3 | 4 | CS 307 |
GS 373 | Human Rights in Islam | 2 | 0 | 2 | GS 272 |
*CS xxx | Elective I | 3 | 0 | 3 | Depends on course taken |
*CS xxx | Elective II | 3 | 0 | 3 | Depends on course taken |
| TOTAL | 14 | 6 | 16 | |
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 491* CS 495** | Field Training Senior Project | 0 | 40 | 0 | Senior Standing |
| TOTAL | 0 | 40 | 6 | |
*Filed training should be the first destination of students.
**Students who encounter obstacles to be placed in a workplace are directed to do a senior project instead.
Course Code | Course Title | Lec | Lab | Credit | Pre-req |
CS 415 | Computer Communications | 3 | 0 | 3 | - |
CS 417 | Social and Ethical Issues of Computing | 3 | 0 | 3 | Senior Standing |
CS 419 | Introduction to Artificial Intelligence | 3 | 0 | 3 | CS 203 |
CS 420 | Computer Graphics | 3 | 0 | 3 | CS 205 |
CS 424 | Computer Security | 3 | 0 | 3 | CS 202 |
*Only 2 out of 5 elective courses must be taken.
Course Descriptions
College Requirements
ENGL 117 English Composition I (3-0-3) Prerequisite: None
This course will help students to write essays in different styles which will allow them to understand how texts are constructed. Furthermore, students will learn how to organize structure their work starting/from sentence level to paragraph level, and to the essay level. It will further introduce students to summarizing, paraphrasing and quoting.
ENGL 118 English Composition II (3-0-3) Prerequisite: ENGL 117
This course complements English Composition I by introducing freshmen students to concepts and techniques necessary for writing a research paper. These include collection and evaluation of sources, note taking, and interpretation of data, synthesis, and documentation.
BUS 283 Industrial Psychology (3-0-3) Prerequisite: None
This course is designed to enable the student to understand the fundamentals of human relations, workplace interactions, the forces involved in group dynamics, the importance of psychological testing, counseling and guidance, and interviewing techniques.
CS 491 Field Training (0-40-6) Prerequisite: Senior Standing
A continuous period of full semester is spent in a selected work place relating to the field of study. This field internship is intended to provide students with an opportunity to use the knowledge and skills learned in college in an actual work setting. It is intended to be both practical and theoretical. A final report that summarizes all work performed and results obtained is required at the end of the internship.
CS 495 Senior Project (0-40-6) Prerequisite: Senior Standing
Students who encounter obstacles to be placed in a workplace are directed to do a senior project instead. Each student develops and carries out a project relevant to professional goals. The project generally involves background study or research, planning, implementation, evaluation, and preparation of a written report. A departmental Senior Project Committee must approve all project proposals, and this same committee will receive regular oral and written progress reports. Final results are presented as a paper in a style suitable for publication in a professional journal along with an oral report in a public symposium. To foster the principle of teamwork, students may be allowed to form small groups to execute the projects jointly. Students meet weekly to discuss their projects and the research experience. The project should be viewed as the culmination of the student's degree program.
GS 132 Physical Education II (0-2-1) Prerequisite: None
This practical course aims at maintaining students' fitness through developing practical skills in a number of sports including volleyball, swimming, and table tennis.
GS 233 Physical Education III (0-2-1) Prerequisite: GS 132
This practical course aims at maintaining students' fitness through developing practical skills in a number of sports including basketball, badminton, and handball.
GS 142 Health Education II (1-1-1) Prerequisite: GS 041
The course introduces female students with the human body's major systems focusing on diseases and illnesses most pertinent to women and resulting in their mortality and disability. The course provides female students with basic training for dealing with non-life-threatening and life-threatening emergencies at home, at work, in the family and elsewhere, and in their rules as mothers, wives, and colleagues. This includes First Aids, and Cardio Pulmonary Resistance (CPR) , Types of Infection, community common diseases including hypertension, diabetes, osteoporosis, and breast cancer.
GS 243 Health Education III (1-1-1) Prerequisite: GS 142
Examines current and historical influences on women's health throughout the life span. Anthropological, epidemiological, sociological, and political factors relating to specific health issues are presented. In addition to gender, the variables of race and class are examined as they affect women''s health.
GS 161 Arabic Practical Grammar (2-0-2) Prerequisite: None
Studying chosen parts of Arabic grammar, verbs, the five verbs, nouns that are subject to desinential infliction with letters, derivatives, abrogatives, indeclinable, numbers, hamzah, in a practical way with numerous applications.
GS 262 Arabic Professional Writing(2-0-2) Prerequisite: GS 161
Sources and forms of objective writing. Objective essay, reporting, evaluation, administrative messages, summary and scientific research.
GS 363 Arabic Communication Skills (2-0-2) Prerequisite: GS 262
Aims to develop the student's skills of effective language oral communication through conversational techniques, persuasion, influence, debating, interviews, etc.
GS 171 Belief and its Consequences (2-0-2) Prerequisite: None
The roots of the right faith, special characteristics of the Islamic faith, Islamic description of the universe, human beings and life, reasons for increasing the faith.
GS 272 Professional Ethics (2-0-2) Prerequisite: GS 171
Good behavior for the integrated Islamic personality, principles of social dealings, professional ethics.
GS 373 Human Rights in Islam (2-0-2) Prerequisite: GS 272
Special characteristics of Islam, the five totalities and their applications, Islamic systems {social, economic, punishment} .
BUS 261 Business Communications (3-0-3) Prerequisite: ENGL118
Principles, techniques, and skills needed to conduct scientific, technical, or business writing. Forms and styles of communication in and among business organizations, business letters, and library research projects and use of business periodicals. Preparation and presentation of oral reports will be covered. Instruction in the writing of reports, letters, and other exercises applicable to a wide range of disciplines and careers. Emphasis on clarity, conciseness, and accuracy of expression. Research techniques, information design, effective use of graphics. Eventually students will produce a properly formatted report, complete with outline and supporting graphic aids.
Mathematics and Sciences
MATH 111 Calculus I (4-0-4) Prerequisite: None
This is a basic differential calculus course designed to fulfill the needs of engineering and science students. Topics include: Review of functions, limits, continuity, derivatives of algebraic and transcendental functions of single variable, applications of derivatives, related rates, linearization, rectilinear motion, curve sketching and optimization, as well as Rolle's and Mean value theorems.
MATH 112 Calculus II (4-0-4) Prerequisite: MATH 111
This is a basic integral calculus course designed to fulfill the needs of engineering and science students. Topics include: Definite and indefinite integrals of functions of a single variable, fundamental theorem of Calculus, techniques of integration, hyperbolic functions, applications of the definite integral, area between curves, volume by slicing method, arc length of plane curve and area of surface of revolution, improper integrals, sequences and series, convergence tests, alternating series, absolute and conditional convergence, power series, Taylor and Maclaurin series.
MATH 211 Calculus III (3-0-3) Prerequisite: MATH 112
Polar coordinates, polar curves, area in polar coordinates. Vectors, lines, planes and surfaces. Cylindrical and spherical coordinates. Functions of two and three variables, limits and continuity. Partial derivatives, directional derivatives. Extrema of functions of two variables. Double integrals, double integrals in polar coordinates. Triple integrals, triple integrals in cylindrical and spherical coordinates.
MATH 216 Linear Algebra & Differential Equations (3-0-3) Prerequisite: MATH 112
Systems of linear equations. Rank of matrices. Eigenvalues and eigenvectors. Vector spaces, subspaces, bases, dimensions. Invertible matrices. Similar matrices. Diagonalizable matrices. Block diagonal and Jordan forms. First order differential equations: separable and exact. The homogeneous differential equations with constant coefficients. Wronskian. Non-homogeneous differential equations. Methods of undetermined coefficients and variation of parameters. Systems of differential equations. Non-homogeneous systems.
MATH 312 Probability & Statistics (2-3-3) Prerequisite: MATH 112
Presentation and interpretation of data, elementary probability concepts, random variables and probability distributions, binomial, Poisson, exponential, Weibull, normal and log normal random variables. Estimation, tests of hypotheses for the one sample problem. Simple and multiple linear regression, application to engineering problems. The lab session will be devoted to problem solving using statistics software.
SCI 152 General Physics I (3-3-4) Co-Prerequisite: MATH 111
First course of calculus-based, general physics sequence. Topics covered include particle kinematics and dynamics; conservation of energy and linear momentum rotational kinematics; rigid body dynamics; conservation of angular momentum simple harmonic motion; gravitation; the static and dynamics of fluids.
SCI 153 General Physics II (3-3-4) Prerequisite: SCI 152
A continuation of General Physics I. Topics covered include: wave motion and sound, temperature, first and second law of thermodynamics; kinetic theory of gases coulomb's law; the electric field; Gauss' law; electric potential; capacitors an dielectrics; D.C. circuits; the magnetic field; ampere's and Faraday's laws.
SCI 154 General Chemistry (3-3-4) Prerequisite: SCI 051
Chemical bonding, stoichiometry of pure substances, reactions, state of matter (gases, liquids, and solids), mixtures (with emphasis on some physical aspects of solutions), thermodynamics, chemical equilibrium, acids, bases and electrochemistry.
Computer Science
CS 101 Introduction to Computing (2-3-3) Prerequisite: CS 002
Overview of computers and computing. Introduction to a typical programming language, such as Java. Basic data types and operators. Basic object-oriented concepts. Wrapper classes. Console input/output. Logical expressions and control structures. Memory models and methods. Arrays and strings. More object-oriented concepts.
Lab work (Closed Lab)
Programming assignments to exercise the use of the various features of the object oriented programming language taught in the course. This may include the implementation of basic applets, numerical algorithms such as finding the average, standard deviation etc., as well as non-numerical algorithms such as basic recursive methods used in sorting and searching techniques.
CS 125 Computer Programming (2-3-3) Prerequisite: MATH 111
Introduction to engineering problem solving techniques using C++ programming language; employs a problem solving methodology to consider a diverse range of an engineering challenging issues. The emphasis on engineering and scientific problem solving remains as an essential constituent of the course. It covers software engineering models, focusing on the design and implementation of user-friendly and reusable computer solutions and structured programming.
CS 202 Introduction to Computer Science (3-3-4) Prerequisite: CS 101
Advanced programming concepts. Simple graphical user interfaces. Basic data structures. Searching and sorting techniques. Survey of computer science areas. Case studies and practice in developing small scale programs.
Lab work (Closed Lab)
Programming assignments to practice different problem solving strategies, with emphasis on sound object-oriented basis. Solving basic problems using static and dynamic data structures. Solving various searching and sorting algorithms using iterative and recursive approaches
CS 203 Discrete Structures-I (3-0-3) Prerequisite: MATH 111, CS 101
Propositional Logic, Predicate Logic, Sets, Functions, Sequences and Summation, Proof Techniques, Mathematical Induction, Inclusion-exclusion and Pigeonhole principles, Permutations and Combinations (with and without repetitions), The Binomial Theorem, Recurrence Relations; Graphs terminology and applications, Connectivity, Isomorphism, Euler and Hamilton Paths and Circuits, Planarity and Coloring; Trees terminology and applications.
CS 204 Discrete Structures-II (3-0-3) Prerequisite: CS 203
Number Theory: Modular Arithmetic, Integer Representation, Fermat's Little Theorem, Chinese Remainder Theorem, RSA.; Proof Techniques: Methods of Proofs, Applications from Number Theory, Recursive Definitions; Algorithms Correctness; Relations: Closures and Equivalence Relations, Partial Orderings and Lattices, Hasse Diagrams; Recurrence Relations and Generating Functions; Automata Theory: Finite State Machines, Regular Expressions, DFA, NDFA and their equivalence, Grammars and Chomsky Hierarchy, Introduction to Turing Machines; Abstract Algebra: Groups, Homeomorphisms and Lagrange's Theorem, Applications.
CS 205 Data Structures (3-3-4) Prerequisite: CS 202
Analysis of basic data structures. Specification and design of advanced abstract data types (ADTs) and garbage collection. Secondary storage structures and file processing. Introduction to design patterns. Case studies and practice in developing medium scale programs. Software development using inheritance, frameworks and component architectures.
Lab work (Closed Lab)
Programming assignments and projects for software applications that make use of the data structures introduced in class. Emphasis on design and implementation of object-oriented abstract data types. Stress on software development of medium scale applications using the developed ADTs ..
CS 206 Digital Logic Design (3-3-4) Prerequisite: SCI 153
Introduction to Computer Engineering. 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. Machine level programming.
CS 307 Programming Languages (3-0-3) Prerequisite: CS 205
Programming languages: Syntax and semantics. Data types. Control structures. Sub-Programs. Exception handling. Run-time Storage Management. Programming Paradigms: Imperative, functional, logic, object-oriented, and concurrent.
CS 308 Computer Architecture (3-0-3) Prerequisite: CS 202, CS 206
Memory hierarchy and cache memory. Integer and floating point arithmetic. Instruction and arithmetic pipelining, superscalar architecture. Reduced Instruction Set Computers. Parallel architectures and interconnection networks.
CS 315 Software Engineering (3-0-3) Prerequisite: CS 205
The software development process; Software requirements and specification; Software design; Software verification and validation; Software management; Software tools.
CS 310 Database Systems (3-3-4) Prerequisite: CS 205
Basic database concepts. Conceptual modeling. Relational data model. Relational theory and languages. Database Design. Database security and integrity. Introduction to query processing and optimization. Introduction to concurrency and recovery.
Lab work (Closed Lab)
Programming assignments to learn database design using CASE tools. Introduction to back-end/Server-based Relational Database Management System (RDBMS). Learning Standard SQL (interactive/embedded). Introduction and programming assignments on Front-End tools. Programming team projects to design and develop real life database systems using the learned tools.
CS 316 Object-Oriented Programming (3-3-4) Prerequisite: CS 205
Concepts of Object-oriented Programming. Programming in an object-oriented language such as C#, C++, or Java. Tools and class libraries. Object-oriented Software Development". The course provides hands-on practice on the programming language covered in the course.
Lab work (Closed Lab)
Programming assignments to exercise the use of the various features of OOP. This may include the implementation of classes, inheritance, polymorphism, functions, using the programming language that was covered in the course.
CS 312 Computer Organization & Assembly (3-3-4) Prerequisite: CS 308
Computer organization. Data and instruction representation. ASCII code. Binary and Hexadecimal number systems. Assembler directives versus machine instructions. Keyboard input and screen output. Instruction formats and types. Conversion between ASCII strings and binary numbers. Stack operations. Debugging. Interrupts. Macros. Video output. Disk I/O.
Lab work (Closed Lab)
Programming assignments to practice MS-DOS batch programming, Assembly Process, Debugging, Procedures, Keyboard input, Video Output, File and Disk I/O and Data Structure.
CS 313 Design and Analysis of Algorithms (3-0-3) Prerequisite: CS 205
Introduction to algorithms and review of data structure; Time and space analysis; Algorithm design techniques: divide-and-conquer, greedy algorithms, dynamic programming, search techniques; NP-complete problems and approximation algorithms.
CS 314 Operating Systems (3-3-4) Prerequisite: CS 308
History and evolution of operating systems. Types of operating systems. Case histories of significant operating systems. Processes, inter-process communication, process coordination and synchronization. Process scheduling. Memory management. File systems. Security and protection. Case operating systems.
Lab work (Open Lab)
Implementation of user-defined utilities/commands for UNIX by writing system programs using different types of system calls including those for file/directory management, process management, signal management, and client-server management. Also involve practice on various aspects of shell environment and shell programming.
CS 415 Computer Communications (3-0-3) Prerequisite: None
A clear and comprehensive study of computer communications including data communications, data communication networking, and computer communications architecture; Emphasizing both the fundamental principles as well as the critical role of performance in driving protocol and network design; explores in detail all the critical technical areas in data communications, wide-area networking, local area networking, and protocol design. It also provides updated coverage of multimedia, WiFi/IEEE 802.11 wireless LANs, and more.
CS 416 Computer Network Systems (3-3-4) Prerequisite: CS 312
The OSI model. Basic data communication concepts. Physical layer. RS-232 interface. Data link layer. Sliding window techniques. LAN medium access protocols: CSMN CD and token passing. LAN hardware and standards: Ethernet and Token Ring Network and transport protocols. TCP/IP. Internet working devices: bridges and routers. Network programming.
Lab work (Open Lab)
Low level programming of the RS-232 interface. High level programming using NetBlOS or Sockets. Use of LAN analysis tools.
CS 417 Social & Ethical Issues of Computing (3-0-3) Prerequisite: Senior Standing
Ethical problems that faces computer scientists. The codes of ethics of computing professional societies. The social implications of computers, computing, and other digital technologies.
CS 419 Introduction to Artificial Intelligence (3-0-3) Prerequisite: CS 203
Introduction to the types of problems and techniques in Artificial Intelligence. Problem-Solving methods. Major structures used in Artificial Intelligence programs. Study of knowledge representation techniques such as predicate logic, non-monotonic logic, and probabilistic reasoning. Examples of expert systems. Introduction to natural language understanding and various syntactic and semantic structures. Expert systems. Introduction to computer image recognition.
CS 420 Computer Graphics (3-1-3) Prerequisite: CS 205
Applications of Computer Graphics. Graphics systems and devices. Output Primitives. Attributes of Output Primitives. Two-Dimensional Transformations. Windows to Viewport Mapping and Clipping. Graphical User Interfaces and Interactive Input Methods. Two-Dimensional Object Representations. Three-Dimensional Object Representations. Three-Dimensional Graphics.
CS 424 Computer Security (3-0-3) Prerequisite: CS 202
A thorough and comprehensive study of information security; topics covered include ten domains in the Information Security Common Body of Knowledge, such as Security Management Practices, Security Architecture and Models, Business Continuity Planning (BCP) and Disaster Recovery Planning (DRP), Law, Investigations, and Ethics, Physical Security, Operations Security, Access Control Systems and Methodology, Cryptography, Telecomm, Network, and Internet Security. Students will be familiar with the design and implementation of security solutions that will reduce the risk of revenue loss and vulnerability.
CS 425 Web Engineering and Development (3-3-4) Prerequisite: CS 307
Examining a systematic, disciplined and quantifiable approaches to developing of high-quality, reliable and usable web applications; introduces the methodologies, techniques and tools that support their design, development, evolution, and evaluation. Topics covered include requirements engineering for Web applications, design methods and technologies, interface design, usability of web applications, accessibility, testing, metrics, operation and maintenance of Web applications. Specific technologies covered in this course include client-side (XHTML, JavaScript, and CSS) and server-side (Perl and PHP).
Lab work (Closed Lab)
Programming assignments to practice different problem solving of usability, maintainability, quality and reliability; many resources and tools that will be utilized such Perl Reference Guide, a full language and function reference for the PHP5 server-side scripting language, A well-written and easy-to-follow tutorial on the basic aspects of using a UNIX-based system., Core JavaScript 1.5 Reference, JavaScript Tutorial and Examples, the W3C's accessibility guidelines. Introduction to UML 2 Class Diagrams, and the Expressive Power of UML-Based Web Engineering.