• About the program
  • Subjects
Certificate awarded

Bachelor of Science

Major
Computer Science
Program outcomes
  1. Graduates will be able to provide scientific solutions to community problems and demonstrate the highest level of performance in their field of specialization.
  2. Graduates will be able to perform logical analysis and design using appropriate software and programming languages to develop new automated systems or update existing ones.
  3. Enhancing the quality of the department’s academic outputs in line with development and providing the best service to the community.
Program objectives
  1. Promoting and developing logical and creative thinking among students and teaching them the ability to address problems in scientific ways.
  2. Conducting various scientific research and studies with public and private institutions inside Libya.
  3. Providing consulting services for various specializations, and providing general and specialized training courses in the field of computers and its applications in a way
  4. that suits the needs of the city of Gharyan and beyond.
Job Market
  1. Software development and application companies.
  2. Governmental and private institutions for information systems and database management.
  3. Web development and e-commerce companies.
  4. Cybersecurity centers and data protection companies.
  5. Computer networks and telecommunications companies.
  6. Research centers for data analysis and artificial intelligence.
  7. IT support and computer system maintenance departments in various organizations.
Description

This academic program focuses on preparing students both academically and practically, in line with the scientific and technological developments occurring worldwide, while serving the needs of society. The program emphasizes equipping students with knowledge and skills in various computing fields and is supervised by a team of specialized faculty members, both local and international.

Program content

Duration

8 Terms

General credits

8

Elective credits

6

Compulsory credits

76

Total credits

149
Subject code Subject name Credits Subject type Subject prerequisites

This course introduces students to the basic concepts of computer architecture, memory addressing methods, and how to interact with computer systems. It expands students’ understanding of input/output organization and data transfer between computer components, and introduces the design of memory hierarchy and input/output system design.

This course introduces students to fundamental programming concepts, problem-solving using computers, and algorithm design. It covers flowchart shapes for sequences, branches, loops, and control statements, arrays and their types, and basic operations on them. The course also enables students to write complete computer programs using C++.

‏This course provides students with the essential fundamentals of the English language, focusing on developing pronunciation and speaking skills to support academic and professional writing. Topics include demonstrative, quantifying, and interrogative determiners, nouns and their types, pronouns, adjectives and their order, subject-verb agreement, transitive and intransitive verbs, adverbs, prepositions, conjunctions, as well as reading comprehension and writing skills.

This course covers the fundamental concepts of statistics, aiming to prepare students to understand and analyze data scientifically. It includes tabular and graphical data presentation, studies measures of central tendency and dispersion to understand data distribution, as well as skewness and kurtosis to evaluate distribution shape, and correlation to study relationships between variables. The course also emphasizes practical applications of these concepts using various statistical examples.

This course covers the fundamental concepts of mathematics, including sets and operations on them, intervals and their types, inequalities, absolute values, real functions and their types, domain and range of functions, limits, continuity, differentiation, and applications of differentiation, with a focus on building a strong mathematical foundation for students.

‏This course provides students with a general overview of the fundamentals of the Arabic language, focusing on spelling, grammar, and morphology. It aims to equip students with the skills necessary for academic and professional writing, while introducing selected examples of Arabic poetry from the pre-Islamic, Islamic, Umayyad, Abbasid, and modern periods, including free verse poetry.

This course introduces students to the concepts of logical design, enhancing their understanding of the use of digital circuits in system design such as digital computers. It covers digital communication equipment and other applications requiring electronic digital devices, and develops students’ ability to design and implement various types of logic circuits for specific tasks, including combinational and sequential circuits.

This course introduces students to conditional statements (if) and loops (for, while, do…while), examples of one-dimensional and two-dimensional arrays, an introduction to functions and their types, pointers, functions, and procedures. It aims to expand students’ programming knowledge to keep pace with scientific developments in the field.

‏This course aims to enhance students’ English skills following English Language 1. It focuses on developing reading and writing skills, expanding vocabulary, understanding dictionary entries, and covering grammar aspects such as tenses, articles, ability, permission, and necessity. Students will also practice making requests, suggestions, offers, and invitations in English.

This course covers the fundamental principles of probability, starting with the concept of sample space and types of events, moving on to compound probabilities, learning about probability distributions of random variables, and culminating with Bayes’ Theorem for estimating and updating conditional probabilities when new information becomes available. The course also includes practical applications in various fields to enhance students’ understanding of how probability is used in data analysis and decision-making.

This course studies real functions of various types, including exponential, logarithmic, trigonometric, inverse trigonometric, hyperbolic, and inverse hyperbolic functions and their derivatives. It also focuses on the concepts of indefinite and definite integrals, their rules and solution methods such as substitution, integration by parts, partial fractions, and trigonometric substitutions, in addition to practical applications of integration in areas, volumes, arc lengths, and surface areas.

This course aims to introduce students to mathematical proof methods and logic functions, including hypotheses, logic functions, and proof techniques. It also teaches students to draw electrical circuits using Boolean algebra and logic gates and expands their understanding of automata theory and its use in solving computational problems.

‏This course aims to develop students’ proficiency in Standard Arabic and equip them with the skills necessary for academic and professional writing. It covers advanced grammar topics, including subject and predicate, object of cause, object with, adverbs, interrogative structures, and demonstrative pronouns. The course also introduces students to Andalusian and modern Arabic poetry, while exploring rhetorical devices such as metaphor, simile, and metonymy.

This course introduces students to the internal structure of the microprocessor, the operation of memory, processor, and peripherals, the instructions and commands of assembly language, and different addressing methods.

This course aims to introduce students to the concept of systems, their components, and characteristics. It provides students with the fundamental concepts of information systems and their types, enhances their understanding of system components and differentiates between their various types, and provides information necessary for developing information systems and understanding administrative levels.

The aim of this course is to provide students with fundamental knowledge and concepts of data structures, their types, and differences. It expands students’ programming skills for handling data and information, develops their abilities to choose appropriate algorithms, and enables them to write algorithms in functions as well as use built-in functions.

This course introduces students to the basic terms and concepts of MATLAB, familiarizes them with the program environment for easy interaction, develops their skills in using MATLAB components to analyze programming problems, and covers basics as an introduction to building any computer application using MATLAB.

This course covers the study of matrices, their types, and associated algebraic operations, as well as methods for solving different systems of linear equations. The course also covers eigenvalues and eigenvectors, vector spaces, linear independence and dependence, and inner product spaces, with a focus on practical applications of these concepts in analyzing linear equations and linear transformations.

This course introduces students to practical skills in using Microsoft Office applications, including document design and editing with MS Word, presentations with MS PowerPoint, as well as procedures for using the Internet and email, preparing messages, and using search engines.

This course introduces students to the components of a compiler and its operational mechanisms, trains them on how to design and build programming languages using compiler techniques, explains data storage in memory, and enhances students’ programming skills through practical examples of various problems.

This course provides students with basic concepts of operating systems and their architecture, explains how the OS manages computer components, and teaches how to choose appropriate methods to solve system-related problems.

This course covers the fundamentals of system analysis and design, provides students with basic concepts and principles for analyzing and designing systems, develops technical solutions to meet user needs, applies analysis and design methodologies using tools such as UML, data flow diagrams, and object modeling, manages the system development lifecycle effectively, and enhances communication with stakeholders for requirement gathering and documentation.

This course aims to expand students’ programming knowledge in search and sorting algorithms, enable them to handle data efficiently, choose appropriate data structures based on the problem nature, and understand scientific procedures when using lists and trees, with a focus on modern methods for managing data.

This course covers the fundamental principles of numerical analysis, including the study of errors, their types, and how to calculate them. It focuses on numerical methods for solving linear and nonlinear equations, including direct and iterative methods, as well as polynomial interpolation, numerical differentiation, and integration. The course also includes numerical solutions for ordinary differential equations and eigenvalue problems, along with analysis of the accuracy and errors of the applied methods.

This course aims to provide students with the fundamental knowledge and skills needed to design and conduct scientific research across various fields. The course covers the steps of scientific research, starting from problem identification and hypothesis formulation, selecting an appropriate research design, collecting data using quantitative and qualitative methods, analyzing data using statistical techniques, and writing research reports to present results in an organized and objective manner. The course also emphasizes the importance of adhering to scientific ethics and academic standards during research.

This course provides students with fundamental concepts of databases, their types, and relationships, enables students to select the appropriate database type for a specific application, and understand tools for linking databases with application programs.

This course introduces students to the basics and history of multimedia, multimedia tools, components, and classifications, types of media and their understanding, converting media into digital formats for easy storage and transfer, and enables students to understand multimedia storage methods and playback software.

This course introduces students to programming basics using Java, understanding object-oriented programming (OOP), learning about classes, inheritance, and polymorphism, and identifying the advantages and features of object-oriented programming.

This elective course introduces students to the concept and importance of electronic commerce, the factors that contributed to its emergence, understanding its key characteristics, and training students on how to build an e-commerce website.

This course introduces students to database applications, database construction using SQL, expands knowledge of advanced databases and storage structures, and familiarizes students with advanced database terminology.

This course introduces students to basic programming concepts using HTML & CSS, and enables them to design websites to keep pace with developments in web programming.

This course introduces students to new programming concepts based on visual programming, enables them to design software systems using visual programming principles, and expands their programming knowledge through advanced and effective software systems.

This course studies the concepts and features of object-oriented programming, graphical user interface (GUI) design, attributes and icons of GUI, and understanding predefined classes and inheritance in OOP through graphical interfaces.

This course introduces students to the concept of artificial intelligence, its fields and applications, the intelligent agent and its role in problem-solving using search strategies for games or real-world problems, search strategies and criteria for selecting the most suitable method, expert systems and their development stages and features, and expands students’ programming knowledge to keep pace with scientific developments.

This course introduces students to fundamental software engineering concepts, concepts necessary for software maintenance and revival, and familiarizes them with tools and algorithms to keep pace with scientific developments in the field.

This course enables students to understand web applications, program websites, and acquire the skills necessary to work with the languages and software used in web development.

This course aims to teach students the concept of computer networks, methods of device interconnection, and the different layers that organize network operations.

This course introduces students to image processing and imaging systems, image representation, fundamentals of digital images, image enhancement in spatial or frequency domains, image segmentation and object recognition, and color image processing.

This course provides students with fundamental concepts of Android OS architecture and layers, studies app interaction with phone components such as the camera and GPS, internet communication protocols, designing user interfaces and their types, and methods for measuring GSM network identifiers and supporting libraries.

This course enables Computer Science students to apply the knowledge and skills acquired in various areas of computer science to a comprehensive practical or research project. It includes selecting a project topic in areas such as programming, information systems, databases, artificial intelligence, networks, or application development, defining project objectives, reviewing relevant literature, designing an appropriate methodology for data collection and analysis, and implementing the project using suitable software tools and techniques. The course also emphasizes developing skills in writing scientific reports, presenting results, teamwork, and adhering to academic standards and research ethics.

This course provides students with basic concepts and terminology in information security, introduces the concepts of computer and information security, and teaches methods and techniques to protect and secure information.

This course provides students with basic concepts of cloud computing, expands their understanding of parallel programming techniques for cloud computing and large-scale distributed systems, introduces distributed storage systems, virtualization, and cloud security.

This elective course introduces students to the basic concepts and terminology of data mining, handling big data, and the most important algorithms used in data mining.

This course aims to teach students the concept of computer networks, methods of device interconnection, and the different layers that organize network operations.

© All rights reserved to University of Gharyan