Project 3.2: GUI Program, Version 1

Due Tues 6/2 @ 3pm. User test sheets due in class on Wed 6/3.

Build a Working Version of Your Application

Your primary hand-in for this phase is a first complete implementation of your GUI program. Your program should be in a working state, with a few of your most basic features implemented. The software should be well-designed, should have well-written code, and should include tests for every method that doesn't have outside dependencies. (So there should be tests for all major model methods, but not for those methods that require input from the user, JavaFX calls, displaying stuff to the screen, etc. Remember, designing for testability means designing with very strong isolation of nontrivial logic from outside dependencies!)

Turn It In

Check in all your work and tag the commit with phase_3_2. Share your repository with all the members of your code-review cohort by 3pm on Tuesday. Some people's Carleton usernames don't line up with their Bitbucket usernames, so make sure to coordinate by email with the other groups. (It's also just nice etiquette to send an email letting them know when you've shared your repository with them.) If you think it could be at all confusing how to build and run your program, include a plaintext README file at the top level of your repository.

You will have until class time on Wednesday to prepare for our code review. If a team hasn't shared their code with you by the time you want to start reading it, make sure to email them.

Do a User Test

As a team, perform informal, Krug-style user tests with two users that are not in our class. Each user test must be at least ten minutes long.

Before you begin, ask your user to use the think-aloud protocol, and let them know that you won't answer any of their questions. For your part, remember to use the “shut-up-and-listen” protocol.

Have each user sign a sheet of paper, saying something like “I used [your name]'s program for ten minutes on [date]”, followed by their signature and printed name. Bring these sheets with you to class on Wednesday. It's okay for the user tests to happen after 3pm on Tuesday.

After the two user tests, meet together as a group to discuss what you learned from watching these people use your program.