Model Interchange Wiki

Welcome to the Model Interchange Wiki, the public portal for the Model Interchange Working Group (MIWG). The MIWG is chartered to:

  • demonstrate model interchange among MOF-based tools that implement modeling languages such as UML, SysML and UPDM and use XMI as the interchange standard
  • identify and resolve interchange issues associated with specifications and vendor implementations
  • establish a demonstration infrastructure to support the above, including validation tools, demonstration processes and guidelines

Beginning in December 2008, the MIWG has defined a test suite of 20 test cases to demonstrate interchange of UML, SysML, SoaML and UPDM models between different modeling tools. Participating tool vendors have agreed to publicly post XMI exports from their tools for the MIWG test cases. The objective is to enable the public at large to assess model interchange capability of the modeling tools by comparing the vendor XMI exports to the expected reference XMI file for each test case. These assessments may be used for a variety of purposes, including:

  • Evaluation of the interchange capability of a particular tool as part of a tool selection process
  • Assessment of the model interchange capabilities and limitations of a tool or tools to set expectations and to develop interchange strategies for the use of the tools on a project

The test suite and guidance for how to assess interchange capability using this test suite are summarized below. Please send any questions or requests for further information to miwg-info@omg.org.

Quick Links

Press Releases

Participating Tool Vendors

Vendor Point of Contact Tool Version
Atego Simon Moore Artisan® Studio 7.2m
IBM Maged Elaasar RSx 8.0.3
IBM/Sodius Eldad Palachi/Mickael Albert IBM Rhapsody 7.6.x
No Magic Lonnie VanZandt MagicDraw 17.0
SOFTEAM Etienne Brosse Modelio 2.4.19
Sparx Systems J. D. Baker Enterprise Architect 9.1

Other Participants

  • Roy Bell, Raytheon (MIWG Co-Chair)
  • Peter Denno, NIST (Validator)
  • Sandy Friedenthal, SAF Consulting (MIWG Chair)
  • Leonard Levine, DISA
  • Pete Rivett, Adaptive
  • Ed Seidewitz, Model Driven Solutions

Test Suite

The MIWG Test Suite currently consists of 20 test cases. Fourteen of these are for UML 2.3, some of which are also applicable to SysML, five are for SysML 1.2 (one test case has both a UML and a SysML form), one is for SoaML 1.0.1 (this test case also has a UML form) and two are for UPDM 2.0. These test cases cover approximately 60% of UML metaclasses and 55% of SysML stereotypes, including most commonly used functionality. (For a spreadsheet showing detailing this coverage, click here.)

Each test case consists of one or more diagrams and a corresponding reference “valid XMI” file for the model represented in the diagrams (for Test Case 3 and 19 there are two XMI files). All XMI conforms to v2.1 of the XMI specification.

The MIWG will continue to extend the test suite to include new test cases. In particular, this will include additional test cases to complete UML 2.3 and SysML 1.2 coverage, as well as further test cases for SoaML and UPDM.

UML 2.3 Test Cases

(* These test cases are also applicable to SysML.)

SysML 1.2 Test Cases

SoaML 1.0.1 Test Cases

UPDM 2.0 Test Cases

How to Use the Vendor-Provided Test Submissions

To exercise a MIWG test case, a tool vendor creates a model in their tool by reproducing the diagrams for the test case. The vendor then uses the capabilities of the tool to export the model to an XMI 2.1 file, which is submitted as the result of the test for that tool.

Each of the participating MIWG vendors have submitted results from the latest version of their tools for all the test cases that their tools support. These test submissions are maintained in a Subversion repository and may be updated from time to time to reflect new releases of the vendor tools. They can be used in two ways:

  1. You can download a vendor submission for a test case from this repository at any time and run it through the NIST Validator (as described below) in order to assess XMI conformance of the vendor's tool for this test case.
  2. You can take submitted XMI for a test case exported from one tool and attempt to import it into a different tool, in order the assess the actual ability to interchange models between those tools in the area covered by the test case.

The public vendor test submission repository is available here. Log in using the user name guest with password guest.

The repository has two directories, UML2.3-XMI2.1 for UML tests and SysML1.2-XMI2.1 for SysML tests. Within these directories, there are subdirectories for each test case, with the following content:

  • Test-Case-N/ – where N is a number (1,2,3…) of the test case
    • diagram.png – the test case diagram
    • valid.xmi – valid XMI for the test case
    • valid-canonical.xmi – canonical XMI version of the valid XMI for the test case
    • Submissions/ – A directory for vendor upload of results of Test-Case-N
      • toolnameX/ – A directory for results from a specific vendor's tool (Note that the toolname includes version information.)
        • our-diagram.png – Screen shot of vendor's implementation of diagram.png
        • our-export.xmi – Vendor's XMI corresponding to his implementation of diagram.png

How to Use the NIST Validator to Assess Model Interchange

You can use the Validator tool from NIST in order to assess the XMI exported from a tool against a specific MIWG test case. For a participating MIWG vendor, you can download submitted test results from the public MIWG repository, as discussed above. For other vendors, you can request that they generate appropriate test results for you to assess. (Or you can encourage them to participate in the MIWG!)

To assess model interchange using the Validator, do the following:

  1. Go to the Validator Web page here.
  2. Enter the path for the XMI file to be assessed, as exported from the tool being tested.
  3. Select the MIWG test case to which it is to be compared.
  4. Click on “Upload and Process”.

The Validator will then report both on the correctness of the submitted XMI file as a representation of a UML or SysML model and on how it compares with the valid XMI for the test case.

Technically, the results from the Validator do not assess interoperability directly. Instead, they assess the conformance of the export from the tool to XMI and other OMG standards used. However, it is such conformance – that is, the correct implementation of these standards – that provides the basis for interoperability.

Special Instructions for Test Case 3

Unlike other test cases, Test Case 3 has two XMI files. One contains a profile and the other contains a model with that profile applied. A test submission for Test Case 3 should therefore also have two corresponding exported XMI files, each of which may be separately assessed against the appropriate valid XMI file using the Validator. However, in order for the Validator to properly handle the profile application, the exported XMI for the Test Case 3 profile has to be “loaded” before the exported XMI for the Test Case 3 model is assessed. Do this as follows:

  1. Go to the Validator “Load Profiles” page here.
  2. Enter valid.profile.xmi in the field “Reference using this URI”.
  3. Enter the path for the exported XMI file for the Test Case 3 profile.
  4. Click on “Upload and Process”.

Once this is done, you can then process the Test Case 3 model XMI as described previously.

Notes on XMI Comparison and Canonical XMI

For the XMI comparison, the Validator uses the canonical XMI version of the valid XMI test case. The XMI standard allows a number of different options and variability in how a model may be represented in XMI (for example, whether a property is represented as an XML attribute or element, or how XMI IDs are formed). Canonical XMI is an additional conformance point for the XMI specification that eliminates variability in generating the XMI for a model. So, there is only one way in which any model may be correctly represented in canonical XMI. This makes it much simpler to test whether two canonical XMI files represent the same model and, if not, what their differences are.

At this time, the tools that import canonical XMI include Atego Artisan Studio, and IBM RSx. No tools export canonical XMI directly.

Interoperability Reports for Tool Users

Currently, the NIST Validator tools are targeted for use by the tool vendor participants of the MIWG – the tools are focused on helping the vendors fix problems in interoperability. Due to this focus, it isn't always easy for the typical tool user to determine, through use of the Validator, the prospects for interoperability of tools he is considering. To address the needs of typical tool users, we have begun development of a new method of reporting results from interoperability testing.

The new method will reduce the effort required to run tests and it will provide a very different perspective on the results of testing. In the new method, a user will select a tool from among those participating in the MIWG, and receive a report summarizing the interoperability concerns identified in the testing of that tool. The report, which will be in a spreadsheet format, will provide a page of information for each of the (currently) 16 tests of the MIWG test suite. Each page will provide the following information:

  • A description of the test domain (e.g. Class diagrams, composite structure, etc.).
  • An enumeration of the objects and their properties covered in the test case.
  • A figure depicting the diagram on which the test is based.
  • A description of the interoperablity concerns encountered, including:
    1. A description, intended to be intelligible to the typical tool user, of the concern.
    2. Identification of the object types on which the problem is occuring.
    3. An assessment of the severity of the concern (“quite significant”, “moderately significant” , “minor”)

The new tools are expected to become available in the second quarter of 2012.

 
start.txt · Last modified: 2013/12/02 17:13 by pdenno
 
OMG Home Logos and Trademarks Become a Member Become a Sponsor Upcoming TC Meeting TOP