This wiki has undergone a migration to Confluence found Here
<meta name="googlebot" content="noindex">

Difference between revisions of "Tools for RIM based software development"

From HL7Wiki
Jump to navigation Jump to search
Line 1: Line 1:
[[category:RIMBAA Issue]]'''Implementation Tools''' are software toolkits that can be used by software developers to support/implement HL7's standards.
+
[[category:RIMBAA Issue]]Tools for RIM based software development''' are software toolkits that can be used by software developers to support/implement HL7's RIM-based standards.
  
 
Note: most tools within HL7 cater to 'standards creators', i.e. tools that support the standards development process. See e.g. [[HL7 Tooling FAQs]] and [http://www.hl7.org/participate/toolsandresources.cfm HL7.org toolkit page].
 
Note: most tools within HL7 cater to 'standards creators', i.e. tools that support the standards development process. See e.g. [[HL7 Tooling FAQs]] and [http://www.hl7.org/participate/toolsandresources.cfm HL7.org toolkit page].
Line 23: Line 23:
 
Implementation tools that [[RIMBAA]] has identified include the ones below, sorted by the type of audience/task they support:  
 
Implementation tools that [[RIMBAA]] has identified include the ones below, sorted by the type of audience/task they support:  
  
Tools that directly suport the software development process:
+
'''Tools that directly suport the software development process:'''
 
*MIF consumption, API to use MIF, MIF parser
 
*MIF consumption, API to use MIF, MIF parser
 
*MIF based class/code generators (e.g. MDHT, Everest, JavaSIG)
 
*MIF based class/code generators (e.g. MDHT, Everest, JavaSIG)
Line 37: Line 37:
 
**Subtype: ORM layer to abstract the data types (e.g. an enhanced Hibernate)
 
**Subtype: ORM layer to abstract the data types (e.g. an enhanced Hibernate)
  
Tools that support software developers:
+
'''Tools that support software developers:'''
 
*Set of testcases/examples, to test ones code. Or test framework such as IHE Gazelle.  
 
*Set of testcases/examples, to test ones code. Or test framework such as IHE Gazelle.  
 
*Model Based Testing tools (e.g. Instance Editor, MDHT)
 
*Model Based Testing tools (e.g. Instance Editor, MDHT)
Line 45: Line 45:
 
*MIF visualization tool, show condensed view
 
*MIF visualization tool, show condensed view
  
Tools that are used by analysts/providers:
+
'''Tools that are used by analysts/providers:'''
 
*Model (static/dynamic/UIs/..) Driven application generation tools (e.g. PHI Technology)
 
*Model (static/dynamic/UIs/..) Driven application generation tools (e.g. PHI Technology)
 
*Model Driven documentation generators (e.g. PHI technology)
 
*Model Driven documentation generators (e.g. PHI technology)
 
*MIF based UI designers
 
*MIF based UI designers

Revision as of 18:34, 16 January 2012

Tools for RIM based software development are software toolkits that can be used by software developers to support/implement HL7's RIM-based standards.

Note: most tools within HL7 cater to 'standards creators', i.e. tools that support the standards development process. See e.g. HL7 Tooling FAQs and HL7.org toolkit page.

The list below contains HL7-sponsored or HL7-developed tools, as well as open source, public domain, or commercial tools. By default all listed tools are open source and public domain. Commercial tools are (and: SHALL be) explicitely identified as such.

Tool Selection Criteria

If there are multiple options for a certain type of tool, the following list should aid HL7/RIMBAA in selecting/endorsing the most appropriate tool:

  1. Offers support
    • Up to date documentation
    • Availability of skilled resources and services
  2. Continued development
    • Follow developments within HL7 (with a reasonable time lag)
  3. Proven usage (at least 1, or x, sites)
  4. Open Architecture / reusability
    • Developed for re-use as a component in a different "stack", not be tied into one particular solution stack
  5. No prohibitive licensing small-print
    • License should be unambiguous, clearly stated
    • For open products: use should not effectively require the purchase of non-open parts. No hidden "Widget-frosting", should be known ahead of time.
    • Note: RIMBAA doesn't insist on an 'open' license, HL7 probably does.

HL7 version 3

Implementation tools that RIMBAA has identified include the ones below, sorted by the type of audience/task they support:

Tools that directly suport the software development process:

  • MIF consumption, API to use MIF, MIF parser
  • MIF based class/code generators (e.g. MDHT, Everest, JavaSIG)
    • Includes serialization (which is independent of ITS)
    • XML-Oriented: MIF based schema (e.g. v3Generator) and schematron generator
  • MIF to model transformations (e.g. UML);
  • MIF based database schema generator (e.g. MGRIDcommercial?))
  • MIF based UI generators
  • ISO Datatypes library
  • CTS products (e.g. Apelon, LexGRID, Healthlanguagecommercial)
  • Mapping tools (e.g. Open Mapping Software)
  • RIM Based Persistence Layer (inclusive of OO-API, as a base platform for application development) (e.g. JavaSIG, MGRIDcommercial, Oracle HTBcommercial)
    • Subtype: ORM layer to abstract the data types (e.g. an enhanced Hibernate)

Tools that support software developers:

  • Set of testcases/examples, to test ones code. Or test framework such as IHE Gazelle.
  • Model Based Testing tools (e.g. Instance Editor, MDHT)
  • Code Documentation Generators
  • An example of a software implementation
  • (Not a tool: MIF documentation, currently lacking)
  • MIF visualization tool, show condensed view

Tools that are used by analysts/providers:

  • Model (static/dynamic/UIs/..) Driven application generation tools (e.g. PHI Technology)
  • Model Driven documentation generators (e.g. PHI technology)
  • MIF based UI designers