JPL-IMCE / gov.nasa.jpl.imce.oml

Ontology Modeling Language (OML) Workbench
13 stars 1 forks source link

Several Xtext/Sirius usability problems. #142

Open NicolasRouquette opened 6 years ago

NicolasRouquette commented 6 years ago

There are several usability problems with Xtext & Sirius in Eclipse Oxygen.1.

OML WB version 0.9.0.0-M14

Example

The screenshot below shows two editors/views:

Note that the synchronization icon is selected on both the Model Explorer and Outline views on the left pane.

omlwb problems

This screenshot reflects the state of the Eclipse UI after these operations: 1) Select the concept Product on the OML XText editor (left).

The editor shows the selection with the light blue highlight on line 13.
The selection highlighting remains even after the following selection.

The `Model Explorer` view was updated with the selection on `mission.oml`,
not `Concept Product` nested inside.

2) Select the mission:SpecifiedElement on the OML TerminologyBox Sirius view (right).

The view shows the selection with small black squares on each corner and middle of the box.
The `Model Explorer` and `Outline` views are updated with their selections on the same element.

3) In the Sirius interpreter view (bottom), the completion is invoked after aql:self.

The available completions are shown in a drop-down scroll list.

Usability problems

A) Lack of synchronized selection between XText editor & Sirius view

The screenshot reflects that the XText editor & Sirius view are not synchronized with each others' selection. If they were synchronized, then:

B) Missing "select in other editors/views" action

Assuming that an XText editor and a Sirius view would have a synchronization icon like the Model Explorer and Outline views do, it would be useful when the editor or view are NOT synchronized to have a context menu action to update the selection in other editors/views based on the current selection.

In this example, invoking such an action from the context menu on the mission:SpecifiedElement shown on the OML TerminologyBox view on the right would update the selection on the OML XText editor on the left such that the selection would change from line 13 to line 11.

C) Interpreter completions need to be grouped and sorted

The completions shown in the Sirius Interpreter view are clearly not grouped nor sorted. Some methods come from the EMF API, some from a diagram-level API.

These methods should be grouped according to which library they originate in. The library should be shown in one of several forms:

D) Interpreter completions should show # of completions and be filterable

The vertical scrollbar on the completion list suggests that there are lots of completion. The Eclipse Problems view shows a great example of a usable report because:

E) How to write Sirius services without building plugins / launching a runtime Eclipse?

It is unclear from the Sirius Writing Queries doc whether it is possible to do the following:

NicolasRouquette commented 6 years ago

Filed Bugzilla issue for (A) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526841

NicolasRouquette commented 6 years ago

Filed Bugzilla issue for (B) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526842

NicolasRouquette commented 6 years ago

Filed Bugzilla issue for (C,D) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526843

NicolasRouquette commented 6 years ago

Filed Bugzilla issue for (E) here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=526844