Computer Science 497S - ST- Scalable Web Systems

Fall
2021
01
3.00
Timothy Richards

TU TH 1:00PM 2:15PM

UMass Amherst
12663
Computer Science Bldg rm 140
richards@cs.umass.edu
The web has become a large and complex area for application development. Access to an abundance of open source languages, libraries, and frameworks has led to the quick and easy construction of a variety of applications with several moving parts working in coordination to present to the user the illusion of a single program. In reality, web applications are extremely difficult to get right. They involve a large collection of coordinated services, multiple databases, complicated user interfaces, security and performance issues, and ever changing 3rd party services, spread across physical and virtual machines. These complications are further stressed by the large number of concurrent users that access these applications every second. This course will investigate several well known web-based applications and the technology and software architecture used to scale these applications. We will also study a specific topic related to scalability in software design in the context of web application architecture. This course counts as a CS Elective toward the CS major (BA/BS) and as an Elective toward the INFORM major.

Open to juniors and seniors in Computer Science or Informatics. COMPSCI 326 w/ C IT IS RECOMMENDED TO HAVE COMPLETED COMPSCI 220 (PROGRAMMING METHODOLOGY) AND COMPSCI 230 (COMPUTER SYSTEMS PRINCIPLES), OR COMPSCI 377 (OPERATING SYSTEMS), HOWEVER, THIS IS NOT REQUIRED BUT WILL MAKE YOUR EXPERIENCE MORE RICH (E.G., BACKGROUND IN WEB APP DEPLOYMENT, BASIC SECURITY, NETWORK PROTOCOLS, PROCESSES, CLIENT SERVER ARCHITECTURE, AND GENERAL OPERATING SYSTEMS CONCEPTS). STUDENTS NEEDING SPECIAL PERMISSION MUST REQUEST OVERRIDES VIA THE ON-LINE FORM: https://www.cics.umass.edu/overrides.

Permission is required for interchange registration during the add/drop period only.