outline modified rating scale heuristic evaluation
TRANSCRIPT
![Page 1: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/1.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 2: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/2.jpg)
Outline
• Modified rating scale
• Heuristic evaluation
![Page 3: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/3.jpg)
Modified rating scale
• -4: usability catastrophe—imperative to fix before
• -3: major usability problem–important to fix
• -2: minor usability problem–low priority
• -1: cosmetic problem only–need not be fixed
• 0: not a real usability problem or merit
• +1: cosmetic merit
• +2: minor usability merit
• +3: major usability merit
• +4: usability excellence
![Page 4: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/4.jpg)
Heuristic Evaluation of Swing
![Page 5: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/5.jpg)
Explicit interactor tree add
– Must ensure interactor tree gets added in order to see anything.
– Beginners get baffled.
![Page 6: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/6.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 7: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/7.jpg)
Explicit interactor tree add
– Must ensure interactor tree gets added in order to see anything.
– Beginners get baffled.
– Rating?
![Page 8: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/8.jpg)
Explicit interactor tree add
– Must ensure interactor tree gets added in order to see anything.
– Beginners get baffled.
– Rating: -2 for Visibility
![Page 9: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/9.jpg)
Informative runtime errors
• Incompatibilites with AWT addressed with quick exits and error printlns
• Exception in thread "main" java.lang.Error: Do not use javax.swing.JFrame.setLayout() use javax. swing.JFrame.getContentPane().setLayout() instead
![Page 10: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/10.jpg)
Informative runtime errors
• Incompatibilites with AWT addressed with quick exits and error printlns
• Exception in thread "main" java.lang.Error: Do not use javax.swing.JFrame.setLayout() use javax. swing.JFrame.getContentPane().setLayout() instead
• Rating?
![Page 11: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/11.jpg)
Informative runtime errors
• Incompatibilites with AWT addressed with quick exits and error printlns
• Exception in thread "main" java.lang.Error: Do not use javax.swing.JFrame.setLayout() use javax. swing.JFrame.getContentPane().setLayout() instead
• Rating: +3 for Error recovery
![Page 12: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/12.jpg)
Bad constructor abstractions
+ The Swing API keeps improving with abstractions such as the setDefaultCloseOperation method for the JFrame
- However, several annoyances persist …
![Page 13: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/13.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 14: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/14.jpg)
Bad constructor abstractions
+ The Swing API keeps improving with abstractions such as the setDefaultCloseOperation method for the JFrame
- However, several annoyances persist …
- Rating?
![Page 15: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/15.jpg)
Bad constructor abstractions
+ The Swing API keeps improving with abstractions such as the setDefaultCloseOperation method for the JFrame
- However, several annoyances persist …
- Rating: -2 for Flexibility
![Page 16: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/16.jpg)
Dependence on call order
- Methods that depend on other certain actions to have been made need to be well documented
![Page 17: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/17.jpg)
Dependence on call order
- Methods that depend on other certain actions to have been made need to be well documented
- What’s wrong with the following snippet?button.setBounds(10, 10, 10, 10);
frame.setVisible(true);
frame.getContentPane().add(button);
![Page 18: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/18.jpg)
Dependence on call order
- Methods that depend on other certain actions to have been made need to be well documented
- What’s wrong with the following snippet?button.setBounds(10, 10, 10, 10);
frame.setVisible(true);
frame.getContentPane().add(button);
Rating?
![Page 19: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/19.jpg)
Dependence on call order
- Methods that depend on other certain actions to have been made need to be well documented
- What’s wrong with the following snippet?button.setBounds(10, 10, 10, 10);
frame.setVisible(true);
frame.getContentPane().add(button);
Rating: -4 for Error prevention
![Page 20: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/20.jpg)
Method call collisions
- Some methods override each other- setSize and pack - Javadoc says pack affects the size, but that’s
more obscure; rename to packToPreferredSize perhaps
![Page 21: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/21.jpg)
Method call collisions
- Some methods override each other- setSize and pack - Javadoc says pack affects the size, but that’s
more obscure; rename to packToPreferredSize perhaps
- Rating?
![Page 22: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/22.jpg)
Method call collisions
- Some methods override each other- setSize and pack - Javadoc says pack affects the size, but that’s
more obscure; rename to packToPreferredSize perhaps
- Rating: -2 for Error prevention
![Page 23: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/23.jpg)
A line for every attribute
- Programming at the toolkit level implies an extra line of code for every attribute
- setSize and pack - Tradeoff: attributes explicitly set, but hard to see
the context …
![Page 24: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/24.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 25: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/25.jpg)
A line for every attribute
- Programming at the toolkit level implies an extra line of code for every attribute
- setSize and pack - Tradeoff: attributes explicitly set, but hard to see
the context …- Rating?
![Page 26: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/26.jpg)
A line for every attribute
- Programming at the toolkit level implies an extra line of code for every attribute
- setSize and pack - Tradeoff: attributes explicitly set, but hard to see
the context …- Rating: +3 for Aesthetics
![Page 27: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/27.jpg)
Other heuristics
- Javadoc
![Page 28: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/28.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 29: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/29.jpg)
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 30: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/30.jpg)
Other heuristics
- Javadoc
![Page 31: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/31.jpg)
Other heuristics
- Javadoc: +3 for Documentation
![Page 32: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/32.jpg)
Other heuristics
- Javadoc: +3 for Documentation- Language counterparts
![Page 33: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/33.jpg)
Other heuristics
- Javadoc: +3 for Documentation- Language counterparts: +4 for Match- SwingUtilities.invokeLater:
![Page 34: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/34.jpg)
Other heuristics
- Javadoc: +3 for Documentation- Language counterparts: +4 for Match- SwingUtilities.invokeLater: -2 for Error prevent- Panes
![Page 35: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/35.jpg)
Other heuristics
- Javadoc: +3 for Documentation- Language counterparts: +4 for Match- SwingUtilities.invokeLater: -2 for Error prevent- Panes: -1 for Consistency- Layouts hard to author
![Page 36: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/36.jpg)
Other heuristics
- Javadoc: +3 for Documentation- Language counterparts: +4 for Match- SwingUtilities.invokeLater: -2 for Error prevent- Panes: -1 for Consistency- Layouts hard to author: -3 for User control
![Page 37: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/37.jpg)
Summary
• Visibility of system status (1 bad)• Match of system & real world (1 good)• User control and freedom (1 bad)• Consistency and standards (1 bad)• Error prevention (3 bad)• Recognition rather than recall (not used)• Flexibility and efficiency of use (1 bad)• Aesthetic and minimalist design (1 good)• Error recovery (1 good)• Documentation and help (1 good)
![Page 38: Outline Modified rating scale Heuristic evaluation](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649cfd5503460f949cd96c/html5/thumbnails/38.jpg)
Conclusion
• Still not too bad
• Object-oriented is the way to go
• Can create a wide variety of GUIs