lab06 : Higher-Level Testing, UX Planning, Second Retrospective

num ready? description assigned due
lab06 true Higher-Level Testing, UX Planning, Second Retrospective Fri 02/14 01:00PM Fri 02/21 11:59PM
Points

Lab06 points, overview:

Graded: (lab06-T) (30 pts) You earn these team points if your team integrated a higher-level (not just unit tests) testing framework with your project and implemented and demonstrated successful execution of at least one component test or other integration or end-to-end test (e.g. BDD) in your project. Document your testing approach by extending your team/TESTING.md document. In combination with last week’s requirements, list there at a minimum: 1) how you implemented the unit test requirement from the previous lab (which testing library, which part(s) of the code, etc.), 2) your plans regarding unit tests going forward (it’s ok to not go all in with unit tests, but document and reason your decision.), 3) how you satisfied the component/integration/end-to-end testing requirement from this lab (which testing library, which part(s) of the code, etc.), 4) your plans regarding higher-level testing going forward (it’s again ok to not commit to an integrated testing solution, but document and reason your decision).

Graded: (lab06-T) (20 pts) You earn these team points if you list in a new team/evaluation/USER_FEEDBACK_NEEDS.md document (in priority order) three things about your product that you would love to have user feedback on. Just to give example possibilities: user preference between two designs, an A/B study on the consequences of two designs, user satisfaction with a particular feature, user satisfaction with your overall current product, but there are many more possibilities.

Graded: (lab06-T) (20 pts) You earn these team points for holding and documenting your second retrospective including logged attendance/participation per the instructions.

Graded: (lab06-T) (10 pts) You earn these team points when your retro experiment outcome is documented in the team/retrospectives directory by Tuesday, Feb. 25, 11:59pm!

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

Grading for new Development / Testing

Over the next week, please focus predominantly on new/improved functionality/robustness/user experience for your product, using your momentum and ideas from the MVP effort and discussion.

Again, every team member should be assigned (and complete at least one) new issue towards this goal. Make sure that your issues have clear acceptance criteria in Github Projects and that you have a process for completing and assigning issues (e.g. feature branches or your own “Continuous Delivery” rules). It should be possible at any point in time to deploy your product with new improvements over time!

So, while focus should be on your product growing/improving, we want you to experiment more with Test-Driven-Development (TDD). This could be a great week to fully embrace TDD, and we think you would get many benefits from it in the long term. It is, however, more work in the short term, so if you don’t think that you are ready to completely switch over to TDD, then at the very least you’ll have to select a tool for component testing (a type of integration or end-to-end testing) and implement at least one component test or other integration or end-to-end test in your source code. Use of a Behavior-Driven Development (BDD) framework would also check this box.

Teams working with React could use the React Testing Library or Enzyme or Playwright or Storybook. Python backends could for example be tested with TestProject. Any group could use BDD frameworks Behave or Lettuce. There are many more options!

Document your testing approach in your team/TESTING.md document. List there at a minimum: 1) how you implemented the unit test requirement from the previous lab (which testing library, which part(s) of the code, etc.), 2) your plans regarding unit tests going forward (it’s ok to not go all in with unit tests, but document and reason your decision.), 3) how you satisfied the component/integration/end-to-end testing requirement from this lab (which testing library, which part(s) of the code, etc.), 4) your plans regarding higher-level testing going forward (it’s again ok to not commit to an integrated testing solution, but document and reason your decision).

User Feedback Needs

For our planned Inter-Team Evaluation on 02/26/25, please make sure you have a version (or versions) of your product deployable that allows an evaluator team to give you feedback on specific questions you’d like resolved. Towards this end, over the next week:

List in a new team/evaluation/USER_FEEDBACK_NEEDS.md document (in priority order) three things about your product that you would love to have user feedback on. Just to give example possibilities: user preference between two designs, an A/B study on the consequences of two designs, user satisfaction with a particular feature, user satisfaction with your overall current product, but there are many more possibilities.

The more specific you can be on these items, the better. You get the points just for the ideation, but the idea is that this process facilitate and help you prepare one of the evaluations you list for the inter-team project evaluation exercise on 02/26/25, and the other team will actually try to answer your question while testing your deployment. Basically, you have 7 user study participants, the other team’s members, at your disposal for concrete feedback. Presumably, you will prepare your top priority user feedback solicitation, but maybe a different option if the top priority is not feasible to be evaluated by 2/26.

Second Retrospective

Schedule your next retrospective! You can do it today, or next Wednesday in class, or next Friday, or at a time outside of class, but you need to do it before the end of next Friday to get these lab points.

You already know the goal and procedure for Retrospectives from your previous Retrospective(s). This particular Retrospective allows you to discuss things that emerged from the MVP effort and feedback you received.

Retro Deliverable