1.       概要

SDSI-Cubic向けデータベース連携プラグイン(以下、DB連携プラグイン)は、SDSI-Cubicで使用するSysMLモデル、SDSI-Cubic向け各種設定ファイル・計算結果、RTコンポーネントリソースを共通データベースに登録し、作成した成果物をチーム間で共有するためのツールです。

11 SDSI-Cubic向けデータベース連携プラグイン画面

1.1     動作環境

DB連携プラグインの動作に必要な環境は以下のとおりです。

1 動作環境一覧

No.

環境

備考

Java Development Kit 6 以上

注意:Java1.5(5.0)では動作しません。

Eclipse 3.4以上

Eclipse本体

H2 Database Engine

共通データベース


 

2.       事前準備

ここではDB連携プラグインで使用するH2データベースのインストール方法および起動方法について説明します。

2.1      H2データベースのインストールWindows版)

H2データベースのホームページ(http://www.h2database.com/html/main.html)より、インストーラーをダウンロードします。

 

2‑1 Windows版インストーラーのダウンロード

ダウンロードが完了したら、インストーラーを実行します。

2‑2 Windows版のインストール(その1)

2‑3 Windows版のインストール(その2)

以上でWindows版のインストールは完了です。

H2データベースをWindowsサービスとして起動する場合、H2データベースをインストールしたフォルダ内に存在する\service\ 1_install_service.batを実行する必要があります。

H2データベースは、インストール先のディレクトリに、ログファイルを出力します。このため、ファイル書き込み権限があるディレクトリにインストールを行ってください。

2.2      H2データベースのインストール(Ubuntu版)

H2データベースをダウンロードし、インストーラーを起動しインストールします。

2‑4 Linux版のダウンロード

上記ファイルのダウンロードが完了したら、解凍先ディレクトリに移動し、/tmpディレクトリにあるzipファイルを解凍します。

$ cd {解凍先ディレクトリ}

$ unzip /tmp/h2*.zip

2.3      H2データベース作成と設定

H2データベースのインストールを行ったらH2Consoleを起動します。

Windows

「スタート」メニューより、「H2」→「H2 Console

Linux

$ cd {解凍先ディレクトリ}/h2/bin

$ java –cp h2*.jar org..h2.tools.Server

 

ブラウザで「http://localhost:8082/」にアクセスすると、図2-5の画面が表示されます。

 

2‑5 H2Consoleの表示

 

データベースを作成する場合、表示されたH2Consoleの画面において、以下の設定、操作を行います。

1.       Generic H2(Server)を選択

2.       作成するH2DBURLを入力

これらの設定を行った後、接続テストをクリックすることで、指定したURLにデータベースが作成されます。

※データベース名には「SDSIDB」を指定してください。

 


DBに他のコンピュータからの接続を許可する場合は、以下の設定を行います。

 

2‑6 ログイン画面(設定)

設定をクリックすると、以下の画面が表示されます。

2‑7設定画面

「他のコンピュータからの接続を許可」を選択し、保存をクリックします。

また、起動時のパラメータに-tcpAllowOtherswebAllowOthersを追加することで、同様の設定が可能となっています。

Windowsの場合)

・メニューから起動している場合は、

{H2DBをインストールしたフォルダ}\bin\h2w.batの中身を、以下のように修正します。赤字が追加する箇所になります。

@start javaw -cp "h2{バージョン番号}.jar;%H2DRIVERS%;%CLASSPATH%" org.h2.tools.Console -tcpAllowOthers -webAllowOthers %*

Windowsサービスとして起動している場合は、{H2DBをインストールしたフォルダ}\service\wrapper.confファイルの中身を、以下のように修正します。赤字が追加する箇所になります。

# Application parameters.  Add parameters as needed starting from 1

wrapper.app.parameter.1=org.h2.tools.Server

wrapper.app.parameter.2=-tcp

wrapper.app.parameter.3=-web

wrapper.app.parameter.4=-tcpAllowOthers

wrapper.app.parameter.5=-webAllowOthers

 

Ubuntuの場合)

・起動パラメータに”-tcpAllowOtherswebAllowOthersを追加して起動します。

$ java –cp h2*.jar org..h2.tools.Server -tcpAllowOtherswebAllowOthers

 

 


2.4      テーブルの作成

データベースの作成後、ログイン画面からH2システムにログインし、使用するテーブルを作成します。

 

2‑8 ログイン画面

1.       ユーザ名「sa」を入力

2.       パスワードは無し

これらの設定を行った後に、「接続」をクリックするとログインし、以下の画面が表示されます。

2‑9 SQL画面

2‑9 SQL画面SQLエリアに、create_table_SDSI.sqlの中身をコピーして貼り付けるか、以下の内容を入力して「実行」ボタンクリックをします。

-- モデル

create table T_SDSI_CUBIC (

  MODEL_ID IDENTITY NOT NULL,

  MODEL_NAME VARCHAR(100) NOT NULL,

  MODEL_FLAG BOOLEAN NOT NULL,

  MODEL_DATA BLOB,

  SDSI_FLAG BOOLEAN NOT NULL,

  SDSI_DATA BLOB,

  RTC_FLAG BOOLEAN NOT NULL,

  RTC_SOUCE BLOB,

  CREATION_DATE TIMESTAMP NOT NULL,

  UPDATE_DATE TIMESTAMP NOT NULL,

  CREATOR VARCHAR(100),

  CONSTRAINT PK_T_MODEL_IMAGE PRIMARY KEY (

    MODEL_ID

  )

);

 

-- モデルコメント

create table T_COMMENT (

  MODEL_ID BIGINT NOT NULL,

  COMMENT_ID INT NOT NULL,

  COMMENT VARCHAR(1000),

  CONSTRAINT PK_T_COMMENT PRIMARY KEY (

    MODEL_ID,

    COMMENT_ID

  ),

  CONSTRAINT FK_COMMENT_01 FOREIGN KEY (MODEL_ID)

    REFERENCES T_SDSI_CUBIC (MODEL_ID)

);

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


この操作により、テーブルが作成され、一覧に追加されます。

2‑10 テーブル一覧

 

 

2.5      データベースの停止

データベースを停止する場合には、【設定】画面で「シャットダウン」をクリックします。

2‑11設定画面

H2システムをサービスとして起動している場合には、

{H2DBをインストールしたフォルダ}\service\ 4_stop_service.bat

を実行してもデータベースの停止が行えます。


2.6      ユーザの追加

H2システムにログイン後、SQLエリアに、create_user.sqlの中身を貼り付けるか、以下の内容を入力して「実行」ボタンクリックをします。

CREATE USER $username PASSWORD '$password ';

 
 


$username$passwordは任意のユーザ名、パスワードを設定することが可能です。

DB連携プラグインのデフォルト設定は、ユーザ名:sdsi、パスワードsdsiとなっています。もしもこれ以外のユーザ名、パスワードを設定したい場合には、DB連携プラグインの設定値を変更してください。

ユーザの追加に成功すると一覧に追加されます。

 

2‑12 ユーザ一覧

既存ユーザのパスワードを変更したい場合には、以下のSQLを実行してください。

alter user $username set password ‘$password’;

次に、追加したユーザに作成した表の加、更新、削除の権限を付与します。grant_user.sql内のusernameの部分を書き換えてSQLエリアに貼り付けるか、以下の内容を入力して「実行」ボタンをクリックします。

grant select,insert,update,delete on T_SDSI_CUBIC to sdsi;

grant select,insert,update,delete on T_COMMENT to sdsi;

 
 

 


※作成した表を削除したい場合には、droptables.sql内のusernameの部分を書き換えてSQLエリアに貼り付けるか、以下の内容を入力して「実行」ボタンをクリックします。

drop table T_COMMENT;

drop table T_SDSI_CUBIC;

 
 

 


SQLをコマンドラインから実行する場合は、以下のコマンドを実行します。

$ java -cp h2*.jar org.h2.tools.RunScript -url "jdbc:h2:tcp://localhost/SDSIDB" -user sa

-script XXXXX.sql

 上記コマンドを実行時に、H2データベースが作成されていない場合には、自動でデータベースの作成が行われます。


3.       DB連携プラグインのインストールと起動

3.1      DB連携プラグインのインストール

DB連携プラグインはEclipseプラグインの形式で実装されています。このため、Eclipse本体をまずインストールする必要があります。動作を参照の上、これらをダウンロードします。

Eclipseのインストールは解凍するだけです。また、Eclipseのプラグインは解凍後、Eclipseフォルダ内に上書きするだけです。

DB連携プラグインのインストールは以下のプラグインをeclipse/pluginsフォルダに配置するだけで完了です。

DB連携プラグイン(jp.ac.osaka_u.casi.SDSI_Cubic.DB_X.X.X.jar

3.2      DB連携プラグインの起動

DB連携プラグインを起動するためには、まずEclipseを起動します。

Eclipsが正常に起動した後、上部メニューの「ウィンドウ」から「パースペクティブのカスタマイズ」を選択します。

3‑1 パースペクティブのカスタマイズ

【パースペクティブのカスタマイズ】画面にて、「コマンド」タブを選択し、「使用可能なコマンド・グループ」中の「SDSI_Cubic DB Actions」をチェックします。

 

3‑2 DB連携アクションの有効化           図 3‑3 DB連携プラグイン起動ボタン

上記のアクションの設定を行うと、画面情報のツールバー上にDB連携プラグインを起動するためのボタンが追加されます。

4.       DB連携プラグインの利用方法

上記の起動ボタンをクリックすると、以下のメイン画面が表示されます。

4‑1 DB連携プラグイン メイン画面

4.1      モデル情報などの登録

既存のSysMLモデル情報、SDSI-Cubic関連ファイル、RTC関連ファイルをデータベースに登録する場合には、メイン画面の「新規作成」ボタンをクリックし、【新規登録】画面を開きます。

4‑2 新規登録画面

新規登録画面にて、各種情報の設定を行います。

・名称:登録するモデルの名称です。省略不可です。

・対象モデル:登録対象のSysMLモデルファイルを指定してください。

SDSIディレクトリ:登録対象のSDSI-Cubic関連ファイルが存在するディレクトリを指定してください。

RTCディレクトリ:登録対象のRTC関連ファイルが存在するディレクトリを指定してください。

・作成者:新規登録を行うユーザの名前を入力してください。

※現状バージョンでは、SysMLモデルファイルはEnterpriseArchitectのみ対応しています。

SDSIディレクトリおよびRTCディレクトリで指定された内容は、対象ディレクトリ内の要素を全て圧縮し、データベースに登録します。

※入力された内容は、「OK」ボタンをクリックしたタイミングでDBに登録されます。


4.2      モデル情報の更新

登録済みのモデル情報の内容を変更する場合には、変更対象の要素を選択した状態で、「更新」ボタンをクリックし、【更新】画面を表示します。

4‑3 更新画面

【更新】画面にて、修正したい内容を再設定し、「OK」ボタンをクリックします。

※「対象モデル」「SDSIディレクトリ」「RTCディレクトリ」の入力エリアについては、選択したデータに、SysMLモデルファイル、SDSI関連ファイル、RTC関連ファイルがそれぞれ登録されている場合に、文字列が表示されます。上記エリアが空白で表示されている場合は、該当するデータが登録されていないことを表します。

※入力された内容は、「OK」ボタンをクリックしたタイミングでDBに登録されます。

4.3      モデル情報の削除

登録済みのモデル情報を削除する場合には、削除対象の要素を一覧画面内で選択した状態で「削除」ボタンをクリックします。

4‑4 モデル情報の削除

4.4      コメントの追加

登録したモデル情報には、コメントを登録することができます。登録されたコメントは、モデルデータの検索に使用することが可能です。

登録済みモデル情報にコメントを追加する場合には、追加対象の要素を一覧画面で選択した状態で、「コメント」ボタンをクリックし、【コメント】画面を表示します。

4‑5 コメントの登録

各データには、複数個のコメントを登録することが可能です。

※入力したコメントは【コメント】画面の「OK」ボタンをクリックしたタイミングで、データベースに登録されます。

4.5      モデル情報の検索

データベースに登録さらたモデル情報の中から、条件に合致するモデルを検索する機能です。

メイン画面上部に検索条件を入力し、「検索」ボタンをクリックすると、入力された条件に合致するデータのみが表示されます。

4‑6 モデル情報の検索

※検索条件の「名称」「登録者」「コメント」については、前方一致(入力した内容で始まるデータ)で検索を行い、複数の検索条件が設定されている場合には、アンド検索(全ての条件を満たす)を実行します。

 


4.6      登録情報の再利用

データベースに登録されているモデルを再利用する場合は、対象データを一覧画面で選択し、「エクスポート」ボタンをクリックし、【エクスポート画面】を表示します。

4‑7 エクスポート画面

【エクスポート画面】では、取得するモデルデータの内容(SysMLモデル、SDSI関連ファイル、RTC関連ファイル)を選択すると共に、出力先のディレクトリを指定します。そして、「OK」ボタンをクリックすると指定したデータを取得します。

※【エクスポート画面】の「出力対象」欄は、指定したモデルデータが含まれる情報部分のみが有効化されて表示されます。

※各データは以下の形式で出力先ディレクトリに出力されます。

  SysMLモデル:<出力先ディレクトリ>\<モデル名>.eap

  SDSI-Cubic<出力先ディレクトリ>\SDSI\<モデル登録時のディレクトリ名>

  RTC<出力先ディレクトリ>\RTC\<モデル登録時のディレクトリ名>


5.       各種設定

設定画面では、接続先データベースに関連した情報を設定することが可能です。

上部メニュー中の「ウィンドウ」→「設定」→「SDSI-Cubic DB情報設定」を選択して表示します。

5-1 設定画面

各設定項目の内容は以下のとおりです。

項目

説明

Driver

データベースに接続するために使用するドライバを指定します。デフォルト設定はorg.h2.Driverです。

Host

接続対象のデータベースが動作しているホストの情報を設定します。デフォルト設定はlocalhostです。データベースが他のマシン(サーバなど)上で動作している場合には、対象マシンの情報を設定してください。

DataBase

接続対象のデータベースの名称を設定します。デフォルト設定はSDSIDBです。データベース作成時に別の名前を設定した場合には、設定名に合わせて修正してください。

Port

接続対象のデータベースが動作しているホストのポート番号を設定します。デフォルト設定は9092です。

Login ID

データベースに接続する際に使用するユーザ名を設定します。デフォルト設定はsdsiです。ユーザ作成時に別のユーザ名で作成した場合には、修正してください。

Login Password

データベースに接続する際に使用するパスワードを設定します。デフォルト設定はsdsiです。別のパスワードを設定した場合には、修正してください。