INST 347 - Cloud Computing for Information Science

Syllabus

Course Title: Cloud Computing for Information Science

Course Number: INST 347

Term: Fall 2024

Credits: 3

Course Format: Online. One online synchronous meeting per week with optional in-person experiences

Faculty: Dennis Frezzo and Donal Heidenblad

Pronouns: he/him/his

Contact Information: dfrezzo@umd.edu, dheidenb@umd.edu

Assistants: TBD

Class time and location: Section 0101. One synchronous online meeting per week.                              

Required Textbook(s)/Resources/Equipment:

Course Schedule and Documents: The course schedule, reading plan, assignment instructions and rubrics, research resources, and other helpful documents will be available in ELMS.

Office Hours: The professor will hold office hours remotely, by Zoom (details in ELMS). In-person meetings with the professor can also be scheduled at mutually convenient times on campus. Details in ELMS.               

Course Description and Objectives

What is cloud computing? Where does cloud computing occur? How can we use cloud computing to solve problems and create opportunities? In this course, the foundations and operation of cloud computing, with a focus on information science applications, will be presented. Key cloud functions such as computing, storage, databases, and networking will be examined. Major cloud provider’s will be contrasted. The course will conclude with a practical application of cloud services to design and implement a cloud solution to a social or environmental problem.

Prerequisite: Minimum grade of C- in 346.

Student Learning Outcomes:

After successfully completing this course you will be able to:

  • Articulate and apply the major benefits of cloud computing

  • Decide how cloud skills pertain to their professional identity and formulate technical questions pertaining to cloud computing

  • Build simple models of physical and virtual cloud computing infrastructure

  • Differentiate amongst compute, storage, database, and network functions in the cloud

  • Analyze major cloud service provider’s services

  • Design and implement a simple cloud solution with architectural, economic, and security constraints

  • Design and critically evaluate existing designs for cloud computing users from diverse backgrounds with varying needs, applying anti-racist perspectives to ensure usability needs are met

  • Explain how the use and design of cloud computing systems reflect broader social and organizational structures and the related ethical and equity issues.

Course Activities

  • Online Discussions and Wiki (15%): Synchronous and asynchronous to help you build relationships with other students, despite the online nature of the course, and to help you join the cloud computing community by using terminology and concepts.

  • Quizzes (10%): to help provide practice with feedback along the way.

  • Homework and Lab Activities (50%): weekly practice in the form of problems from lectures, reading, and labs

  • Final Project Assignment (20%): choose from a menu of options to put your skills to work, in a group

  • Midterm (5%): Take-home individual event to help gauge your progress.

  • More Details in ELMS

Approximate Weekly Schedule

Week

Topics

Deliverables

Week

Topics

Deliverables

1

What is Cloud Computing? Hoff, Ch. 1-14, Explain the Cloud Like I’m 10.

Identity Discover Roadmap; start list of questions; complete AWS Academy Registration; Obtain software; open identity and ethical questions

2

What is Cloud Computing? Hoff, Ch. 15-26, Explain the Cloud Like I’m 10.

Complete Question Wiki

3

What are the building blocks of cloud computing?

Review of 346 relevant to Cloud Computing - Hardware, Software, Links, Networks, Security

Cisco Packet Tracer Model

4

Overview

Comer Ch 1-3 (The Motivations for Cloud, Elastic Computing and Its Advantages, Types of Clouds and Cloud Providers)

VMware Labs

5

Comer Ch 4-8 (Data Structure Infrastructure and Equipment, Virtual Machines, Containers, Virtual Networks, Virtual Storage)

VMWare Labs

6

AWS Module 1 - 3 (Cloud Concepts Overview, Cloud Economics and Billing, AWS Global Infrastructure Overview)

AWS Academy Labs

7

AWS Module 4-7 (AWS Cloud Security, Networking and Content Delivery, Compute, Storage)

AWS Academy Labs

8

AWS Module 8-10 (Databases, Cloud Architecture, AutoScaling and Monitoring)

AWS Academy Labs

9

Comer Ch 9-10 (Automation, Orchestration: Automated Replication and Parallelism)

AWS Academy Labs

10

Highlights from Comer Ch 11-18 (The Map Reduce Paradigm, Microservices, Controller-Based Management Software, Serverless Computing and Event Processing, DevOps, Edge Computing and IIoT, Cloud Security and Privacy, Controlling the Complexity of Cloud-Native Systems)

Big Pictures and Exploring Project Ideas

11

Contrasting Cloud Services - AWS, Google, Azure - make time in the course to respond to ethical, looking at the impact of what we do in the wider social environment (eg, Heroku disappearing, vendor lock-in, multicloud, take this into consideration

competitive analysis

12

Template-Driven Final Project

highly scaffolded projects start

13

Final Project

project progress

14

Final Project

project progress

15

Final Project

project Presentations

Extra Credit

Complete the AWS Cloud Quest Game (Free Level, Cloud Practitioner)

Cisco Skills for All mini-courses relevant to Cloud Computing

 

 

 

 

 

 

Status

09/14/22: Successful meeting with Everett. Dennis and Donal are instructor candidates in UMD AWS Academy. Dennis will pursue training and revisit syllabus draft in a few weeks. Happy to brief anyone on where we intend to go with this.

9/19/22: Dennis completed initial online training and can create courses in AWS Learner Lab (open ended sandbox, $100 per student); AWS Academy Cloud Foundations, AWS Academy Introduction to Cloud 1 and 2, and AWS Academy Data Center Technician, all of which have various relevance to the end of 346 and the various visions for 347. Next step is to complete some of these courses; understand the commitments implied by teaching them; and select what experiences meet our learning outcomes.

November 22: over 2/3 (120) INST 346 students are completing the AWS Cloud Foundations Course Module 0, 1 (S3), and 3 (Architecture) modules, 6 hours of instruction out of 20 total hours in that course. Evaluating for use of the entire course, and other AWS Academy resources, in 346 and 347.

December: presenting to committee

https://umd.campuslabs.com/engage/organization/data-and-cloud-computing-society

https://undergrad.cs.umd.edu/data-and-cloud-computing-society

https://umd-cs-stics.gitbooks.io/cmsc389l-practical-cloud-computing-spring-2018/content/

examined

Brief

Investigate creation of a follow-on course to 346 to give cloud computing for beginners more adequate coverage than is possible in 346. Separately but perhaps synergistically, ESG students have requested coursework in Cloud Computing.

Collaborator(s)

Dennis Frezzo, Donal Heidenblad, Galina Madjaroff, Tetyana Bezbabna

Preliminary Resources

AWS Cloud Quest Role-Playing Game (with Free Tier)

AWS Academy (investigating UMD Institutional account/ meeting on 9/12/22 with DIT)

Barcelona Supercomputing Center

https://www.google.com/about/datacenters/

Amazon Data Centers

In IoT Lab - “Cloud Rack” (as small groups)

 

UMGC course

https://umgc.campusconcourse.com/view_syllabus?course_id=229809

https://umd-cs-stics.gitbooks.io/cmsc389l-practical-cloud-computing-spring-2018/content/

Proposed Changes to INST377

Learning Outcomes

Upon completion of the course, students will be able to:

  1. Build web interfaces that allow a wide range of users to interact with server-side API data sources.

  2. Understand beginner-level version control and remote hosting of collaborative code bases

  3. Acquire, install and maintain software that facilitates interaction between different layers of the application or site architecture.

  4. Articulate the relationships between server and client-side technologies including web servers, API layers, JavaScript, CSS, and HTML.

  5. Demonstrate knowledge of web standards including markup languages, stylesheets and scripts

  6. Demonstrate knowledge of web protocols and options in data transaction over networks

  7. Explain how programming is situated in and reflects social issues (e.g. racism or sexism) and describe actions that individuals or organizations are taking to counteract inequities in software and programming/technical organizations.

Explain how the use and design of relational database systems
reflect broader social and organizational structures and the
related ethical and equity issues.

 

More References for 347:

https://www.temjournal.com/content/111/TEMJournalFebruary2022_94_103.pdf