703.608.0975 rick@warrenworks.com

marrymount-logo-half 

College of Business, Innovation, Leadership, and Technology (BILT)
School of Technology & Innovation

IT-590-A: Topics in Information Technology
Architecting Cloud-Native Solutions with Amazon Web Services (AWS)

Summer 2021
COURSE SYLLABUS

Course Type:

Hybrid

Course Description:

Explores a contemporary topic relating to some aspect of information technology. This course can be repeated for credit with a new topic. Students must achieve a minimum grade of B-.  

Broad Purpose of Course:

This project-based course introduces students to core AWS platform services and focuses on building skills and competency in the architecture, design, and automated deployment of cloud-native applications on AWS. Students will learn how to evaluate the pros and cons of various traditional pre-cloud software application architectural styles and how to decompose and deliver cloud-native solutions including serverless and containerized applications. Core services and topics discussed include Networking Fundamentals and Virtual Private Clouds (VPCs), Infrastructure-as-Code via CloudFormation, AWS Console and Command-Line Interface (CLI), Domain Name Service (DNS) fundamentals and Route53, Representational State Transfer Services (REST) and API Gateway, serverless and Lambda functions, decoupling architectural layers with queues and event-driven application design with Simple Queue Service (SQS), high-speed data ingest with Kinesis Streams, and Elastic Cloud Compute (EC2).

Instructor:

Rick Miller, MS Computer Science
California State University Long Beach
Phone: (703) 608-0975
email: richmill@marymount.edu
website: warrenworks.com

Class Hours:

This is a hybrid class. ~75% conducted online with the following on-campus meeting dates:

Location Dates & Time
Ballston Center, Room 4004 Thursday — 27 May 2021 | 6pm – 10pm
Thursday — 17 June 2021 | 6pm – 10pm
Thursday — 15 July 2021 | 6pm – 10pm

 

Office Hours:

  • During on-campus meeting dates either before, during, or after class
  • Via phone or Zoom anytime by appointment

Important Dates To Remember:

Event Date
Summer Session III Begins: 17 May 2021
First Day of Class [Zoom Session]: 20 May 2021
Last Day to Drop w/o Academic Record: 21 May 2021
Last Day to Drop w/100% Tuition/Fee Refund: 21 May 2021
First Day to Withdraw with Grade of  ‘W’: 22 May 2021
Last Day to Withdraw with 75% Refund: 26 May 2021
Last Day to Withdraw with Grade of ‘W’: 30 May 2021
Last Day of Class: 29 July 2021
Summer Session III Ends: 31 July 2021

Course Objectives:

Upon successful completion of this course students will be expected to:
● Design, develop, and deploy cloud-native solutions using Amazon Web Services (AWS) as the cloud-provider of choice.
● Utilize core AWS services that enable efficient, cost-effective application delivery and sustainment in the cloud.
● Demonstrate practical skills and competencies in the following AWS services: CloudFormation, Route53, API Gateway, Lambda, SQS, SNS, and EC2.
● Talk authoritatively about the differences between traditional and cloud-native applications including cost-benefit analysis and operational efficiencies.
● Design and deploy secure cloud applications using AWS security best-practices.
● Understand the AWS learning and certification paths.

 

Major Topics

AWS Core Services
AWS Global Infrastructure
Cost Control & Budgetting
Organizations | Users | Roles
Security Best Practices
Motivation for Cloud Adoption
Cloud Migration Strategies
Networking Fundamentals
Virtual Private Cloud (VPC)
Infrastructure as Code
CloudFormation
AWS Command-Line Interface
Python Boto3
DevOps Tools & Techniques
DevSecOps
Event-Driven Architectures
Hybrid Cloud Architectures
Disaster Recovery
Serverless Architectures
AWS Lambda
Serverless Application Model (SAM CLI)
Virtual Machines vs. Containers
Architecting for High-Availability
Well-Architected Framework
Decoupling Architectural Layers w/SQS
AWS Training
Paths to AWS Certification

 

Grading:

Students are graded based on their execution of their class project which consists of four components.

Assignment Grade Percentage
Project Proposal: 10%
Project Design: 10%
Project Demonstration: 30%
Project Defense: 50%

Class Schedule:

Week Topics Covered Notes

0

20 May 2021

Welcome |Course Introduction | Overview

Icebreaker | Expectations (Not mine, yours!)

Class Skills Assessment

Motivation for Cloud Adoption

AWS Account Creation

AWS Management Console

Account Billing | Cost Management |Budgets

AWS Account Security / MFA

Trusted Advisor

AWS Organizations

AWS CLI Installation & Setup

GitHub & SSH Configuration

IT-590-AWS Code Examples Repository

Development Tools

Diagramming Tools | Resources

Python & Boto3

Resources

Certification

 

Create AWS Account & Organization/suborgs

Install Dev Tools

Configure AWS CLI

Readings on Core Services

Due Week 1: 05/27/2021

 

Project Proposal

Due Week 2: 06/03/2021

Free Developer Tools via GitHub’s Education Site

GitHub Docs

Pro Git 2nd Edition

Git Documentation

 

1

27 May 2021

(On-Campus Session)

AWS Global Infrastructure

AWS Core Services Overview

Networking Fundamentals

IPV4 | IPV6 | CIDR Blocks

Virtual Private Cloud (VPC)

Simple Storage Service (S3)

Developer Tools

Infrastructure as Code | CloudFormation (CF)

 

Readings on IAM, EC2, EBS

Core Services Quiz

Deploy VPC with CloudFormation

Due Week 2: 06/03/2021

2

3 June 2021

Identity. & Access Management (IAM)

Roles | Policies

Strategies for Service Deployments

Legacy Application Architecture Critique

Lift-n-Shift Architectures

Virtual Machine Concepts

Elastic Cloud Compute (EC2)

Elastic Block Storage (EBS)

(Review Project Proposals)

 

Readings on CloudFront, Route53, S3

Deploy EC2 Instance(s) via Console

Deploy EC2 Instances(s) with CF

Due Week 3: 06/10/2021

 

Project Design

Due Week 4: 06/17/2021

 

3

10 June 2021

Content Delivery with CloudFront

Route53 | Routing Options

Simple Storage Service (S3)

S3 Cross-Region Replication

Readings on Event-Driven Architectures, Lambda, SAM CLI

Deploy simple website via S3 & CloudFront

Due Week 4: 06/17/2021

 

4

17 June 2021

(On-Campus Session)

Event-Driven Architectures

Serverless Concepts

AWS Lambda

SAM CLI

(Review/Approve Project Design)

Readings on API Gateway, SNS, SQS

Explore the Serverless Application Repository

Due Week 5: 06/24/2021

 

Project Implementation

Due Week 10: 07/29/2021

 

5

24 June 2021

API Gateway

Application Integration

Simple Notification Service (SNS)

Simple Queue Service (SQS)

 

Readings on AWS DynamoDB, RDS

Deploy Lambda function via CloudFormation

Due Week 6: 07/01/2021

 

6

1 July 2021

AWS Database Offerings | Overview

DynamoDB

RDS

Readings on Well-Architected Framework, Application Load Balancers, Auto Scaling Groups

Due Week 7: 07/08/2021

 

7

8 July 2021

Architecting for High-Availability

Well-Architected Framework

Load Balancing

Auto Scaling Groups

Readings on DevOps, DevSecOps, Containerized Applications

Due Week 8: 07/15/2021

 

8

15 July 2021

(On-Campus Session)

DevOps

DevSecOps

Containerized Applications

Containers vs. Virtual Machines

Docker | Kubernetes

Readings on Hybrid Cloud Architectures

Due Week 9: 07/22/2021

9

22 July 2021

Hybrid Cloud Architectures

OnPrem -> Cloud Connection Options

Cloud Migration Strategies

Data Migration

Disaster Recovery

(Project Demos & Project Defenses)

Project Defense

Due Week 10: 07/29/2021

 

10

(Project Demos & Project Defenses Continued)

Where To Go From Here

Final Projects Due