Bachelor of Science in Computer Science – Network Security
Securing Technological Platforms
The College of Engineering and Technology’s innovative Network Security specialization program is offered to meet critical business environment needs, guided by industry trends, driven by technology, and constantly evolving. The demand for security specialists in the region is constantly growing.
The program focuses on the practical and theoretical dimensions of cyber security across a range of fundamental areas, such as network security, vulnerability assessment, information security, wireless devices security, business continuity, cloud security, and database security.
The emphasis of the program is to prepare students with the knowledge and skills necessary to secure LAN/WAN, computers, detect and analyze attacks and threats, respond to attacks, develop security policies, procedures, and standards.
Mission
The mission of the computer science program is to equip students with a robust foundation in computer science and information technology, preparing them for competitive careers and industry challenges. We aim to foster teamwork, ensuring our graduates can contribute significantly to organizational goals and demonstrate effective communication skills.
Our program emphasizes adherence to ethical and legal standards, encouraging responsible professional conduct. We are committed to promoting lifelong learning, enabling graduates to acquire advanced knowledge and skills, adapt to technological advancements, and address societal needs.
Program Educational Objectives
- Secure a competitive career in the field of computer science or related disciplines, demonstrating a strong foundation and readiness for industry challenges.
- Contribute significantly as a team member in achieving the organization’s mission, displaying teamwork skills and a commitment to organizational objectives.
- Communicate effectively through various methods.
- Adhere to ethical and legal standards and policies and assess the implications of professional activities responsibly.
- Engage in lifelong learning to acquire advanced professional knowledge and skills, facilitating career advancement and responsiveness to the evolving landscape of technology and societal needs.
Program Learning Outcomes (Student Outcomes)
- Analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
- Analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline.
- Apply computer science theory and software development fundamentals to produce computing-based solutions.
- Communicate effectively in a variety of professional contexts.
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
ADMISSION REQUIREMENTS
For further information, please click here
GRADUATION REQUIREMENTS
For undergraduate degree completion, undergraduate students must satisfy the following requirements:
- Earn a minimum CGPA of 2.00 on a scale of 4.00.
- Successfully complete all courses as described in the study plan.
- The Degree Completion requirements must be met within the timeframe of the program.
- Transfer students must successfully earn a minimum of 50% of the course credits for the program at AUE.
ACCREDITATION
The BSCS is accredited by the UAE-CAA and ABET-CAC.
Preparatory Courses
Prior to their enrollment in the program, students applying for Bachelor of Science in Computer Science must sit for the placement test related to the program, failure to successfully passing the placement test, they are required to enroll in the following courses:
| # | Course Code | Course | Credit Hours | Exemption Condition |
| 1 | CIT 90 | Computer Preparatory | 0 | Passing the Placement Test |
| 2 | MAT 90 | Mathematics Preparatory | 0 | Passing the Placement Test |
| 3 | PHY 90 | Physics Preparatory | 0 | Passing the Placement Test |
| 4 | ENG 99 | Academic Writing (*) | 0 | Passing the Placement Test |
PROGRAM STRUCTURE
Course Category
Total Number of Courses
Total Number of Credit Hours
Bridging Courses
10
30
Core Courses
27
81
Elective Courses
5
15
Total
42 Courses
126 Credit Hours
* Bridging Courses (5 courses/10 CH) * required for students who have their bachelor’s degree in different field than Business
PROGRAM MODULES & DESCRIPTIONS
GENERAL EDUCATION COURSES
10 COURSES | 30 CREDIT HOURS
A: University Core Requirements
The student selects 6 credit hours (2 courses) from the list below:
B: Languages and Communication Studies
The student selects 9 credit hours (3 courses) from the list below:
Students must take one of the following Arabic Language courses:
C: The Natural sciences or Mathematics
The student selects 3 credit hours (1 course) from the list below:
D: The Social or Behavioral Sciences
The student selects 3 credit hours (1 courses) from the list below:
E: Humanities or Arts
The student selects 3 credit hours (1 course) from the list below:
F: Islamic Studies
The student selects 3 credit hours (1 course) from the list below
G: UAE Studies
The student selects 3 credit hours (1 course) from the list below
CORE COURSES
27 COURSES | 81 CREDIT HOURS
The purpose of this introductory course is to study computers and data. It gives an establishment to utilizing computers in different courses and educational module for research, correspondence, and writing. Students will be exposed to the fundamentals of hardware and its associated software and systems improvement. The course will show how the computer automates the processing of information.
Physics course introduces the basic concepts, theories and terminologies of the scientific method in the context of the science of physics. Students will reinterpret and express ideas and views of our physical world from the basic principles of physics. Mathematics being the physics’ language, students enrolled in this course are expected to be able to deal with simple vectors operations, basics of calculus (differentiation and integration), algebraic relations and trigonometric functions. This course allows students to differentiate between the various multitudes of measurement, learn kinematics including translational and rotational motion together with the motion of projectiles, interpret forces and torque, and then apply Newton’s Laws to analyze objects situations. Students will be able to set up equations related to energy conservation, work and momentum conservation.
This course explores the physical concepts of electrostatics and electromagnetism. This subject benefits the students to develop sold background of the electricity and magnetism fundamentals. Topics include: electric charge, electric field, Coulomb’s law, Gauss’s law, electronic component such as resistors, capacitors and indicators, direct and alternative currents and various experiments that focused on the given topics.
This course is an introduction to differential and integral calculus. It begins with a short review of basic concepts related to functions. Then it introduces the concept of a limit to a function. It then unfolds to the study of derivatives and their applications. Thereafter it considers the area problem and its solution, the definite integral.
This course introduces students to the fundamentals of computation problem solving. The course covers the main principles of algorithm-based problem solving and implementation of solutions using a computer programming language. Students will learn the essential programming concepts and computation problem solving such as algorithms, data flow, decomposing large problem into smaller components, program design, data types, control structures, functions and handling input and output. The course includes several labs to give hands-on experience to students.
The course introduces Object-Oriented programming language and design using high-level programming language. The course aims at introducing abstraction, information hiding, classes, methods, attributes, inheritance, polymorphism, file processing, overloading, exception handling, reading and writing from text files. The course includes hands-on exercises that will help students develop skills required to develop functioning programs for solving computing problems.
This course offers an introduction to electronic models with logic design and the basic concepts used in digital systems. The course covers the design and applications of combinational logic components and sequential circuits. The course includes details of how computer systems are developed by highlighting the basic concepts involved in computer theory like truth tables, binary arithmetic, and standard representation of logic functions.
Students who have taken calculus 1, can take this course to excel in the taught subjects. The course will focus on Transcendental Functions, Techniques of Integration, Infiniti Series, integrals and their applications methods and optimization techniques using partial derivatives. Furthermore, students will learn various concepts of curl and divergence and apply them to real-life context.
In this course, students apply basic knowledge of essential science, math, and designing standards to solve computational problems. This course aims to strengthen the capability of students to develop algorithm and classify the proper data structure method to solve the problem. Algorithms define the approaches for giving solutions utilizing computer facilities. Regularly, the aim is to develop fast computational methods using the least number of resources. For example, specific data structures are used to organize large numbers of records by quickly defining the existing records and/or quickly finding and inserting deleted and new records. The course will concentrate on Big O notation, arrays, stacks, queue, lists, trees, heap and hashing techniques.
In this course students will learn linear algebra and develop an appreciating on how the application of this branch of mathematics plays an important role in many computer science undertakings and help solving diverse problems in internet search, data mining, machine learning, graphic design, compilers, bioinformatics, relational database design, and database optimization. The course aims to improve the analytical thinking skills of students through their ability to understand the core principles of linear algebra, such as linear equations, matrices, vector spaces, coordinate systems, determinants, linear operators, linear transformations, eigenvalues, eigenvectors, orthogonality, and quadratic Forms, and then be able to apply these techniques to solve basic problems in IT.
This course covers the basic concepts of web design techniques. Its main topics are Hypertext Markup Language (HTML) and Cascading Style Sheets (CSS). Students do not need any programming skills. previous knowledge of HTML or web design. This course introduces to students how to develop webpages and website using different tools such as HTML editors and web browsers. They will learn how to write HTML code using different techniques. They will be taught to enhance the format of websites using styling and layout, to improve webpage look and feel through images, graphics and tables and to enrich their contents by adding audio, video and multimedia files. In addition, students will work in groups to create a website combining all the techniques they have learned throughout the semester.
This course of discrete mathematics aims to introduce students to concepts, ideas, and techniques that are widely used in computer science. The goal of this course is to teach various topics in discrete mathematics that qualify students to think logically and mathematically to solve problems in computer science. To achieve this goal, students will study logic and proofs concepts, basic structures, set operations, functions, sequence and summations. Moreover, the following concepts constitute part of the course, as well: methods of proving theorems, induction and recursion, basic rules of counting, pigeonhole principles, permutation and combination, discrete probability, advance counting technique, graph terminology, Dijkstra’s algorithm, traveling salesman and trees.
Multimedia Technology course will enhance the understanding of fundamentals of multimedia techniques using computer software. The course shall go into deep details of defining features, uses and practical development considerations for each of the major multimedia content such as text, graphics, sound, and video. Several compression algorithms for digital and analog multimedia content will be covered. A portion of this course concentrates on how communication of multimedia content works by highlighting various networking techniques to efficiently communicate by avoiding errors in communication. The course includes several hands-on exercises on creation and manipulation of multimedia content using various tools like Adobe Photoshop, Audacity and Windows Movie Maker etc. These exercises will strengthen the practical multimedia production skills. Furthermore, students will be equipped with skills and knowledge of enhancing the web pages using HTML and ASP.NET language embedded codes for video, sound, text and images.
This course covers the essential operating system concepts. The students will be provided an introduction to operating systems including a brief history of development through the years and the five managements under each operating system. The course will also cover the topics including processes and threads in context of resource management, memory management and related schemes, CPU scheduling algorithms and file systems. Several alternative algorithms related to page replacement policies and CPU scheduling are discussed along with understanding their advantages and disadvantages. The role of the device manager will be emphasized in the context of resource sharing. Other topics such as concurrent processes and synchronization, deadlocks and security are also presented briefly. Furthermore, the students will get hands-on practical labs on modern Operating Systems including Linux and Windows. The advanced labs will introduce the practice of a scripting language to understand the various topics presented through the course outline.
This course is designed to provide a needed background to understand computer networks. It describes types of networks, how networking affects society, and the components and tools that are used to create networks in various business models. The course also introduces networking, offering easy-to-follow details on hardware, networking protocols, remote access, and security. New networking professionals will first learn what they need to know about network technology, and then how to apply that knowledge to set up, manage, and secure networks.
This course is about the concepts of theory of computation. It covers the subject from a mathematical approach based on design of theorems and proofs. It brings together main concepts, such as the equivalence of deterministic and nondeterministic finite automata, and the conversions between pushdown automata and context-free grammars to produce an efficient and clear method for parsing. Furthermore, students will study different concepts related to computational theory that include, but not limited to regular expressions, Turing machines and its variants, decidable languages, recursion theorem, and complexity.
Students who have taken calculus II can take this course to excel in the taught subjects needed by computer scientists. The course will demonstrate the use of differential equation in mathematical and real-life modeling. In addition, parametric equations and polar coordinates will be tackled later in the course. Furthermore, students will learn various concepts of infinite sequences and series and apply them in different context.
Numerical analysis deals mainly with algorithms that apply numerical estimation to tackle mathematical analysis problems. This course introduces, to students, numerical algorithms as methods to develop solutions to prevalent problems articulated in different disciplines such as science, engineering, and mathematics. The emphasis is to make students understand the concepts of construction, application, and restrictions of numerical algorithms. The course includes numerical methods to solve equations, polynomial interpolation, differential and integration equations, analysis of numerical errors and applications of these analyses. The course will also help students to acquire skills in problem solving.
This course is designed to introduce database concepts and data models such as hierarchical, networks with more focus on relational databases and ER modeling. The course aims to introduce the database normalization process and enables students to design basic databases through hands-on exercises, case studies, and a teamwork project.
The course will introduce modern programming languages and their concepts. The course emphasizes the rationale for studying programming languages and the criteria to evaluate them. The concepts of language design, constructs and common design trade-offs will be discussed. Topics include Syntax and semantics of languages, Data types, Names, Bindings, Scopes, Expressions and Assignment Statements, Control Structures, Subprograms and their implementation. This course also covers the advanced topics such as abstraction and concurrency support offered by modern programming languages. Furthermore, the latest trends such as functional programming paradigm will be explained in the course. The hands-on exercises of this course will help students to explore new languages and take well-informed decisions for their future projects.
This course discusses main concepts of computer architecture and organization such as the behavior and structure of different computer’s functional modules. Students will learn as well how these functional modules interact to meet users’ processing needs. In addition, the course will introduce students to basic computer organization, data representation and computer arithmetic, digital components, digital logic circuits, register transfer, micro-programmed control, input- output organization, central processing unit, memory organization and pipe-lining.
Computer Ethics is an interdisciplinary course. The course reflects the rapid expansion of information technology and the civic and ethical challenges that have emerged from the expansion. The course content is organized around a number of issues that are of immediate concern, including threats to privacy from massive database, data mining, high-speed networks, workplace surveillance, the electronic theft of intellectual property, such as music, video, film and text, and catastrophic computer -related accidents such as airplane crashes and nuclear power plant shutdowns.
CCIT offers the Internship program as a graduation requirement for students in the Computer Science and IT Management programs. This program allows students link theory to real world practice. The student is required to complete 280 working hours within 2 months. During this time, the student submits 4 reports explaining the tasks conducted and the skills gained/improved. At the end of the semester, the student provides an oral presentation that explains his/her performance during the internship
This course provides a foundation for students to explore the field of Artificial Intelligence (AI). This course covers the introduction to basic concepts and techniques that are essential to many AI applications. The topics discussed include intelligent agents and environment, classical search, knowledge representation and reasoning techniques, first order logic with its syntax and semantics, classical planning with its algorithms, and the uncertainty knowledge approaches such as probabilistic and Bayesian networks. Students will expand their knowledge to practice in a wide range of applications such as computer vision, robotics, and natural language processing.
This course aims to introduce the theoretical concepts and methodologies of software engineering to students. In particular, this course concerns with software engineering concept, software processes including process models, process activities, process improvement and coping with changes, agile software development and agile methods, requirement engineering, system modelling, implementation, testing and evolution. The course aims to deliver a comprehensive and complete theoretical framework of software development activities and design essentials to students. By the end of course, student will submit a project that addresses the concepts, methods and techniques learnt during the course to tackle certain real life problem. The project is a group project maximum of two students.
This course aims to clarify the processes modifying-on an existing system or proposing a new system that facilitates the achievement of clearly defined business objectives. The course introduces Systems Development Life Cycle (SDLC) methodologies and explains the SDLC phases starting from Planning: by developing a comprehensive system proposal document that includes the business analysis, feasibility analysis and scheduling the tasks of developing the new system, moving to Analysis where requirements are being defined, use case analysis, data flow and entity relationship diagrams are introduced. Then to system design by introducing system acquisition strategies, architecture, user interface, program and database design, to the implementation phase and finally the transition to the new system.
The goal of the capstone graduation project is to evaluate the aptitude of students to independently complete a project in an area of their preference (e.g., software and web development, network administration and security systems, database systems, and digital forensics). The responsibilities required are identifying a research area and developing a project proposal identifying the research aim, objectives, research plan, time schedule, and estimated budgets. Students are required to present their findings through an oral presentation and written thesis.
SPECIALIZATION COURSES
5 COURSES | 15 CREDIT HOURS
Network Security
The course will be a mix of theory and practice; where the concepts will be introduced and interface prototyping and evaluation will be conducted.
The course enables students explore distinct areas of Information Technology which are not covered in the regular course work and focuses on the identification of long-term overall aims and interests and the means of using Information Technology to help businesses achieve their organizational goals. Topical issues including using Information Technology to elevate production by suppling uninterrupted processes which optimize resources and allow organizational leaders to make quick, accurate, and consistent decisions are studied via case studies analyses.
By learning through an array of teaching methods and cutting edge research in Information Technology students are prepared for successful leadership roles in organizations and government. Students on this course also acquire skills and knowledge that ensure any implemented Information System meets industry best practice. Topics covered in this course include Information Technology implementation strategies, Operations and post implementation of Information Technology, Information Technology program and project management, Organizational change and Process Reengineering, global ethics and security management, value chain and data analysis.
RECOMMENDED STUDY PLAN
