Improving Design for e-science Russell Beale Advanced Interaction Group

advertisement
advancedinteractiongroup
Improving Design for
e-science
Russell Beale
Advanced Interaction Group
R.Beale@cs.bham.ac.uk
advancedinteractiongroup
The problem with e-science


e-
 1Dn  Dn  Dm
&


Dn
0
t
advancedinteractiongroup
“e-science is…”
•
•
•
•
“ONLY connected HPC”
“mainly distributed astronomy”
“Science, but on the internet”
“Existing science, but with more
computers”
• “simply a bandwagon”
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
advancedinteractiongroup
What am I going to talk
about?
•
•
•
•
Changing contexts
Little and large
Art
Design
• Put another way…
– Issues, x3
– Solution, x1
advancedinteractiongroup
Context is important
• Once upon a time
– Single users & single systems
• Then
– Multiple users & single systems
• Now
– Multiple users & multiple systems
advancedinteractiongroup
Myriad influences
• Users affected by
–
–
–
–
–
–
–
other users
Task
Political pressures
Publication pressures
Collaborators
Competitors
Etc.
advancedinteractiongroup
And…
• Systems affected by
– Distributed nature
– Quality of Service
– Variable usage
– Outages
– Blah blah
advancedinteractiongroup
And…
• Science affected by
– Distributed nature
– Variety of researchers
– Variety of results
– Collated results
– Science changing?
• Looking for patterns -> looking for anomolies
advancedinteractiongroup
Little Science, Big Science
• E-Science can be about enabling
widespread data collection and
assimilation
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
– Internet, mobile, in field, in lab, formal,
informal
• Collated results provide effective picture
– E.g. weather, bugwatch, springwatch
– Mass participation
advancedinteractiongroup
Data collection
• Non-scientists as sources
• Need appropriate systems to collect
data
• Usability needs of collectors very
different to needs of scientists
• But systems often designed for the
scientists…
advancedinteractiongroup
Feedback
• To engage and encourage further
participation
• Ethical duty (?)
• But have to be careful
– With raw data
• Anonymity of participants
– With results
• Cancer near pylons etc.
advancedinteractiongroup
E-art
• Same definition problems exist
• How can e-science be used in e-art?
• Changing context for art
– Individual artists, small audiences
– Multiple artists, small audience
– Multiple artists, multiple audiences
advancedinteractiongroup
Individual artists, small
audiences
• New tools for creation, management,
manipulation and presentation
• New medium for experimentation
– Proximity not necessary for experience, for
example
• Communication
advancedinteractiongroup
E.g. newsart
advancedinteractiongroup
Multiple artists, small
audiences
• Communication, collaboration, shared
development
• Many people working on one (or more)
centralised or distributed offering
• Challenges relating to authorship,
nature of ‘finished’ work especially if it
keeps evolving, etc.
advancedinteractiongroup
Multiple artists, multiple
audiences
• Infrastructure for creative collaboration
• Dissemination via wide route
• Mass audience participation possible
– Authorship? Ethics? Values?
• New tools for artists and viewers
– E.g. art could be controlled by the viewer
advancedinteractiongroup
Design and Usability
• Aim of design - usability
• Is it?
• “If ease of use was the only valid
criterion, people would stick to tricycles
and never try bicycles”
– Doug Englebart
• More to design than usability
advancedinteractiongroup
Usable design
• Only from embedding design in the
wider context is it effective
• C.f. security: a holistic thing
– Physical
– Technical
– Human
advancedinteractiongroup
New concepts
• Slanty design
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
– Design that purposefully reduces functionality
• E.g. iPod
– Makes it simple to do simple things
– Makes it hard to do unwanted things
• E.g. Gmail
• I call it “Anti-usability”
• Removes signs and restrictions
– These stop the unwanted side-effects of usable
design
– I want “Clean usability”
advancedinteractiongroup
Slanty design process
• identify the user goals
• identify user non-goals: the things that users don’t
want to be able to do at all easily (e.g. deleting all
their files)
• identify wider goals held by other stakeholders, and
identify where they conflict with individual ones
 follow a user-centred design process to create a
system that has high usability for user goals and high
anti-usability for user non-goals
 resolve the conflicts between wider issues and
individual goals, and where the wider issues win out
ensure that the design meets these needs
advancedinteractiongroup
My slanty baggage carousel
advancedinteractiongroup
Summary
• Problems with e-science as well as problems with
usability
• Need to design for the complex situation from the
start
• Scientists and non-scientists working together creates
new scenarios
• Artists and non-artists working together creates new
scenarios
• Complex stakeholdings may have conflicting needs
which have to be addressed
• New design approaches needed - the future is
‘slanty’…
advancedinteractiongroup
Questions?
• E-questions: R.Beale@cs.bham.ac.uk
advancedinteractiongroup
Finally
• In Google: usability returns 73,500,000
results
• E-science returns 1,560,000 results
• E-science usability: 39,800 results 2.5%...
• 1st 3 are pdf’s
advancedinteractiongroup
Pattern background
• Patterns are solutions to problems
in a given context
• Derived from architecture
– Christopher Alexander
advancedinteractiongroup
Example Alexander pattern
QuickTime™ and a
TIFF (Uncompressed) decompressor
are needed to see this picture.
Alexander’s Pattern No.
176 Garden Seat: ‘Make
a quiet place in the
garden – a private
enclosure with a
comfortable seat, thick
planting, sun. Pick the
place for the seat
carefully; pick the place
that will give you the
most intense kind of
solitude’
advancedinteractiongroup
Patterns in CS
• Popularised for CS in Design Patterns:
Elements of Reusable Object-Oriented
Software by Erich Gamma, Richard Helm,
Ralph Johnson, and John Vlissides (Gang of
Four)
• From Sun:
– “A pattern describes a proven solution to a recurring design
problem, placing particular emphasis on the context and
forces surrounding the problem, and the consequences and
impact of the solution.”
advancedinteractiongroup
Why use patterns?
• They have been proven
– Patterns reflect the experience, knowledge and
insights of developers who have successfully used
these patterns in their own work.
• They are reusable
– Patterns provide a ready-made solution that can
be adapted to different problems as necessary.
• They are expressive
– Patterns provide a common vocabulary of
solutions that can express large solutions
succinctly.
advancedinteractiongroup
Patterns for HCI
• Adopted for HCI in recent past
• Pros
– solution to problem in context
– Usable by non-expert designers
• Cons
– Usable by non-expert designers
– Too many, unstructured, need to know
about them all
advancedinteractiongroup
• Use when: You need to present a large amount of content - messages in a mailbox,
sections of a website, frames of a video - that is too big, complex, or dynamic to show in a
simple linear form. You want the user to see the overall structure of the content; you also
want the user to traverse the content at their own pace, in an order of their choosing.
• Why: It's an age-old way of dealing with complexity: present a high-level view of what's
going on, and let the user "drill down" from that view into the details as they need to,
keeping both levels visible for quick iteration. Overview Plus Detail breaks up the content
into comprehensible pieces, while simultaneously revealing their interrelationships to the
user.
• […] the overview can serve as a "You are here" sign. A user can tell at a glance where they
are in the larger context. In the example above, the scrollbar shows that the visible
message is near the end of the mailbox.
• How: The overview panel serves as a selectable index or map. Put it on one side of the
page. When the user selects an element in it, details about that element - text, images,
data, controls, etc. - appear on the other side. (Usually the overview panel is at the top or
left.)
• […] keeping both halves on the same page or window is key. You could put the details into
a separate window, but it's not as effective. You want the user to be able to browse easily
and fluidly through the UI, without waiting or messing around with windows. In particular,
you don't want the user to jump back and forth between two pages (though it's usually
necessary on tiny displays like PDAs; see One-Window Drilldown, which doesn't require the
use of two side-by-side panels).
Jenifer Tidwell, Common Ground
Overview-Detail pattern
advancedinteractiongroup
OPD examples
advancedinteractiongroup
Approach to modelling
• Want to capture design patterns more formally
• Want to be able to apply them to current software
designs
– Would like CASE support if possible
•
•
•
•
Look at software systems
Model Driven Architecture
Abstract towards models
Remove dependence on technology
– Platform Independent Model (PIM)
• Apply device profiles
– Platform Dependent Model (PDM)
• Provides flexible development
advancedinteractiongroup
Aside: map into MVC
Window
+displays
Overview
+overview
Model
1
Selectable Index
-activated: bool
+select() : void
1
*
1
View
Controller
1
1
1
1
1
2
Pane
+displays
Detail
1
+detail
load(item:Item) :bool
1
1
1
Item
advancedinteractiongroup
Capturing the interactive
elements…
• Sequence diagram
advancedinteractiongroup
Where are we?
• Have a formalism for design patterns
• Can capture structural and behavioural
aspects
• Represent interaction formally in UML
and OCL
advancedinteractiongroup
Working with formal
patterns
• Conceptual model -> represents the
system
• Design patterns -> used to refine that
model to new one that implements the
pattern
• But which to choose? How does this
improve things?
advancedinteractiongroup
Need one more concept:
Data signatures
• Data suitable for refining via OPD or OWD is
of the form:
– Datatype A has list of items B
– B’s are in 1:1 correspondence to data type C
– i.e. A has selectable indices, each of which have
associated detail
– Or, data has at least one level of hierarchy in it - a
series of headers and contents
– Partition the model using signatures
advancedinteractiongroup
Case tool
advancedinteractiongroup
figures
Download