Welcome on Usability Study
Notice:
Please remember to think aloud about following tasks in this way:
- What task you are going to solve
- How you understand that task
- How and in which way you solve that task in IDE
Task 1
Feel free to spend a few moments looking through the IDE. Please remember to think
aloud while you browse.
Objective: User takes note of Refactoring menu and actions hidden inside by first
observation of IDE.
Task 2
Now create a simple application with name Hello in the
prepared package org.coders.games.
Then application should write text "Hello" into Output window.
Objective: Only check if user understand Edit/Compile/Run cycle importantly for nexts
tasks.
Task 3
Java application with name Hello rename to HelloCoders
and test its functionality.
Objectives:
- Check user's method of renaming (manually or by refactoring Rename).
- Check typical place for invocation of Rename action
Task 4
You have changed your opinion and now try to find a way, how to put back the name HelloCoders
to the name Hello.
Create the new package org.coders.test and move
previous file Hello.java into it.
Then compile it and test if it is still fully functional.
Objectives:
- First we would like to know, whether user could find Refactoring Undo action.
- Then we need to know how and if user distinguishes between Editor Undo and Refactor
Undo.
- We check how user moves one class to another package (manually by Copy+Paste, by D&D
or by Move class refactoring action).
Task 5
Your colleague have showed you two direstories ( ui
a lib at this path C:\toys
) with code of simple game with name Anagram.
Copy both directories with their content to the directory C:\work\org\coders\ and then restart the
IDE.
Java application Anagram was created by your colleague for another company Toys.
That is why packages inside have names org.toys.lib and org.toys.ui.
Open file WordLibrary.java and find all vyhledej všechny výskyty
elementu Toys.
Then repair structure of code and test application Anagram by compilation.
Objectives:
- First we would like to know whether user uses Where Usages action and Rename action or
makes all changes manually in this bigger project.
- We observe the invocation place for Rename action too.
Taks 6
Now you should move and merge all classes from direstories ui a lib
into directory games, which is part of package org.coders.games.
Then repair structure of code and test it (compile and run Anagram application).
Objectives:
- We would like to know whether user uses Move class action and in which way in this
bigger project with more classes.
Task 7
Add additional functionality to the Anagram game. It should count number of failing
attemptes ant this number should be shown along with message "Incorrect! Try
again!". Use existing field int badGuess, which you can find in Anagrams.java.
Then create getter and setter for field badGuess.
Test complete application at the end.
Objectives:
- We test whether user uses (and how exactly) Encapsualte Fields action or writes all code
manually.
- We observe if he understand Preview in Output too.
Task 8
It's neccessary to organize structure of one bigger java project and this arid work
have hit upon you.
All it's about package C:\work1\org\netbeans\modules\classfile.
Rename Classfile.java to CFile.java in a
way, that code will be functional (compilable) still.
Then test it by building of all package.
Objectives:
- We test whether user uses Rename and Where Used actions in the case of more bigger
package then in previous tasks.
- Preview in the Output window contains more information, so we need to know if user
understand it easily.
Taks 9
The mistake in a comunication with your colleague have brought misunderstanding and
it's neccessary to put back name Classfile.java instead of CFile.java.
And then rename ClassName.java to CName.java.
Then build all package.
Find all occurencies of element CName
Objectives:
- Testing of usages refactoring Undo action or reverse Rename action.
- We test Where Used action too.
Task 10
Change order of parametres by method arrayToString(String name, Object[] array)
in file ClassFile.
Objectives:
- Test usage of Change Method Parameters action.