Bug 68641 - (Trace) Accessibility: Provide tables for all our diagrams and a standard way to get to them
Summary: (Trace) Accessibility: Provide tables for all our diagrams and a standard way...
Status: CLOSED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Hyades (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P2 normal (vote)
Target Milestone: ---   Edit
Assignee: Dominique Guilbaud CLA
QA Contact:
URL:
Whiteboard:
Keywords: Documentation
Depends on:
Blocks:
 
Reported: 2004-06-25 13:35 EDT by Curtis d'Entremont CLA
Modified: 2012-02-15 13:42 EST (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Curtis d'Entremont CLA 2004-06-25 13:35:41 EDT
Currently not all our diagrams have tables showing the same data. This is 
important for accessibility and was missed during the move to the new UML2 
sequence diagrams.

We need a standard, easy way to get the table for any of our diagrams.
This is a must for 3.0.1.
Comment 1 Curtis d'Entremont CLA 2004-06-29 11:34:32 EDT
The only views currently lacking tables are the UML2SD views. This includes:

- Object Interactions
- Class Interactions
- Thread Interactions
- Agent Interactions
- Process Interactions
- Host Interactions

As well as the log-related sequence diagrams:

- Log Interactions
- Log Thread Interactions

The usability team suggests using a toggle button in the view toolbar of each 
diagram view. When turned on, the view will show a table instead of a diagram. 
The table should show exactly the same information as the diagram, but in a 
table form. The table should look like the existing statistics tables.

Other non-UML2SD diagrams (e.g. Execution Flow) have tables, but they are 
separate views accessed from the context menu. These should be removed and 
should follow the same approach as will be used for the UML2SD tables (toggle 
button, show in same view). This is being tracked in bug 68873.

Note: this change will require a PII change. This needs to be resolved, as 
there are no PII changes scheduled for 3.0.1.
Comment 2 Dominique Guilbaud CLA 2004-06-30 10:41:08 EDT
There is no table that could show the underlying data an acceptable way.
So we propose to mark this one as a duplicate of one of the few accessibility 
defects that remains on UML2 SD:
- 68986 (screen reader after keyboard selection, that already works with mouse 
selection)
- 68987 (screen reader on lifeline titles)
- 68989 (zoom in and out using keyboard only)
And then these three ones would be targetted for 3.0.1.
They have been entered against UML2 SD view following the accessibility 
checklist we have been provided with.
Tell me your opinion here and I would make the changes in those 4 records if you 
agree.
Comment 3 Dominique Guilbaud CLA 2004-07-06 04:55:39 EDT
new PII
Comment 4 Eugene Chan CLA 2004-07-09 16:55:43 EDT
Dominique, with PII available in 3.0.1. Can this be done in 3.0.1 timeframe?

Comment from Harm's note:
- In general the tree view gives you a call stack viewer that uses less UI real 
estate, is faster and doesn't require an understanding of basic UML. Many users 
prefer these simple text based viewers. In our resent assessment of the new 
Candle tools IBM has acquired, the tree view was in fact considered to be a 
competitive advantage over vendors with only graphical views.
- The support we had was valuable. it was a simple tree rendering. Root was the 
diagram and first tier of branches represented the "left side" initial entry 
point of any stack. If there was multiple references to the same node in the 
graph it was duplicated in the tree. Simple, not perfect and useful. Loosing 
this is a serious regression.
Comment 5 Curtis d'Entremont CLA 2004-07-13 10:24:53 EDT
Should be done for 3.0.1 if at all possible.
Comment 6 Eugene Chan CLA 2004-07-13 10:43:37 EDT
latest comment from Sylvain:
the timeframe is too short for 3.0.1, taking into account the availability of 
developpers to do that.

And the accessibility issue are addressed in 
- 68986 (screen reader after keyboard selection, that already works with mouse 
selection)
- 68987 (screen reader on lifeline titles)
- 68989 (zoom in and out using keyboard only)

However, this missing feature is targeted in 3.1
Comment 7 Eugene Chan CLA 2004-07-20 13:07:08 EDT
alternative fix of enabling open Execution Flow table form UML2SD trace views 
is addressed in bug 70302 for 3.0.1 timeframe
Comment 8 Dominique Guilbaud CLA 2004-07-21 05:18:27 EDT
Changed target iteration to 3.1 i2. Needs to know what to do exactly here: do we 
merge with execution flow table something that would show method invocations?
Comment 9 Dominique Guilbaud CLA 2004-08-16 11:49:35 EDT
Needs to know what to do exactly (moving to 3.2)
Comment 10 Dominique Guilbaud CLA 2004-11-18 09:41:32 EST
Sebastien:
Needs to know what to do exactly (moving to 3.3)
Comment 11 Valentina Popescu CLA 2004-11-18 09:58:04 EST
Dominique, you cannot update the defect target unless they are discussed and 
approved by the Hyades committers meeting.
If you have defects you can't contain in 3.2 i2 send them in a note to me and 
they will be covered in the meeting. Add a short explanation of why you want to 
move the defect ( a feature request, suggestion, high risk fix , etc )
Comment 12 Sylvain Duguet CLA 2004-11-19 10:43:25 EST
We need this one to be retargeted for 3.3 because of the lack of content 
definition for it.
What's the difference between the table tree that is wished and the Execution 
Flow Table that is accessible from Trace SD view thanks to a coolbar button you 
can see in 3.0.1?
In other words, can we say that Execution Flow Table is the accessible view for 
all 6 kinds of Trace Interactions? If not, can we imagine an update of this 
table that would be the accessible view for both Trace Interactions and 
Execution Flow? This would not add a new view and could help contain this bug in 
3.2i2.
Comment 13 Curtis d'Entremont CLA 2004-11-19 11:48:25 EST
The whole aim of this was for accessibility. Consider a blind user trying to 
navigate a sequence diagram (or any diagram). The approach that we came up with 
(approved by Wayne) was to give the user the ability to toggle between the 
diagram and a table representation of the same data, via a toolbar button (I 
would also recommend a menu item). It wouldn't be a new view, but would be 
contained in the same view. The root messages in the sequence diagram would 
translate into top-level items in the table tree, and the sub-messages would be 
the children, and so on. Is it clear?
Comment 14 Sylvain Duguet CLA 2004-11-23 12:07:56 EST
About accessibility, a blind user can already listen to the sequence diagram 
contents two ways: first one thanks to accessibility implementation made in the 
graphical diagram itself; second one thanks to the execution flow table that is 
accessible too and that has a shortcut button from trace interactions. Why do we 
need a third way?
Regardless accessibility, what's the difference between the table tree that is 
described above and the Execution Flow Table?
Comment 15 Curtis d'Entremont CLA 2004-11-23 16:23:13 EST
Right, the execution flow is very similar to some of the trace interaction 
sequence diagrams. However, it doesn't deal with things like host/process/agent 
interactions. And there are sequence diagrams other than the trace ones - like 
log interactions.

So I think the question is - are the current accessibility improvements to the 
sequence diagram enough to satisfy the accessibility requirements for the 
products built on top of Hyades? If yes, then I think we're ok and we don't 
need the additional tables.
Comment 16 Dominique Guilbaud CLA 2005-01-12 11:15:14 EST
According to the last comment, the tables seems to be not needed anymore
Comment 17 Curtis d'Entremont CLA 2005-01-12 11:48:53 EST
Did you check with the higher products to make sure that they're ok with not 
having tables (i.e. it meets their accessibility requirements). If not, then we 
still do need tables...
Comment 18 Curtis d'Entremont CLA 2005-02-03 12:57:27 EST
Could you reply to the last comment? Thanks
Comment 19 Dominique Guilbaud CLA 2005-02-08 09:59:08 EST
Scott, can you please give your feeling on this? Feel free to contact me. 
Comment 20 Scott Peddle CLA 2005-02-09 13:23:49 EST
I humbly admit that I am not familiar with the tooling context of this 
discussion.  However, there are two primary accessibility requirements for 
visual diagrams. One, there must be a keyboard equivalent for all actions.  
That is, a user must be able to perform keyboard navigation to all rendered 
objects.  The rendered object selected must have some sort of visual focus 
indicator.  And, a user must be able to perform all actions on the rendered 
object via some combination of keys.  Secondly, the diagram must provide 
semantic information about the rendered objects.  Assistive technology must be 
able to determine the object identity, role, and state.

If these conditions are met in the diagram a table is not necessary.
Comment 21 Dominique Guilbaud CLA 2005-02-10 05:40:13 EST
Thanks a lot Scott for your enlightments. That's very helpful.
As it was our understanding of the accessibility requirements, Sébastien has 
already implemented for 3.0 the keyboard shortcuts that allow to navigate 
between the graph nodes and also assistive technology support (checked with a 
screen reader tool).
The next step on this topic is Sébastien Veyrière to check on Trace Interactions 
that all actions are available from keyboard and that assistive information 
provided by the widget is complete.
About log interactions, its dev team may have to do the same check in order to 
cover the two uses of SD view.
3.3i2 would be the target to have a definitive and consensual compliance on 
this. Ok for such a protocol?
Comment 22 Curtis d'Entremont CLA 2005-02-10 10:21:34 EST
Sounds good to me
Comment 23 Scott Peddle CLA 2005-02-10 12:54:12 EST
Hi Dominique,

I have one question on my part and please excuse my ignorance of IES component 
versions.  Is Hyades 3.3 targetted for IES 3.0.2?
Thanks.
Comment 24 Ruth Lee CLA 2005-02-10 14:56:51 EST
FYI, Scott's question has been answered off-line.
Comment 25 Dominique Guilbaud CLA 2005-02-22 05:36:39 EST
Only the commands using a multiselection are not accessible using the keyboard.
The focus on graph nodes will be implemented in order to allow the 
multiselection. This focus will behave like tree widgets (like in packages 
explorer for example)
Comment 26 Dominique Guilbaud CLA 2005-03-02 10:44:44 EST
Focus on graph nodes has been implemented. The user is now able to multi-select 
nodes using Shift or Ctrl key in combination with standard traverse keys (arrow 
keys, Home, End, Tab, Shift Tab)

The following navigation has been adopted using the traverse keys:
-no nodes focued + any arrow key = give the focus to the first lifeline
-focus on a lifeline + up arrow = no effect
-focus on a lifeline + down arrow = give the focus to the first lifeline 
execution occurrence
-focus on a lifeline + left arrow = give the focus to the previous lifeline
-focus on a lifeline + right arrow = give the focus to the next lifeline
-focus on a lifeline + home key = give the focus to the first message leaving 
this lifeline
-focus on a lifeline + end key = give the focus to the last message leaving 
this lifeline

-focus on an execution occurrence + up arrow = give the focus to the directly 
above execution occurrence (if there is no execution occurrence above, then 
select the lifeline)
-focus on an execution occurrence + down arrow = give the focus to the below 
execution occurrence
-focus on an execution occurrence + left arrow = give the focus to the previous 
lifeline
-focus on an execution occurrence + right arrow = give the focus to the next 
lifeline
-focus on an execution occurrence + home key = give the focus on the top 
execution occurrence
-focus on an execution occurrence + end key = give the focus on the bottom 
execution occurrence

-focus on a message + up arrow = give the focus to the above message leaving 
the same lifeline (if there is no candidate above give the focus to the 
lifeline)
-focus on a message + down arrow = give the focus to the below message leaving 
the same lifeline
-focus on a message + left arrow = given the focus to the previous message 
following the execution flow (if any)
-focus on a message + right arrow = give the focus to the next message 
following the execution flow (if any)

As a consequence this navigation overrides most of the previous keyboard 
shortcuts, those commands have then been removed from the menu dropdown as they 
can not be redefined (as it is the case for navigation in package explorer for 
example). (This is due to the use of the Shift and Ctrl key modifiers used for 
the multi-selection)

Nodes semantics have been increase to allow screen readers to provide 
information on focused node
Comment 27 Curtis d'Entremont CLA 2005-03-23 18:26:36 EST
Verified. Looks good. Closing bug.