The tutorial is held F2F from this week onwards. See the tutorials page for more info.
prior to the tutorial, or in the first 10 minutes Find code quality problems in iP PRs:
1a) Find the PR you have been allocated to discuss (expand the panel below). If the allocated PR is not available or suitable, you can choose the fallback option, and failing that, any random PR.
PR allocation
1b) Find instances of the three code quality problems listed below: Go through the code in the diff view (i.e., the files changed tab) of those PRs, and take screenshots of instances of the following three code quality problems (ignore other types of code quality problems):
a) Weak SLAP
b) Nesting problems: arrow-head style code or too-deep nesting (what's the difference?)
c) Too-long methods
To identify nesting problems or long methods, zoom out and scroll through the entire PR code to do a visual inspection (no need to read the code line-by-line). After visually locating a method that looks too long/deep, have a closer look to see it can be improved by using better abstraction.
If existing PR comments are getting in your way, you can hide them using the following option:
FAQ How to decide if a method is too long (or if the nesting is too deep)?
first 10 minutes Paste screenshots you took in the T5-Workspace.pptx
file the tutor will share with you via MSTeams.
next 10 minutes Discussion: The tutor will lead a short discussion to go through the problematic code you found.
after the tutorial Apply the insights gained from this activity to improve the code quality of your own iP, if necessary.
FAQ Why is tutorial task 1 rushed? I couldn't update the Workspace file before it was downloaded by the tutor; will I be penalised? Can I do it later?
1 | As a … | I can … | So that I can … | notes |
---|---|---|---|---|
2 | first-time user | see some sample trips when I open the app | easily try out its features without needing to add my data first | |
3 | first-time user | see a help message explaining which features I should try first | start by trying features that are more suited for new users | e.g., "hey you seem to be new. Try adding a trip first" |
4 | new user ready to adopt the app for my own use | purge all data | get rid of sample/dummy data and start adding my real data | |
5 | busy user | track all trip-related data inside the app | save time looking for data | |
6 | user | sending trip info to friends | via email or telegram | |
7 | user | add a trip | ||
8 | user | delete a trip | get rid of trip no longer needed to track | |
9 | user | edit trip details | correct mistakes I made when adding a trip | |
10 | user | view all trip details | recall details of trips | |
11 | user | see the next upcoming trip details when I open the app | save the step of searching for the trip | reason: the next upcoming trips is the most likely trip the user may want to see |
If you want to refine your user stories (based on what you learned from the tutorial activity above) that you brainstormed earlier, do that first.
If you haven't done so already, prioritize tP user stories as explained in the panel below.
Admin tP → week 6 → Conceptualize the MVP version
Why?: So far, we have user stories we want to include in the MVP version. But user stories simply tell us user needs. To move towards a product design, we need to design features of the product that can fulfill those user needs.
Submission: Note down the feature list in your online project notes document.
FAQ How many features should we put in the MVP?