ViPER MSF
From ViPER Wiki
Contents |
[edit] ViPER Methodical Support Framework
The ViPER Methodical Support Framework (ViPER MSF) is part of the ViPER IDE Bootstrap feature and can be used to integrate a process into ViPER that was modelled with the Eclipse Process Framework (EPF). In detail it is possible:
- to generate (Composite-)CheatSheets to step through the process and
- to generated a process description that will be integrated into the Eclipse Help-System
[edit] Developer Documentation
ViPER PF includes the ViPER IDE and the EPF feature (and GMF implicitly) and includes itself five plugins:
- sc.viper.pf.publishing: To generate the CheatSheets and the HTML-files that are integrated into the Eclipse Help-System, the HTML-export provided by EPF is extended by usage of the 'wizardExtender' ExtensionPoint. This Extension appends a new WizardPage to the Export-Wizard and asks the user for some settings, for example whether generating the CheatSheets is desired and where to put the generated files into (folder of a plugin). The Generation is done by the PFPublishingManager which uses the other plugins to trigger the transformation and generation.
- sc.viper.pf.cheatsheetmodel: Creating CheatSheets from an UMA-Model is not complicated, but to separate the logical mapping from the syntactical generation, the CheatSheet creation is divided into a transformation (semantic, logic) and generation (syntactical). To be able to perform such a separated task a new Metamodel is needed. This plugin contains the Metamodel specified with help of EMF and the generated Java-Classes to handle instances of this Metamodel.
- sc.viper.pf.uma2cs.transformation: Includes the logic to map an UMA-model to a CS-model. The transformation extensions are defined in xTend.
- sc.viper.pf.uma2cs.generation: Includes the syntactical generation knowledge that is defined via xPand-templates.
- sc.viper.pf.uma2help: Includes the simple logic to generate table-of-contents files for the integration of hmtl-files into the Eclipse Help-System.
[edit] User Documentation
To start ViPER PF you need the PF feature and all depended features and plugins (e.g. ViPER IDE, EPF, GMF) and start an Eclipse runtime that contains these components. The process integration is done by the creation of a UMA - model and using ViPER PF to export the content.
Important: Because EPF updates the UMA-model, when it is opened in an editor, the creation of the UMA-model should be done in the current EPF-Composer Release (1.0.1). Afterwards the export can be done with help of ViPER PF and EPF by using a COPY of the UMA-Model (or the Method-Library in more detail)!
[edit] First Generation
After you created an UMA-Model you have to perform the following steps to integrate your process into ViPER:
- In the Authoring perspective: Open the Method-Library that contains your process (use a COPY if you are working with the head version of EPF!!!)
- Select in the menu: Configuration and walk through the wizard-pages. The last page is used for the PF settings. Here you can specify if you desire to generate CS and HTML and where to put the generated stuff. You can only select a plugin (e.g. sc.viper.medusa.process.help and .cheatsheets). The html-files will be placed in a /html folder and medusa_toc.xml will be placed in the plugin folder directly. The CheatSheets are put into a /cheatSheets folder.
- The HTML-files produced by EPF are not valid, you have to replace the DocumentType
Relpace: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> With: <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- Update your plugin.xml files: The registration of the CheatSheets and TOC-file must be realized manually by adding some extensions
CheatSheets plugin: register the toplevel CompositeCheatSheet
<extension point="org.eclipse.ui.cheatsheets.cheatSheetContent">
<category
id="sc.viper.medusa.process"
name="MeDUSA Process Execution">
</category>
<cheatsheet
category="sc.viper.medusa.process"
composite="true"
contentFile="cheatSheets/medusa_delivery_process.xml"
id="medusa_process"
name="MeDUSA Delivery Process">
</cheatsheet>
</extension>
TOC/Help plugin: register the table-of-contents file
<extension point="org.eclipse.help.toc">
<toc
file="medusa_toc.xml"
primary="true"
/>
</extension>
[edit] Repeated Generation
If your are using CVS there can occur some problems if you generate the html files into a existing folder.
- Delete or rename the html and cheatSheet folder and commit your changes
- Make sure the cvs got your changes by replacing your plugins
- Generate the new stuff (see first generation without editing plugin.xml)
- Commit the new files
