(57)【要約】      （修正有）【課題】既存の製造産業用ソフトウエアユニットのプロセスセマンティックスを効率よく検索する。【解決手段】製造産業用ソフトウエアユニットをＩＳＯ１６１００−Ｐ２で規定する実装仕様形式で記述されたソフトウエアユニットプロファイリングテンプレートを用いて記述する際にその振る舞いを規定するプロパティとして形式的に記述するために、製造産業用ソフトウエアユニットを定義するためのユニットプロパティを、実装仕様形式で記述されたソフトウエアユニットが実現するアクティビティーのドメイン概念データモデル要素へのアクセスの振る舞いを用いて記述する。【選択図】図１
2008191698.tif 000002
【特許請求の範囲】
【請求項１】
セマンティックスとして特定分野のドメイン概念データモデルを共有し、前記ドメイン概念データモデルのモデル要素を使用して、実装仕様形式のソフトウエアユニットプロファイルおよび同プロパティとして記述された、製造産業用ソフトウエアユニットまたは検索対象となる要求仕様を入力する入力手段と、
前記入力された製造産業用ソフトウエアユニットのソフトウエアユニットプロファイルおよび同プロパティを記憶する記憶手段と、
前記記憶手段の中から前記要求仕様に合致する製造産業用ソフトウエアユニットを検索して抽出する検索手段と、
前記検索手段における検索結果を外部に出力する出力手段と、
を備えることを特徴とする製造産業用ソフトウエアユニットの検索装置。
【請求項２】
前記製造産業用ソフトウエアユニットまたは要求仕様に基づくアクティビティーのプロパティが、前記特定分野のドメイン概念データモデルのモデル要素の集合として規定されていること
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項３】
前記製造産業用ソフトウエアユニットまたは要求仕様に基づくアクティビティーのプロパティが、順番が指定された前記特定分野のドメイン概念データモデルのモデル要素の集合として規定されていること
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項４】
前記製造産業用ソフトウエアユニットまたは要求仕様に基づくアクティビティーのプロパティが、前記特定分野のドメイン概念データモデルのモデル要素のアクセス引数を含むこと
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項５】
前記製造産業用ソフトウエアユニットまたは要求仕様に基づくアクティビティーのプロパティが、前記アクティビティーを細分展開したアクティビティーの集合として規定されていること
を特徴とする請求項１ないし４のいずれか１項に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項６】
前記製造産業用ソフトウエアユニットまたは要求仕様に基づくアクティビティーのプロパティが、前記特定分野のドメイン概念データモデルに基づいて、ＸＭＬにより記述されていること
を特徴とする請求項１ないし５のいずれか１項に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項７】
前記要求仕様のプロセスが、前記特定分野のドメイン概念データモデルのモデル要素を用いて規定されていること
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項８】
前記要求仕様のプロパティが、特定分野のドメイン概念データモデルのモデル要素の集合としてＸＭＬに基づいて記述されていること
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項９】
前記検索手段が、前記特定分野のドメイン概念データモデルのモデル要素と異なる実装仕様形式で記述された要求仕様を前記特定分野のドメイン概念データモデルのモデル要素と同じ実装仕様形式への変換を行うための翻訳テーブルを備え、該翻訳テーブルを参照して前記要求仕様の実装仕様形式を変換すること
を特徴とする請求項１に記載の製造産業用ソフトウエアユニットの検索装置。
【請求項１０】
特定分野の実行手続のモデルを獲得する工程と、
製造産業用ソフトウエアユニットを前記ドメイン概念データモデルに基づいて実装仕様形式のソフトウエアユニットプロファイルおよび同プロパティとして記述する工程と、
検索対象となる要求仕様を前記ドメイン概念データモデルに基づいて実装仕様形式で記述する工程と、
前記実装仕様形式で記述した要求仕様と、前記実装仕様形式のソフトウエアユニットプロファイルとして記述した製造産業用ソフトウエアユニットと、を照合し、該要求仕様に合致する製造産業用ソフトウエアユニットを検索して抽出する工程と、
を含むことを特徴とする製造産業用ソフトウエアユニットの検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、製造産業用ソフトウエアユニットの検索装置および検索方法に関するものであり、特に、既存のソフトウエアユニットを効率良く登録し検索することが可能な製造産業用ソフトウエアユニットの検索装置および登録検索方法に関する。
【背景技術】
【０００２】
近年、生産設備として実際にワークの加工、洗浄、運搬などに携わる各種の工作機械や段取装置、洗浄装置、作業指示装置、搬送装置などの制御対象設備と、これらの制御対象設備の運用のための加工日程計画や加工順序情報、使用予定治具情報などの基本情報を処理して運転スケジュールを作成しながらこれらの制御対象設備を統括的に運転制御する制御装置とが、ネットワークで接続された構成を有するフレキシブル生産システムが提案され、普及してきている。
【０００３】
また、このような生産システムを駆動するためには、専用のまたは汎用のソフトウエアが必要となる。さらに特定分野（以下ドメインと言う）対応生産システムを効率的に構築するためには、これらの特定ドメイン対応生産プロセス、すなわち同プロセスを構成する生産アクティビティーを具現化する装置や、それらを駆動するためのソフトウエア部品（一個〜）、およびそれが走行するコンピュータ環境等の仕様を統合化し、製造産業用アクティビティー対応のソフトウエアユニット（別名、オートメーションオブジェクト）としての開発も盛んに行われている。このソフトウエアユニットの開発においては、開発の効率を向上させるために、既存のソフトウエア部品をそのまま、または部分変更、追加することにより再利用することで、新規に開発するソフトウエア部品の数、またはソフトウエア開発工数を削減する方法が用いられている。以下、このソフトウエアユニットを製造産業用ソフトウエアユニットと呼ぶ。
【０００４】
【特許文献１】特開平６−３４８４７１号公報
【特許文献２】特開平１１−１５７３２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来は、（１）製造産業用ソフトウエアユニット、およびそれを再利用する観点から、いわゆるソフトウエア部品としてしかるべき検索装置に登録し、またその検索手段として用いるためのベースとなる、製造産業用ソフトウエアユニットの意味定義属性をいわゆるプロファイルとして規定するユニットプロファイル登録スキーマが無かったこと、更に（２）製造産業用ソフトウエアユニットの意味定義属性をコンピュータが理解可能な形でトップダウンで形式的に記述する規定、方法が設けられていなかったこと、等により、ソフトウエア部品の登録、検索とも常にオペレータの判断を介するため、自動化が不可で、非効率的であり、またその効用も限られていた（たとえば、特許文献１、特許文献２参照）。この特徴を有する登録検索方式を意味モデルレス恣意的登録検索方式と名付ける。
【０００６】
一方、たとえばドイツの自動車産業界の団体であるＡＳＡＭ・ＣＥＡグループの標準化に代表されるように、グループの問題領域製造アプリケーションプロセスの詳細についてあらかじめそれを実現するアクティビティーとしてモデル化し、それをジグソウパズルの嵌め絵を元図とし、各ピース、またはそれを任意に組み合わせてなる複数の特定のブロック対応のアクティビティーモデルを特定標準モジュールとしてそれぞれ命名し、同アクティビティーモデルをその名前として検索装置に登録し、対応する要求／既存モジュールの実現プロセス対応アクティビティーモデルとして利用する登録および利用形態がある。元モデル、および各標準モジュール名および対応アクティビティーモデルは、それをコンソーシアムのユーザメンバが共有するアプリケーションシステムの要求仕様、コンソーシアムメンバとしてのベンダーの提供するアプリケーションモジュール分割仕様、およびその実装対象アクティビティーモデルとして共有し、コンソーシアムが関わる製造産業用ソフトウエアユニットの効率的な運用のために策定し運用する。
【０００７】
この方式では、ソフトウエアユニット、または要求の詳細仕様をモデルとして明確に表すことができ効率は良いが、アプリケーションソフトウエアのアーキテクチャー（全体アクティビティーの詳細仕様、そのモジュール分割、モジュール構造）が一義的に定まってしまい、ユーザの要求する最適機能システムを自由に組み合わせ構築することができないなど問題がある。また、ベンダー側としても自らのビジネス戦略に応じて自由に当該分野のアプリケーションを構築する自由度を欠いている。このような特徴を有する登録検索方式をアプリケーション意味モデル依存名称登録検索方式と名付ける。
【０００８】
さらに両方式を通じて、ＩＳＯ１６１００−Ｐａｒｔ２−２００４で規定する製造産業用プロファイルテンプレートを利用してテンプレートの規定する属性にインスタンス値を代入してなるプロファイルとして表現することにより、要求仕様対応で実装された製造産業用ソフトウエアユニットの検索の効率化を達成する方式がある。しかし、ＩＳＯ１６１００―２００４で規定するテンプレートにおいては、ソフトウエアユニットの機能の意味づけは、前述ＡＳＡＭ−ＣＥＡグループが採用する、既存の問題領域を対応のプロセスアクティビティーモデル図と、それを嵌め絵のピースの部分組み合わせからなるユニット対応の部分モデルとしその名称で管理するとされて居り、その登録検索方式は前述アプリケーションモデル依存名称登録検索方式であり、製造用ソフトウエアユニットの具現化している対象プロセス、その実現アクティビティーの実行内容の理解は、嵌め絵方式に準拠しており、したがって人が嵌め絵の一部としてのモデル図を見て判断するしかなく、コンピュータによるアクティビティーモデルの意味理解に基づく検索は出来ない。
【０００９】
意味モデルレス恣意的検索登録方式においてはアプリケーションのプロセスの実行内容は直接的に規定されてはおらず、たとえば既存の提案書、仕様書、設計書などの総体がアプリケーションプロセスの実行内容のセマンティックスを総体として形成し（たとえば、特許文献１参照）、または、より積極的には、利用形態、適用分野、利用情報リポジトリー、など不特定多数の属性値を考案してその総体としてアプリケーションプロセスのセマンティックスを規定（たとえば、特許文献２参照）し、いずれも間接的なセマンティックスの表現となる。
【００１０】
一方、後者のアプリケーション意味モデル依存名称登録検索方式においては、アプリケーションのプロセス総体を現すモデル図をトップダウンに分解し、各ブロック要素に命名することにより、命名された名前が元のモデル図のインデックスとなる、直接的にセマンティックスの記述を回避する方式をとって居りコンピュータにての意味モデルベースの自動検索など、検索容易とする、形式的な記述は含まれて居ない。
【００１１】
すなわち、製造産業用ソフトウエアユニットの登録、検索方式としての、前述する代表的な２方式において見られるごとく、それぞれのソフトウエアユニットが実行するアプリケーションプロセスの実行内容であるアクティビティーに関するセマンティックスを直接的に且つ統一した形式で規定し、ソフトウエアユニットの登録および検索を効率良く行うことができる技術は未だ確立されていないのが現状である。
【００１２】
ソフトウエアユニットの登録、検索方式として求められているのは、上述した意味モデルレス恣意的検索登録方式とアプリケーション意味モデル依存名称登録検索方式を超える登録検索方式として、それぞれのソフトウエアユニットが実行するアプリケーションプロセスの内容であるアクティビティーモデルに関するセマンティックス記述形式について、直接的に且つ統一した形式で規定し、製造産業用ソフトウエアユニットの登録および検索を効率良く行うことができる方式である。特にコンソーシアムなど、ユーザ、ベンダーのアプリケーション分野が限定される場合において、その分野、問題領域対応のドメイン概念データモデルを標準化の対象としその上で任意のアプリケーションを具現化するソフトウエアユニットを構築することを制約条件とする場合である。問題領域対応のドメイン概念データモデルとは、その問題領域対応のアプリケーションモデルから、複数のアクティビティーを抽象した（アクティビティーがアクセスの対象とする）標準と目されるデータ、データ構造とそのデータに対する操作、操作へのインターフェースをまとめてオブジェクトとし、それらオブジェクトとオブジェクト間の関連を含めた集合である。ドメイン概念データモデルは自ずからドメイン問題対応のビジネスオブジェクトの意味、内容をモデルとしてほとんど余すところなく提示しているから、そのドメインの問題領域に関するオブジェクトのセマンティックスをほとんど余すところなく厳密に定義していると言える。求められている登録検索方式としては、ソフトウエアベンダーは構築した製造産業用ソフトウエアユニットに関し、それが具現化しているアクティビティーの意味を、関連するドメイン概念データモデルを元に、形式的に効率的に登録でき、また、製造産業用ソフトウエアユニットのユーザは、新たなアプリケーションの構築に際し、要求するアプリケーションの機能要求を、具現化するアクティビティーが関与するであろう概念データモデルと、そのドメインの共通セマンティックスとしての概念データモデルの要素データ集合を元に形式的に記述でき、ベンダーにより登録されている既存のソフトウエアユニットを効率的に検索することを可能とする技術である。
【００１３】
本発明は、かかる問題点を解決するためになされたものであり、既存の製造産業用ソフトウエアユニットのプロセスとそれを具現化するアクティビティーのセマンティックスを、直接的に表現され且つ統一された形式で効率的に登録し、また効率的に検索することが可能な製造産業用ソフトウエアユニットの検索装置および検索方法を得ることを目的とする。
【課題を解決するための手段】
【００１４】
この発明は、セマンティックスとして特定分野のドメイン概念データモデルを共有し、前記ドメイン概念データモデルのモデル要素を使用して、実装仕様形式のソフトウエアユニットプロファイルおよび同プロパティとして記述された、製造産業用ソフトウエアユニットまたは検索対象となる要求仕様を入力する入力手段と、前記入力された製造産業用ソフトウエアユニットのソフトウエアユニットプロファイルおよび同プロパティを記憶する記憶手段と、前記記憶手段の中から前記要求仕様に合致する製造産業用ソフトウエアユニットを検索して抽出する検索手段と、前記検索手段における検索結果を外部に出力する出力手段とを備えることを特徴とする製造産業用ソフトウエアユニットの検索装置である。
【発明の効果】
【００１５】
この発明は、セマンティックスとして特定分野のドメイン概念データモデルを共有し、前記ドメイン概念データモデルのモデル要素を使用して、実装仕様形式のソフトウエアユニットプロファイルおよび同プロパティとして記述された、製造産業用ソフトウエアユニットまたは検索対象となる要求仕様を入力する入力手段と、前記入力された製造産業用ソフトウエアユニットのソフトウエアユニットプロファイルおよび同プロパティを記憶する記憶手段と、前記記憶手段の中から前記要求仕様に合致する製造産業用ソフトウエアユニットを検索して抽出する検索手段と、前記検索手段における検索結果を外部に出力する出力手段とを備えることを特徴とする製造産業用ソフトウエアユニットの検索装置であるので、既存の製造産業用ソフトウエアユニットのプロセスとそれを具現化するアクティビティーのセマンティックスを、直接的に表現され且つ統一された形式で効率的に登録し、また効率的に検索することができる。
【発明を実施するための最良の形態】
【００１６】
実施の形態１．
本発明は、既存のソフトウエアユニットについて、ＩＳＯ１６１００−Ｐ２で規定するプロファイルテンプレートに基づいて記述された製造産業用ソフトウエアユニットプロファイルおよび同ソフトウエアユニットが具現化しているアクティビティーがアクセスするドメイン概念データモデルの要素データのセットと、同アクセスにおける振る舞いを元に、そのソフトウエアユニットのプロセスとその具現化アクティビティーの振る舞いセマンティックスとして形式的に記述されるソフトウエアユニットプロパティからなる既存製造産業用ソフトウエアユニットプロファイルと、上記に対応し要求仕様対応の求める製造産業用ソフトウエアユニットに関しＩＳＯ１６１００−Ｐ２規定に基づき記述されたプロファイルと要求するプロセスとその具現化アクティビティーがアクセスするであろうドメイン概念データモデルの要素データセットとそのアクセスにおける振る舞いを元に形式的に記述された要求ソフトウエアユニットプロパティを入力する入力手段と、入力された既存製造産業用ソフトウエアユニットのソフトウエアユニットプロファイルと同ソフトウエアユニットプロパティを記憶する記憶手段と、記憶手段の中から要求仕様に合致する製造産業用ソフトウエアユニットを検索して抽出する検索手段と、検索手段における検索結果を外部に出力する出力手段と、を備えることを特徴とする。
【００１７】
本発明は、製造産業用ソフトウエアユニットのプロファイルをＩＳＯ１６１００−Ｐ２の規定するユニットプロファイリングテンプレートを用いて作成されたプロファイルに加えて、同ソフトウエアユニットの実現アクティビティーの機能内容を表記するプロパティ（以下機能プロパティとよぶ）として、対象ドメイン概念データモデル要素、または本アクティビティー内に入れ子となって下位のアクティビティーとしてアクセスされる製造産業用ソフトウエアユニットへのアクセス内容により形式的に表記し作成されたプロパティを設ける。本発明においては、このプロパティ記述を追加することにより、既存の製造産業用ソフトウエアユニットのプロセスとその具現化アクティビティーのセマンティックスを、ドメイン共通のセマンティックスとしてのドメイン概念データモデルにより直接的に表現され且つ統一された形式で効率的に登録し、また効率的に検索することが可能であり、新たな製造産業用ソフトウエアユニットの開発効率を向上させることができる、という効果を奏する。以下、このようにして記載されるプロパティ記述を含む、前記ＩＳＯ１６１００−Ｐ２テンプレート形式で書かれたプロファイルを、製造産業用ソフトウエアユニットプロファイル＋と記し、単にＩＳＯ１６１００−Ｐ２テンプレート形式で書かれたプロファイルと区別する。また同製造産業用ソフトウエアユニットプロファイル＋としては、既存と要求の二種類が存在する。
【００１８】
以下に、本発明にかかる製造産業用ソフトウエアユニット（以下ソフトウエアユニットと略記）の検索装置および検索方法の実施の形態を図面に基づいて詳細に説明する。なお、本発明は以下の記述に限定されるものではなく、本発明の要旨を逸脱しない範囲において適宜変更可能である。
【００１９】
図１は、本発明の実施の形態１にかかるソフトウエアユニットの検索装置（以下、単に検索装置と呼ぶ）の構成例を示すブロック図である。図１に示すように、本実施の形態にかかる検索装置１は、入力部１１と、登録部１３と、検索部１５と、データベース１７と、概念データモデルスキーマ管理部１９と、出力部２１と、を備えて構成される。
【００２０】
ここで、入力部１１は、データベース１７への登録対象でありソフトウエアユニット（またはソフトウエア部品）が実機対応の実装仕様として記述された既存ソフトウエアユニットプロファイル＋を検索装置１に入力するための入力処理を行う手段である。また、入力部１１は、所望の実行機能（アクティビティー）を有するソフトウエアユニットを、データベース１７に登録されている既存ソフトウエアユニットプロファイル＋から検索する際に、所望の実行機能（アクティビティー）を有するソフトウエアユニットの要求仕様としての要求ソフトウエアプロファイル＋を入力するための手段である。
【００２１】
登録部１３は、入力部１１により入力されたデータベース１７への登録対象であるソフトウエアユニットプロファイル＋をデータベース１７へ登録する登録処理を行う手段である。登録部１３では、登録対象が所定の形式で記述されているか否かを確認する機能を備えても良い。このような機能を備えることにより、所定の形式で記述されている所望のソフトウエアユニットプロファイル＋のみを確実にデータベース１７へ登録することができ、検索効率を向上させることができる。また、登録対象が所定の形式で記述されていない場合には、登録対象が所定の形式で記述されていない旨の情報を出力部２１に対して送信することができる。
【００２２】
検索部１５は、入力部１１により入力された要求仕様を基に、該要求仕様としてのソフトウエアユニットプロファイル＋に合致するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されているか否かを検索する検索処理を行う手段である。そして、該当するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されている場合には、該当するデータを出力部２１に送信する。また、該当するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されていない場合には、該当するデータが存在しない旨の情報を概念データモデルスキーマ管理部１９に送信する。
【００２３】
データベース１７は、入力部１１により入力され、登録部１３において登録処理が行われたソフトウエアユニットプロファイル＋を記憶する記憶手段である。
【００２４】
概念データモデルスキーマ管理部１９は、要求仕様に該当するソフトウエアユニット（またはソフトウエア部品）のプロファイル＋記述内に、新たな概念データモデル要素、または新たな入れ子となる中位（下位）のソフトウエアユニットがその記述に含まれている場合に、新たに該当するデータを登録すべき旨の情報を出力部２１に送信する。
また、概念データモデルスキーマ管理部１９は、要求仕様に該当するソフトウエアユニット（またはソフトウエア部品）のプロパティ記述内において、新たなドメイン概念データモデル要素の組合せ、または新たなドメイン概念データモデル要素の順番がその記述に含まれている場合も、新たに該当するデータを登録すべき旨の情報を出力部２１に送信する。
【００２５】
出力部２１は、検索部１５より送信された検索結果を外部に出力する手段であり、たとえば、該出力部２１に接続される表示装置や印刷装置等に検索結果を出力する。表示装置や印刷装置では、出力された検索結果を表示し、または印刷する。これにより、ユーザは、検索結果を確認することができる。
【００２６】
また、出力部２１は、登録対象が所定の形式で記述されていない旨の情報を登録部１３より受信した場合には、その旨の情報を該出力部２１に接続される表示装置や印刷装置等（図示せず）に出力することができる。表示装置や印刷装置では、出力された情報を表示し、または印刷する。これにより、ユーザは、登録対象が所定の形式で記述されていない旨の情報を得ることができる。
【００２７】
さらに、出力部２１は、概念データモデルスキーマ管理部１９より送信された新たにデータを登録すべき旨の情報を受信した場合には、その旨の情報を該出力部２１に接続される表示装置や印刷装置等に出力することができる。表示装置や印刷装置では、出力された情報を表示し、または印刷する。これにより、ユーザは、新たにデータ登録の必要性を認識することができる。
【００２８】
つぎに、上記のように構成された本実施の形態にかかる検索装置１を用いた製造産業用ソフトウエアユニットの検索方法について説明する。図２−１は、ドメイン概念データモデルを獲得するフローを説明するためのフローチャートである。図２−２は、既存のソフトウエアユニットを本実施の形態にかかる検索装置１に登録するフローを説明するためのフローチャートである。図２−３は、本実施の形態にかかる検索装置１における検索工程を説明するためのフローチャートである。
【００２９】
まず、対象とする問題領域対応の共通セマンティックスとなるドメイン概念データモデルを獲得する。ここで、本実施の形態にかかる検索装置１に登録されるソフトウエアユニットは、ソフトウエアユニットプロファイルを記述するためのＩＳＯ１６１００−Ｐ２で規定するユニットプロファイルスキーマ（テンプレート）に基づき記述されるものとする。さらに、ソフトウエアユニットは、その実装対象仕様としてのアクティビティーを用いてプロパティ記述されており、プロパティはアクティビティーがアクセスする所定のドメイン概念データモデル要素、または本ソフトウエアユニット内に入れ子となって実装されている中位（下位）のアクティビティーを用いて記述されている。これにより、既存のアプリケーションソフトウエアユニットのプロセスとその具現化アクティビティーのセマンティックスを、特別の管理のための名称などによる間接的な方式に比べ、直接的に表現され且つ統一された形式で効率的に登録し、検索することが可能となる。
【００３０】
ドメイン概念データモデルの獲得方法を図２−１のフローチャートを用いて説明する。まず、任意のドメインアプリケーションシステムを選定する（ステップＳ１０１）。
つぎに、選定したドメインアプリケーションシステムにおける典型的なユースケース分析を行い（ステップＳ１０２）、これを基にして、特定の製造ドメインにおいて製造アクティビティ間で交換される製造情報や製造リソースを抽象化したドメイン概念データモデル要素とその要素間の関係を推測して、ドメイン概念データモデルの仮説を設計する（ステップＳ１０３）。このとき、たとえば、過去の経験や、対象ドメイン対応の関連国際標準で定められたモデル、ターミノロジーなどを所与の制約として採用することを考慮する。
つぎに、選定したドメインアプリケーションシステムにおける具体的なユースケース分析を行い、図５に示すようなドメインユースケース図を作成する（ステップＳ１０４）。なお、ユースケース分析およびドメインユースケース図の作成は、既存のＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）を用いて行うことができるため、ここでは詳細な説明は省略する。
つぎに、作成したドメインユースケース図を基に、ステップＳ１０３で立てたドメイン概念モデルの仮説を検証し（ステップＳ１０５）、ドメインアプリケーションシステムの実行内容として考え得る全体を網羅できているか否かを判断する（ステップＳ１０６）。ここで、全体を網羅できていないと判断される場合は（ステップＳ１０６否定）、ドメイン概念モデルの仮説を修正し（ステップ１０７）、ステップＳ１０４に戻り、ユースケース分析を十分に繰り返す。また、全体を網羅できている場合には（ステップＳ１０６肯定）、設計したドメイン概念データモデルが確定され、検索装置１に対して登録する、ドメインアプリケーションシステムのドメイン概念データモデルが獲得される（ステップＳ１０８）。
【００３１】
図６−１に、獲得したドメイン概念データモデル図の一例を示す。ここで獲得されたドメイン概念データモデルは、問題領域に存在する抽象化されたデータ型（オブジェクト名、オペレーション型、インターフェース型、変数タイプなど）とその間の関連（リレーション）の集合である。概念データモデルまたはドメイン概念データモデル内に矩形で機能クラスとして記されているもののそれぞれがドメイン概念データモデル要素となる。
【００３２】
なお、上記のドメイン概念データモデル図は、既存のＵＭＬ（Ｕｎｉｆｉｅｄ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）を用いて行うことができるため、ここでは詳細な説明は省略する。
【００３３】
本実施の形態においては、製造形態の一実態として、図３に示すように置き場１０１と、治工具１０３と、搬送装置１０５と、作業者１０７と、作業装置Ａ１０９と、作業装置Ｂ１１１と、作業装置Ｃ１１３と、作業装置Ｄ１１５と、を備える生産システムを制御するソフトウエアユニットを例に説明する。
【００３４】
このような生産システムの製造産業用ソフトウエアユニットプロパティは、図４に示すように実装仕様対応のアクティビティー（モデル）を用いて記述される。ここで、たとえば、このソフトウエアユニットプロパティは、図４に示すように木構造で現されるアクティビティー構成の最上位のアクティビティーとして、アクティビティーＡ１「製造する」、アクティビティーＡ２「小日程計画を立てる」、アクティビティーＡ３「たな卸しをする」、アクティビティーＡ４「保全する」、等を用いて記述することができる。
【００３５】
そして、この上位のアクティビティーは、細分展開した中位のアクティビティーの集合により記述することができる。たとえば、上位のアクティビティーであるアクティビティーＡ１「製造する」は、図４に示すように細分展開した中位のアクティビティーであるアクティビティーＡ１１「作業指示を受ける」、アクティビティーＡ１２「作業実施を指示する」、アクティビティーＡ１３「作業結果を報告する」、等を用いてこれらの集合として記述することができる。
【００３６】
さらに、この中位のアクティビティーは、細分展開した下位のアクティビティーの集合により記述することができる。たとえば、中位のアクティビティーであるアクティビティーＡ１２「作業実施を指示する」は、図４に示すように細分展開した下位のアクティビティーであるアクティビティーＡ１１１「前段取りする」、アクティビティーＡ１１２「作業する」、アクティビティーＡ１１３「実績を報告する」、アクティビティーＡ１１４「後段取りをする」、等を用いてこれらの集合として記述することができる。
【００３７】
そして、このように問題領域の共通ドメイン概念データモデルにより、上述した生産システムのソフトウエアユニットのソフトウエアユニットプロパティは、図７−１に示すように下位のアクティビティーはドメイン概念データモデル要素を用いて、同要素の集合で記述することができる。
【００３８】
たとえば、下位のアクティビティーであるアクティビティーＡ１１１「前段取りする」は、さらに細分展開されたドメイン概念データモデル要素である要素Ｍ１０「治工具」、Ｍ６「現品」、Ｍ１１「装置」、Ｍ７「置き場」、Ｍ１２「作業者」、Ｍ８「作業方法」、Ｍ１３「物流」および要素Ｍ３「作業指示」を用いて、これらの集合として記述することができる。同様に、アクティビティーＡ１１２「作業する」は、ドメイン概念データモデル要素Ｍ６「現品」、Ｍ１０「治工具」、Ｍ１２「作業者」、Ｍ３「作業指示」、Ｍ１１「装置」および要素Ｍ５「運転状況」を用いて、これらの集合として記述することができる。同様に、アクティビティーＡ１１３「実績を報告する」は、ドメイン概念データモデル要素Ｍ６「現品」、Ｍ１１「装置」および要素、Ｍ１２「作業者」を用いて記述することができる。そして、アクティビティーＡ１１４「後段取りをする」は、ドメイン概念データモデル要素Ｍ１０「治工具」、Ｍ８「作業方法」、Ｍ１１「装置」、Ｍ１２「作業者」および要素Ｍ１３「物流」を用いて、これらの集合として記述することができる。
【００３９】
あるいは、図７−２に示すように、たとえば、下位のアクティビティーであるアクティビティーＡ１１１「前段取りする」は、さらに細分展開されたドメイン概念データモデル要素である要素Ｍ１０「治工具」、Ｍ６「現品」、Ｍ１１「装置」、Ｍ７「置き場」、Ｍ１２「オペレーション」、Ｍ８「作業方法」、Ｍ１３「物流」および要素Ｍ３「作業指示」を用いて、これらの集合として記述することができる。同様に、アクティビティーＡ１１２「作業する」は、ドメイン概念データモデル要素Ｍ６「現品」、Ｍ１０「治工具」、Ｍ１２「オペレーション」、Ｍ３「作業指示」、Ｍ１１「装置」および要素Ｍ５「運転状況」を用いて、これらの集合として記述することができる。同様に、アクティビティーＡ１１３「実績を報告する」は、ドメイン概念データモデル要素Ｍ６「現品」、Ｍ１１「装置」および要素、Ｍ１２「オペレーション」を用いて記述することができる。そして、アクティビティーＡ１１４「後段取りをする」は、ドメイン概念データモデル要素Ｍ１０「治工具」、Ｍ８「作業方法」、Ｍ１１「装置」、Ｍ１２「オペレーション」および要素Ｍ１３「物流」を用いて、これらの集合として記述することができる。
【００４０】
また、アクティビティーは、たとえば上位のアクティビティーは中位のアクティビティーとドメイン概念データモデル要素とを用いて、中位のアクティビティーとドメイン概念データモデル要素との集合として記述することも可能である。たとえば、上位のアクティビティーであるアクティビティーＡ２「小日程計画を立てる」は、図８に示すように細分展開した中位のアクティビティーであるアクティビティーＡ２１「工程を確認する」と、ドメイン概念データモデル要素Ｍ５「運転状況」と、を用いて、これらの集合として記述することも可能である。
【００４１】
さらに、アクティビティーは、たとえばドメイン概念データモデル要素のみを用いて、ドメイン概念データモデル要素の集合として記述することも可能である。たとえば、上位のアクティビティーであるアクティビティーＡ３「たな卸しをする」は、図８に示すようにドメイン概念データモデル要素Ｍ６「現品」、Ｍ１２「作業者」を用いて、これらの集合として記述することができる。
【００４２】
そして、アクティビティーは、ドメイン概念データモデル要素をＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などによるタグ記述言語を用いて、ドメイン概念データモデル要素をＸＭＬスキーマ記述として参照記述して、プロパティ記述することができる。すなわち、アクティビティーをドメイン概念データモデル要素の羅列として記述することができる。たとえば、図７−１に示した下位のアクティビティーであるアクティビティーＡ１１１「前段取りする」は、ＸＭＬに基づいて図９に示すようにドメイン概念データモデル要素を用いたプロパティ記述をすることができる。
【００４３】
ここで、図９に示すアクティビティーＡ１１１「前段取りする」のプロパティ記述においては、ドメイン概念データモデル要素の順番が指定されている。これにより、作業順序によりアクティビティーの特徴付けを行うことができる。なお、図９においては、大括弧｛  ｝はたとえばマシン対応単位であり、中括弧｛  ｝は工程単位であり、小括弧（  ）は引数が入ることを表している。
【００４４】
図１０は、アクティビティーＡ１１１「前段取りする」のアクション系列でもってプロパティ記述の方法を説明する図である。この場合は、まず図１０に示すように第１のアクションはドメイン概念データモデル要素Ｍ３「作業指示」を参照する（ステップＳ２０１）。つぎに、第２のアクションはドメイン概念データモデル要素Ｍ８「作業方法」を参照する（ステップＳ２０２）。つぎに、第３のアクションはドメイン概念データモデル要素Ｍ６「現品」、Ｍ１０「治工具」、Ｍ１４「搬送」を参照する（ステップＳ２０３）。
【００４５】
つぎに、第４のアクションはドメイン概念データモデル要素Ｍ１５「作業」を参照する（ステップＳ２０４）。つぎに、第５のアクションはドメイン概念データモデル要素Ｍ１４「搬送」を参照する（ステップＳ２０５）。ここで、所定の個数のワークが搬送されたか否かの確認が入り（ステップＳ２０６）、所定の個数のワークが搬送された場合には（ステップＳ２０６肯定）、第６のプアクションはドメイン概念データモデル要素Ｍ１０「治工具」を参照する（ステップＳ２０７）。
【００４６】
ここで、上記の工程が全てのマシンに対して終了したか否かの確認が入り（ステップＳ２０８）、上記の工程が全てのマシンに対して終了した場合には（ステップＳ２０８肯定）、アクティビティーＡ１１１「前段取りする」のアクション系列が終了となる。
【００４７】
ステップＳ２０６に戻って、所定の個数のワークが搬送されていない場合には（ステップＳ２０６否定）、ステップＳ２０１に戻る。
【００４８】
また、Ｓ２０８に戻って、上記の工程が全てのマシンに対して終了していない場合には（ステップＳ２０８否定）、ステップＳ２０１に戻る。
【００４９】
以上のフローに基づいて、図９に示したようなアクティビティーＡ１１１「前段取りする」のプロパティ記述を行うことができる。
【００５０】
つぎに、図２−２のフローチャートを用いて既存のソフトウエアユニットの登録工程について説明する。まず、構築された既存のソフトウエアユニットのプロファイル＋を作成する（ステップＳ１１１）。すなわち、図２−４に示すように、構築された既存のソフトウエアユニットを定義するためのＩＳＯ１６１００で規定されたユニットプロファイルスキーマ（テンプレート）５０を利用して、テンプレートの規定する属性に、対象となるソフトウエアユニットの製造ベンダー名、ソフトウエアのバージョン番号、テンプレートの識別番号などの値を代入することでプロファイル記述５１をする。このとき、ソフトウエアユニットの実行内容を、対象ドメイン概念データモデルへのアクセス内容により形式的に表記する方式で動作プロパティ記述５２としてそのプロファイルに付加する。図２−５は、それをプロファイリングした例である。
【００５１】
したがって、ここでは、ソフトウエアユニットのプロファイルおよび同プロパティを作成する。これにより、登録対象であるソフトウエアユニットを、実装仕様形式で記述されたソフトウエアユニットプロファイルおよび同プロパティを用いて記述することができる。
【００５２】
つぎに、入力部１１により登録仕様の入力を行う（ステップＳ１１２）。すなわち、登録対象であるソフトウエアユニットのプロファイル＋を入力する。そして、入力部１１により入力されたソフトウエアユニットプロファイル＋をデータベース１７へ登録する登録処理が登録部１３において行われる（ステップＳ１１３）。ここで、登録部１３では、登録対象が所定の形式で記述されているか否かを確認した後に登録処理を行う。また、ソフトウエアユニットプロファイル＋が所定の形式で記述されていない場合には、その旨の情報を出力部２１に対して送信する。出力部２１では、該情報を受信した場合には、その旨の情報を該出力部２１に接続される表示装置や印刷装置等に出力する。表示装置や印刷装置では、出力された情報を表示し、または印刷する。以上により、ソフトウエアユニットプロファイル＋のデータベース１７への登録が終了する。
【００５３】
つぎに、所望の実行機能（アクティビティー）を有するソフトウエアをデータベース１７に登録された既存のソフトウエア部品から検索する工程について説明する。ソフトウエアの検索が行われる場合には、入力部１１を介して所望の実行機能（アクティビティー）の要求仕様の入力が必要となる。
【００５４】
ここで、要求仕様は、データベース１７へ登録されたソフトウエアユニットプロファイル＋と同様に、ドメイン概念データモデルを用いて記述される。これにより、要求仕様のプロセスセマンティックスを、直接的に表現され且つ統一された形式で入力することが可能である。これにより、データベース１７へ登録されたソフトウエアユニットと、要求仕様と、が同一の形式で記述されるため、これらの照合をスムーズに行うことができ、検索をスムーズ且つ確実に行うことができる。
【００５５】
また、要求仕様もたとえばＸＭＬなどによるタグ記述言語を用いて、ドメイン概念データモデル要素をＸＭＬスキーマ記述として参照記述して、プロパティ記述することができる。これにより、データベース１７へ登録されたソフトウエアユニットプロファイルと、要求仕様とを、同一の形式で記述できるため、検索をスムーズ且つ確実に行うことができる。
【００５６】
また、要求仕様を作成するには、図２−３に示すように、まず所望の実行機能（アクティビティー）を有する検索対象ソフトウエアユニットの概要を決定する（ステップＳ１２１）。つぎに、これをユースケース分析し（ステップＳ１２２）、要求仕様のアクティビティーモデルを獲得する（ステップＳ１２３）。さらにそのアクティビティーがアクセスするドメイン概念データモデル要素を用いて対応プロパティ記述を得、ＩＳＯ１６１００−Ｐ２で規定するテンプレートによるプロファイル記述を得（詳述しない）、合わせてソフトウエアユニット要求プロファイル＋を作成する（ステップＳ１２４）。これにより、要求仕様を、直接的に表現され且つ統一された形式で得ることができる。また、ソフトウエアユニット要求プロパティをドメイン概念データモデル要素を用いて記述する際には、先に図６−１に示したようにドメイン概念データモデル要素の順番を指定することにより作業順序で要求仕様を特徴付けることができる。また、順序を指定しない場合は、後の検索工程において、指定したドメイン概念データモデル要素を含む全てのソフトウエアユニットをピックアップすることが可能である。
【００５７】
そして、以上のようにして得られた要求仕様が入力部１１を介して入力される（ステップＳ１２５）。入力された要求仕様は検索部１５に送信され、検索部１５では要求仕様を受信し、該要求仕様を基に、該要求仕様に合致するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されているか否かの検索を行う（ステップＳ１２６）。
【００５８】
ここで、検索部１５は、要求仕様に該当するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されている場合には、該当するデータをピックアップして出力部２１に出力する（ステップＳ１２７）。このとき、要求仕様に完全に合致するソフトウエアユニット（またはソフトウエア部品）だけではなく、要求仕様の１部のみに該当するソフトウエアユニット（またはソフトウエア部品）もピックアップして該当するデータをピックアップして出力部２１に出力することができる。
【００５９】
出力部２１では、該出力部２１に接続される表示装置や印刷装置等に出力する。表示装置や印刷装置では、出力されたデータを表示し、または印刷する。これにより、ユーザは、所望の検索結果を得ることができる。そして、ユーザは検索結果が要求仕様を満たしているか否かを確認し（ステップＳ１２８）、検索結果が要求仕様を満たしている場合は（ステップＳ１２８肯定）、その結果を利用してソフトウエアユニットの開発を行うことができる。また、検索結果が要求仕様を満たしていない場合は（ステップＳ１２８否定）、ステップＳ１２１に戻り、その結果を反映させて検索対象ソフトウエアユニットの概要を再検討することができる。
【００６０】
また、該当するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されていない場合には、検索部１５は該当する種々のデータが存在しない旨の情報を概念データモデルスキーマ管理部１９に送信する。概念データモデルスキーマ管理部１９では、要求仕様に該当するソフトウエアユニット（またはソフトウエア部品）がデータベース１７に登録されていない旨の情報を検索部１５より受信した場合に、要求仕様に合致するデータ、すなわち概念データモデル要素、および所定の中位（下位）ソフトウエアユニットが具現化するアクティビティーなどがデータベース１７に存在しないため、新たに該当するデータを登録すべき旨の情報を出力部２１に送信する。
【００６１】
出力部２１は、概念データモデルスキーマ管理部１９より送信された新たにデータを登録すべき旨の情報を受信した場合には、その旨の情報を該出力部２１に接続される表示装置や印刷装置等に出力する。表示装置や印刷装置では、出力された情報を表示し、または印刷する。これにより、ユーザは、新たにデータ登録の必要性を認識することができる。
【００６２】
なお、検索部１５は、異なる記述形式で記述されたスキーマ間の変換を行う翻訳テーブルを備えても良い。このような翻訳テーブルを備えることで、検索部１５では図１１に示すように通常と異なる記述形式で記述された要求アクティビティープロファイルおよび同プロパティ２０１が入力された場合においても、該翻訳テーブル２０２を参照して記述形式を通常のドメイン概念データモデルに変換することができ、変換した要求アクティビティープロファイルに基づいてデータベース１７の検索を行うことが可能となるため、検索の自由度を大きくすることが可能である。
【００６３】
翻訳テーブルの例を図１２に示す。この翻訳テーブルの記述内容は、図６−１に示す概念データモデルの記述内容が図６−２に示す例のごとく、その記述形式が異なるもの間の相互変換を表しているものである。すなわち、図６−１の例におけるモデル要素の「置き場」は「ストックヤード」に、「設備」は「ワークユニット」に、「作業者」は「オペレーション」とそれを抽象クラスとする、「オペレータ」と「作業方法」に、さらに「装置」はそれを抽象クラスとする「加工機械」と「搬送装置」に置き換えられている。図１２に示す翻訳テーブルはその相互変換を可能とする変換テーブルの例である。
【００６４】
以上のような本実施の形態にかかる検索装置１によれば、既存のソフトウエアユニットの登録において、ソフトウエアユニットを定義するためのユニットスキーマを、実装仕様形式で記述されたソフトウエアユニットプロファイルを用いて記述する。すなわち、ソフトウエアユニットを実装仕様形式で記述されたソフトウエアユニットプロファイルを用いて記述することができる。また、検索を行う際の要求もこれと同じ形式により記述することができる。これにより、既存のアプリケーションソフトウエアユニットのプロセスセマンティックスを、直接的に表現され且つ統一された形式で効率的に登録し、また登録されたアプリケーションソフトウエアユニットを効率的に検索することが可能である、という効果を奏する。
【産業上の利用可能性】
【００６５】
以上のように、本発明にかかる製造産業用ソフトウエアユニットの検索装置は、製造産業用ソフトウエアユニットの開発において、新規に開発するソフトウエア部品の数を削減して開発の効率を向上させるために既存のソフトウエア部品を利用する場合に有用であり、特に、フレキシブル生産システム等の大型システムの制御を行う製造産業用ソフトウエアユニットの開発を行う場合の検索に適している。
【図面の簡単な説明】
【００６６】
【図１】本発明の実施の形態１にかかる製造産業用ソフトウエアユニットプロファイル＋の登録／検索装置の構成を示すブロック図である。
【図２−１】本発明の実施の形態１にかかる検索装置が前提とする特定ドメイン対応概念データモデルを説明するため、その一般的な獲得フローを説明するためのフローチャートである。
【図２−２】ドメイン概念データモデル上で企画、設計製造されたソフトウエアユニットプロファイル＋の登録のフローを説明するためのフローチャートである。
【図２−３】新たな製造産業用ソフトウエアユニットの企画設計における、既存製造産業用ソフトウエアユニットの検索のフローを説明するためのフローチャートである。
【図２−４】ユニットプロファイルスキーマの一例を示した説明図である。
【図２−５】プロファイリングされたユニットプロファイルスキーマの一例を示した説明図である。
【図３】製造産業用ソフトウエアユニットが制御する製造形態の一実態を示すブロック図である。
【図４】特定の生産システムの製造産業用ソフトウエアユニットのソフトウエアユニットプロファイル＋を記述する実装されたアクティビティー集合を示す図であり、各アクティビティー、すなわち各ソフトウエアユニットの集合内の位置づけ、相互の依存関係をしめす木構造よりなるアクティビティーストラクチャ図である。尚、本特定生産システムは、後述する図５、図６で例示される特定ドメインのユースケース、およびドメイン概念データモデル上に構築されている。
【図５】ドメイン対応アプリケーションのユースケース図の部分を一例として示す図である。
【図６−１】図５のユースケース（但し部分のみ）より獲得されたドメイン概念データモデルを示す図である。
【図６−２】図６−１に示すドメイン概念データモデルを、翻訳テーブルを参照して変換した結果を示す図である。
【図７−１】図４で示される特定生産システム対応の製造産業用ソフトウエアユニットのプロファイルを記述する実装されたアクティビティーの内特定のアクティビティーストラクチャとおよび同ストラクチャ内でのアクティビティー間のアクセス関係、および同アクティビティーからアクセスされるドメイン概念データモデル要素を示す図である。
【図７−２】図４で示される特定生産システム対応の製造産業用ソフトウエアユニットのプロファイルを記述する実装されたアクティビティーの内特定のアクティビティーストラクチャとおよび同ストラクチャ内でのアクティビティー間のアクセス関係、および同アクティビティーからアクセスされるドメイン概念データモデル要素を示す図である。
【図８】図４で示される生産システム（プロセス）を構成する各アクティビティーにおいて、他のアクティビティーのアクセスまたは概念データモデル要素のアクセスなどのアクセス形態を分類し説明する図である。
【図９】（ソフトウエアユニットが実現対象とする）アクティビティーをドメイン概念データモデルのモデル要素を用いてプロパティ記述した一例を示す図である。
【図１０】（ソフトウエアユニットが実現対象とする）アクティビティーのアクション系列と、アクション系列のそれぞれがアクセスするドメイン概念データ要素の対応と、それに基づき記述されるプロパティ記述方法を説明する図である。
【図１１】異なる記述形式で記述された要求アクティビティープロファイル＋が入力された場合の処理の流れを示す図である。
【図１２】翻訳テーブルの一例を示す図である。
【符号の説明】
【００６７】
１  検索装置、１１  入力部、１３  登録部、１５  検索部、１７  データベース、１９  概念データモデルスキーマ管理部、２１  出力部、１０１  置き場、１０３  治工具、１０５  搬送装置、１０７  作業者、１０９  作業装置Ａ、１１１  作業装置Ｂ、１１３  作業装置Ｃ、１１５  作業装置Ｄ、２０１  要求アクティビティープロファイル、２０２  翻訳テーブル。
【図１】
2008191698.tif 000003
【図２−１】
2008191698.tif 000004
【図２−２】
2008191698.tif 000005
【図２−３】
2008191698.tif 000006
【図２−４】
2008191698.tif 000007
【図２−５】
2008191698.tif 000008
【図３】
2008191698.tif 000009
【図４】
2008191698.tif 000010
【図５】
2008191698.tif 000011
【図６−１】
2008191698.tif 000012
【図６−２】
2008191698.tif 000013
【図７−１】
2008191698.tif 000014
【図７−２】
2008191698.tif 000015
【図８】
2008191698.tif 000016
【図９】
2008191698.tif 000017
【図１０】
2008191698.tif 000018
【図１１】
2008191698.tif 000019
【図１２】
2008191698.tif 000020