eBusiness Cloud Computing (08-705)

This project-based course focuses on skill building with several cloud computing services. Students will have the opportunity to build their projects and develop their experience on public cloud infrastructures (Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP)). Cloud services are rapidly evolving and the adoption of cloud computing services continues to grow across a variety of organizations and domains. Cloud computing is the delivery of computing as a service over a network, whereby distributed resources and services are rented, rather than owned, by an end user.

Conceptually, we will introduce the motivating factors, benefits and challenges of the cloud, as well as service models, service level agreements (SLAs), security, example cloud service providers and use cases. Modern data centers enable many of the economic and technological benefits of the cloud paradigm; hence, we will describe several concepts behind data center design and management as well as software tools for orchestration, deployment, monitoring and management of web services on the cloud.

For the projects, students will receive training with Amazon Web Services, Microsoft Azure and Google Cloud Platform. Students will have the opportunity to use cloud services to provision compute resources and then program and deploy applications that run on these resources. Prior to the team project, students will develop and evaluate virtual machine (VM) and container scaling, elasticity and load balancing solutions as well as develop experience deploying web services that adopt the serverless computing pattern. Students will form teams to work on a large project which entails designing and implementing a complete web-service solution on the cloud within a predetermined theme. For the team project, the student teams are evaluated based on a working demo, the quality of their code and a presentation of their approach.