User assistance functions for ModelPro include:
|
·
Help ·
New… ·
Example… |
Additional user assistance functions are provided by 3rd party tools/plug-ins for provisioned artifacts and/or source model development.
The ModelPro user assistance functions conform to standard eclipse UI practices and implementation, but are elaborated in the following sections for clarity.
Eclipse help is accessed via the menu selection Help/Help Contents as shown below:
Figure 18 Navigation to Eclipse Help

From the eclipse help system, select/explore ModelPro entry and its content options:

Eclipse contextual help is accessed via “help” key (F1 on windows) or alternatively via a “?” on a dialog box. The result may be a help view or infopops depending on eclipse preference settings. ModelPro contextual help will generally be accessible (if relevant) via the “Dynamic Help” portion of a help view. An example is shown below, where link to ModelPro help is shown on right help view on the Dynamic Help panel:

Errors during provisioning are logged to the Error Log view. Double clicking an error entry will provide additional detail about the error, as illustrated below:
Figure 19 Obtaining additional information about errors during provisioning

Errors during provisioning which are related to workspace resources are logged in the Problems view. An error icon for the associated resource will highlight the resource location of any problems logged. Double clicking the problem will bring up an editor for the resource, with an error icon highlighting the line in error. Hovering over the editor error icon will provide a popup display of the error. All of this is illustrated in the following:
Figure 20 Problem view, highlighted errors in navigator view, error in editor, error popup in editor.
Assistance on selected ModelPro usage scenarios are available in the form of cheat sheets. To select a cheat sheet, start with the eclipse pull-down menu Help/Cheat Sheets… as illustrated below:
Figure 21 Eclipse navigation to cheat sheets

From the resulting cheat sheet dialog, select an appropriate ModelPro cheat sheet:
Figure 22 Selecting a ModelPro Cheat Sheet
A cheat sheet view will appear which will guide the user through a particular usage scenario:
Figure 23 ModelPro Cheat Sheet for a usage scenario

Eclipse new wizards are used to create ModelPro specification artifact examples, including:
|
·
A set of all example specification files for
adding provisioning structure to an existing project. ·
Adding a project, including all example
specification files. |
The navigation to new wizards consists of right-clicking on a project or folder and selecting the NewèOther… menu option, as illustrated below:
Figure 24 Navigation to eclipse new wizards

In the resulting wizard dialog box, open the ModelPro category and select the kind of file or set of files to be created, as shown below:
Figure 25 Selecting a ModelPro File/File set creation option

Navigate through the wizard dialog via Next> and finally push Finish to create the desired files.
For project creation, there are also options to navigate via the
|
·
NewèProject…
from the pull down menu for a resource. ·
FileèNewèProject…
from the eclipse menu bar. |
ModelPro project creation will result in creation of all example files into a prototypical ModelPro project structure, as illustrated below:

Eclipse example wizards are used to create
ModelPro example projects.
The navigation to example wizards consists of right-clicking on a project or folder and selecting the NewèExample… menu option, as illustrated below:
Figure 24 Navigation to eclipse example wizards

In the resulting wizard dialog box, open the ModelPro category and select the kind of example project to be created, as shown below:
Figure 25 Selecting a ModelPro Example Project creation option

Navigate through the wizard dialog via Next> and finally push Finish to create the desired example project.
For example project creation, there are also options to navigate via the
|
·
NewèExample…
from the pull down menu for a resource. ·
FileèNewèExample…
from the eclipse menu bar. |
ModelPro example project creation will result in creation of a working ModelPro project, as illustrated below:

The level of user assistance for editing of various ModelPro specification files depends upon the capabilities of the underlying editor:
|
·
Templates edited via text editor have no
content assist capabilities. ·
Binding Specifications edited via a
schema-backed xml document editor provide content assistance and quick-fix
options based upon the underlying schema. ·
Ant files edited via an ant editor offer
limited content assistance for the ModelPro task. ·
Ant property files have no content assist
capabilities. |
The forms of assistance offered by a schema-backed XML editor include:
|
·
Validation of basic XML structure
conformance. ·
Validation of conformance to schema. ·
Context-sensitive content assistance. ·
Context-sensitive Schema-based tips. |
Example of reporting XML structure conformance violation, in this case the element <x> has no terminated </x> element:
Figure 26 XML syntax violation

Example of a schema validation error, in this case a reference to a non-existent project follows. The validation error will also be flagged in the Problems window as well as on appropriate resource of the navigation tree.
Figure 27 Schema validation error reporting

Example of a context-sensitive content assist (after pressing CTRL/SPACE). This indicates that the only permissible insertion at this point is a <project> element.
Figure 28 Context-sensitive Content Assist

Double clicking the offered <project> inserts the element into the document, as shown below:
Figure 29 Result of content assist text insertion.

Schema-driven usage tips are also exposed as pop-ups based on hover position, as shown below:
Figure 30 Schema-based tool-tips

Compared with the Binding Specification, the ant editor has more limited assistance for the ModelPro task:
|
·
A contextual content assist identifies the
ModelPro task and enables insertion of task invocation at the appropriate
points in a build script. ·
Within a ModelPro task, the attributes and/or
nested element options are presented contextually. ·
Limitations are that the required attributes
are not indicated, there are no descriptions of the task and/or attributes,
and there are no default values. |
Example of contextual popup which includes ModelPro task insertion:
Figure 33 Ant editor context sensitive modelPro attribute popup

Eclipse preferences/properties may be used to refine the behavior of the provisioning process globally. A set of ModelPro properties, for example, may control how much information is logged to the console view during a provisioning process. Access to the eclipse preferences dialog is from the menu bar: WindowèPreferences, as illustrated below:
Figure 34 eclipse navigation to preferences dialog

From the resulting preferences dialog box, select a ModelPro properties page and edit properties as appropriate, as shown below:
Figure 35 ModelPro Preference Properties

Eclipse validation may be used to validate artifacts of various kinds. Access to eclipse validation is from a menu pull-down for a selected resource, as illustrated below:
Figure 34 eclipse navigation to validation

The result of validation will be an enumeration of problems in the problems view, marking of resources having problems in the navigation view, and marking of problem lines in an artifact editor, as shown below:
Figure 35 ModelPro Validation result

In addition to eclipse-provided validation, ModelPro adds the following capabilities:
· UML model validation.
· SOA-ML OCL-based validation.
· Velocity template syntax validation.
· Hyperlink from model problems to a model editor location.
Validation options may be specified using the eclipse Validation preferences page. To access the validation preferences page, navigate from the eclipse menu option Window/Preferences… and select “Validation” in the result dialog box, as shown below:

ModelPro related validation preferences start with “ModelPro “. The “ModelPro uml SOA-ML profile validator” is an OCL driven validator. Fine-grained control of the OCL-driven validator may be made by selecting the Model Validation/Constraints option from the Preferences dialog. In addition to enabling individual constraints, the OCL statement is displayed along with an informal description of the constraint, as illustrated below:

The Problems view may be configured to filter its presentation based on context and problem type. To access the configuration control: from the Problems view, select the pull-down menu (looks like a triangle pointing down)/Configure Contents.. as illustrated below:

The result is the “Configure Contents” dialog. A convenience configuration named “ModelPro” will show all problem types related to the selected element and it children. Problem types subject to filtering include some of the ModelPro-specific problem types, as illustrated below:

[i]
[i]This
material is covered under copyright law.
Copyright © 2009, Data Access Technologies, Inc. for ModelDriven.org as
an unpublished work, all rights reserved worldwide.
This material is licensed for your use for free under the
terms of the GNU public license version 2 which is located at this web address:
http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
This material is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software foundation; either version 2 of the License, or (at your option) any
later version. This material is
distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General
Public License at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt for more details. By downloading, copying or using this material you agree to
this license unless this license has been superseded by a specific agreement
with ModelDriven.org or Data Access Technologies, Inc. If the above license does not meet your needs
you may contact http://www.modeldriven.org for further options.