![](media/image1.png){width="5.997222222222222in"
height="0.6756944444444445in"}

ICS-GENERATOR

USER'S Guide

Table of Contents

[ICSGenerator User's Guide](#__RefHeading___Toc126994505)

[1. Background 3](#background)

[2. Installation 4](#__RefHeading___Toc126994507)

[2.1 Download 4](#download)

[2.2 System Requirements 4](#system-requirements)

[2.3 Installing ICSGenerator 5](#installing-ics-generator)

[2.3 Running the ICSGenerator Tool 6](#running-the-ics-generator-tool)

[]{#__RefHeading___Toc126994505 .anchor}ICS-Generator User's Guide

## 1. Background

The IEEE 1073 Standard is a family of documents that defines the entire
seven layer communications requirements for the \"Medical Information
Bus\" (MIB). The objective of this standard is to standardize data
communications for patient connected bedside devices, optimized for the
acute care setting, to allow clinicians to set up device communications
in a \"plug and play\" fashion.

NIST is collaborating with the IEEE Medical Device Communications
working group in developing a set of conformance tests and corresponding
tools to aid in testing implementations against the IEEE 1073 set of
standards.

The ICS-Generator tool is an effort initiated by National Institute of
Standards Technology (NIST) and IEEE 1073 Working to help in capturing
the relationships among the manage objects and the data necessary to
generate Implementation Conformance Statements (ICS). An ICS discloses
details of a specific implementation and specifies which features are
provided. The tool was also designed, to aid in the IEEE 1073 test
development process by providing a mechanism for test identification.

![](media/image2.jpeg){width="5.993055555555555in"
height="3.498611111111111in"}

**Figure 1. Overview of ICS-Generator**

Figure 1 depicts a functional overview of the ICS-Generator tool.
Processing is XML based. An XML instance of the DIM document was created
to capture all the manage objects, their relationships and the
information associated to each of them, such as attributes, behavior and
notification. The ICS-Generator loads the XML file, provides with the
capabilities of adding, removing and updating manage objects including
its attributes, behavior and notification. Based on this information the
tool generates an XML file representing the containment tree that
describes the medical device as specified by the implementer in
conformance with the IEEE 1073 standard. The XML file contains the data
required to generate ICS reports and any other report related to the
information model or the implementation containment tree. NIST plans to
utilize this tool as a test isolation mechanism for the IEEE 1073
implementation testing.[]{#__RefHeading___Toc126994507 .anchor}

## 2. Installation

### 2.1 Download

> ICSGENERATOR can be downloaded at: <http://www.nist.gov/icsgenerator>
>
> First unzip the ICSTOOL.ZIP file. This should create the following
> directories:

-   c:/ICS/src - contains the java source code

-   c:/ICS/xml - contains the default ICS XML file ICS-Tool.xml (an XML
    representation of the data model as specified in the IEEE 1073 DIM
    Document).

### 2.2 System Requirements

> ICS-Generator 1.0 uses Java and XML Technologies. The following
> software is required:

-   Java 2 SDK (Version 1.4.2)

### 2.3 Installing ICS-Generator

> From the ICS source directory, compile and execute the ICS-Generator
> Tool using the following two commands:

-   javac \*.java

-   java ICSManagementView

> The ICS-Generator screen should pop up.

![](media/image3.jpeg){width="5.998611111111111in" height="5.13125in"}

### 2.3 Running the ICS-Generator Tool

> The generation process is driven by an input XML file containing the
> data information model. The default file is a complete representation
> of the data information model as prescribed in the IEEE 1073 DIM
> specification. To initiate the process select the XML file (data
> information model) you want to use as the initial model to specify
> your implementation conformance statements and support information.
>
> The generation process is also driven by the type of Medical Device
> System (MDS) Object selected for the Medical Device Data Information
> Model, the current version of the ICS-Generator tool supports Hydra
> and Simple MDS.
>
> At the top of the panel select;
>
> **\"New\"** to start the process with the default instance of the data
> information model. This option is usually selected the first time you
> use the tool.\
> Or\
> **\"Reload\"** to start the process with a previous created version of
> the file.
>
> And select the MDS type to use;
>
> **\"Simple\"** to represent a medical device that contains a single
> Virtual Medical Device (VMD) instance only (single purpose device).\
> Or\
> **\"Hydra\"** to represent a device that contains multiple VMD
> instances (multi-purpose device).
>
> Once you have selected one of them a JTree representation of the
> loaded XML file should appear on the left hand of the screen.
>
> ![](media/image4.jpeg){width="5.995833333333334in"
> height="5.102777777777778in"}
>
> Click on any of the Managed Object Classes **(MOC**) to see
> information such as Object_Id, Object_Name, Attributes, etc.
>
> ![](media/image5.jpeg){width="5.995833333333334in"
> height="5.111111111111111in"}
>
> There are also two buttons below the JTree:
>
> **\"Add MOC\"** to add a new Managed Object Class (MOC) to the tree\
> **\"Remove MOC\"** to remove MOC\'s from the tree.
>
> Click on the MOC you will like to add under or remove.
>
> ![](media/image6.jpeg){width="5.997916666666667in"
> height="5.108333333333333in"}
>
> As you add or remove selected MOC\'s you should see the JTree changing
> to reflect the additions or removals of MOC\'s. You can also add
> comments and restrictions for a MOC by typing data into the respective
> boxes and clicking on **\"Add Changes\"**.
>
> ICS-Generator also provides attribute, behavior and notifications for
> each MOC if available or provided by the input XML data model file.
> Click in "**Attribute Name**" combo box to see a list of attributes
> for a selected MOC.
>
> ![](media/image7.jpeg){width="5.997916666666667in"
> height="5.108333333333333in"}
>
> If an attribute is selected the following screen will be displayed and
> the following information should be provided:

-   Status

    -   This field is provided to capture supportability from the
        implementer.

```{=html}
<!-- -->
```
-   Restrictions

    -   Represents any restrictions for attribute access or attribute
        availability information.

-   Attribute access

    -   This field must be specified to identify the type of attribute
        access, if the implementation provides access services for
        attributes.

-   Value ranges

    -   In this field the implementer can provide value ranges for the
        attributes, only if applicable.

> Click on the "**Add**" bottom to submit the information entered.
>
> ![](media/image8.jpeg){width="5.997222222222222in"
> height="5.114583333333333in"}
>
> If a behavior is selected the following screen will be displayed and
> the following information should be provided:

-   Status

    -   This field is provided to capture supportability from the
        implementer.

```{=html}
<!-- -->
```
-   Restrictions

    -   This field captures any restrictions for the notification.

> ![](media/image9.jpeg){width="5.995833333333334in"
> height="4.7652777777777775in"}
>
> If a notification is selected the following screen will be displayed
> and the following information should be provided:

-   Status

    -   This field is provided to capture supportability from the
        implementer.

-   Restrictions

    -   This field captures any restrictions for the methods.

> ![](media/image10.jpeg){width="5.995833333333334in"
> height="4.534027777777778in"}
>
> Once you are done modifying the tree you can generate an XML
> representation of the JTree by clicking on the "**Generate**" button.
> The XML will appear at the bottom of the screen. You should also save
> the file by clicking on the "**Export XML file**" button.
> ICS-Generator allows you to reload files, if you are not finished
> making your changes you can reload your working copy and continued
> working on that file.
>
> ![](media/image11.jpeg){width="5.995138888888889in"
> height="5.853472222222222in"}