Total Credit Hours Required to Finish the Degree ( 63 Credit Hours ) as Follows
University Requirements
Students must pass all of the following courses
Course Number |
Course Name |
Weekly Hours |
Cr. Hrs. |
Prerequisite |
||
---|---|---|---|---|---|---|
Theoretical |
Practical |
|||||
000011110 | COMMUNITY SERVICE | COMMUNITY SERVICE | 1 | - | 0 |
- |
040111001 | ARABIC LANGUAGE | This course aims to teach the students the basics of Arabic language, and the methods of correct writing starting from the word itself till the syntax and expressions, the course focuses in particular on correct practice of the Arabic language in writing and pronouncing. | 2 | - | 2 |
- |
040211500 | ENGLISH COMMUNICATION SKILLS | "This course aims to develop students' basic skills in writing, listening, speaking and listening. This course includes activities related to these key skills and focuses on enriching students with English vocabulary and structures." | 3 | - | 3 |
- |
040511150 | ISLAMIC CULTURE | This course is an exploration to the culture in general and Islamic culture in particular as well as the development in the Muslim World. The course informational intended to raise the awareness about the sociological aspects, cultural perspective of Islam and various problems in the Muslim World. However, it is also designed to provide a variety of cultural perspectives of the intern Muslim states institutions, the role of religious institutions, women, and the economic institution of the Muslim World. This course is going to develop a ?better understanding ? that student will find in many areas of life, work, and relationships in the Muslim World as well as with other Western countries. | 2 | - | 2 |
- |
240111000 | COMPUTER SKILLS | A basic, introductory course in personal computers, it introduces students to basic computer concepts in hardware, software, networking. The course will include a basic computer literacy including computer concepts, fundamental functions and operations of the computer. Topics include identification of hardware components, basic computer operations, and use of some software applications such as windows operating system, a word processing using Microsoft Word, a spreadsheet using Microsoft Excel, and a presentation software using PowerPoint. | 2 | - | 2 |
- |
Faculty Requirements
Students must pass all of the following courses
Course Number |
Course Name |
Weekly Hours |
Cr. Hrs. |
Prerequisite |
||
---|---|---|---|---|---|---|
Theoretical |
Practical |
|||||
100411110 | MATH FOR DIPLOMA | Functions , operations on functions, Domain and range, , derivatives ,limits, Rules of derivatives, integrations, integration by substitution, by parts, Matrices ,Determinant of matrix By the end of this course, students are expected to have a solid foundation in the concepts, principles, terminology, and methodologies used to evaluate integrals specially proper integrals. Also, the student also acquires the proper knowledge to solve problems. | 3 | - | 3 |
- |
100413750 | DISCRETE MATHEMATICS | Logic, methods of proof including mathematical induction, set theory and relations, congruence, linear recurrence relations, functions, graphs, shortest path algorithm, trees, minimal spanning trees, binary trees. | 3 | - | 3 |
100411110 MATH FOR DIPLOMA Functions , operations on functions, Domain and range, , derivatives ,limits, Rules of derivatives, integrations, integration by substitution, by parts, Matrices ,Determinant of matrix By the end of this course, students are expected to have a solid foundation in the concepts, principles, terminology, and methodologies used to evaluate integrals specially proper integrals. Also, the student also acquires the proper knowledge to solve problems. |
240111050 | PROGRAMMING FUNDAMENTALS I FOR IT | This course introduces the fundamental concepts of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. | 3 | - | 3 |
- |
240111060 | PROGRAMMING FUNDAMENTALS I LAB FOR IT | Applied the concepts of Programing Fundamentals I course. | 2 | 1 |
240111050 PROGRAMMING FUNDAMENTALS I FOR IT This course introduces the fundamental concepts of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. |
|
240112100 | PROGRAMMING FUNDAMENTALS II FOR IT | 3 | - | 3 |
240111050 PROGRAMMING FUNDAMENTALS I FOR IT This course introduces the fundamental concepts of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. |
|
240112200 | PROGRAMMING FUNDAMENTALS II LAB FOR IT | 2 | 1 |
240111060 PROGRAMMING FUNDAMENTALS I LAB FOR IT Applied the concepts of Programing Fundamentals I course. 240112100 PROGRAMMING FUNDAMENTALS II FOR IT |
Specialization Requirements
Students must pass all of the following courses
Course Number |
Course Name |
Weekly Hours |
Cr. Hrs. |
Prerequisite |
||
---|---|---|---|---|---|---|
Theoretical |
Practical |
|||||
240113121 | INTRODUCTION TO DATABASE | This course acquaints students with the technicalities of the most prominent database systems. Students learn about essential terminologies and are introduced to real-world, hands-on techniques and examples. Students learn about the different database models with emphasis on relational database model. These are the systems that are most commonly used by companies and organizations today. Essentials of the model are deciphered and components of the model are further scrutinized, including entity-relationships, functional dependencies and normalization, and database languages. finally, an introduction to SQL language is provided. | 3 | - | 3 |
240111050 PROGRAMMING FUNDAMENTALS I FOR IT This course introduces the fundamental concepts of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. 240111060 PROGRAMMING FUNDAMENTALS I LAB FOR IT Applied the concepts of Programing Fundamentals I course. |
240113131 | INTRODUCTION TO DATABASE (LAB) | This course provides students with hands-on experience to create databases. Students will apply theories and principles learned during the theoritical part of the course. Students will also apply CRUD operations on the created databases. | 2 | 1 |
240113121 INTRODUCTION TO DATABASE This course acquaints students with the technicalities of the most prominent database systems. Students learn about essential terminologies and are introduced to real-world, hands-on techniques and examples. Students learn about the different database models with emphasis on relational database model. These are the systems that are most commonly used by companies and organizations today. Essentials of the model are deciphered and components of the model are further scrutinized, including entity-relationships, functional dependencies and normalization, and database languages. finally, an introduction to SQL language is provided. |
|
240121100 | UI & UX FOR MOBILE APP | This course will introduce students to usability industry-standard tools used to create visually appealing user interfaces for all types of mobile, tablet, TV, smart wearable devices. It enables system architects to design usable interface: useful, effective, efficient, and enjoyable mobile App interfaces. The course teaches the User Interface’s and User Experience's theory, design procedure, behind effective human interaction with focus on smart phones, tablets, wearable devices, Smart-TV, etc. The course covers also the current research topics of design patterns in the area of interactive systems design and user interface development. Finally, students will employ and exploit existing theories in HCI in order to build usable Mobile Apps. | 3 | - | 3 |
- |
240121200 | DATA STRUCTURES AND ALGORITHMS | This course aims to teach the student topics in algorithms and data structures, where the student learns the principles of creating software elements and the optimal ways to use them with the best performance, including the composition of Arrays, stacks, Queue, Trees, and other important topics in the formation of large high-performance software structures and algorithms. | 3 | - | 3 |
240112100 PROGRAMMING FUNDAMENTALS II FOR IT 240112200 PROGRAMMING FUNDAMENTALS II LAB FOR IT |
240121300 | INTERNSHIP | Students in this course are given the chance to gain a total of 150 hours of practical experience in the computer industry. This allows them to not only apply their course knowledge, but also evaluate their technical, communication, and interpersonal abilities. Furthermore, assistance is available to help students find the perfect work environment for them. | 9 | - | 3 |
- |
240122100 | ANDROID APP DEVELOPMENT I | In this course, students will explore the use of modern development tools to create android mobile applications for popular mobile platforms with a contemporary programming language (Java or Kotlin). They will learn how to employ code-sharing techniques to create mobile applications quickly and efficiently. Additionally, they will study mobile development tools, native UIs, navigation, and design patterns to build and publish their own mobile Apps. | 4 | - | 4 |
240112100 PROGRAMMING FUNDAMENTALS II FOR IT 240112200 PROGRAMMING FUNDAMENTALS II LAB FOR IT |
240122110 | iOS APP DEVELOPMENT I | This course introduces students to the fundamentals of implementing native applications for Apple platforms (iOS). During the course students will build basic applications using the latest iOS SDK for iPhone. Students will learn Apple Dedicated IDE such as Xcode to build Apps intended for distribution on iPhones. Students will start with the Model-View-Controller (MVC) development paradigm, and visually design and implement interfaces using Storyboards, Segues, and the iOS Object Library. | 4 | - | 4 |
240112100 PROGRAMMING FUNDAMENTALS II FOR IT 240112200 PROGRAMMING FUNDAMENTALS II LAB FOR IT |
240122200 | CROSS-PLATFORM APPS DEVELOPMENT | This course provides students with the knowledge and skills to develop cross-platform (on both Android and iOS devices) mobile applications using React Native and JavaScript, HTML, and CSS. The course emphasizes current JavaScript features, UI development with React Native, and accessing native capabilities of mobile platforms. Also, Designing Mobile Apps to conserve battery life is introduced as a concept in this course. | 4 | - | 4 |
240113121 INTRODUCTION TO DATABASE This course acquaints students with the technicalities of the most prominent database systems. Students learn about essential terminologies and are introduced to real-world, hands-on techniques and examples. Students learn about the different database models with emphasis on relational database model. These are the systems that are most commonly used by companies and organizations today. Essentials of the model are deciphered and components of the model are further scrutinized, including entity-relationships, functional dependencies and normalization, and database languages. finally, an introduction to SQL language is provided. |
240122210 | MOBILE APPLICATIONS DEVELOPMENT CAPSTONE PROJECTS | In this course, students are divided into teams to apply the knowledge they have gained throughout their program of study to the analysis, design, implementation, testing and deployment of a mobile solution for a real-world client. Their faculty advisors guide them as they demonstrate their skills in the project, with each team giving a technical presentation to their faculty advisors and taking part in a public showcase of projects. | 3 | - | 3 |
- |
240313270 | SOFTWARE ANALYSIS AND TESTING | This course provides an intensive, implementation-oriented introduction to the software development techniques used to create medium-scale interactive applications, focusing on the use of large object-oriented libraries to create well-designed graphical user interfaces. Topics include event-driven programming, computer graphics, human-computer interaction (HCI), graphical user interfaces, software development techniques, methods and tools of analysis. Various types of software testing, establishing testing specifications, and testing tools Provide students with the ability to test and validate software using the software engineering methodology. Create software reliability specification, Evaluate software reliability and quality | 3 | - | 3 |
240111050 PROGRAMMING FUNDAMENTALS I FOR IT This course introduces the fundamental concepts of procedural programming. Topics include data types, control structures, functions, arrays, files, and the mechanics of running, testing, and debugging. 240111060 PROGRAMMING FUNDAMENTALS I LAB FOR IT Applied the concepts of Programing Fundamentals I course. |
Students must pass ( 9 ) credit hours from any of the following courses
Course Number |
Course Name |
Weekly Hours |
Cr. Hrs. |
Prerequisite |
||
---|---|---|---|---|---|---|
Theoretical |
Practical |
|||||
240122120 | WEB SERVICES AND DATA STORAGE TECHNOLOGIES | In this course, students explore how data can and why it should be shared among multiple devices and applications by building on their prior experience with websites and applications. They gain hands-on experience constructing and modifying different types of databases for use in web services, and discover how to detect and create targeted content for specific devices over the Internet. To improve efficiency, students learn how to utilize existing components, APIs and frameworks. Furthermore, they investigate methods for efficient data-transfer to increase battery life. Throughout the course, students work both alone and with their peers to complete tasks. | 3 | - | 3 |
240122100 ANDROID APP DEVELOPMENT I In this course, students will explore the use of modern development tools to create android mobile applications for popular mobile platforms with a contemporary programming language (Java or Kotlin). They will learn how to employ code-sharing techniques to create mobile applications quickly and efficiently. Additionally, they will study mobile development tools, native UIs, navigation, and design patterns to build and publish their own mobile Apps. |
240122130 | INTRODUCTION TO ENTREPRENEURSHIP | In this course, students will gain insight into the role of an entrepreneur in recognizing potential, acquiring funds and other resources, and overseeing the initiation and endurance of a new venture. Special attention will be devoted to comprehending the evolution from start to finish, from ideation to producing a product or service through formulating a business plan. | 3 | - | 3 |
- |
240122140 | E-COMMERCE | This course introduces the fundamentals of e-business and e-commerce, exploring the strategies and technologies used. It covers topics such as the basic principles of e-commerce, the theoretical and practical aspects of conducting business online, and techniques for gauging user requirements. Discussions and presentations are used to provide students with a comprehensive understanding of the field. | 3 | - | 3 |
240122200 CROSS-PLATFORM APPS DEVELOPMENT This course provides students with the knowledge and skills to develop cross-platform (on both Android and iOS devices) mobile applications using React Native and JavaScript, HTML, and CSS. The course emphasizes current JavaScript features, UI development with React Native, and accessing native capabilities of mobile platforms. Also, Designing Mobile Apps to conserve battery life is introduced as a concept in this course. |
240122150 | ANDROID APP DEVELOPMENT II | In this course, students will expand their knowledge of Android App development by learning more advanced topics, including geolocation, web services, data acquisition, portable class libraries, shared projects, notifications, AsyncTask, JSON, NoSQL Database, device sensors and other APIs. The goal is for students to create and publish complete, functional apps across multiple platforms such as Smartphones, Tablets, Smart Watch, Smart TV . The course will equip the students with required skills to develom cutting edge mobile Apps and keep them agile to be updated according to future changes. | 3 | - | 3 |
240122100 ANDROID APP DEVELOPMENT I In this course, students will explore the use of modern development tools to create android mobile applications for popular mobile platforms with a contemporary programming language (Java or Kotlin). They will learn how to employ code-sharing techniques to create mobile applications quickly and efficiently. Additionally, they will study mobile development tools, native UIs, navigation, and design patterns to build and publish their own mobile Apps. |
240122160 | iOS APP DEVELOPMENT II | This course will expand students‘ knowledge Mac OSX development environment to create native applications for the iPhone, iPad, iWatch, etc. During the course, students will learn how to build advanced applications using the latest iOS SDK for iPhone, iPad, iWatch, Apple TVs, etc. The students will be able to deal with notifications, webservices, JSON, NoSQL Database, and Sensors. | 3 | - | 3 |
240122110 iOS APP DEVELOPMENT I This course introduces students to the fundamentals of implementing native applications for Apple platforms (iOS). During the course students will build basic applications using the latest iOS SDK for iPhone. Students will learn Apple Dedicated IDE such as Xcode to build Apps intended for distribution on iPhones. Students will start with the Model-View-Controller (MVC) development paradigm, and visually design and implement interfaces using Storyboards, Segues, and the iOS Object Library. |
240122170 | MULTIMEDIA MOBILE APP | The course is designed to equip students with the skills and knowledge required to develop multimedia-rich mobile applications including content including 2D, 3D games, Virtual Reality, Augmented Reality, etc.and they will learn how to incorporate these elements into mobile applications.Throughout the course, students will work on practical assignments and projects, designing and building multimedia-rich mobile applications from scratch. They will learn how to optimize multimedia assets for mobile devices and develop engaging and immersive user experiences using multimedia elements. By the end of the course, students will have the skills to design and develop multimedia-rich mobile applications that are visually appealing, intuitive to use, and optimized for performance. They will also be able to evaluate and refine multimedia designs based on user feedback and industry best practices. | 3 | - | 3 |
- |
240122180 | WEB & MOBILE DEVELOPMENT | 3 | - | 3 |
- |
|
240122220 | MOBILE SECURITY CONCEPTS | This course discusses the fundamental concepts of information security, network security practices and mobile App security issues. Topics covered in this course are related to symmetric and asymmetric cryptography, public-key infrastructure and management, authentication systems, IP security, web security, access control. The students will be able to identify vulnerable target systems and types of malicious code, for mitigating security risks, and for recognizing attack patterns. Students will be able to know how to build mobile Apps resistant to attacks, preventing financial losses and damage to the organization's reputation. | 3 | - | 3 |
- |
240122230 | AI AND MOBILE APP | The course will equip students with the knowledge and skills to utilize Artificial Intelligence (AI) techniques into mobile Apps. The course covers a wide range of topics including machine learning, natural language processing, computer vision, and chatbots, and how these techniques can be applied to develop intelligent and adaptive mobile applications. Furthermore, to have innovation and creativity in the development process of the mobile Apps, then AI will play a major role to customize and adapt App’s contents and behavior. Accordingly, the students will learn how to integrate AI algorithms and tools into their mobile application development workflows, including the use of popular AI frameworks such as TensorFlow and Keras. Also, students will have the skills to build mobile applications that can adapt to user behavior, predict user preferences, and make intelligent recommendations. | 3 | - | 3 |
240121200 DATA STRUCTURES AND ALGORITHMS This course aims to teach the student topics in algorithms and data structures, where the student learns the principles of creating software elements and the optimal ways to use them with the best performance, including the composition of Arrays, stacks, Queue, Trees, and other important topics in the formation of large high-performance software structures and algorithms. |
240122240 | SPECIAL TOPICS IN MOBILE APP TRENDS | This course investigates a variety of current topics related to the mobile industry and app development. While the specific course topics change each year to reflect technological developments in the industry, they can include recent trends in software development and testing, laws concerning data storage and privacy, new hardware technologies in mobile devices, sensor technology, Internet of Things, virtual and augmented reality, and cloud APIs. | 3 | - | 3 |
- |
240122250 | MOBILE APP INNOVATION | In this course, students will learn the fundamentals of innovation and how innovation applies to mobile App development. Student will be able to select and apply the novel and adaptive thinking processes and tools presented in the course to end up with an innovative mobile App in collaboration with other students. Students will be able to apply different approaches and theories to implement innovation in this complex and rapidly changing market | 3 | - | 3 |
- |
240122260 | SOFTWARE QUALITY ASSURANCE TESTING | 3 | - | 3 |
240313270 SOFTWARE ANALYSIS AND TESTING This course provides an intensive, implementation-oriented introduction to the software development techniques used to create medium-scale interactive applications, focusing on the use of large object-oriented libraries to create well-designed graphical user interfaces. Topics include event-driven programming, computer graphics, human-computer interaction (HCI), graphical user interfaces, software development techniques, methods and tools of analysis. Various types of software testing, establishing testing specifications, and testing tools Provide students with the ability to test and validate software using the software engineering methodology. Create software reliability specification, Evaluate software reliability and quality |
Hidden Text