Product Delivery [Final]
The final presentation will include a live demo of your application. All team members are required to participate. Your grade will be influenced by your presentation's organization and clarity.
The presentation will be conducted in-person. The instructor and your advisor will attend, and other advisors (TAs) may also be present. Other students will have the option to join via a Zoom call. The presentation will be recorded but the recording will not be made available to students.
Note: We will post the sign-up link for the final presentation in our Slack workspace.
Your presentation should last between 30 to 45 minutes, and we will allocate an additional 15 minutes for Q/A (which can be incorporated into your presentation). We may ask you to demonstrate certain features of your application during the live demo.
Your presentation should be structured as follows.
Opening Remarks [2-3 minutes]
Recall your project's purpose and the problem it addresses.
- While we're aware of your project, a concise summary helps set the context.
- Please select one team member to present the opening remarks.
- We encourage the use of slides (or other visuals) to enhance the presentation. If you opt to use slides, please keep them straightforward. In particular, avoid using excessive text.
What does your application do? [10-20 minutes]
First, provide a brief overview of your project, explaining what it does and the problem it solves. Then, describe four to five user stories that have been implemented. For each user story, give a live demo of your deployed app, demonstrating the functionality of the user story.
Keep in mind:
- We need a live demo (avoid using slides, screenshots, etc.)
- Don't spend time showing us basic features like user sign up or login unless it's a crucial aspect of the app.
- Strategize and prioritize: we want to see demos of the unique "must-have" features that set your app apart from others.
- Showcase what you have accomplished and highlight features that will impress us.
- Each team member should take turns presenting a 3-4 minute demo for one user story.
- Make sure your project works! Practice your demo beforehand to ensure it runs smoothly.
- All team members must use the deployed application. However, keep the app running locally on your computer as well (each team member should do this) in case the deployed app encounters any issues during the demo.
How Does Your Application Work? [10-20 minutes]
This section focuses on the technical aspects of your application: design, architecture, code, backend, frontend, technology, APIs, databases, algorithms, and more.
- Prepare a slideshow for this section.
- Explain the high-level architecture, including the frameworks and databases used.
- Next, provide a high-level overview of the design, possibly through diagrams (e.g., UML, ERD, Flowchart, etc.). Avoid displaying a cluttered diagram of all classes in your application. Instead, focus on the most intriguing sections of the design, particularly those concerning the critical, core, and unique features of your application.
- Detail some of the complex algorithms, technologies, or tools you have implemented (there's no need to show the actual code).
- Explain how you tested your application, ensuring to include a screenshot of the code coverage.
- Divide the presentation delivery into sections, each handled by different group members.
Closing Remarks [3-5 minutes]
We would like to learn about:
- The limitations of your software (what it doesn't, can't, or won't do)
- The future of your software (what will happen to it after the course ends?)
- Your key takeaways from this project (a moment of reflection as a group)
Please select one team member to deliver the closing remarks (preferably not the same person who gave the opening remarks). We suggest using slides or other visuals to supplement the presentation.
Rubric (100 points)
Advisors: If any team members are absent without advance notice, please assign them zero points for this activity!
[-5]
The opening remark lacked organization, indicating unpreparedness of the speaker.[-5]
The motivation for the project was not communicated clearly and succinctly.[-20]
No live demo was provided.[-7]
The team used a locally running version for the live demo, instead of the deployed app (unless the issue was beyond their control, like Heroku being down).[-7]
The app crashed or didn't function as expected more than once during the live demo, indicating poor preparation.[-5]
The demo presented trivial use-cases such as user signup or login/logout.[-7]
Fewer than 4 user stories were presented in the demo (unless that's all they have or some use cases were complex and time did not permit more stories).[-5]
The demo failed to show at least one user story that captures a significant feature of the app (unless there aren't any).[-5]
If asked to demonstrate a use case during the demo, the team failed to follow instructions promptly.[-5]
If asked clarifying questions during the demo, the speaker couldn't provide a clear explanation or demonstrate full knowledge of the work.[-10]
No slides or visual aids were used to supplement the presentation.[-5]
The high-level software architecture and technology stack used for the project were not clearly stated.[-5]
The high-level design of the software was not succinctly described.[-5]
Diagrams like UML or wireframes were either absent or inconsistent with the narrative.[-7]
If asked clarifying questions, the speaker couldn't justify their design choices or articulate their strengths and weaknesses.[-7]
Failed to describe noteworthy details such as libraries, APIs, algorithms, data structures at a level appropriate for the audience and time frame (unless there aren't any).[-7]
The technical information was presented at an inappropriate level of detail. The delivery was not smooth with illogical ordering of slides or constant pausing.[-12]
Failed to communicate the project status succinctly, including unfinished work and limitations of the software.[-5]
Future work was not described.[-7]
Failed to reflect on their team work and take-aways. The conclusion was a simple restatement without reflective thought.[-5]
The closing remark lacked organization, indicating unpreparedness of the speaker.[-5]
The presentation failed to engage the audience, and the speakers lacked enthusiasm.[-7]
The presentation lacked coherence and smooth flow between speakers, indicating the need to decide next steps mid-presentation.[-7]
The audience had to make significant effort to understand the demo on multiple occasions due to lack of preparation.[-5]
The presentation was dominated by one or two members (unless fewer than 5 members are left in the team).[-5]
The presentation exceeded the allotted time.