Intuitive UI
Posted: Fri Jul 23, 2010 10:38 am
OK. There seems to be differing ideas about what draws new users to iScore.
In my thinking an INTUITIVE user interface will make newbies AND experienced scorekeepers want to buy iScore and will have them raving about it to all their fellow scorers. After all, that drives your business so I would think that it would be the most important thing.
By intuitive user interface I don't mean the current iScore interface. Bad example. It just does not welcome a new user and let them get into it slowly. It doesn't visualize what's happening on the field because there are too many times where, if you don't read the question, you are very likely to screw up the scoring, have to try again, and then get lost with the action happening on the field after that.
If I were to design the iScore user interface scoring would be in three distinct steps:
1) the play starts - Hit "In Play" button (got it)
2) batter and runners run around the bases and/or fielders make outs
3) the play ends - Hit "End Play" button (actually, the In Play button)
While "In Play" your center of attention is the main screen. Just no Ball/Strike/Foul buttons. Runner touches are extended to drag and drop. The "In Play" button is changed to "End Play". "Out" button is always a result of putting the ball in play- for the batter anyway- so it just confuses the interface.
The best way to describe the interface is to use it with an example:
There's a runner at 2nd base. The batter hits a double in the gap. Runner at third scores and the batter is tagged out after rounding 2nd too far. Very common play- probably more complicated that 80% of the plays in a game. The scorer sees all this happen. When it's over, (s)he must score it.
OK, the ball was hit. So you hit "In Play". Up comes a dialog with a couple buttons and a diamond on the top. Hit 2nd base (which says DOUBLE) across it. The dialog goes away and you're back at the main screen now. The runner at 2nd has been moved to third and the Ball/Strike/Foul buttons are gone. But the runner at 2nd scored. You can see that the picture on the computer doesn't match the runners on base. So, you drag the runner from 3rd to home and another dialog is displayed asking "Advanced on Play" and a few other appropriate possiblities like "On error", etc.
At this point, the play MAY HAVE BEEN an out at home. In that case the user wouldn't drag the runner home but instead press the runner at 3rd and a dialog would ask what to do. If he was tagged out, then the user would hit the "Tagged out" button and then the fielder involved in the play.
Back to what really happened. The runner from 2nd DID score so you answer "Advanced on Play" and we're back to the main screen. Now the batter (at 2nd on the double) was put out. The user clicks on the runner at second and answers "Tagged off base" (as opposed to "Tagged out") because the play was at second and not attempt was being made to go to third. The fielders who made the play are put in, and we are back at the main screen.
The play is over, so the user hits "End Play".
Now, through this whole scenario, the user has never had to READ a question to tell the computer what happened. (S)he dragged a runner or hit a base and the immediate reaction from the UI was in the context of THAT base or runner and it knew the base coming from and going to. The user never was confused about a "Wild Pitch" button being displayed when he just hit a single.
Let's try another one:
Runner at 2nd and the batter hits a LONG fly ball and the runner is tagging up to go to 3rd on the out. But the fielder drops the ball. The runner at 2nd, after passing 3rd sees the drop and goes home. The fielder throws the ball home to try and get the runner out but fails. The batter goes to second on the throw home. Another very common play in Little League.
Steps:
1) "In Play"
2) "Error" CF (batter is placed on 1st)
3) Drag runner from 2nd to 3rd / "Advanced on Play"
4) Drag runner from 3rd to Home / "Advanced on Error" / "Error Already Assigned" (Since it's on an error, it doesn't give an RBI to the batter)
5) Drag runner from 1st to 2nd / "On throw"
6) "End Play"
In this scenario, there is never a question asked that the user didn't already expect. Dialogs are the result of an action by the user directed at THAT runner or batter.
The UNDO button through all of this should undo ONE action- not the whole play. That's very annoying in the current interface but it seems necessary because of the way it starts a play and then keeps asking questions until it's satisfied. Instead, the user should be the scorekeeper and tell the computer when the diamond on the screen looks like the field he's looking at.
Certainly, I'm not saying the current UI is bad- just not very intuitive and thus difficult for the newbie to use. The first user setting that should be implement with the current interface is "Simple"/"Intermediate"/"Advanced" so they can get into it a little at a time.
My $.02. Sorry if it looks more like $.10 worth.
In my thinking an INTUITIVE user interface will make newbies AND experienced scorekeepers want to buy iScore and will have them raving about it to all their fellow scorers. After all, that drives your business so I would think that it would be the most important thing.
By intuitive user interface I don't mean the current iScore interface. Bad example. It just does not welcome a new user and let them get into it slowly. It doesn't visualize what's happening on the field because there are too many times where, if you don't read the question, you are very likely to screw up the scoring, have to try again, and then get lost with the action happening on the field after that.
If I were to design the iScore user interface scoring would be in three distinct steps:
1) the play starts - Hit "In Play" button (got it)
2) batter and runners run around the bases and/or fielders make outs
3) the play ends - Hit "End Play" button (actually, the In Play button)
While "In Play" your center of attention is the main screen. Just no Ball/Strike/Foul buttons. Runner touches are extended to drag and drop. The "In Play" button is changed to "End Play". "Out" button is always a result of putting the ball in play- for the batter anyway- so it just confuses the interface.
The best way to describe the interface is to use it with an example:
There's a runner at 2nd base. The batter hits a double in the gap. Runner at third scores and the batter is tagged out after rounding 2nd too far. Very common play- probably more complicated that 80% of the plays in a game. The scorer sees all this happen. When it's over, (s)he must score it.
OK, the ball was hit. So you hit "In Play". Up comes a dialog with a couple buttons and a diamond on the top. Hit 2nd base (which says DOUBLE) across it. The dialog goes away and you're back at the main screen now. The runner at 2nd has been moved to third and the Ball/Strike/Foul buttons are gone. But the runner at 2nd scored. You can see that the picture on the computer doesn't match the runners on base. So, you drag the runner from 3rd to home and another dialog is displayed asking "Advanced on Play" and a few other appropriate possiblities like "On error", etc.
At this point, the play MAY HAVE BEEN an out at home. In that case the user wouldn't drag the runner home but instead press the runner at 3rd and a dialog would ask what to do. If he was tagged out, then the user would hit the "Tagged out" button and then the fielder involved in the play.
Back to what really happened. The runner from 2nd DID score so you answer "Advanced on Play" and we're back to the main screen. Now the batter (at 2nd on the double) was put out. The user clicks on the runner at second and answers "Tagged off base" (as opposed to "Tagged out") because the play was at second and not attempt was being made to go to third. The fielders who made the play are put in, and we are back at the main screen.
The play is over, so the user hits "End Play".
Now, through this whole scenario, the user has never had to READ a question to tell the computer what happened. (S)he dragged a runner or hit a base and the immediate reaction from the UI was in the context of THAT base or runner and it knew the base coming from and going to. The user never was confused about a "Wild Pitch" button being displayed when he just hit a single.
Let's try another one:
Runner at 2nd and the batter hits a LONG fly ball and the runner is tagging up to go to 3rd on the out. But the fielder drops the ball. The runner at 2nd, after passing 3rd sees the drop and goes home. The fielder throws the ball home to try and get the runner out but fails. The batter goes to second on the throw home. Another very common play in Little League.
Steps:
1) "In Play"
2) "Error" CF (batter is placed on 1st)
3) Drag runner from 2nd to 3rd / "Advanced on Play"
4) Drag runner from 3rd to Home / "Advanced on Error" / "Error Already Assigned" (Since it's on an error, it doesn't give an RBI to the batter)
5) Drag runner from 1st to 2nd / "On throw"
6) "End Play"
In this scenario, there is never a question asked that the user didn't already expect. Dialogs are the result of an action by the user directed at THAT runner or batter.
The UNDO button through all of this should undo ONE action- not the whole play. That's very annoying in the current interface but it seems necessary because of the way it starts a play and then keeps asking questions until it's satisfied. Instead, the user should be the scorekeeper and tell the computer when the diamond on the screen looks like the field he's looking at.
Certainly, I'm not saying the current UI is bad- just not very intuitive and thus difficult for the newbie to use. The first user setting that should be implement with the current interface is "Simple"/"Intermediate"/"Advanced" so they can get into it a little at a time.
My $.02. Sorry if it looks more like $.10 worth.