Computer Department
Course Description
View Course description as PDF file:
- College Requirements
- Department Compulsory Requirements
- Department Elective Requirements
- Data Science and AI Courses
- Business Administration Courses
- College Requirements
- Department Compulsory Requirements
- Department Elective Requirements
- Data Science and AI Courses
- Business Administration Courses
College Requirements
22105 English for Science and Technology
This course aims to provide students of the Faculty of Science with a solid foundation in scientific English, focusing on the four language skills. It also aims to introduce students to strategies necessary for handling scientific texts and to enhance their knowledge of vocabulary and essential grammar commonly used in writing lab reports and other tasks required in scientific and technological courses.
T1101 Calculus for IT Students
This course reviews the concepts of functions, limits, continuity and derivatives, tangent and normal lines, local extrema, concavity, related rates, vertical and horizontal asymptotes, the mean value theorem of differentiation and its applications, the definite integral, the fundamental theorem of calculus, the indefinite integral, applications of the definite integral, and area
41130 Principles of Statistics
Introduction to variables and data, describing data with graphs for categorical and quantitative data: Pie charts, Bar-charts, Line charts. Graphs for quantitative data: Dot plots, stem and leafs, Histograms. Describing data with numerical measures: measures of central tendency, measures of variation, on the practical Significance of standard deviation. Probability, the role of probability, events and the sample space, calculating probabilities. The normal distribution, Z-Table and standard Normal. Tabulated areas of the normal distribution, the normal approximation for the binomial probability. Poisson distribution.
T1111 Introduction to Computer Programming
This course is intended to introduce the fundamental concepts of computer programming. Also, it is indented to introduce the syntax and semantic of C++ programming language. Additionally, students are intended to learn how to use programming concepts and C++ language for solving simple real-world programming problem
T1112 Object Oriented Programming
This course is intended to introduce the fundamentals of Object-Oriented programming approach (OOP). Mainly, classes and objects as basic OOP building blocks. Also, it will discuss the main characteristics of OOP (i.e., Abstraction, Encapsulation, Inheritance, and Composition). Additionally, students are intended to learn how to use C++ language for building their own classes and how practically applying Object-Oriented characteristics in their own programs.
T1115 Introduction to Computer Programming Lab
This laboratory represents the practical application of the concepts that are given in the course of introduction to computer programming.
T1115 Object Oriented Programming Lab
This laboratory represents the practical application of the concepts that are given in the course of the object-oriented programming
T1180 Introduction to Information Technology
The course introduces current models of information systems and the components of these systems and how do they interact. it also discusses different technologies and their role in managing our lives, these technologies include communication networks, databases, and Internet. Ethics and ethical theories of personal and group behaviors with different case studies are also discussed in this course
T1280 Scientific Research Methodologies
This course is intended to assist students in planning and carrying out research projects. The students are exposed to the principles, procedures and techniques of implementing a research project. The course starts with an introduction to research and carries through the various methodologies involved. It continues with finding out the literature using computer technology and ends with knowing the tools used for data analysis in various systematic ways, and writing the report
T1281 Ethics of Information Systems
Digital-age intersection of information and ethics with emphasis on key areas of intellectual property, privacy, confidentiality, authenticity, plagiarism, diversity/inclusion and special populations, accessibility, intellectual freedom, censorship, social networking, cyberbullying, security, preservation, transparency, accountability, policy making, and professionalism. Ethical theories and application of ethical decision-making models to real-world library and information center scenarios. Analysis of codes of ethics. Issues and resources related to creation, implementation, enforcement, and assessment of institutional ethical codes.
Department Compulsory Requirements
T1207 Selected Topics in Mathematics
This course reviews the basic concepts of real numbers and their properties, exponents and logarithms properties. In addition it gives the students basic knowledge of linear algebra concepts includes; matrices and their operations, determinants, invertible matrices, solving linear systems of equations, vector spaces, eigenvalues and eigenvectors, and linear Transformations. Also, it studies basic number theory concepts; divisibility theory, lineardiophantine equations, prime numbers, prime factorization, and congruence’s. Then, relations will be discussed including definitions and examples, inverses and composites of relations, equivalence relations, and partitions. Next, we introduce the basic concepts and results for graph theory. At the end, we do almost the calculations we see using
Mat Lab software.
T1219 Theory of Computing
The course includes the following topics, Introduction to the theory of computation , deterministic and non-deterministic automata, regular expressions, context free languages, push down automata, and Turing machines.
This course combines digital logic design with computer organization and architecture. The first part covers number systems and conversion, minterm and maxterm expansions, combinatorial logic circuit, examples of common combinational circuits such as: adders-subtractor, multiplexers, encoders and decoders, sequential circuits flip-flops, counters and registers. The second part of this course introduces the concepts of computer architecture and organization, it covers: machine level data and instruction representation, CPU performance analysis, organization of the processor datapath and control, pipelining and memory system hierarchy
T1229 Data Structures and Algorithms
This course will cover data structure basics including arrays, records, classes and objects, stacks, queues, it also covers algorithm design and analysis techniques such as divide-and-conquer, dynamic programming, and greedy algorithms. Specific topics include algorithm analysis, recurrences and asymptotic analysis; searching, sorting; algorithms for fundamental graph problems, such as depth-first search, connected components, topological sort, shortest paths. Hash tables and recursion are covered as well.
T1230 Data Structures and Algorithms Lab
The lab focuses on applying the concepts of data structures and algorithms and their implementations in solving problems. These applications include uses of ADT like list, stack, queue, trees, and graphs. Analysis of algorithm behavior asymptotically and comparisons among them using different algorithm techniques incremental, and divide and conquer techniques. Practice on using greedy and dynamic programming meta techniques to solve optimization problems.
T1152 Discrete Information Structures
This course focuses on the fundamentals of logic (the laws of logic, rules of inferences, quantifiers, proofs of theorems, digital logic circuits, numbering systems), Fundamental principles of counting (permutations, combinations), set theory, relations and functions, graphs, trees and sorting.
T1309 Mobile Devices Programming (1)
This course aims to introduce the basic principles of mobile programming under mobile operating system such as Android OS . Students will learn how to install the libraries and plug-ins required to build a mobile application, how to use components in their applications, and how to publish their application in a format that can be installed on mobile devices.
T1313 Visual Programming
This course aims to introduce students to software development techniques applicable in a component-based, integrated software development environment in which the focus is on windows-based products. Students will learn about (and practice using) object-oriented software design techniques, the VB .NET language, and approaches to better forms design. Students will also learn how to navigate about and take full advantage of an integrated development environment and how to build quality user interfaces with databases and sequential files.
T1214 Data Base Systems (1)
This course aims to give the students the ability to design databases. We will stress the fundamentals of data modeling and design. The languages and facilities provided by database management system and system implementation techniques. We will introduce the students the basic concepts and terminology, and conceptual modeling principles.
T1315 Data Base Systems (2)
This course provides an in-depth exploration of advanced database concepts, focusing on both SQL (relational) and an introduction to NoSQL (non-relational) database systems.
T1320 Visual Programming Lab.
This course complement the Visual Programming course where practical issues in visual programming are discussed. The lab focuses on applying the concepts of visual programming and their implementations in solving problems.
T1323 Operating Systems (1)
The course will start with a brief historical perspective of the evolution of operating systems over the last fifty years and then cover the major components of most operating systems. This discussion will cover the tradeoffs that can be made between performance and functionality during the design and implementation of an operating system. Particular emphasis will be given to three major OS subsystems: process management (processes, threads, CPU scheduling, synchronization, and deadlock), memory management (segmentation, paging, swapping), and file systems; and on operating system support for distributed systems.
T1225 Data Base Systems Lab.
This course complement the database 1 course where practical issues in database are discussed. Students are taught basic skills on using MS ACCESS database management system according to theory of database provided in database 1 course.
T1330 Software Engineering (1)
This course introduces software engineering as a discipline, discusses stages of the software life cycle, compares development models such as waterfall, prototyping, incremental/iterative and Agile methods. This course also covers important topics in SE: requirements analysis, effort and cost estimation, compares structured and object-oriented analysis and design methods. It also discusses verification/ validation, quality assurance, software reliability, testing methods, maintenance, documentation, project management and team structure, metrics, and available tools.
T1331 Software Engineering (2)
This course is an advanced level of software engineering which develop your understanding of the concepts and methods required for the construction of large software systems. This course will cover many topics include: Agile software development, OOD using UML, SW Evolution, Security Engineering, Software Reuse, Component-based Software Engineering, Project planning, Quality management, Configuration management, and Process improvement.
T1333 Computer Graphics
Computer Graphics methods are used in the design of most products like games, training simulators, production of music videos, television commercials, motion pictures, data analysis, scientific studies, medical procedures, and in numerous other applications. In this course student, will be familiar with low level implementation of CG primitives and computer graphics concepts. In addition, student, will be introduced to computer graphics goals and computer graphics applications. Also, students will learn the operation of the Bresenham algorithm for rendering a line on a pixel-based display. The basic transformations (Translation, rotation, scaling, and reflection) in 2-D and 3-D. Viewing pipeline and clipping operations. Also, they will study the three-dimensional concepts using to obtain photorealistic images.
T1339 Programming Languages Design
This course introduces the fundamental concepts of programming languages by discussing the design issues of the various language constructs, examining the design choices for these constructs in some of the most common languages, and comparing design alternatives. The course also prepare students for the study of compiler design, by providing an in-depth discussion of programming language structures, presenting a formal method of describing syntax, and introducing approaches to lexical and syntactic analysis
T1310 Mobile Devices Programming (2)
This course aims to teach students full programming of mobile applications and how to link them to databases taken in the database management course, in addition to the possibility and release of the application on various promotional methods, the course also contains how to design the application in very easy ways, and to view the user
T1400 Field Training
students are required to perform a field training in companies related to IT, the training hours required are 160 hours. students are followed up by faculty of IT.
T1210 Introduction to Data Science
This course provides an introduction to data science. Students will learn about data process life cycle. Starting from data collection and discovery method, then data preparation and analysis, and then data modeling and result interpreting. This will be covered by putting the shed on each phase of this process provided by the needed methods and tools. The second half of the course will focus on the core algorithms used to process data in a data science project, including classification, regression, association analysis, and clustering algorithms
T1432 Microprocessor and Assembly Language
This course will introduce the student to the architecture and native language of a computer and give the student experience in designing and implementing programs written in an assembly language. Additionally, students will be introduced to computer hardware and software interfaces. Topics include computer structure, machine language, assembly language, addressing modes, file structures, I/O, memory management, and assemblers, linkers, and loaders.
T1344 Artificial Intelligence
This course provides a comprehensive introduction to the field of Artificial Intelligence, designed for students who are new to the topic. It covers fundamental concepts and techniques used to build intelligent systems, with an emphasis on both theoretical foundations and practical applications. Students will learn about intelligent agents, problem-solving and search algorithms, supervised and unsupervised learning algorithms, Knowledge representation, and reasoning about knowledge.
T1470 Introduction to Graduation Project
students are required to study and analyze a problem related to IT. they should then propose and analyze solutions to the problem and the choose the most suitable solution according to some criterion. students should follow software engineering steps for the analysis of the problem and the design of the solution. this course is a prepares students to implement their graduation project.
The course aims at introducing the fundamental concepts and languages of the Web - including HTML5, CSS3, and powerful JavaScript libraries. Students will learn the semantics of a web page and how to abstract information in a universal form on the web with HTML5. Students will learn how to make things "pretty" and presentable using CSS3. And finally - interactivity and user-personalization will be added using JavaScript. By the end of the course, students will understand: the fundamental cross-browser issues that inhibit the progress of web technology as we know it, the ideas behind a well-designed interactive website for the Google Chrome and Mozilla Firefox browsers, and the tools needed to continue learning.
T2341 Web Programming (2)
This course aims at providing students information, knowledge, and skills necessary to design and develop dynamic, database-driven web pages using Application Server Scripting language. More specifically, this course introduces the Application Server language syntax and semantics. Also, it covers in depth the most important techniques used to build dynamic web sites. Additionally, students learn how to connect to any database, and perform hands on practice with a database to create database-driven HTML forms and reports. Additionally, students will learn Web programming skills/techniques such as user authentication, data validation, dynamic data updates, and manipulating of server XML/JSON files. Students also learn how to configure Application server with Web Server.
T3280 Introduction to Computer Networks
This course introduces the essential principles of computer networks, with a focus on network architecture, layered protocol structures, and the fundamentals of data and packet communication. Students will examine the foundational concepts of network design, starting with the architecture that supports scalable and reliable communication. Key topics include the data link layer—covering framing, error detection, error correction, and link-level flow control—and the network layer, which addresses packet forwarding, routing protocols, and logical addressing. By the end of the course, students will gain a comprehensive understanding of the protocols and mechanisms that enable reliable and efficient data exchange across networks, preparing them for advanced studies in networking..
T3290 Computer Networks Lab
A set of experiments to design, apply, analyze, and evaluate communication network protocols. Students should employ their knowledge to identify a problem, propose alternative solutions, implement a prototype using available network protocols, and evaluate the results.
Department Elective Requirements
T1283 IT Project Management
The IT Project Management course introduces the fundamentals of project management, beginning with project definition through the post-project review. There will be emphasis placed on applying project management concepts and techniques to IT projects. This includes consideration of project planning, scheduling, budgeting, human resources and the consideration of change management required to implement projects
T1316 Simulation and Modeling
Introduction to modelling and simulation concepts. System analysis and classification. Abstract and simulation models. Continuous, discrete, and combined models. Heterogeneous models. Using Petri nets and finite automata in simulation. Pseudorandom number generation and testing. Queuing systems. Monte Carlo method. Continuous simulation, numerical methods, Modelica language. Simulation experiment control. Visualization and analysis of simulation results
T1317 Special Topics
The topics of this course are selected among different recent topics in the field of IT. the topics are selected by the instructor of the course and students will be informed of the contents of the course during registration time
T1324 Parallel Processing
This course will cover a range of topics involved in designing and programming parallel architectures. The course will focus on the most common type of parallel machines: shared and distributed memory multi-processor systems. As time permits, the course will also cover other parallel machines and programming paradigms including data-flow, vector processing, and multi-threaded architectures
T1423 Operating Systems (2)
This course provides an in-depth exploration of the design and implementation of advanced modern operating systems, with a focus on essential topics like inter-process communication, distributed processing, and data sharing and replication. Approximately two-thirds of the course is dedicated to foundational concepts and techniques, while the remaining third covers contemporary topics and emerging trends in modern operating systems and distributed systems.
T1447 Digital Image Processing and Recognition
This course aims to familiarize students with essential techniques and algorithms for acquiring, processing, and extracting meaningful information from digital images. Key topics include methods for image sampling and quantization, image transformations, enhancement and restoration, encoding, analysis, and pattern recognition. Additionally, students will learn to apply these techniques to address real-world challenges in fields such as medicine, remote sensing, and surveillance, developing the skills needed to use digital image processing (DIP) tools to tackle new and diverse problems
T2150 Principles of Design
This course provides an introduction to the core concepts and techniques of design principles that form the foundation of effective visual composition. Students will explore key graphic design elements, including point, line, shape, color, and texture, along with the psychological and kinetic implications of shapes. The course also covers essential design principles such as unity, rhythm, balance, movement, and dominance, guiding students on how to apply these concepts to create cohesive, functional, and visually captivating designs. Through a combination of theoretical learning and hands-on black and white projects, students will develop a deeper understanding of how these principles work together to influence visual design and effectively communicate messages.
T2250 2D Modeling and Design
This course offers a comprehensive exploration of vector graphic design, beginning with the fundamentals of 2D drawing techniques. Students will learn to create and manipulate shapes, refine their designs with precise tools, and effectively apply color. As they advance, they will delve into more complex design concepts, such as blending, text integration, and adding depth through various effects. Students will be equipped to create polished, high-quality 2D artwork suitable for a wide range of applications and outputs.
T2340 Multimedia Programming
This course is providing an easy-to-follow introduction to creating interactive multimedia applications. Students will be familiarized with a programming language designed for interactive multimedia development using OOP Principles. The course then moves on to multimedia tools, where students will discover how to integrate 2D/3D graphics, audio, animation, and video into interactive applications. Students will have the skills to develop and deploy interactive applications, on multiple platforms such as desktop and mobile
T2424 Games Design and Programming
This course provides a comprehensive introduction to game design and development. Students will begin by exploring the history of game development, the different platforms and genres, and the core principles of gameplay mechanics. The course then delves into the process of creating interactive game environments, graphics, and animations, while also covering key aspects of game programming, physics integration, and sound design. Students will also learn how to design user interfaces and refine their games for a polished experience. Students will have the skills to develop and publish fully functional games across a variety of platforms, including mobile and desktop.
T2445 Introduction to XML and Semantic Web
This course aims to provide the basic overview of the Semantic Web and how they can be applied to enhance data exchange and integration. Students will firstly learn the core fundamentals of XML (Extensible Markup Language) as a standard for data interchange between applications and between organizations, and XML related technologies — including XSL, schemas, XPath, XQuery and DOM. After that, students will learn the basic overview of what the Semantic Web is and how it can be applied, mainly the Semantic Web language, RDF graph database (i.e., RDF triple store), and its applications.
T3287 Cyber Security
This course aims to give a broad understanding of computer security. Topics include security risks, attacks, prevention and defense methods; techniques for writing secure programs; an overview of the foundations for cryptography, security protocols and access control models
T3483 Distributed Systems
This course provides an overview of the principles and challenges involved in designing and implementing distributed systems. Topics include communication protocols, fault tolerance, data consistency, scalability, and distributed algorithms. Students will learn how multiple computers coordinate to provide reliable, scalable, and fault-tolerant systems for real-world applications. By the end of the course, students will have the foundational knowledge to understand and evaluate the architecture and design of distributed systems.
T3484 Cloud Computing
This course first introduces cloud computing and its platforms and then it looks at how scale affects systems properties, issues (such as virtualization, availability, locality, performance, and adaptation), system models, architectural models, environment and application requirements (such as fault tolerance, content distribution). This course also reviews the state of the art in resource management of cloud environments (composed of different platforms and organizations) to support current applications and their requirements.
T1223 Electrical Circuits Basics
The purpose of this course is to identify the elements of direct current circuits, the laws and theories of direct current circles, the methods of analyzing direct current circuits, a single-phase variable current, variable current circuits, analysis of changing current circuits, use of composite numbers in the analysis of stream variable, magnetic and electromagnetic, electromagnetic induction circuits, resonance circuits, and circuits of the triple-shifting current some electrical circuits are made and the circuit is planned for the mobile, examined and some experiments have been done to maintain it in a simple way.
T1342 Mobile Maintenance (1)
This course aims to teach students about the basics of mobile maintenance, the full knowledge of maintenance, the experience of maintenance of certain devices, the installation of both new or used parts of other mobile devices, and training in the transfer of pieces and the diagnosis and processing of bugs.
T1343 Mobile Maintenance (2)
This course aims to deepen what has been taken in Mobile 1 maintenance, training on other types of devices, creating and resolving new problems, also identify some maps of new devices in the local market to learn how to properly maintain them. The student also recognizes the study of the block Diagram for the mobile device and the identification of its main criminality and its various slices such as the modem, the main board, the panels, the memory panel, Antenna and different ways to send and receive, learn for different devices and common software have decryption methods, and protection methods.
T1290 Virtual Reality Principles
This course will provide students with a broad overview of essential concepts in the field of virtual reality (VR), its principles, components and applications. Topics to be covered include: an introduction to VR; Components and applications of VR; The geometry and physics of virtual worlds; multimodal (visual, audial) user perception in VR. This course is supported by practical experience in VR environments modeling using different tools and techniques.
T1391 Interactive Virtual Reality
This course will provide students with detailed knowledge about the concepts of interactive virtual reality (VR). It will cover different interaction techniques available for VR systems and how to work with each of them. Topics will be covered throughout the course: Multimodal Input/ output interfaces in VR, Virtual Reality user interface and user experience, concepts of advanced VR interaction, mobile based VR, and Artificial Intelligence with VR. The course also includes practical experience of developing interactive VR systems.
T1492 Augmented Reality
This course will provide students with a broad overview of essential concepts and applications in the field of augmented reality (AR). Topics to be covered include: Introduction to Augmented Reality Technology Principles. Requirements and Characteristics of AR. Image processing for AR. Tracking, Calibration, and Registration in AR. Interaction modals in Augmented Reality. The course also includes practical experience of developing and authoring interactive AR systems
T3283 Networking Protocols Lab
This course covers the practical part of basics of networks protocols course. In this lab students will use practical and simulation tools for implementing and applying different types of protocols for networks settings scenarios. Mainly student will do experiments related to application layer protocols and network layer protocols.
T3395 Internet of Things Fundamentals
The Internet of Things (IoT) is transforming industries by enabling advanced data collection, connectivity, and analysis across a vast array of connected devices. This course provides a foundational understanding of IoT, covering key components, technologies, and concepts essential to creating IoT solutions. Students will learn the fundamentals of IoT architecture, communication protocols, and data analysis, gaining insights into how IoT integrates with cloud computing and big data. Real-world case studies will showcase successful IoT implementations, highlighting the potential business opportunities and innovations IoT can uncover.
T3386 Basics of Cryptography
This is an introductory course on the methods, algorithms, techniques, and tools of data security and cryptography. The course covers the following topics, Classical Cryptosystems, Basic Number Theory, Block Cipher Algorithms: DES, 3DES, and AES, Public Key Cryptography: RSA, Discrete Logarithms, and Digital Signatures.
T3320 Computer Networks Administration
This course teaches the skills needed to install, configure, and manage a network infrastructure using the latest Windows Server 2022 operating system. This course will help and protect your network by applying different strategies “in securing and administering your networks” using Active Directory Domain Service (ADDS) rule, Group Policy Management, DNS, DHCP, IIS installation and configuration, Certification Authority for secure certificates, Remote Access Server and VPN
T1211 Data Analysis
This course introduces students with essential skills in analyzing and interpreting data using common tools and techniques. It typically covers topics like data cleaning, basic statistics, transformation,
visualization, and working with tools such as Excel, R, SQL, or Python
libraries to manipulate and analyze data. By the end of the course, students should be able to import, manipulate, and visualize datasets to uncover trends and insights for decision-making.
T1311 Data Engineering
The Data Engineering course provides students with the skills needed to design, build, and maintain scalable data pipelines essential for data science workflows. Covering topics like data architecture, data storage, and distributed systems, the course focuses on tools and technologies such as SQL, Hadoop, Spark, and cloud platforms. Students will learn how to handle large volumes of structured and unstructured data, ensure data quality, and optimize data processing for efficiency and scalability. The course also emphasizes the importance of integrating data systems to support machine learning models and analytics, preparing students for critical roles in the data science ecosystem.
T1345 Machine Learning Techniques
This course provides a broad introduction to machine learning and statistical pattern recognition. Topics include: supervised learning (generative/discriminative learning, parametric/non-parametric learning, neural networks, support vector machines); unsupervised learning (clustering, dimensionality reduction, kernel methods); learning theory (bias/variance tradeoffs, practical advice); reinforcement learning and adaptive control. The course will also discuss recent applications of machine learning, such as to robotic control, data mining, autonomous navigation, bioinformatics, speech recognition, and text and web data processing.
T1413 Advanced Topics in Data Science
This course will comprise selected and advanced topics in computational challenges associated with data analysis. The topics may change from year to year and are approved by the department once the course is offered.
T1203 Human Computer Interaction
This course explores the principles and practices of Human-Computer Interaction (HCI), focusing on the design, evaluation, and implementation of interactive computing systems for human use. Students will examine user-centered design processes, usability principles, and evaluation techniques essential for creating intuitive, accessible, and effective digital experiences. Through hands-on projects, students will learn to analyze user needs, design user interfaces, and apply prototyping tools to build and test interactive applications. Topics include cognitive psychology fundamentals, interaction design, visual design principles, accessibility, user research methods, and emerging HCI trends like virtual and augmented reality, AI-driven interfaces, and ubiquitous computing. By the end of the course, students will gain the skills needed to create user-friendly applications across various platforms and devices, preparing them for roles in user experience (UX) design, usability engineering, and product development.
Data Science and AI Courses
T1211 Data Analysis
This course introduces students with essential skills in analyzing and interpreting data using common tools and techniques. It typically covers topics like data cleaning, basic statistics, transformation, visualization, and working with tools such as Excel, R, SQL, or Python
libraries to manipulate and analyze data. By the end of the course, students should be able to import, manipulate, and visualize datasets to uncover trends and insights for decision-making.
T1326 Big Data
This course provides a comprehensive introduction to Big Data, equipping students with the skills and knowledge necessary to work with large-scale data processing systems and data-driven solutions. Students will explore the core concepts of Big Data, including data storage, management, and analytics, as well as essential tools and platforms such as Hadoop and Spark. A focus on machine learning and data science will prepare students to apply advanced analytical techniques to real-world datasets, enabling them to draw insights and make data-informed decisions. By the end of the course, students will have gained practical experience in building, deploying, and supporting Big Data projects, making them valuable contributors to data science and analytics teams across various industries.
T1450 Natural Language Processing
This course is designed to introduce students to the fundamental concepts and ideas in natural language processing (NLP) and get them up to speed with current research. It develops an in-depth understanding of both the algorithms available for the processing of linguistic information and the underlying computational properties of natural languages. Wordlevel, syntactic, and semantic processing from both a linguistic and an algorithmic perspective are considered. The focus is on modern quantitative techniques in NLP: using large corpora and statistical models for acquisition, disambiguation, and parsing. Also, it examines and constructs representative systems.
T1451 Neural Networks and Deep Learning
The course is designed to provide students with the significant technological trends driving the rise of deep learning, build, train, and apply fully connected deep neural networks, implement efficient (vectorized) neural networks, identify key parameters in a neural network’s architecture, and apply deep learning to their applications
Business Administration Courses
61111 Principles of Business Management (1)
This course aims to provide students with essential knowledge in the field of management and a comprehensive understanding of fundamental business administration principles. It covers a range of topics, including an introduction to management, business organizations, management history, organizational environment, organizational culture, decision-making, and strategic management in organizations. The course also emphasizes the first managerial function—planning—highlighting its nature and importance in organizational success
61112 Principles of Business Management (2)
This course is a continuation of Principles of Business Management (1), focusing on essential management functions: organizing, leading, and controlling. It also covers crucial topics such as human resource management, change management, and creativity, introducing students to the importance of understanding employee behavior and motivation within organizations to achieve various goals efficiently and effectively
63111 Principles of Marketing
This course introduces students to fundamental marketing concepts, including market research and the importance of building customer relationships. Topics include the elements of the marketing mix, such as product, distribution, promotion, and pricing, as well as analyzing the marketing environment and how organizations are influenced by external factors. The course also covers the role of marketing channels in creating customer value, consumer behavior's impact on purchasing, market segmentation, and planning integrated promotional programs
61204 Human Resources Management
The course introduces students to the fundamentals and principles of human resource management (HRM) and its vital role in achieving organizational goals. It covers core HR functions such as workforce planning, recruitment and selection, training and development, performance evaluation, and compensation management. Additionally, it emphasizes the importance of enhancing job satisfaction, employee motivation, and maintaining a positive work environment to boost organizational productivity
61410 Strategic Management
The Strategic Management course aims to introduce students to the concept of strategic management and its importance in achieving organizational goals and enhancing competitiveness. The course covers the stages of the strategic process, including analyzing the internal and external environment, defining the vision and mission, formulating strategic objectives, developing strategies, and selecting the most suitable ones. It also addresses the implementation of strategies and the evaluation of strategic performance to ensure the desired outcomes are achieved. Additionally, the course focuses on strategic analysis tools and best practices that assist managers in making effective decisions in dynamic business environments.
63306 E-commerce
This course aims to introduce students to the concepts and foundations of e-commerce, focusing on how the internet and modern technologies are used to conduct business transactions. It covers topics such as electronic marketing strategies, electronic payment methods, and the development of online business models. The course also aims to equip students with an understanding of the challenges and opportunities associated with e-commerce, including security, privacy, and applications in C2B and B2B environments
61303 Small Business and Entrepreneurship Management
This course aims to introduce students to the concepts of small business management and entrepreneurship, with a focus on the importance of these ventures in supporting the economy and fostering innovation. The course covers the steps for establishing small businesses, from idea generation and opportunity assessment to business plan development and resource management. It also addresses essential entrepreneurial skills such as market analysis, product development, marketing strategies, and managing finance and risk. In addition, the course discusses the challenges entrepreneurs face and strategies to overcome them, featuring practical case studies and success stories from the world of entrepreneurship to equip students with the practical knowledge and expertise needed to successfully start and manage their own ventures
61309 Management Information Systems
This course focuses on the concept of management information systems (MIS) and their essential resources, highlighting their importance in business organizations. It also covers an introduction to the types of MIS and the managerial levels associated with them. In addition, the course provides an introduction to the security, protection, and ethics of information systems, as well as an overview of the systems' life cycle
62111 Principles of Accounting (1)
Basic concepts of financial accounting. Emphasis on the double-entry system, the accounting cycle, the preparation and use of the financial statements. Coverage includes treatment of merchandising operations, cash, receivables, inventories, and fixed assets.