Generated on Tue Oct 25 10:19:18 2022

CS 382: Modern Web Technologies (JSON)

Catalog description: In this course, we will take a full-stack approach to modern web application design. We will start with the fundamentals including HTML5, CSS3, Javascript, JSON, and the underlying networking concepts and protocols driving the modern web. We will then move on to more advanced topics including javascript backend development with Node.js, NoSQL database design with MongoDB, cloud computing, and re-sponsive web design. Finally, we cover advanced topics including the design and im- plementation of browser extensions and real-time web technologies like WebRTC and WebSockets.

Prerequisites: Consent of Instructor required.    (Catalog Link)

Credits: 3 (3)

Coordinator: Bill Hamilton

Textbook: Recommended Texts: Duckett, Jon. HTML & CSS: Design and Build Web Sites. Germany, Wiley, 2011. Web Development with Node and Express: Leveraging the JavaScript Stack, 2nd Edition. United States, O'Reilly Media, 2019.
    (also: online reading)

BS degree role: selected elective

Course Learning Objectives

  1. Understand the fundamental technologies and operation of the web.
  2. Design and develop responsive interactive web sites.
  3. Deploy web applications on Cloud Computing Platforms.
  4. Leverage modern tools and packages to develop full stack web applications.
  5. Be fluent in the application of emerging web technologies like browser extensions, WebSockets, and WebRTC.
  6. Use existing materials and references on the web to learn new skills.

Course Practicum Requirements

  1. Develop fluency in web languages including HTML, CSS, and Javascript.
  2. Use existing materials and references on the web to learn new skills.
  3. Be able to use common tools to develop and debug web applications.
  4. Develop team software engineering skills through team projects.

Course Topics

  1. Fundamental Web Technologies (i.e. HTML5, CSS3, Javascript/JSON, HTTP/SSL)
  2. Cloud Computing Platforms like Amazon Web Services and Microsoft Azure
  3. Event-driven Web Server Design
  4. NoSQL Database Applications
  5. Human Centered Computing, Graphic Design, and Color
  6. Modern Web Technologies (i.e. Browser Extensions, WebSockets, and WebRTC)

Course Improvement Decisions

(Course improvement decisions or recommendations from past assessments)

  1. leave blank

ABET Outcome Coverage

(Provide Mapping to ABET Student Outcomes)

  1. An ability to apply knowledge of computing and mathematics appropriate to the discipline (Knowledge Application)
  2. An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution (Problem Analysis)
  3. An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs (Design & Implementation)
  4. An ability to function effectively on teams to accomplish a common goal (Teamwork)
  5. An ability to use current techniques, skills, and tools necessary for computing practice (Techniques & Tools)
  6. An ability to apply design and development principles in the construction of software systems of varying complexity (Complexity & Scale)

Other Notes

(Any important notes or issues to consider)

  1. none