proj03_mentors : Mentor Duties for proj03

num ready? description assigned due
proj03_mentors false Mentor Duties for proj03 Thu 11/29 05:00PM Thu 11/29 05:00PM

Checklist before lab

Here’s a checklist of things that should have been done by either you, or your team, based on the instructions from the and :

  1. Check the Kanban board. Check that the students are on track to earn 1000 points. If not raise your concerns with the team.

  2. If these columns don’t already exist, create columns for “Ready for QA (mentor)” and “Ready for grading (TA)” in between the “In Progress” and “Done” columns.

    Anything the students have put into “Done”, drag back into “Ready for QA (mentor)” if you haven’t QA’d it yet (including writing all the needed information in the FEEDBACK_teamname repo for the team.)

  3. Make sure that you are not the bottleneck for their progress, that is:
    • If you have issues that are waiting for QA, get the QA done (instructions below)
    • If they are new issues they’ve entered or are working on that have not been approved or estimated, review them and let them know either they are approved/estimated, or what your concerns are.
  4. For QA purposes, ask the students if they have a version of the app up and running on Heroku.
    • If they do, ask them to put a link to that in the README.md of their forked repo. If they already did this, and it wasn’t part of any point estimate you already made, you can make a new issue and give them 100 points for doing this, once it’s in the README.md.
    • If they don’t, check in with them to see whether it’s feasible to get one of those up and running. You can make this a 100 point issue if it helps the team to get to 1000 points and/or helps to incentivize getting this done.
    • Communicate with them over your communication channel before lab about this if possible.
    • If not, then do it during lab on Thursday.

During lab on Thu, Nov 29, 18

Step 1: Agile Standup

The group should hold an Agile Standup. Record attendance in the README.md of the Feedback repo.

It could be a note like:

# Standup 11/29/2018

Present: Amy, Brad, Chris, Dani, Eileen
Late: Frank
Absent: Jane

The standup should do TWO things this week

Step 2: Help Team make a plan to get to 1000 (or 1100)

The team needs to get to 1000 (or 1100). That includes having all of their issues QA’d and graded before the final lab starts at Thu, Dec 06, 18 at Dec:12 PM

The deadline I gave the teams for having all their issue ready for QA is:

That gives you about 48 hours to do the final QA. That’s not a lot of time.

And that gives them ALMOST NO time to respond if they are problems, before grading happens.

Step 3: Help Team Identify and Resolve Roadblocks

Finally, after all this planning, there is, we hope coding.

Help the students with their coding in any way you can.

How to do the QA Step

Here is an outline of the roles and responsibilities for grading of legacy code work.

Mentors: Before Writing your Feedback

You should do at least the following due diligence:

Mentors: Writing Feedback (but NOT grading)

The first thing to do is to put in a heading appropriate to the “round” of work that the students did.
List it as “Mentor evaluation” with your name in parens.

For example:

# Mentor evaluation (Chris Helpfulperson)

Then, under that heading, list the issues that the students worked on. It is helpful if you can:

Example:


Pull request: https://github.com/UCSB-CS56-Projects/cs56-games-hopscotch/pull/12

* [Issue: #7](https://github.com/UCSB-CS56-Projects/cs56-games-hopscotch/issues/7) Change the menu

| +o?-  | Summary | Comments  
|-------|------|--------|
|   o   | Did they solve the core problem of the issue? |   |
|   o   | Is the code style and organization satisfactory? |   |
|   o   | Did they break anything else or create unintended consequences? |   |


Original Estimate: 250.  Student Requesting 300 in comment.


* [Issue: #97 Update JUnit tests](https://github.com/UCSB-CS56-Projects/cs56-games-hopscotch/issues/97)

| +o?-  | Summary | Comments  
|-------|------|--------|
|   o   | Did they solve the core problem of the issue? |   |
|   o   | Is the code style and organization satisfactory? |   |
|   o   | Did they break anything else or create unintended consequences? |   |

Estimate: 200 


* [Issue #26: Change Help Menu to Make it Non-Editable](https://github.com/UCSB-CS56-Projects/cs56-games-hopscotch/issues/26)

| +o?-  | Summary | Comments  
|-------|------|--------|
|   o   | Did they solve the core problem of the issue? |   |
|   o   | Is the code style and organization satisfactory? |   |
|   o   | Did they break anything else or create unintended consequences? |   |

Estimate: 50

Then, under each issue, put some comments to help guide the TA/Instructor that will do the actual grading.

Those things all send a signal to the TA/Instructor of what to look for, but stop short of recommending a specific action. If you have any questions on this, please consult your instructor.

If the pull request does in fact improve the code, and does not make anything worse, then accept the pull request and note that you did so in the feedback repo. Delay accepting the pull request ONLY if/when there is some serious problem with the code the students have written.

If you do NOT think you can accept the pull request, then the sooner you indicate this, and the specific concerns you have, the better. The worst situation is to end up at the end of the course with three dozen unresolved pull requests across 15 repos. Please don’t let that happen! Deal with them as soon as you can!

TA/Instructors: Do the grading

Here’s how grading works for TA/Readers/Instructors:

  1. NOTE that you have awarded points in the FEEDBACK repo.
    • This note should have your initials (SR, JJ, or PC), i.e initials of an instructor or a TA
    • The commit should also be done by the github id of an instructor or TA
    • It should indicate how many points were awarded.
  2. In the feedback repo, near the bottom, add a section “Points awarded by instructors/TAs”
    • Here, just make a running tally of the points added into proj1, proj2, proj3, proj4.
    • This section should answer the question: the 250 points in proj1, and the 100 points in proj2, where do they come from? (See example below).
  3. Record or update the current point total for proj1, proj2, proj3, or proj4 in Gauchospace.
# Points awarded by TA/Instructor

## proj1

* 200: all 200 points from issue #7
* 50: first 50 of 150 points for issue #8

Total: 250

## proj2

* 100: last 100 points of 150 for issue #8.

Total: 100

## proj3

no points awarded yet

## proj4

no points awarded yet

Skunkworks Code Reviews

A mentor asked:

One student from my team has made a side repo for the skunkworks project, which will be integrated with the main project repo they are using. Should I have them push the side repo to the ucsb-cs56-f18 organization? And where should they put their issues that are associated to this side repo?

I replied:

So, the issues should go in the regular issues list for your team.

If the side repo isn’t part of the ucsb-cs56-f18 organization, they should:

  1. Make an empty repo in ucsb-cs56-f18 called where-is-every1-sw-7 (where 7 is, for example the issue number that mentions the creation of the skunkworks).
  2. Just put a README.md in that empty repo
  3. Fork the repo to their own personal account.
  4. Add a remote for their “side repo” to the forked copy, e.g.
    git remote add siderepo url-of-side-repo
    
  5. Do a pull from the side-repo with --allow-unrelated-histories
       git pull --allow-unrelated-histories siderepo master
    
  6. Fix the merge conflict in the README.md if any
  7. Do a pull request back to the ucsb-cs56-f18/where-is-every1-sw-7 repo

That pull request is the one that you can code review.