(57)【要約】【課題】  経験者でなくとも容易にＥＡの策定作業の準備段階におけるモデルの選定と作成プロセスの定義を自動的に行うことができるエンタープライズ・アーキテクチャ作成プロセス定義プログラムを提供する。【解決手段】  エンタープライズ・アーキテクチャの構築に関するメタモデル情報、および必要とされる所定のモデル情報の相互関係を示した情報関連情報を記憶手段１４に記憶し、起点エンティティおよび終点エンティティを検出し、情報関連情報から、所定のモデルを抽出し、抽出された各モデルが必要としているメタモデル情報のエンティティとの関係グラフ情報を抽出し、始点エンティティを始点とし、終点エンティティを終点とするように結合し、所定の条件に合致しているか否かを判別し、合致したと判別された場合は、作成プロセスとして出力手段１６によって出力する。【選択図】      図１
2006139612.tif 000002
【特許請求の範囲】
【請求項１】
エンタープライズ・アーキテクチャを構築するためのシステムで用いられるプログラムであって、
前記エンタープライズ・アーキテクチャの構築に関するメタモデル情報、および必要とされる所定のモデル情報の相互関係を示した情報関連情報を記憶手段に記憶する記憶手順と、
前記記憶手段に記憶されている情報関連情報から、起点となる情報である起点エンティティ情報および終点となる情報である終点エンティティ情報を検出する検出手順と、
前記記憶手段に記憶されている情報関連情報から、所定のモデルを抽出し、抽出された各モデルが必要としている前記メタモデル情報のエンティティとの関係グラフ情報を抽出する抽出手順と、
前記抽出手順によって抽出された関係グラフ情報を、前記始点エンティティ情報を始点とし、前記終点エンティティ情報を終点とするように結合し、所定の条件に合致しているか否かを判別する結合判別手順と、
前記結合判別手順により、所定の条件に合致したと判別された場合は、作成プロセス情報として出力する出力手順と、
をコンピュータに実行させるためのプログラム。
【請求項２】
前記請求項１に記載のプログラムであって、
前記抽出手順は、前記記憶手段に記憶されているメタモデル情報から、所定のアルゴリズムにより、さらに補助モデルを抽出することを特徴とするコンピュータに実行させるためのプログラム。
【請求項３】
前記結合判別手順は、前記作成プロセス情報が所定の条件に合致しているか否かを判別する場合、前記終点エンティティ情報よりも前に配置するべき前記モデルが、前記終点エンティティ情報よりも後ろにあるか否かで判別する、または、前記モデルのうち、同じモデルがループしているか否かで判別することを特徴とするコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンタープライズ・アーキテクチャの記述モデルの作成プロセスの定義手法に関し、特に、作成プロセスを迅速に構築することを支援することができるエンタープライズ・アーキテクチャ作成プロセス定義プログラムに関する。
【背景技術】
【０００２】
従来、ＥＡ(Enterprise Architecture)（現状を文書化し、理想像、移行計画、統制を策定する取り組み）を構築する場合には、ＥＡ策定の目的に応じて、必要となるモデルは異なっており、ＥＡの策定作業の準備段階で、モデルの選定と作成プロセスの定義を行って構築されている（例えば、非特許文献１を参照）。
【非特許文献１】インターネット＜URL: http://www.e-gov.go.jp/doc/guideline.html＞
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述した技術では、すべて人間の手作業で行っており、熟練した経験等により、ＥＡの策定作業の準備段階で、モデルの選定と作成プロセスの定義を行わなくてはならない。
【０００４】
本発明の目的は、経験者でなくとも容易にＥＡの策定作業の準備段階におけるモデルの選定と作成プロセスの定義を自動的に行うことができるエンタープライズ・アーキテクチャ作成プロセス定義プログラムを提供することである。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、この発明のエンタープライズ・アーキテクチャ作成プロセス定義プログラムは、エンタープライズ・アーキテクチャを構築するためのシステムで用いられるプログラムであって、前記エンタープライズ・アーキテクチャの構築に関するメタモデル情報、および必要とされる所定のモデル情報の相互関係を示した情報関連情報を記憶手段に記憶する記憶手順と、前記記憶手段に記憶されている情報関連情報から、起点となる情報である起点エンティティ情報および終点となる情報である終点エンティティ情報を検出する検出手順と、前記記憶手段に記憶されている情報関連情報から、所定のモデルを抽出し、抽出された各モデルが必要としている前記メタモデル情報のエンティティとの関係グラフ情報を抽出する抽出手順と、前記抽出手順によって抽出された関係グラフ情報を、前記始点エンティティ情報を始点とし、前記終点エンティティ情報を終点とするように結合し、所定の条件に合致しているか否かを判別する結合判別手順と、前記結合判別手順により、所定の条件に合致したと判別された場合は、作成プロセス情報として出力する出力手順とをコンピュータに実行させるためのプログラムである。
【０００６】
である。
【０００７】
このため、経験者でなくとも容易にＥＡの策定作業の準備段階におけるモデルの選定と作成プロセスの定義を自動的に行うことができる。
【発明の効果】
【０００８】
本発明によれば、経験者でなくとも容易にＥＡの策定作業の準備段階におけるモデルの選定と作成プロセスの定義を自動的に行うことができる。
【発明を実施するための最良の形態】
【０００９】
以下図面を参照して、本発明の実施形態を説明する。
【００１０】
なお、本願発明は、エンタープライズ・アーキテクチャ：ＥＡ(Enterprise Architecture)（現状を文書化し、理想像、移行計画、統制を策定する取り組み）の構築を行う際に行われている４つのステップである、１．メタモデル（情報）の作成・合成、２．情報連関表の作成、３．補助的なモデルの洗い出し、４．関係グラフ情報として、ＡＮＤ／ＯＲグラフの作成、結合のうち、３．および４．について自動的にプログラムとして行うものである。なお、「メタモデルとは、モデルを記述するための言語を定義するものになる。」例えば、以下に挙げられるような形態がある。http://www.atmarkit.co.jp/fjava/devs/dstylefaq/uml/uml3_1/uml3_1.html
図１は、本発明のエンタープライズ・アーキテクチャ作成プロセス定義プログラムを備えたコンピュータを示したブロック図である。
【００１１】
コンピュータ１０は、制御手段１２、記憶手段１４、および作成された作成プロセス情報等を出力する出力手段１６を備えている。制御手段１２は、メタモデル内での経路を抽出するための経路作成部１２ａ、作成された経路から所定のアルゴリズムにより補助モデルを作成する補助的モデル探索部１２ｂ、必要とされる所定のモデル情報の相互関係を示した情報連関表を作成する情報連関表作成部１２ｃ、情報連関表から始点エンティティ、終点エンティティを検出する始点・終点エンティティ検出部１２ｄ、情報連関表から必要とされる所定の各モデルに対する関係グラフ情報として、ＡＮＤ／ＯＲグラフの作成、作成された関係グラフ（ＡＮＤ／ＯＲグラフ）の結合、結合されたグラフの是非判別等を行うグラフ作成部１２ｅを備える。
【００１２】
記憶手段１４は、経路作成部１２ａで作成された経路情報を記憶する経路情報記憶領域１４ａ、情報連関表作成部１２ｃにより作成された情報連関表情報を記憶する情報連関表情報記憶領域１４ｂ、グラフ作成部１２ｅにより作成された関係グラフ、結合されたグラフ等の情報を記憶するグラフ情報記憶領域１４ｃを備える。
【００１３】
以上のように構成されたコンピュータに搭載されたプログラムの動作について図２のフローチャートを参照して説明する。
【００１４】
最初に、ステップＳ１で使用する情報連関表を作成する手順について説明する。
【００１５】
まず、図３に示すようなメタモデルの合成を行う。例えば、ＥＡ策定の目的を設定する。例えば、１．ビジネス環境やＩＴのライフサイクル短縮化に伴い、業務・システムがこれらの変化に迅速に対応できるようにする。２．ＩＴに関する費用配分を最適化すること、具体的には、既存システムの統廃合を通じて保守・運用コストを削減し、新規開発投資の割合を高める等。３．人の中に埋もれがちな業務・システムに対する知識を文書化して、さまざまな場面で利用可能な資産とすること、例えば、経営幹部に社内のシステムの実状を把握してもらい、システム部門との意思疎通の円滑化を図る等、を設定する。
【００１６】
次に、例えばＩＴに関する費用配分の最適化を行う。例えば、アプリケーション/データモデルを標準化する。そして、施策として、「アプリケーション/データモデルを標準化する」→「事業部門毎に個別にアプリケーション/データモデル開発を行っている」→「他事業部門で利用しているアプリケーション機能やデータ項目がわからない」等。
【００１７】
解決策として、「事業部門間で、類似した業務に関して、そこで利用されているアプリケーション機能やデータ項目の共通点/相違点を明確化する」。
【００１８】
以上の解決策に対し、要件の洗い出しを行う。例えば、
要件１  企業内で共通化された業務分類が記述されている。
【００１９】
要件２  事業部門ごとに、各業務分類で利用されているアプリケーションが一覧の形で表現されている。
【００２０】
要件３  事業部門間で、同一の業務分類に対して、別のアプリケーションが利用されている場合のみ、両部門について、その業務フローが対比できるように表現されている。業務フローは、業務プロセスと業務アクティビティから構成される。
【００２１】
要件４  業務フロー内では、利用されているアプリケーションの機能が表現されている。
【００２２】
要件５  業務分類ごとに、そこで利用されているアプリケーションが提供する機能が一覧の形で表現されている。
【００２３】
要件６  アプリケーションの機能ごとに、処理の概要説明が記述されている。
【００２４】
要件７  アプリケーションの機能ごとに、そこで利用されているデータエンティティ、さらに、データ項目が表現されている。
【００２５】
以上から、必要なモデルの選定を行う（必要とされる所定のモデル情報の選定）。例えば、
要件１  業務分類を階層的にツリー図の形式で記述する。よって、業務分類階層図が必要である。
【００２６】
要件２  部門名を横軸、業務分類名を縦軸にとったマトリックス内のセルに、アプリケーション名を記述する。よって、アプリケーションマップが必要である。
【００２７】
要件３、要件４  業務フローをワークフローのための一般的な図で記述し、利用しているアプリケーションの機能名も併記する。よって、業務フロー図が必要である。
【００２８】
要件５  アプリケーション名を横軸、業務分類名を縦軸にとったマトリックス内のセルに、機能名を記述する。よって、アプリケーション機能マップが必要である。
【００２９】
要件６  機能ごとに処理の概要説明を記述する表形式のフォーマットを作成する。よって、機能概要説明書が必要である。
【００３０】
要件７  機能ごとに、そこで利用されるデータエンティティと、その中で実際に利用されるデータ項目(名称、型、サイズ)を一覧できる表形式のフォーマットを作成する。よって、データエンティティ/項目一覧表が必要である。
【００３１】
よって、必要とされる所定のモデル情報としては、業務分類階層図、アプリケーションマップ、業務フロー図、アプリケーション機能マップ、機能概要説明書、およびデータエンティティ/項目一覧表と判断される。
【００３２】
以上より、図３に示すようなメタモデルとしてクラス図（            ）を作成する。なお、各要件ごとに点線で領域を囲うように表示している。
【００３３】
作成されたクラス図より、図５に示すように、情報連関表の作成を行う。なお、情報連関表の補助モデルである（７）事業部門一覧表、（８）事業フロー一覧表、（９）ＥＲ図の探索、抽出には、図４に示すアルゴリズムが用いられる。すなわち、ステップＳ１１で、対象とするモデルについて、情報連関表内で、”／”印が付いているエンティティの集合をIとする。今、Iに属するエンティティを“エンティティi”と表現する(変数iは１以上n以下の整数。 ただし、nはIに属する情報の数。)  iには初期値として１を設定する。次に、ステップＳ１２で、メタモデル上でエンティティiから起点エンティティへの経路の集合を経路集合iとする。続いて、ステップＳ１３で、ｉに１を加算する。そして、ステップＳ１４で、ｉ＞ｎか否かを判別する。ステップＳ１４で、ｉ＞ｎであると判別された場合は、ステップＳ１５で、経路集合１×…×経路集合nに属する経路の組合せを“組合せ経路j”と表現する。(変数ｊは１以上m以下の整数。 ただし、mは経路集合１×…×経路集合nに属する経路の組合せの数。)  jには初期値として１を設定する。また、変数MINに初期値として十分に大きな整数を設定する。続いて、ステップＳ１６で、組合せ経路jについて、メタモデル上で要件を示す点線の範囲内に入っていない関係線を数え、その数をMINjとする。次に、ステップＳ１７で、MIN＞MINjか否かを判別する。ステップＳ１７で、MIN＞MINjと判別された場合は、ステップＳ１８で、MIN＝MINjとし、ステップＳ１９に遷移する。一方、ステップＳ１７で、MIN＞MINjでないと判別された場合は、ステップＳ１９で、J＝J+１とする。続いて、ステップＳ２０で、j＞mか否かを判別する。ステップＳ２０で、j＞mでないと判別されると、ステップＳ１６に戻り、ステップＳ２０で、j＞mであると判別されると、終了する。
【００３４】
以上のアルゴリズムにより、（７）事業部門一覧表、（８）事業フロー一覧表、（９）ＥＲ図が、補助モデルであると判別され、図５に示した情報連関表に補助モデルとして組み込まれる。情報連関表では、情報連関情報として、縦軸に要件に対応するモデルとして、（１）〜（９）までのモデルと、横軸にメタモデルのエンティティとして、Ａ〜Ｏまでのメタモデルのエンティティが配置され、それぞれデータ化されて、記憶手段１４の情報連関表情報記憶領域１４ｂに記憶される。例えば、（１）の業務分類階層図と、Ａ企業が、”／”であるならば、（１）Ａ＝”／”のように記憶される。このように、それぞれ、”／”か”Ｏ”を、データ化して記憶する。
【００３５】
図２に戻り、ステップＳ１で、上述したように作成された情報連関表を入力として、始点モデルと終点モデルを明確化する。例えば、始点モデルとは、横軸で“／”印が付いているエンティティが起点エンティティのみであるモデル。すなわち、（１）Ａの業務分類階層図と企業の”／”である。さらに、（７）もまた始点モデルである。終点モデルとは、横軸で他のモデルで“／”印が付けられていないエンティティのみに“○”印が付いているモデル。すなわち、（５）機能概要説明書、および（６）データエンティティ／項目一覧表である。
【００３６】
以上より、始点モデルとして、（７）及び（１）、終点モデルとして、（５）及び（６）が決まると、素６に示すように配置する。次に、始点モデルと終点モデルとの間のモデルの配置を決めるのであるが、ステップＳ２で、情報連関表を入力として、各モデルについて、前段階で作成されていなければならないモデルとの関係を示すＡＮＤ／ＯＲグラフ（関係グラフ情報）を制御手段１２のグラフ作成部１２ｅによって作成する。このＡＮＤ／ＯＲグラフは、終点側から作成する。例えば、図７に示すように、終点モデルである（５）は、図５を参照すると、縦軸に”／”がある位置（（５）Ｄ）は、横軸を参照すると、（３）及び（４）に”Ｏ”が付いている。このとき、横軸に２つ以上の”Ｏ”が付いている場合は、ｏｒの関係とする（図７参照）。さらに、終点モデルである（６）は、図５を参照すると、縦軸に”／”がある位置（（６）Ｄ、（６）Ｇ）が２つあるので、ａｎｄの関係とし、（６）Ｄの横軸は、同様に（３）及び（４）に”Ｏ”が付いているので、ｏｒの関係とし、（６）Ｇの横軸は、（９）の”Ｏ”がついているので、（６）Ｄと（６）Ｇとの関係がａｎｄであるので、ａｎｄとする（図７参照）。以下同様に、すべてのモデルについて検討する。例えば、（４）は、”／”がある位置（（４）Ｂ、（４）Ｄ）が２つあるので、これらの関係をａｎｄとし、（４）Ｄの横軸には、（２）、（３）に”Ｏ”があるので、ｏｒとし、（４）Ｂの横軸には、（９）に”Ｏ”があるので、（２）、（３）のｏｒと（１）とをａｎｄの関係とする。また、（２）については、”／”がある位置（（２）Ｂ、（２）Ｃ）で２つあるので、これらの関係をａｎｄとしている。このように、すべてのモデルについて、ＡＮＤ／ＯＲグラフを作成する。
【００３７】
図２のステップＳ３で、終点モデルから、始点モデルに向けて、順次グラフの結合を行う。その際、 Orの組合せについては、１つの関係線のみを選択し、制御手段１２のグラフ作成部１２ｅによって、同じ数字のＡＮＤ／ＯＲグラフ同士を結合する。ＡＮＤ／ＯＲグラフの結合の実行手段としては、プログラミング言語Prologによるバックトラック機構を利用して実現が可能である。なお、Prologについては、以下の参考文献を参照のこと。
【００３８】
ＡＮＤ／ＯＲグラフ実行手段参考文献  Prolog入門  古川康一著  オーム社 ; ISBN: ４２７４０７３０８４ ; (１９８６/０９)。
【００３９】
すべての経路が始点モデルに到達したならば、完成したグラフを作成プロセス集合に登録し、再びバックトラックする。
【００４０】
以上のように、ＡＮＤ／ＯＲグラフの結合することにより、例えば、図８に示すような作成プロセスが完成する。
【００４１】
一方、結合の結果、経路上の既出のモデルにつながるような場合には、バックトラックする。例えば、図９に示すように、終点モデルである（５）及び（６）よりも前に配置されるべきモデルである、例えば（２）が、が２回配置されている関係となった場合は、ループしてしまうので、バックトラックする。
【００４２】
ステップＳ４で、バックトラックにより、Orの組合せのすべてについて、結合を行ったならば、処理を終了し、そのときの作成プロセスの集合を、出力手段１６により出力する（図８参照）。
【００４３】
以上、本発明の実施形態を用いることにより、経験者でなくとも容易にＥＡの策定作業の準備段階におけるモデルの選定と作成プロセスの定義を自動的に行うことができる。
【００４４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００４５】
【図１】本発明のエンタープライズ・アーキテクチャ作成プロセス定義プログラムを備えたコンピュータを示したブロック図。
【図２】本発明の実施形態に係るプログラムの動作について説明したフローチャート。
【図３】本発明の実施形態に係るメタモデルを示したクラス図。
【図４】本発明の実施形態に係る情報連関表に用いる補助モデルの抽出を行うアルゴリズムを示したフローチャート。
【図５】本発明の実施形態に係る情報連関表を示した図。
【図６】本発明の実施形態に係る情報連関表より抽出した始点モデルと終点モデルを示した模式図。
【図７】本発明の実施形態に係る情報連関表より抽出した各モデルごとのＡＮＤ／ＯＲグラフを示した模式図。
【図８】本発明の実施形態に係る情報連関表より抽出した各モデルごとのＡＮＤ／ＯＲグラフを結合して作成プロセスとした状態を示す模式図。
【図９】本発明の実施形態に係る情報連関表より抽出した各モデルごとのＡＮＤ／ＯＲグラフを結合して、ループ状態を示す模式図。
【符号の説明】
【００４６】
１０…コンピュータ、１２…制御手段、１２ａ…経路作成部、１２ｂ…補助的モデル探索部、１２ｃ…情報連関表作成部、１２ｄ…始点・終点エンティティ検出部、１２ｅ…グラフ作成部、１４…記憶手段、１４ａ…経路情報記憶領域、１４ｂ…情報連関表情報記憶領域、１４ｃ…グラフ情報記憶領域、１６…出力手段
【図１】
2006139612.tif 000003
【図２】
2006139612.tif 000004
【図３】
2006139612.tif 000005
【図４】
2006139612.tif 000006
【図５】
2006139612.tif 000007
【図６】
2006139612.tif 000008
【図７】
2006139612.tif 000009
【図８】
2006139612.tif 000010
【図９】
2006139612.tif 000011