C S 55J: AWS CERTIFIED SOLUTIONS ARCHITECT ASSOCIATE PREPARATION
Foothill College Course Outline of Record
| Heading | Value |
|---|---|
| Effective Term: | Fall 2026 |
| Units: | 4.5 |
| Hours: | 4 lecture, 2 laboratory per week (72 total per quarter) |
| Advisory: | C S 30A, 55A, 55B, 55C, 55D, 55G, or equivalent knowledge and experience. |
| Degree & Credit Status: | Degree-Applicable Credit Course |
| Foothill GE: | Non-GE |
| Transferable: | CSU |
| Grade Type: | Letter Grade (Request for Pass/No Pass) |
| Repeatability: | Not Repeatable |
Student Learning Outcomes
- The student will be able to identify the value and benefits of Cloud computing and AWS from the architectural perspective
- The student will demonstrate the use of AWS services to make their cloud infrastructure scalable
Description
Course Objectives
The student will be able to:
- Optimize their use of the Amazon Web Services (AWS) Cloud by understanding AWS services and how they fit into cloud-based solutions.
- Understand and deploy applications based upon the Well-Architected Framework.
- Secure access to applications deployed onto the AWS platform using security principles and IAM authorization/authentication.
- Configure persistent storage for applications using AWS S3 object storage.
- Deploy server-based compute resources using AWS EC2 compute along with EBS block storage and EFS file storage.
- Deploy and migrate databases using the AWS RDS SQL and AWS DynamoDB NoSQL database.
- Understand the basics of DB backup/restore and how to apply the Well-Architected Framework to the DB persistence layer.
- Understand the basics of networking using the AWS VPC service and securing the compute/storage/database components via the VPC configuration.
- Configure multiple services/networks to AWS, such via Transit Gateways and Peering.
- Understand the basics of VPN and Direct Connect to establish connections into AWS.
- Identify the value and benefits of cloud computing and AWS from the architectural perspective.
- Understand how to secure user, application, and data access using services such as Amazon Cognito, and encryption using AWS and user managed keys.
- Implement monitoring, elasticity, and high availability of a platform using AWS services, such as auto-scaling, ELB elastic load balancing, and Route 53 DNS optimization.
- Automate infrastructure deployment using "infrastructure as code" using AWS CloudFormation.
- Optimize content distribution using services such as Amazon CloudFront and caching using ElastiCache.
- Understand modern software design techniques, including decouple architectures and microservices.
- Understand how messaging technologies such as AWS Step Functions, SQS, SNS, MQ, Containers, and API GW facilitate those distributed application paradigms.
- Understand the basic design patterns to support real time data ingestion, store the data, and analyze.
- Plan for disaster mitigation and recovery.
Course Content
- Introduction to cloud architecting
- Applying Amazon Web Services (AWS) architectural principles and best practices to make architectural decisions
- Using AWS features to make a platform scalable, reliable, and highly available
- Increase performance and reduce costs of a platform deployed on AWS
- Use AWS services and features to secure user/application/data access
- Review the AWS Well-Architected Framework to apply to design decisions
- Review architectural patterns, including:
- Three tier
- Serverless
- Streaming
- Review best practices for building solutions
- Design trade-offs
- Scalability
- Infrastructure as code
- Treating resources as disposable
- Decoupled architectures
- Database/persistence storage solutions
- Avoiding single points of failure
- Cost optimization
- Caching
- Security topics
- AWS Global Infrastructure review with regard to architecture
- Securing access
- Identity and Access Management (IAM)
- Users/groups/roles/policies
- AWS Shared Responsibility Model
- Design principals for the security pillar
- Identity foundation
- Protection of data in transit and at rest
- Applying security to all layers
- Isolation of people from data
- Maintaining traceability
- Preparing for security events
- Automation of best practices
- Identity and Access Management (IAM)
- Storage layers
- Review S3 object storage
- Review problems that S3 can address
- Describe how to move data to/from S3
- Understand S3 Transfer Acceleration
- Manage storage of content using S3
- Using S3 Lifecycles
- Using S3 Versioning
- Categorize and choose S3 categories for appropriate use cases
- Using S3 for static website service
- Use the AWS Well-Architected Framework with S3
- Review S3 object storage
- Compute with server based EC2
- How to use an EC2 instance in a platform architecture
- Amazon Machine Image (AMI) definition and use
- Understanding EC2 instance families and sizes based upon requirements
- Storage solutions for EC2
- EBS Block storage
- EFS File storage
- EC2 pricing and purchase options
- EC2 and the Well-Architected Framework
- Database layer
- Relational Database Service (RDS)
- Basic review
- Advanced features
- Backup and read replicas
- Proxy connections
- Capacity planning
- Object NoSQL database service (DynamoDB)
- Use cases
- Data structure
- Partition keys/sort keys/global secondary indexes
- Multi-region replication
- Purpose based databases
- Data warehouse/OLAP with Amazon Redshift
- Wide-column database using Amazon Keyspaces
- In memory DBs
- Graph database using Amazon Neptune
- Migrating data into AWS databases
- AWS DMS homogeneous and heterogeneous migrations
- AWS Schema conversion tool
- AWS DMS Fleet advisor tool
- Applying AWS Well-Architected Framework to the database layer
- Relational Database Service (RDS)
- Creating a network environment
- Virtual Private Cloud (VPC)
- Explaining the role of the VPC
- Components in a VPC that can connect an AWS service to the internet
- Isolation and security of resources
- Monitoring of the network
- Subnets, internet gateways, route tables, and security groups
- Applying AWS Well-Architected Framework to the networking layer
- Virtual Private Cloud (VPC)
- Connecting networks
- Connecting on-premise to AWS Cloud
- AWS Direct Connect
- AWS Site-to-Site VPN
- Scaling VPC network with AWS Transit Gateway
- Connecting multiple VPCs into the AWS Cloud
- Connect VPCs using VPC peering
- Understand how to scale VPCs
- Applying Well-Architected Framework to interconnected networks
- Connecting on-premise to AWS Cloud
- Securing user, application, and data access
- Using IAM for users/groups/roles/policies
- Federation to other identity services
- AWS multiple account management
- AWS Organization for large corporations
- Service control policies to enforce corporate policies and governance
- Encryption of data at rest using AWS Key Management Service (KMS)
- Review of AWS security services for securing users, applications, and data access
- Implementing monitoring, elasticity, and high availability
- Using Amazon CloudWatch and Amazon Event Bridge to build reactive architectures that monitor metrics and facilitate notifications
- Use of EC2 auto-scaling to promote elasticity and a highly available environment
- Scaling database resources
- Load balancers and load balancing strategy
- Using Amazon Route 53 for DNS failover
- Applying the Well-Architected Framework to facilitate monitoring, elasticity, and availability
- Automating architecture (infrastructure as code - IaaC)
- Review of use cases for architecture automation
- Explore how to model, create, and manage a collection of AWS resources in AWS CloudFormation
- Identify how to use AWS Quick Start CloudFormation templates
- Identify uses of Amazon Q Developer
- Use the AWS Well-Architected Framework when designing automation strategies
- Caching content
- Identify how caching content improves application performance and reduces latency
- Using Amazon CloudFront to cache content
- Creating architectures that use CloudFront
- Using memory-based database caching using Amazon ElastiCache
- Use the AWS Well-Architected Framework when designing caching strategies
- Building decoupled architectures
- Comparing/contrasting tightly vs. loosely coupled architectures
- Messaging services to facilitate decoupled architectures
- Amazon Simple Queue Service (SQS)
- Amazon Simple Notification Service (SNS)
- Amazon MQ Message Queuing
- Decouple workloads using SQS
- Decoupling hybrid applications using Amazon MQ
- Serverless architectures and microservices
- Review serverless architectures
- Identify characteristics of microservices
- Architect a serverless solution with AWS Lambda
- Containers on AWS
- Step function workflows and AWS Step Functions
- Connectivity using Amazon API Gateway
- Using the AWS Well-Architected Framework when building serverless architectures
- Data engineering patterns
- Using the AWS Well-Architected Framework to generalize the architecture for common use cases for data ingestion
- Batch
- Stream
- Review the 3 Vs of velocity, volume, and variety data ingestion patterns
- Review the AWS services to ingest those patterns
- Selection of AWS services to optimize the data processing and transformation requirements for a given use case
- Analyzing and visualizing ingested data
- Applying the AWS Well-Architected Framework principles to data pipelines
- Using the AWS Well-Architected Framework to generalize the architecture for common use cases for data ingestion
- Disaster planning
- Identifying strategies for disaster planning
- Recovery point objectives (RPO)
- Recovery time objectives (RTO)
- Review common patterns for backup and disaster recovery (DR) and how to implement on AWS
- Use of the the AWS Well-Architected Framework principles when designing a DR plan
- Identifying strategies for disaster planning
- Certification exam
- How to prepare for the AWS Certified Solutions Architect - Associate exam
- Practice exam question review
Lab Content
- Exploring AWS Identity and Access Management (IAM)
- Challenge (Café) lab: Creating a Static Website for the Café
- Guided lab: Introducing Amazon Elastic File System (Amazon EFS)
- Challenge (Café) lab: Creating a Dynamic Website for the Café
- Guided lab: Creating an Amazon RDS Database
- Challenge (Café) lab: Migrating a Database to Amazon RDS
- Guided lab: Creating a Virtual Private Cloud
- Challenge (Café) lab: Creating a VPC Networking Environment for the Café
- Guided lab: Creating a VPC Peering Connection
- Guided lab: Encrypting Data at Rest by Using AWS Encryption Options
- Guided lab: Creating a Highly Available Environment
- Challenge (Café) lab: Creating a Scalable and Highly Available Environment for the Café
- Guided lab: Automating Infrastructure with AWS CloudFormation
- Challenge (Café) lab: Automating Infrastructure Deployment
- Guided lab: Building Decoupled Applications by Using Amazon SQS
- Guided lab: Implementing a Serverless Architecture on AWS
- Challenge (Café) lab: Implementing a Serverless Architecture for the Café
- Guided lab: Configuring Hybrid Storage and Migrating Data with AWS Storage Gateway S3 File Gateway
Special Facilities and/or Equipment
2. A learning management system with an assignment posting component (through which all lab assignments are to be submitted) and a forum component (where students can discuss course material and receive help from the instructor). This applies to all sections, including on campus (i.e., face-to-face) offerings.
3. The college will provide a fully functional and maintained course management system through which the instructor and students can interact.
4. Students must have email accounts and ongoing access to computers with internet capabilities sufficient for high speed video conferencing, video playback.
Method(s) of Evaluation
Subject assessments and quizzes
Laboratory assignments which include detailed instructions, sample runs, and documentation
Final examination
Method(s) of Instruction
Lectures which include motivation for the architecture of the specific topics being discussed
In-person or online labs (for all sections, including those meeting face-to-face/on campus), consisting of:
1. An assignment webpage located on a college-hosted course management system or other department-approved internet environment. Here, the students will review the specification of each assignment and submit their completed lab work
2. A discussion webpage located on a college-hosted course management system or other department-approved internet environment. Here, students can request assistance from the instructor and interact publicly with other class members
Detailed review of laboratory assignments which includes model solutions and specific comments on the student submissions
In-person or online discussion which engages students and instructor in an ongoing dialog pertaining to all aspects of designing, implementing, and analyzing programs
When course is taught fully online:
1. Instructor-authored lecture materials, handouts, syllabus, assignments, tests, and other relevant course material will be delivered through a college-hosted course management system or other department-approved internet environment
2. Additional instructional guidelines for this course are listed in the attached addendum of CS department online practices
Representative Text(s) and Other Materials
Wilkins, Mark. AWS Certified Solutions Architect - Associate (SAA-C03) Cert Guide. 2023.
Clinton, David, and Ben Piper. AWS Certified Solutions Architect Study Guide with 900 Practice Test Questions: Associate (SAA-C03) Exam (Sybex Study Guide). 2022.
Types and/or Examples of Required Reading, Writing, and Outside of Class Assignments
- Reading/Viewing:
- Course modules assigned reading averaging 100 pages per week.
- Reading the supplied handouts and modules averaging 10 pages per week.
- Viewing an average of 10 hours of video content material per week.
- Reading online resources as directed by instructor though links pertinent to programming.
- Reading library and reference material directed by instructor through course handouts.
- Writing:
- Writing technical prose documentation that supports and describes the programs that are submitted for grades.
