Sprint 5: Final Deliverable with Angular

Presentation Video Due: Monday, November 29, 2021 at 5pm

Code Submission Due: Friday, December 3, 2021 at 11pm

Code demos with TAs will follow after final submission

Purpose: This sprint will help you practice the following skills, reinforce knowledge, and experience full-stack web development.

Overview

You will also continue to ensure that your code is valid HTML5 (to ensure optimal compatibility) and that it meets Section 508 standards (to ensure accessibility of your site).

Sprint Requirements

This sprint is broken into four parts: an Angular component, finalizing your project deliverable, project presentation, and a reflection and peer evaluation.

Angular Component: Minimum Requirements

You will implement client-side web component(s) written in Angular to perform at least one functionality of your project. You may choose to embed the HTML (from Sprint 2) into your Angular program or implement your Angular program as a separate component. Your Angular program must interact with at least one server-side component (your PHP). You may choose to use Angular to interact with your JSON endpoint from Sprint 3. Do not embed your Angular program into a PHP component.

Add all service and behavior to your application to fulfill the vision that you set out in your project proposal. Please consider the following as minimum requirements only. You are strongly encouraged to get creative and do more than this, but this is what will be required to receive full credit.

These requirements must be implemented in Angular program, resulting in (at least) HTML, JS, and Angular specific code.

Project Presentation

Create a 3-minute video showcasing your website, its usability, design, and functionality. In this video, you should:

  1. Introduce yourselves and your project idea
  2. Provide any motivation for your project
  3. Show interaction with your app and the features it provides (i.e., show off your great and creative site!)
  4. Show responsive design mode and how your app looks on a mobile phone
  5. Discuss usability and design choices made, and why
  6. Say why your app should be voted “most usable” or “coolest project”

The videos will be shown during our project demonstration days, November 30 and December 2, during class. We will celebrate the progress made and the great projects you have created! We will have a class-wide vote for the “most usable” and “coolest project” during class, and we will not be live-streaming or recording those days. You are strongly encouraged to attend class at least one presentation day!

Hint: Consider recording your video using Zoom.

Finalize Project Deliverable

Verify that your final project deliverable satisfies the project requirements.

Reflection and Peer Evaluation

This portion is an individual task. Do not include it in the project final deliverable.

Grading Rubric

Total: 180 points + 10 extra points

Angular Component: 66 points

Presentation: 30 points

Reflection and Peer Evaluation: 15 points

Project Deliverable: 44 points

Demonstration and Usability: 25 points

Note: All partners must be present at the demo. Otherwise, 10 points will be deducted and you are required to reschedule the demo.

Extra Credit (10 points) — Successfully host your app (.html, .css, .php, .js, and Angular) on Google Cloud Platform (no partial credit) - The overall behavior of your app must be a single unit. It must not be disconnected. All parts / components must be properly connected. That is, once a user enters your app through a web browser, there is an appropriate navigation system and / or an execution flow allowing a user to achieve her / his goal(s) without (re)visiting another part of your app manually (for example, by entering another URL in a web browser’s address bar). - Overall, your entire project must work as expected (note that the backend functionalities will work - you implemented the backend functionalities for Sprint 3); it must provide normal behavior, given the domain application of the project. - See our Course Resources for more information on publishing to Google Cloud - You must submit the URL with your code and use that URL to demo your app to receive the extra credit points

Submission

Please follow the deadlines below when making your submission. Note that the video is due before your final code submission, so that we have time to share our presentations with the class.

Presentation Video Due: Monday, November 29, 2021 at 5pm

Code Submission Due: Friday, December 3, 2021 at 11pm

Presentation Video

Upload your 3-minute video to Box using the link below. You must name the video with your computing ids, i.e. mst3k-jh2jf.mp4. Please note that you must fill out all the information on the form when submitting your video.

Upload Here

Project Code

Upload your project (all of your .php, .html, .css, .js, and any image files, along with the src folder of your Angular component) to the Sprint 5 assignment on Gradescope. Gradescope will accept a zip file, individual uploads, or a GitHub repository for your submission. You must include your partner in the group submission on Gradescope for both partners to get credit for the assignment.

Demonstration with TAs

Your program will be graded during an interactive session in which you demonstrate it to the course staff (instructor and/or TA). You will have to sign up for a demonstration slot in order to do this. A sign up page will be available for you to use as the deadline approaches. Sign up early so that you get a time slot you want.

If you do not do a demonstration, you will receive no credit for the sprint.

Part of your grade will be based on explaining code segments and/or design to the instructor or TA. Come to the demonstration prepared to talk about your code.

Even though you will be demonstrating the files after the deadline, all the code must EXACTLY match the code that was submitted, and cannot have been modified after submission deadline. Several randomly selected assignments will be tested by installing the submitted files back onto the server before running the program. If it is determined that your code was modified after submission deadline, you will not receive credit for it.

Additional Information

Project Presentation Videos, Final Deliverables, and the Reflection and Peer Evaluation will not be accepted late.

Note: Making your submission available to the course staff is your responsibility; if we cannot access your files and your site on the cs4640 server, then we have to assign a zero grade. Be sure to test access to your files before the due date.

Important Note: All code in this assignment must be your own! You are free to use the course handouts and examples as a starting point. You may refer to online resources with proper citation but you CANNOT take any code from the web or any other source. Assignments that are found to have done this will be given a zero and submitted to the Honors Committee. You may not use code you have submitted for another course.

Reminder: Special Helper Extra Points

1 point for each project helped, up to 10 (total) extra project points

For each sprint, if you get help from your classmates (excluding your project partner), when you submit your assignment, please make a note (helper.txt) that:

Note: Extra points will not be awarded if any of the above information is missing.