This is an abridged syllabus. You can access the complete syllabus in your Canvas course.

605.635.81 - Cloud Computing

Computer Science
Spring 2025

Description

Cloud computing helps organizations realize cost savings and efficiencies without spending capital resources up front, while modernizing and expanding their IT capabilities. Cloud-based infrastructure is rapidly scalable, secure, and accessible over the Internet—you pay only for what you use. So, enterprises worldwide, big and small, are moving toward cloud-computing solutions for meeting their computing needs, including the use of Infrastructure as a Service (IaaS) and Platform as a Service (PaaS). We have also seen a fundamental shift from shrinkwrapped software to Software as a Service (SaaS) in data centers across the globe. Moreover, providers such as Amazon, Google, and Microsoft have opened their datacenters to third parties by providing low-level services such as storage, computation, and bandwidth. This trend is creating the need for a new kind of enterprise architect, developer, QA, and operational professional—someone who understands and can effectively use cloud-computing technologies and solutions. In this course, we discuss critical cloud topics such as cloud service models (IaaS, PaaS, SaaS); virtualization and how it relates to cloud; elastic computing; cloud storage; cloud networking; cloud databases; cloud security; and architecting, developing, and deploying apps in the cloud. The format of this course will be a mix of lectures, and hands-on demos. Upon completing this course, students will have a deeper understanding of what cloud computing is and the various technologies that make up cloud computing, along with hands-on experience working with a major cloud provider. Prerequisite(s): EN.605.202 Data Structures.

Instructor

Course Structure

The course materials are divided into modules which can be accessed by clicking Course Modules on the course menu. A module will have several sections including the overview, content, readings, discussions, and assignments. You are encouraged to preview all sections of the module before starting. Most modules run for a period of seven (7) days, exceptions are noted in the Course Outline. You should regularly check the  Announcements for assignment due dates.

Course Topics

  1. Cloud Computing Overview
  2. Cloud Data Center and Virtualization
  3. IaaS Cloud Compute
  4. IaaS Storage
  5. IaaS Network Services
  6. IaaS Network and Security Services
  7. PaaS Application Platform
  8. PaaS Relational Database
  9. Project – Putting it All Together
  10. PaaS Content Delivery Network
  11. PaaS Big Data Analytics
  12. Cloud Automation and DevOps
  13. Software as a Service
  14. Cloud Security

Course Goals

By the end of this course, you will be able to: 

  • Compare and Contrast the various cloud service models, cloud delivery models, key cloud characteristics, roles and boundaries and important terminology
  • Explain how virtualization technology has enabled cloud computing.
  • Demonstrate how various cloud providers such as AWS, Google Compute and Microsoft Azure implement and offer IaaS, PaaS and SaaS services.
  • Outline, Classify and categorize how infrastructure components (compute, storage, network, load balancers) are delivered as Infrastructure as a Service
  • Develop, deploy, manage and scale applications running in platforms such as Java, Python Platform (PaaS).
  • Consume, integrate and extend software services such as Productivity and business applications and other services like database services.
  • Describe how cloud can be used to perform Big Data Analytics using distributed computing technologies like Hadoop.
  • Cite cloud security concerns and illustrate how to build implement security across all layers.
  • Explain the cloud automation concepts such as DevOps practices, Continuous Integration and Deployment and how it automates cloud deployment.
  • Identify key architectural principles while designing cloud applications including SLAs, pricing and preventing single-point-of-failures related to cloud.
  • Most importantly, hands on experience launching IaaS services such compute, storage and network services, PaaS services, SaaS services, Security and Database services using Amazon Web Services

Textbooks

None. Instead of textbook, you will be required to create an account on Amazon Web Services public cloud using your credit card. Throughout the course you may incur a cost of $50.00, which can be treated, as your practical learning. You can think of this replacing the cost of a book.

Required Software

Putty/Some terminal emulator

You will need to install putty in Windows to log into VMs. If you have Mac, the default terminal program will suffice.

MySQL Workbench

You will need to install Workbench to connect to your Cloud MySQL relational database.

IDE (Eclipse)

You will need to install Eclipse in your computer for building apps that can be deployed in the cloud


Don’t worry about installing any software right now. As we go through the course, at different labs you will be asked to install all the required software.  In terms of hardware, you will need a Windows PC or Mac in order for you to do your programming assignments. You should have a modern 64 bit PC or Mac with at least 4 GB RAM (8GB or higher would be preferable) and t least 10GB of free storage available.

Student Coursework Requirements

It is expected that the class will take approximately 6-7 hours per week: watching the videos (approximately 2 – 3 hours per week) as well as some outside reading, module quiz preparation and taking the quiz(1-2 hours per week), and developing and deploying assignments (approximately 2 – 3 hours per week).

This course will consist of four basic student requirements:

Requirement 1: Participation (Class Discussions) (15% of Final Grade Calculation)


In the Discussions area of the course, you, as a student, can interact with your instructor and classmates to explore questions and comments related to the content of this course. Discussions will always close Tuesday, 11:59 P.M. of that week.

 A successful student in online education is one who takes an active role in the learning process. You are therefore encouraged to participate in the discussion areas to enhance your learning experience throughout each week.

The discussions will be graded for:

  • Frequency — and regularity of your contributions. Students are expected to 
log into the course and post (respond) in each graded discussion topics on a minimum of two separate days per week. The first post must be done by day 4 (Sunday 11:59 PM EST). The second post may be a response to any of your classmate’s thoughts and must be done by day 7 11:59 PM EST.   Two posts are the minimum. Definitely, you can do more because your response may trigger other subsequent response. The goal here is active learning.
  • Quality — Content of your contributions. A quality post includes the following:
    • Providing additional information to the discussion.
    • Elaborating on previous comments from others.
    • Presenting explanations of concepts or methods to help fellow students.
    • Presenting reasons for or against a topic in a persuasive fashion.
    • Sharing your own personal experiences that relate to the topic.
    • Providing a URL and explanation for an area you researched on the 
Internet 

    • Quality Measurement Breakdown:
High: Your contributions to each Topic indicate your mastery of the 
materials assigned. Your responses might integrate multiple views and/or show value as a seed for reflection for other participants' responses to the thread. You provide evidence that you are reading the assigned materials and other student postings and are responding accordingly, bringing out interesting interpretations. You know the facts and are able to analyze them and handle conceptual ideas.Medium: Your responses build on the ideas of another participant (or more) and dig deeper into assignment questions or issues. When you make intelligent posts during the week, including some good critique of the course material, then you have demonstrated you have an understanding of the material, are reading posts of your colleagues, and are contributing to the class. Your posts demonstrate confidence with the materials, but may be just a bit off target in one area or another.Low: You have meaningful interaction with other participants' postings. Posts that state I agree or I disagree include an explanation of what is disagreed or agreed upon and why, or introduce an argument that adds to the discussion. However, you may have rambling, lengthy posts that show no sign of having been re-read and refined before posting, and your writing suffers lack of clarity and comprehension.Unsatisfactory: You will receive little credit in the week's discussion by just showing up and making trivial comments, without adding any new thought to the discussion. At the low end of the spectrum, no participation gets a "0." If you are not in the discussion, you do not earn any points.


Requirement 2: Assignments (39% of Final Grade Calculation)

There will be 12 assignments during the term of 14 weeks. All 12 assignments have equal value of 3% each of the total grade. Sometimes an assignment may have many parts. In such cases, each part has equal value. For example, if module 3 has 5 parts, each part will be 20% of 3%.

The assignment details will be listed in the assignment section of the respective modules.

All assignments are due according to the dates in the Course Outline and Calendar.

Late submissions will be reduced by one letter grade for each week late (no exceptions without prior coordination with the instructors).

Please refer the Assignments Grading Rubric for the grade breakdown for each of the assignments.


Requirement 3: Quizzes (26% of Final Grade Calculation)

There will be 13 quizzes during the term of 14 weeks. The quizzes may be a combination of True/False, multiple choices, fills in the blanks etc. Check the course outline to see the due dates for these quizzes.   All quizzes are of equal value. Every quiz will comprise of 20 questions of equal value.


Requirement 4: Class Project (20 % of Final Grade Calculation)

There will be two class projects. Each class project is worth 10% each of the total grade.

Grading Policy

Provide a detailed explanation of your grading policies and outline the scale used for letter grades.

EP uses a +/- grading system, so this will be the scaling system for the class.

Score RangeLetter Grade
100-97= A+
96-93= A
92-90= A−
89-87= B+
86-83= B
82-80= B−
79-77= C+
76-73= C
72-70= C−
69-67= D+
66-63= D
<63= F



Course Policies

All assignments are due within one week. Late assignments will lose 10% per week.

Students are expected to submit the following to receive a grade for the course:

  • 1 Discussion Questions per week
  • 12 Exercise Lab Assignments
  • 13 Quizzes
  • 2 Class Projects

Not submitting a deliverable will receive a grade of 0 for that activity be it quiz, discussion, assignment, project.

Academic Policies

Deadlines for Adding, Dropping and Withdrawing from Courses

Students may add a course up to one week after the start of the term for that particular course. Students may drop courses according to the drop deadlines outlined in the EP academic calendar (https://ep.jhu.edu/student-services/academic-calendar/). Between the 6th week of the class and prior to the final withdrawal deadline, a student may withdraw from a course with a W on their academic record. A record of the course will remain on the academic record with a W appearing in the grade column to indicate that the student registered and withdrew from the course.

Academic Misconduct Policy

All students are required to read, know, and comply with the Johns Hopkins University Krieger School of Arts and Sciences (KSAS) / Whiting School of Engineering (WSE) Procedures for Handling Allegations of Misconduct by Full-Time and Part-Time Graduate Students.

This policy prohibits academic misconduct, including but not limited to the following: cheating or facilitating cheating; plagiarism; reuse of assignments; unauthorized collaboration; alteration of graded assignments; and unfair competition. Course materials (old assignments, texts, or examinations, etc.) should not be shared unless authorized by the course instructor. Any questions related to this policy should be directed to EP’s academic integrity officer at ep-academic-integrity@jhu.edu.

Students with Disabilities - Accommodations and Accessibility

Johns Hopkins University values diversity and inclusion. We are committed to providing welcoming, equitable, and accessible educational experiences for all students. Students with disabilities (including those with psychological conditions, medical conditions and temporary disabilities) can request accommodations for this course by providing an Accommodation Letter issued by Student Disability Services (SDS). Please request accommodations for this course as early as possible to provide time for effective communication and arrangements.

For further information or to start the process of requesting accommodations, please contact Student Disability Services at Engineering for Professionals, ep-disability-svcs@jhu.edu.

Student Conduct Code

The fundamental purpose of the JHU regulation of student conduct is to promote and to protect the health, safety, welfare, property, and rights of all members of the University community as well as to promote the orderly operation of the University and to safeguard its property and facilities. As members of the University community, students accept certain responsibilities which support the educational mission and create an environment in which all students are afforded the same opportunity to succeed academically. 

For a full description of the code please visit the following website: https://studentaffairs.jhu.edu/policies-guidelines/student-code/

Classroom Climate

JHU is committed to creating a classroom environment that values the diversity of experiences and perspectives that all students bring. Everyone has the right to be treated with dignity and respect. Fostering an inclusive climate is important. Research and experience show that students who interact with peers who are different from themselves learn new things and experience tangible educational outcomes. At no time in this learning process should someone be singled out or treated unequally on the basis of any seen or unseen part of their identity. 
 
If you have concerns in this course about harassment, discrimination, or any unequal treatment, or if you seek accommodations or resources, please reach out to the course instructor directly. Reporting will never impact your course grade. You may also share concerns with your program chair, the Assistant Dean for Diversity and Inclusion, or the Office of Institutional Equity. In handling reports, people will protect your privacy as much as possible, but faculty and staff are required to officially report information for some cases (e.g. sexual harassment).

Course Auditing

When a student enrolls in an EP course with “audit” status, the student must reach an understanding with the instructor as to what is required to earn the “audit.” If the student does not meet those expectations, the instructor must notify the EP Registration Team [EP-Registration@exchange.johnshopkins.edu] in order for the student to be retroactively dropped or withdrawn from the course (depending on when the "audit" was requested and in accordance with EP registration deadlines). All lecture content will remain accessible to auditing students, but access to all other course material is left to the discretion of the instructor.