Software Engineering for Cloud Applications

  • Software Engineering |

Description

In this course we cover a multitude of technologies that comprise the modern stack of cloud computing. Cloud computing is an information technology revolution that has impacted many enterprise computing systems in major ways, and it will change the face of computing in the years to come. We start by introducing some major concepts in cloud computing, the economical foundations of cloud computing, and the concept of Big Data. We also cover the concept of software defined architectures, and how cloud service providers organize their offerings. We cover serverless computing, serverless storage, and middleware required to weave on-site or end-user applications to serverless resources. We then shift our focus slightly to the topic of big data programming, and how Big Data systems are now mainly deployed in cloud environments. We start by exploring how the Cloud opens data analytics to huge volumes of data that are static or streamed at high velocity and represent an enormous variety of information. Cloud applications and data analytics represent a disruptive change in the ways that society is informed by and uses information. We then look at graph processing, graph databases and machine learning in the cloud. We also introduce the ideas of graph processing and the Machine Learning lifecycle, and how different cloud services contribute to it. We discuss real-time data streaming and introduce Storm technology that is used widely in the industry. After that, we move on to the topics of virtualization and containers, which is a fundamental technology behind many cloud-based services. We cover virtualization and containers with a deeper focus, including lectures on Docker, Docker Compose, ECS, Kubernates and Infrastructure as Code. Finally, we wrap up the course by talking about architecting cloud applications.

Program

Software Engineering 132 CRs

Objectives

  • Understand what cloud computing is and why it is important.
    Get a picture of the economics of cloud computing.
    Describe Big Data and the challenges of working with it.
    Learn about many fundamental technologies that enable cloud computing, such as software defined architectures, virtualization, and containers.
    Learn about many glue technologies that enable access to clouds, such as web middleware, JSON, REST API, RPC, etc.
    Learn about the different levels of clouds services, which include IaaS (Infrastructure as a Service), PaaS (Platform as a Service), SaaS (Software as a Service), MaaS (Metal as a Service), FaaS (Function as a Service (server-less architecture)), MBaaS (Mobile Backend as a Service (server-less architecture)), and Amazon Lambda.
    Learn about many types of cloud-based storage services, including object storage, block-level storage, archival storage, and Big Data file systems.
    Become familiar with the key concepts underlying Big Data and data streaming applications on the Cloud.
    Describe the concerns of storage, processing, parallelism, distribution, consensus, and scalability as they relate to the Cloud.
    Understand key benefits and limitations of the various technologies available in the Cloud.
    Utilize the course content to select technologies you wish to use in your work or company.

Textbook

Cloud Computing: Cloud Computing Fundamentals | IaaS | PaaS | SaaS | FaaS | Serverless Computing | Virtualization | Virtual Machine | Hypervisor | Docker, by SK Singh, 2022

Course Content

content serial Description
1Cloud Computing Foundations and cloud models IaaS, PaaS, SaaS, BPaaS
2Networking, IP, HTTP, REST, VPC
3Security & Verification (Auth, JWT, OAuth 2.0)
4Serverless Computing
5Non-relational Databases
6Big Data Programming MapReduce model, Hadoop, YARN, Spark and HDFS
77th Week Assessment
8Cloud Based Analytics Data Cube, Columnar storage, Data Lake
9Graph Processing, Graph Databases and Machine Learning in the Cloud
10Fast Data Processing and Streaming in the Cloud
11Virtualization, Containers and Docker
12Container Orchestration Part 1 Docker Swarm, ECS and ACI
13Container Orchestration Part 2 Kubernetes
14Architecting Cloud Applications
15Presentations

Markets and Career

  • Generation, transmission, distribution and utilization of electrical power for public and private sectors to secure both continuous and emergency demands.
  • Electrical power feeding for civil and military marine and aviation utilities.
  • Electrical works in construction engineering.

Start your application

Start The your journey to your new career.