Degree Plan

​Bachelor of Science in Computer Science (CS)

Program Objectives (Program Educational Objectives)

The Computer Science program at Jubail University College prepares graduates to:

  1. Apply knowledge and develop skills required to work effectively in a profession;
  2. Apply problem- solving skills to find solutions to problems that arise in the practices; including those related to business, industry, government and education sectors;
  3. Achieve contemporary knowledge and skills to excel in the ever-growing field of computer science.;
  4. Enhance self-confidence and ability to make proper decisions and effective communication; and
  5. Pursue lifelong learning and continuing education.
Program Outcomes (Student Outcomes)

On successful completion of the program graduates should be able to:

  1. Outline knowledge of computing and mathematics appropriate to the discipline;
  2. Analyze a problem, identify and define the computing requirements appropriate to its solution;
  3. Design, implement and evaluate a computer-based system, process, component, or program to meet desired needs;
  4. Function effectively on teams to accomplish a common goal;
  5. Show professional, ethical, legal, security and social responsibilities;
  6. Demonstrate effective communication skills with a range of audiences;
  7. Recognize the local and global impact of computing on individuals, organizations, and society;
  8. Demonstrate the need for, and an ability to engage in continuing professional development;
  9. Use current techniques, skills and tools necessary for computing practice;
  10. 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
  11. Apply design and development principles in the construction of software    systems of varying complexity.

 

Jobs Titles

List of the Job Titles adopted from the Ministry of Labour are:

  • General System Analyst

  • Operations Analyst

  • Computer Programmer

  • Computer Network Supervisor

  • Data Bank System Programmer

  • Database Supervisor

  • Computer Trainer

  • Program & System Documentation Specialist

  • Junior Database Administrator

  • Junior System Manager

  • Junior Network Administrator

  • Datacenter/Real-Time Environment Specialist

  • Technical Services Specialist

  • Junior Software Developer

  • Junior Information Manager

  • Internet Administrator

  • Security Specialist

  • Junior Security Administrator

  • Software Engineering Specialist

Bachelor of Science in Computer Science

First Year, 1st Semester (1) (Preparatory) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
ENGL 001English I1558-
MATH 011Mathematics I404-
CS 001Introduction to Information Technology132-
GS 021College Study Skills021-
GS 031
GS 041
Physical Education I (Male)
Health Education I (Female)
0/12/11-
TOTAL 520/2112/1116

 

First Year, 2nd Semester (2) (Preparatory) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
ENGL 002English II1558ENGL 001
MATH 012Mathematics II404MATH 011
CS 002Introduction to Computer Applications132CS 001
SCI 051Physical Sciences132-
TOTAL 4211116

Total credit hours required in the Preparatory Program: 32

Second Year, 1st Semester (3) (Freshman) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
MATH 111Calculus I404MATH 012
ENGL 117English Composition I303ENGL 002
GS 132
GS 142
Physical Education II (Male)
Health Education II (Female)
0/12/11GS 031
GS 041
SCI 152General Physics I334SCI 051
SCI 154General Chemistry334SCI 051
GS 171Belief and its Consequences202-
TOTAL 615/168/918

 

Second Year, 2nd Semester (4) (Freshman) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
MATH 112Calculus II404MATH 012
ENGL 118English Composition II303ENGL 002
CS 101Introduction to Computing233CS 002
SCI 153General Physics II334SCI 152
GS 161Arabic Practical Grammar202-
CS 125Computer Programming233MATH 111
TOTAL 616919

 

Third Year, 1st Semester (5) (Sophomore) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
CS 202Introduction to Computer Science334CS 101
CS 203Discrete Structures I303

MATH 111

CS 101

MATH 211Calculus III303MATH 112

GS 233

GS 243

Physical Education III (Male)

Health Education III (Female)

0/12/11

GS 132

GS 142

GS 262Arabic Professional Writing202GS 161
GS 272Professional Ethics202GS 171
BUS 283Industrial Psychology303-
Total: 716/175/418

 

Third Year, 2nd Semester (6) (Sophomore) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
CS 204Discrete Structures II303CS 203
CS 205Data Structures334CS 202
CS 206Digital Logic Design334SCI 153
MATH 216Linear Algebra & Differential Equations303MATH 112
GS 363Arabic Communication Skills202GS 262
TOTAL 514616

 

Fourth Year, 1st Semester (7) (Junior) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
CS 307Programming Languages303CS 205
CS 308Computer Architecture303

CS 202

CS 206

CS 315Software Engineering303CS 205
CS 310Database Systems334CS 205
MATH 312Probability & Statistics233MATH 112
TOTAL 514616

 

Fourth Year, 2nd Semester (8) (Junior) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
BUS 261Business Communication303ENGL 118
CS 316Object-Oriented Programming433CS 205
CS 312Computer Organization & Assembly433CS 308
CS 313Design and Analysis of Algorithms303CS 205
CS 314Operating Systems433CS 308
TOTAL 515918

 

Fifth Year, 1st Semester (9) (Senior) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
CS 416Computer Network Systems334CS 312
CS 425Web Engineering and Development333CS 307
GS 373Human Rights in Islam202GS 272
*CS xxxElective I303Depends on course taken
*CS xxxElective II303Depends on course taken
TOTAL 514616

 

Fifth Year, 2nd Semester (10) (Senior) ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req

CS 491*

CS 495**

Field Training

Senior Project

0400Senior Standing
TOTAL 10406

*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.

 

Elective Courses ​ ​ ​ ​ ​
Course CodeCourse TitleLecLabCreditPre-req
CS 415Computer Communications303-
CS 417Social and Ethical Issues of Computing303Senior Standing
CS 419Introduction to Artificial Intelligence303CS 203
CS 420Computer Graphics303CS 205
CS 424Computer Security303CS 202
TOTAL 5

Only 2 out of 5 elective courses must be taken.

Description

College Requirements


ENGL001 English I (15-5-8)                                                               Prerequisite: None

This is an integrated high-beginning level English course including instruction in Reading, Writing, Listening/Speaking and Grammar. This course is designed to improve students' overall ability in the above-mentioned skills. Emphasis is given to class activities and practices geared toward the development of comprehension as well as fluency, immersing students in authentic language used in everyday situations and purposes related to work, social life and leisure.

ENGL 002 English II (15-5-8)                                                        Prerequisite: ENGL 001

This is a continuation of ENGL 001 with an emphasis on a mastery of the materials introduced in English 001, namely in Reading, Writing, Listening/Speaking and Grammar. This course is designed to enable students to feel comfortable in the use of the English language in the academic community.

MATH 011 Mathematics I (4-0-4)                                                        Prerequisite: None

This course is mainly a theoretical course. It is designed to provide basic and fundamental knowledge of math concepts that is required in further study courses. The topics include: Real numbers, integral exponents and scientific notation, polynomials and their operations, rational functions, radicals, complex numbers, equations and inequalities in one variable, linear & quadratic equations, non-linear inequalities in one variable, linear & quadratic functions and their graphs, synthetic division, fundamental theorem of algebra and graphs of polynomial and rational functions. The students may work on computers using the provided software for enhancement of the different math topics of the course.

MATH 012 Mathematics II (4-0-4)                                               Prerequisite: MATH 011

This course is mainly a theoretical course. It is designed to build a strong base in algebra and trigonometry that is needed for further courses. The topics include:

Exponential and logarithmic functions and their equations, trigonometric functions of any angle, fundamental properties of sine and cosine graphs, trigonometric identities, trigonometric equations and inverse trigonometric functions, systems of linear equations in two and three variables, matrices and determinants, solving linear systems by matrix and determinant methods. The students may work on computers using the provided software for enhancement of the different math topics of the course.

SCI 051 Physical Sciences (1-3-2)                                                       Prerequisite: None

This course is both theoretical and practical and composed of two major components, chemistry and physics. The former part is designed to provide an introductory knowledge for students in chemistry. The course enables students to learn about the atoms and periodic table, elements of chemistry, mixtures, chemical bonding molecular mixing, acids and bases, oxidation reduction and organic compounds with its related subjects such as drugs and plastics.

The practical components of the course include laboratory experience to develop the students ability in experimentation, observation, measurements and also documentation. The physics part, on the other hand, provides students with sufficient understanding and knowledge in Physics, and develops their physics practical skills to meet the requirement of their respective specializations. The main topics include Mechanics, heat, electricity and magnetism, and waves - sound and light.

ENGL 117 English Composition I (3-0-3)                                      Prerequisite: ENGL 002

The course provides pre-composition practice from sentence to paragraph. It also develops basic skills in using the library.

ENGL 118 English Composition II (3-0-3)                                    Prerequisite: ENGL 117

It is a continuation of course ENGL 117. The course provides writing practice from paragraph to essay. It also offers practice in letter and concise writing and handles common errors in mechanics and style.

BUS 283 Industrial Psychology (3-0-3)                                            Prerequisite: None

This course is designed to enable the student to understand the fundamentals of human relations, the forces involved in group dynamics, the importance of psychological testing, counseling and guidance, interviewing techniques, and an understanding of the use and interpretation of Statistical analysis.

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 031 Physical Education I (0-2-1)                                                 Prerequisite: None

This practical course aims at maintaining students' fitness through developing practical skills in a number of sports including physical fitness, football, and tennis.

GS 132 Physical Education II (0-2-1)                                              Prerequisite: GS 031

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 041 Health Education I (1-1-1)                                                   Prerequisite: None

The course aims to introduce female students to health, physical activity and fitness as important components to quality filled life. It discusses the importance and components of a fitness program with its principles and activities. Nutrition/diet programs, body fats and body weight are discussed with their effect on health.

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 021 College Study Skills (0-2-1)                                                 Prerequisite: None

This is a preparatory year course aimed at addressing issues facing new students on transferring from the secondary to further college education. Skills gained during this course include motivation, time management, effective participation and note writing in lectures and preparing for exams.

CS 001 Introduction to Information Technology (1-3-2)                Prerequisite: None

The students will be introduced to the main areas of Information Technology and the impact of Information Technology on society. Students will also be introduced to the main concepts and operations of a PC as well as key skills in working in a Windows ­based environment and word processing. The Students will also be introduced to the general concepts of networks, Internet and intranet.

CS 002 Introduction to Computer Applications (1-3-2)               Prerequisite: CS 001

This course will provide the students with the necessary IT key skills that will help in the course of their study. They will have hands-on experience in using a productivity tool and acquire some skills in Spreadsheets, Databases and Presentation.

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: MATH 012

Limits and continuity of functions of a single variable. Differentiability. Techniques of differentiation. Implicit differentiation. Local extrema, first and second derivative tests for local extrema. Concavity and inflection points. Curve sketching. Applied extrema problems. The Mean Value Theorem and applications.

MATH 112 Calculus II (4-0-4)                                                    Prerequisite: MATH 111

Definite and indefinite integrals of functions of a single variable. Fundamental Theorem of Calculus. Techniques of integration. Hyperbolic functions. Applications of the definite integral to area, volume, arc length and surface of revolution. Improper integrals. Sequences and series: convergence tests, integral, comparison, ratio and root 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)                                                Prerequisite: SCI 051

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-0-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