Assessing UML and Usability - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Assessing UML and Usability

Description:

Title: Argo: A Tool for Evolving Software Architectures Author: David F. Redmiles Last modified by: Richard N. Taylor Created Date: 5/15/1997 6:15:10 AM – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 36
Provided by: Dav1150
Learn more at: https://www.ics.uci.edu
Category:

less

Transcript and Presenter's Notes

Title: Assessing UML and Usability


1
Assessing UML and Usability
Jason E. Robbins Information and Computer
ScienceUniversity of California, Irvine
jrobbins_at_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
    tools 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
Together/J
Some screenshots were taken from a presentation
describing Together/J from Object International.
It can be downloaded from www.togetherj.com.
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
Together/J
Some screenshots were taken from a presentation
describing Together/J from Object International.
It can be downloaded from www.togetherj.com.
Together/J contains some knowledge about common
design patterns and helps the designer construct
model fragments based on those patterns.
15
Together/J
Some screenshots were taken from a presentation
describing Together/J from Object International.
It can be downloaded from www.togetherj.com.
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 Roses 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 UIs Now?
  • Good
  • Gain real insight into the users tasks and
    background
  • Build and review UI models and prototypes
  • OK
  • Implement prototype with a GUI builder, focus on
    layout
  • Imitate successful or familiar UIs 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 users
    task and the tools 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 ArgoUMLs 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
One Use Case in detailSearch Design
  • User Intention
  • Request search
  • Enter search criteria
  • Start search
  • Review results
  • continue until doneExamine 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

30
Interaction Contexts for Search Design
  • Find Window
  • Search criteria fields allows designer to enter
    regexs 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
Interaction Context Navigation Map
Generate All ClassesGenerate Selected Class
Main Window
EditorPane
View Find
Config button
NavPane
ToDoPane
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 users task from the start is a
    good way to build more useful UIs
  • 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?
Write a Comment
User Comments (0)
About PowerShow.com