lab03 : First Retro and MVP Preparation

num ready? description assigned due
lab03 true First Retro and MVP Preparation Fri 01/26 12:00AM Fri 02/02 11:59PM
Points

Grading for First Retro Participation and MVP Preparation

Graded: (lab03-I) (5 pts) You earn these individual points if you participated in the first retrospective. Paticipation means to be working either in class or via Zoom with your team during the retro meeting on <2024-01-26> OR to document specifically in team/retrospectives/RETRO_01.md how you caught up with, and contributed to the discussion.

Graded: (lab03-T) (20 pts) You earn these team points based on the attendance/participation in your retrospective; 3.33 per team member for teams of 6, 2.86 per team member for teams of 7, 2.5 points per team member for teams of 8.

Graded: (lab03-T) (20 pts) You earn these team points if by the due date the content in team/retrospectives/RETRO_01.md is updated per the instructions below.

Graded: (lab03-T) (10 pts) You earn these team points if by the due date you recorded the outcome of (one of) your Retro experiments in team/retrospectives/RETRO_01.md.

Graded: (lab03-I) (20 pts) You earn these points for submitting feedback on overall team performance via a CATME.org form survey that you will get email invitations and reminders for.

Graded: (lab03-T) (15 pts) You earn these team points if your team posted, or commented on already posted, articles or tutorials in at least one of the ..._help channels. You need at least 3 such interactions (posts or comments) to get full credit. Please document that you (which members of your team?) did these posts or comments in your LEARNING.md file.

Graded: (lab03-T) (10 pts) You earn these team points if the team links spreadsheet is updated with all the requested links to your repo information.

Today: Retrospective

Below is a suggested procedure/timeline for your Retro. Ultimately, the format is up to you, but you need to start somewhere, so we propose the following guidelines:

Procedure for First Retro

You may or may not have done an official Sprint Review meeting yet. In a way, you are doing those via your check-ins with your mentors and that is sufficient in a pinch, but we encourage you to hold and log official Sprint Review meetings at the end of each of your Sprints. In any case, you should have enough information about what worked and didn’t work in your Sprint(s) so far (and from your homeworks) to hold your first Retrospective meeting today!

Retro Strategy: Start, Stop, Continue

1. Individual Reflection (10-15 minutes)

2. Group Discussion (20-30 minutes)

Staff will be dropping in to observe.

Mentor Assignments

We have assigned mentors to each team. Please see the table below for your mentor assignment. Mentors will be actively involved in facilitating your project and helping you with any questions you may have. Feel free to directly tag them in your team Slack Channel. You should use the Slack Channel actively to communicate with your team, that way your mentors can see what you are working on and help you out. Mentors will be walking around during the class to check in with you team.

Row 1pm 2pm 3pm
1 pj01-universityclothing (Tobias/Luke/Matt) pj04-courserecs (Chris/Mateo) pj05-codegrow (Luke/Ryan)
2 pj02-travelplanner (Kristin/Matt) pj06-foundit (Anushka/Mateo) pj07-datingalgorithm (Ryan/Anushka)
3 pj03-intelligrocery (Chris/Matt) pj10-spotifai (Ryan/Aditya) pj08-reccen (Anushka/Aditya)
4 pj11-songrater (Luke/Chris) pj13-researchhelper (Aditya/Luke) pj09-liveordie (Kristin/Chris)
5 pj12-appblocker (Matt/Kristin)    
6 pj14-ucsbcoral (Aditya/Mateo)    

Deliverable

Two weeks to MVP Code Freeze and peer review. Please prepare:

Planning your demo (MVP video)

In lab05 in two weeks’ time you’ll be asked to evaluate other teams’ presentation(s), so plan to watch them and be ready to do some very brief writing after each one.

Point us to your video

Add the following information to your README.md:

===================================================================================

Installation

Prerequisites

TODO: List what a user needs to have installed before running the installation instructions below (e.g., git, which version(s) of your framework(s) of choice)

Dependencies

TODO: List which libraries / add-ons you added to the project, and the purpose each of those add-ons serves in your app.

Installation Steps

TODO: Describe the installation process (making sure you give complete instructions to get your project going from scratch). Instructions need to be such that a user can just copy/paste the commands to get things set up and running. Note that with the use of GitHub Actions, these instructions can eventually be fully automated (e.g. with act, you can run GitHub Actions locally).

Functionality

TODO: Write usage instructions. Structuring it as a walkthrough can help structure this section, and showcase your features.

Known Problems

TODO: Describe any known issues, bugs, odd behaviors or code smells. Provide steps to reproduce the problem and/or name a file or a function where the problem lives.

Contributing

TODO: Leave the steps below if you want others outside your team to contribute to your project.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

If you haven’t already, add a file called LICENSE.txt with the text of the appropriate license. We recommend using the MIT license: https://choosealicense.com/licenses/mit/

MVP Demo, due 2024-02-08 23:59

The YouTube video https://youtu.be/k0Je8ASh4jo explains how you can create an MVP demo video using Zoom and YouTube:

This page tells you how to document and list the link to your demo when it is complete. The video may be public, or “unlisted”, as you see fit. Links to videos will be shared with the class, but the class is asked not to share links to non-public videos (unlisted videos) with people other than enrolled students and course staff.

Your video should be no longer than 5 minutes and should follow these instructions:

Demo of your production app

Your demo should be from your production app (e.g. prod on a hosting platform), not from a version deployed on localhost. Mobile Apps should ideally be demoed from a screen-cast/shared mobile device, but in a pinch, an emulator demo will do as well.

Students in the class, as well as Instructors/TAs/LAs should ideally be able to visit your production link (or apk, ipa) and try out the app after watching your video.

So, make every effort to have your production version ready to go with a stable MVP for the deadline lab section.

Additional notes about the MVP demo

  1. Features beyond MVP are fine Note that if you have moved your production version on main “beyond” your MVP, that’s fine; as long as it contains all of the MVP functions. If you are time restricted, you can focus the demo just on the MVP features and “save” the rest for later.
  2. Broken main is a problem. You can fix with a temp-prod branch.
    If your main branch is currently “broken” in some way that makes it impossible to do a decent demo from your prod Heroku app, then here’s a quick fix:

    • (a) find an earlier commit that isn’t broken
    • (b) give that commit a branch name temp-prod for example
      • use: git checkout -b temp-prod
      • then git reset --hard a1b2c3d4 where a1b2c3d4 is the sha of the commit that’s good;
      • then git push origin temp-prod -f
    • (c) redeploy your prod app using temp-prod instead of the main branch.

    If you do this, please disclose that you are demoing from temp-prod and not main in your lab02 submission so that we aren’t confused when evaluating your MVP.

    It’s not ideal, but it won’t be a major deduction. It’s better than demoing a broken main branch.

  3. A demo from localhost is better than nothing, but isn’t really an MVP demo. If you absolutely cannot do a meaningful demo from your production app, then you may demo from localhost as a last resort, rather than offering no demo at all. However, that will result in a lower grade; a localhost app isn’t really “viable” in the sense that you can’t put it in the hands of customers.