CX Cloud Computing

Concentration Description 

The Saudi economy is being re-invented. Saudi Vision 2030 promotes a knowledge-based economy. For this transformation to be realized, new talents should be prepared. This interdisciplinary concentration program serves this purpose. New trending technologies such as Artificial Intelligence (AI) and the Internet of Things (IoT) require specialized infrastructures that can only exist in the Cloud. Further, the Cloud offers the ability to effectively reduce the cost of operation and increase the value of the business. The real technological revolution will take place when AI, IoT, and all other major technologies meet in the Cloud. This concentration program will give students a strong conceptual foundation as well as a bridge to the real world. The program will emphasize the multiple roles in real Cloud environments such as developers, software engineers, cloud architects, and infrastructure engineers. Our students will come out of the program with the motivation, tools, and confidence they need to successfully apply Cloud computing to create business value.

 

Concentration Objectives

The objectives of the concentration in the Internet of Things program are to: 

  1. To equip students with the knowledge and skills to be able to design, implement, and integrate Internet-scale Cloud applications.
  2. To prepare students to be able to assess, plan, and build Cloud infrastructure.
 

Relationship between the Objectives of the course and University Mission and the Saudi Vision 2030

Cloud computing is the enabling infrastructure for the Vision 2030 transformation goals. Major players in the economy of Saudi Arabia, such as Aramco and NEOM, have already adopted Cloud computing. Many new data centers will be established in the Kingdom. As one example, in Dec. 2021, Google announced that it is going to deploy and operate a new Cloud region in Saudi Arabia in partnership with Aramco. Similar initiatives have been announced by other major companies in the country such as STC. Local skilled talents will be needed to operate and maintain these new data centers and the Cloud services they offer.

 

Eligibility

Students who finished all junior-level courses in the following majors are eligible to enroll in this concentration:

  1. COE
  2. ICS
  3. SWE

A student of other majors can enroll in this concentration if he can fulfill the prerequisite requirements of all concentration courses.

For the concentration to be registered in the student's records, the students should finish all the concentration courses successfully.


Courses
First Semester  ​ ​ ​ ​ ​
Course #  ​TitleLTLBCR
COE
452
Principles of Cloud-based Systems
303
COE427Distributed Computing303
Second Semester  ​ ​ ​ ​ ​
Course #  ​TitleLTLBCR
COE453Cloud and Edge Computing303
SWE455Cloud Applications Engineering
303

 

 

Description of Courses

COE 452: Principles of Cloud-based Systems (3-0-3)

Introduction to Cloud computing. Cloud characteristics and deployment models. Cloud architectures and enabling technologies. Cloud operations: resource provisioning and load balancing. Cloud performance guarantees service quality metrics and service level agreement. Cloud infrastructure design, development, and migration. Cloud infrastructure management and monitoring. Cost metrics and pricing models. Cloud laws and regulations. Software-defined networking and network function virtualization. Hands-on activities and case studies. Project. 

Prerequisite: COE 344 or ICS 343

COE 427: Distributed Computing (3-0-3)

Introduction to distributed computing and systems: processes, tasks, threads, and abstraction. Architectural models of distributed systems and their design issues. Mutual exclusion, condition variables, and atomic instructions. Time and synchronization. Distributed algorithms and their models of execution. Consensus and leader election protocols. Distributed file systems. Distributed ledgers. Scalability-enabling techniques: partitioning and replication. CAP theorem. Locking and transactions: 2PL and 2PC. ACID transactions Programming constructs and techniques: sockets programming, remote procedure calls. Fault-tolerance. Logging and crash recovery. Examples of distributed systems: DNS and CDN. Hands-on sessions.

Prerequisite: Senior standing

COE 453: Cloud and Edge Computing (3-0-3)

Internet and web protocols and technologies (HTTP). Basics of web development: frontend, backend, and full-stack (HTML, CSS, Javascript, Node.js). Web services and RESTful APIs. Introduction to utility computing: Cloud and Edge computing. Cloud Service-oriented architecture and microservices. The XaaS pyramid. Serverless computing. Cloud resource management. Virtualization and containerization (Docker and Kubernetes). Cloud data storage: BigTable, Dynamo, and Cassandra. Batch cloud processing: MapReduce and Hadoop, Spark, BigTable. Cloud-native applications. Security of Cloud computing. Hands-on activities and projects.

Prerequisite: COE 344 or ICS 343 or EE 400

SWE 455: Cloud Applications Engineering (3-0-3)

Cloud computing and service models. Software development for the Cloud. Software architectures: monoliths, service-oriented, microservice, and serverless. Trade-offs between architectural patterns and Cloud services. Development lifecycle for Cloud-native SaaS applications. Design patterns for SaaS applications, Cloud service level agreements, and Cloud infrastructures. Software engineering practices and tools for the Cloud: Agile. CI/CD, DevOps, ArchOps, DataOps, MLOps, and DevSecOps. Business processes to implement cloud solutions, Cloud migration processes, and issues, Case studies.

Prerequisite: COE 344 or ICS 343