1 / 35

Assessing UML and Usability

Assessing UML and Usability. Jason E. Robbins Information and Computer Science University of California, Irvine. jrobbins@ics.uci.edu. Part 1: Assessing the Usability of UML Modeling Tools. What is Usability?. Anything can be used, but at what cost? Types of usability: Ease of learning

julie
Download Presentation

Assessing UML and Usability

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Assessing UML and Usability Jason E. Robbins Information and Computer ScienceUniversity of California, Irvine jrobbins@ics.uci.edu

  2. Part 1: Assessing the Usability ofUML Modeling Tools

  3. What is Usability? • Anything can be used, but at what cost? • Types of usability: • Ease of learning • Ease of remembering • Efficiency in use • Reliability in use • User satisfaction

  4. Why Improve Usability • Benefits to the organization • Safer tools can lower costs by helping catch design errors early • More learnable tools require less training and increase the pool of qualified workers • Efficient tools distract the designer from his or her task less • Benefits to individuals • Increased job satisfaction, reduced stress • More productivity • Difficult tools will not be used: obvious usability difficulties prevent the realization of non-obvious productivity benefits

  5. How to Assess Usability • Adherence to UI guidelines and heuristics • Consider the match between the task and the tool’s support for that task • What are the steps of the task? • What are the challenges of the task? • Measure UI complexity and effort needed • You know it when you see it: subjective impressions count

  6. CASE Tools Examined • Rational Rose 98i: www.rational.com/rose • The leading CASE tool, full-featured, complex, mature, expensive (often sold w/ training) • Together/J 3.0 beta: www.togetherj.com • An example of a new breed of simpler and cheaper mass-market CASE tools • ArgoUML v0.7: www.argouml.com • Research project on usability and cognitive support in CASE tools, free, open-source

  7. Rational Rose

  8. Rational Rose

  9. Rational Rose Too many tabs make finding anything difficult Rose is complex, but follows MS Windows UI guidelines

  10. Find utility is OK, but only searches on names. New-Existing-Recent is a example of successful imitation. Print dialog is overly complex.

  11. Comments on Rose • Highly modal property sheets make it hard to find and repeatedly access property widgets • Constant switching between mouse and keyboard • No good way to cut-and-paste multiple properties. • Batch code generation makes code v. model comparisons difficult • Diagram editing OK but somewhat clumsy • Text often cut-off or drawn outside of box • No alignment tools or back-to-front ordering • Table-of-contents widget aids users in finding individual elements, but that is all • Rose 98i fixes some of the most offensive usability problems of earlier versions (e.g., not being able to resize the property dialog)

  12. Together/J

  13. Some screenshots were taken from a presentation describing Together/J from Object International. It can be downloaded from www.togetherj.com. Together/J Code is central. The user sees model and code and both are kept in sync. You can compile from within TJ. The find command only searches code, not the model.

  14. Some screenshots were taken from a presentation describing Together/J from Object International. It can be downloaded from www.togetherj.com. Together/J Together/J contains some knowledge about common design patterns and helps the designer construct model fragments based on those patterns.

  15. Some screenshots were taken from a presentation describing Together/J from Object International. It can be downloaded from www.togetherj.com. Together/J Metrics and Audit rules aid the designer in reviewing the design. Analyses must be explicitly invoked. Not a very effective presentation of results.

  16. Comments on Together/J • Simpler than Rose. Avoids Rose’s property sheet problems. • Several UI elements support a design-and-code task • Tree widget serves many purposes, but there is still only one table-of-contents view • Diagram editing good, but some usability problems • It is much to hard to drag a class • Arc editing is very good • No alignment or back-to-front ordering • No way to lock a given toolbar mode • Audit and Metrics tools provide some knowledge support, but they must be explicitly invoked, and their feedback is unmanageable.

  17. ArgoUML

  18. ArgoUML Wizards provide problem-specific procedural guidance and automation Table views are dense and aid in systematic scanning

  19. ArgoUML Unstructured graphical annotations can be semantic prompts that help link the design to requirements

  20. ArgoUML The broom alignment tool uses direct-manipulation to establish visual groupings Selection-action buttons make common construction operations into single clicks Checklists prompt designers to think like expert designers, improve on paper-based checklists

  21. ArgoUML Navigational perspectives clarify key hierarchical relationships in the design Many useful perspectives are predefined, but you can customize them by selecting child-generation rules

  22. Comments on ArgoUML • ArgoUML includes many user interface features that specifically address challenges faced by designers. • Knowledge support via critics and checklists • Process support via “to do” list • Visualization support via navigational perspectives • Refined diagram editing with strong support for secondary notation • Critics and wizards offer functionality as needed without cluttering the menus

  23. Final Comments on UML Tools • The best current commercial tools are unsatisfying to use because they are not well matched to the design activity • Clumsy, uninspired support for common design tasks • Weak support for the challenges of design • There is a usability difference among tools • I predict improved usability will be a key part of the next round of CASE tools

  24. Part 2: Assessing a UML Extensionfor Modeling User Interfaces

  25. How Do You Design UI’s Now? • Good: • Gain real insight into the user’s tasks and background • Build and review UI models and prototypes • OK: • Implement prototype with a GUI builder, focus on layout • Imitate successful or familiar UI’s and follow guidelines • Bad: • Focus on system implementation and leave the UI for last • Assume that you are the user

  26. What is Usage-Centered Design? • “Software for Use” by Larry Constantine and Lucy Lockwood • Focuses on improving the match between the user’s task and the tool’s user interface • Somewhat of a popular, practical version of task-modeling • Construct models leading to implementation: • use cases lead to • abstract interaction sequences lead to • interaction contexts with abstract widgets leads to • actual GUI layouts and implementation • Elements of UCD: • Pragmatic design guidelines • Model-driven design process • Organized development activities • Iterative improvement • Measures of quality

  27. Example: Modeling ArgoUML’s Search Utility • Use case diagram • One use case in detail • Interaction contexts for use case • IC navigation map • Abstract window layout for one IC

  28. Use Case Diagram ConstructDesign ReviewDesign Designer SearchDesign

  29. User Intention Request search Enter search criteria Start search Review results [continue until done]Examine specific result System Responsibility Show search criteria fields Perform search, display results Display details of selected result and related results, show result in context of diagram One Use Case in detail:Search Design

  30. Interaction Contexts for Search Design • Find Window • Search criteria fields: allows designer to enter regex’s for name and package name • Start search: button to start the search • Results viewer: displays search results, must allow one to be selected • Related objects viewer: lists objects related to selected result • “As Diagram” Pane • Displays details of selected result in the context of a design diagram

  31. Config NavPane Window Perspectives Panes As Diagram As Table Find Window Code Gen Window Interaction Context Navigation Map Generate | All ClassesGenerate | Selected Class Main Window EditorPane View | Find Config button ToDoPane NavPane

  32. Abstract Layout of Find Window Find Window Search criteria fields Enables Start search Fills Results viewer (note: select one of many) Fills Related objects viewer (note: select one of many)

  33. Concrete Layout of Find Window

  34. Final Comments onUsage-Centered Design • Considering the user’s task from the start is a good way to build more useful UI’s • UCD seems simple, practical, and well aligned with UML style and depth • I hope to work on a meta-model and tool support for UCD in the next year (ArgoUCD?)

  35. Thank you • Questions?

More Related