(57)【要約】【課題】アプリケーションからオブジェクト状態遷移の操作とオブジェクト構成管理の操作を直接行う必要をなくした業務システムのデータ操作装置を得る。【解決手段】業務アプリケーション２０と、オブジェクトの状態遷移を管理するオブジェクト状態遷移手段５及びオブジェクトの構成管理を行うオブジェクト構成管理手段６との間にデータ操作部１０を配置し、このデータ操作部１０は、オブジェクト状態遷移手段５のオブジェクトの状態を変化させるオブジェクト状態遷移操作手段３と、オブジェクト構成管理手段６のオブジェクトの構成を変化させるオブジェクト構成管理操作手段４と、オブジェクト状態遷移操作手段３及びオブジェクト構成管理操作手段４の整合性を保ちながら管理するデータ管理手段２と、業務アプリケーションの業務に特化した機能を有し、この機能とデータ管理手段のもつ機能とを対応付けるデータ管理操作手段１とを有している。【選択図】図１
2007334578.tif 000002
【特許請求の範囲】
【請求項１】
業務アプリケーションからの指示に応じて、オブジェクトの状態遷移を管理するオブジェクト状態遷移手段とオブジェクトの構成管理を行うオブジェクト構成管理手段とを共に操作するデータ操作部を備え、上記データ操作部を上記業務アプリケーションとネットワークを介して接続された計算機上に搭載したことを特徴とする業務システムのデータ操作装置。
【請求項２】
上記データ操作部は、上記オブジェクト状態遷移手段及び上記オブジェクト構成管理手段を操作する機能を有するデータ管理手段と、このデータ管理手段のもつ上記オブジェクト状態遷移手段及び上記オブジェクト構成管理手段を操作する機能を組み合わせた業務アプリケーション特化機能をもつデータ管理操作手段とを有することを特徴とする請求項１記載の業務システムのデータ操作装置。
【請求項３】
上記データ操作部は、上記オブジェクト状態遷移手段のオブジェクトの状態を変化させるオブジェクト状態遷移操作手段と、上記オブジェクト構成管理手段のオブジェクトの構成を変化させるオブジェクト構成管理操作手段と、上記オブジェクト状態遷移操作手段及び上記オブジェクト構成管理操作手段を整合性を保つように管理する機能を有するデータ管理手段と、このデータ管理手段のもつ上記オブジェクト状態遷移手段及び上記オブジェクト構成管理手段を操作する機能を組み合わせた業務アプリケーション特化機能をもつデータ管理操作手段とを有することを特徴とする請求項１記載の業務システムのデータ操作装置。
【請求項４】
上記データ管理手段は、業務アプリケーションに上記オブジェクト状態遷移手段が管理する状態名のみを指定させることにより、上記オブジェクト状態遷移手段への指示を行うようにしたことを特徴とする請求項２または請求項３記載の業務システムのデータ操作装置。
【請求項５】
上記オブジェクト構成管理手段は、１オブジェクトが複数の親オブジェクトをもつような親子関係を管理することを特徴とする請求項１〜請求項４のいずれかに記載の業務システムのデータ操作装置。
【請求項６】
業務アプリケーションとネットワークを介して接続された計算機上に搭載されたデータ操作部により、上記業務アプリケーションからの指示に応じて、オブジェクトの状態遷移を管理するオブジェクト状態遷移手段とオブジェクトの構成管理を行うオブジェクト構成管理手段とを共に操作するようにしたことを特徴とする業務システムのデータ操作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、オブジェクトの構成管理と状態管理を同時に実施する業務システムのデータ操作装置及び業務システムのデータ操作方法に関するものである。
なお、この発明で用いるオブジェクトは、業務システムで使用されるデータの総称である。すなわち、オブジェクトは、業務システムが資材業務システムであれば、伝票であり、工程管理システムであれば、工程内の各タスクであるように、業務データそのものを抽象化した概念である。
【背景技術】
【０００２】
従来の資材業務システムでは、契約業務に使用される伝票データの構成管理を行い、且つ伝票データの状態を管理する必要があった。
例として契約業務を考える。契約業務は、発注部門からの依頼を受けて、資材部門が物品の購入を行うためのシステムであり、発注部門から送られてくるデータは、伝票である。複数の発注部門から送られてくる伝票データを資材部門が受け付け、取引先へと見積もりを依頼し、最終的に注文を行う。
このとき、まず個々の発注部門が作成した伝票は、資材部門によって、見積もりの単位にまとめられる。見積もりには取引先毎に見積もり用の伝票が資材部門にて作成され、その伝票の明細として発注部門からの伝票が添付され、見積もりデータとなる。すべての見積もり依頼に対して回答済みの状態（見積もりが得られた状態）になると見積もりが完了することになり、結果を確認し、資材部門にて発注先が決定する。その後、発注を行うための発注伝票が作成され、内訳データとして前述の見積もり伝票が添付される。
【０００３】
【特許文献１】特開２００５−２５０８９２号公報（第５〜２１頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述の資材業務システムを生成する場合に、従来では、発注伝票の内訳として見積もり伝票を添付するという伝票の構成に関する操作と、すべての見積もり依頼に対して回答済みの状態になったならば、発注先検討の業務に移行するという状態管理の操作を、ビジネスロジックとして作成する必要があった。
このため、システム発注者からの機能変更要求やメンテナンス作業に対して、ビジネスロジックを修正する必要があり、柔軟性に欠けるものになっている。その結果、必要以上の費用が発生することや、予期しない障害を発生させる原因となっていた。
【０００５】
上述の資材管理システムは、一例であり、管理対象となるオブジェクトの状態と構成を同時に管理する要件の発生するシステムは、すべて同一の課題を持っている。
特許文献１には、従来のソフトウエア機能更新装置が示されているものの、ここでは構成管理は単一オブジェクトの更新先を管理しているのみであり、複数のオブジェクトの関係すなわち構成の管理や、オブジェクトの状態を管理するものではなかった。すなわち、上述の問題点を解決するものではなかった。
【０００６】
この発明は、上述のような課題を解決するためになされたものであり、管理対象となるオブジェクトの状態と構成を同時に管理するシステムで、アプリケーションからオブジェクト状態遷移の操作とオブジェクト構成管理の操作を直接行う必要をなくした業務システムのデータ操作装置及び業務システムのデータ操作方法を得ることを目的にしている。
【課題を解決するための手段】
【０００７】
この発明に係わる業務システムのデータ操作装置においては、業務アプリケーションからの指示に応じて、オブジェクトの状態遷移を管理するオブジェクト状態遷移手段とオブジェクトの構成管理を行うオブジェクト構成管理手段とを共に操作するデータ操作部を備えたものである。
【発明の効果】
【０００８】
この発明は、以上説明したように、業務アプリケーションからの指示に応じて、オブジェクトの状態遷移を管理するオブジェクト状態遷移手段とオブジェクトの構成管理を行うオブジェクト構成管理手段とを共に操作するデータ操作部を備えたので、業務アプリケーションからオブジェクト状態遷移手段の操作とオブジェクト構成管理手段の操作を直接行う必要をなくし、これにより業務アプリケーション中にオブジェクトの構成管理手段の操作とオブジェクト状態遷移手段の操作を含めないようにすることができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１は、この発明の実施の形態１による業務システムのデータ操作装置を示す構成図である。
図１において、業務システムのデータ操作装置を構成するデータ操作部１０は、ソフトウエアによって構成され、業務アプリケーション２０からの要求により、オブジェクトの構成と状態の操作を行う。そして、その操作データを、オブジェクトがどういう状態にあるかを管理するオブジェクト状態遷移手段５と、オブジェクトの親子関係の構成を管理するオブジェクト構成管理手段６とに渡す。
データ操作部１０は、データ管理操作手段１と、データ管理手段２と、オブジェクト状態遷移操作手段３と、オブジェクト構成管理操作手段４とにより構成される。データ管理手段２は、データベースを管理する言語であるＳＱＬ（Ｓｔｒｕｃｔｕｒｅｄ  Ｑｕｅｒｙ  Ｌａｎｇｕａｇｅ）定義７の読み書きを行うとともにデータベースへアクセスする機能である汎用ＤＡＯ（Ｄａｔａ  Ａｃｃｅｓｓ  Ｏｂｊｅｃｔ）８を有する。なお、ＳＱＬ定義７については実施の形態４で詳述する。
オブジェクト状態遷移操作手段３は、オブジェクト状態遷移手段５内のオブジェクトの状態を変化させる。オブジェクト構成管理操作手段４は、オブジェクト構成管理手段６内のオブジェクトの構成を変化させる。オブジェクトの親子関係の追加や削除などである。
【００１０】
データ管理手段２は、オブジェクト状態遷移操作手段３と、オブジェクト構成管理操作手段４とを合わせて管理し、オブジェクトの構成と状態との整合性を保ちながら、オブジェクトの構成と状態の操作を合わせて行う機能であり、汎用的な機能である。例えば、オブジェクトに子オブジェクトを追加したときは、その子オブジェクトの状態も追加する。
データ管理操作手段１は、業務アプリケーション２０により使用される機能であり、データ管理手段２の汎用的な機能を業務アプリケーション２０に特化させる機能を有する。
【００１１】
図２は、この発明の実施の形態１による業務システムのデータ操作装置の詳細を示す構成図である。
図２において、５〜８、１０、２０は図１におけるものと同一のものである。業務アプリケーション２０は、ユーザが閲覧し、操作する画面を提供するＷｅｂブラウザ２１と、Ｗｅｂブラウザ２１とネットワークにより接続され、Ｗｅｂブラウザ２１の操作（処理の依頼）を受け付けるプロセスコントローラ２２と、プロセスコントローラ２が受け付けた処理の依頼を判断して、これに応じた処理を実行するアクションクラス２３（実行する処理の単位をアクションと呼ぶ。）と、共通の処理機能を多数有し、アクションクラス２３により指示された機能を実行するビジネスロジック２４とにより構成される。
ビジネスロジック２４の機能に、データ操作部１０を使う機能があり、この機能によりデータ操作部１０が呼出される。
【００１２】
データ操作部１０によりアクセスされる業務データが格納された業務データベースＤ１と、オブジェクト状態遷移手段５によりアクセスされるオブジェクト状態が格納されたオブジェクト状態データベースＤ２と、オブジェクト構成管理手段６によりアクセスされるオブジェクトの構成が格納されたオブジェクト構成データベースＤ３とが設けられている。
なお、データ操作部１０は、パソコンなどのＣＰＵを有する計算機に搭載されたソフトウェアであり、業務データベースＤ１、オブジェクト状態データベースＤ２、オブジェクト構成データベースＤ３は、同じ計算機に内蔵された記憶装置内にあってもよく、また、別の装置内にあってもよい。また、データ操作部１０は、通信路またはネットワークを介して業務アプリケーション２０と接続されている。
【００１３】
図３は、この発明の実施の形態１による業務システムのデータ操作装置の業務データベースを示す図である。
図３において、業務データベースには、伺書業務の例として、伺番号、作成者、作成日などが格納される。
図４は、この発明の実施の形態１による業務システムのデータ操作装置の状態データベースを示す図である。
図４において、状態データベースには、オブジェクトＩＤとその状態（伝票であれば、承認待ち、承認済み、発行前などの状態であり、状態遷移順は予め定義されている。）が格納される。
なお、構成データベースの構造については、実施の形態５（図８）で詳述する。
【００１４】
次に、動作について説明する。
図１に示すようなソフトウェアを構成し、利用者に業務アプリケーション２０を操作させるだけで、データ管理操作手段１を操作させ、オブジェクト状態遷移手段５が行うオブジェクト状態遷移操作と、オブジェクト構成管理手段６が行うオブジェクト構成管理操作を、利用者がダイレクトに操作する必要を無くし、これらの操作を利用者から隠蔽することができる。
すなわち、データ管理操作手段１を介することにより、業務アプリケーション２０中に、オブジェクト状態遷移手段５が行うオブジェクト状態遷移操作と、オブジェクト構成管理手段６が行うオブジェクト構成管理操作を行うためのロジックを持たなくてもよいようにする。
システム開発者が、図２のビジネスロジック２４を作成するときに、その内部においてオブジェクトの状態遷移とオブジェクトの構成管理を行いたい場合にデータ操作部１０の機能を使用する。
【００１５】
実施の形態１によれば、オブジェクト構成管理手段とオブジェクト状態遷移手段の存在を、業務アプリケーションの利用者から隠蔽し、利用者はデータ操作部の利用方法のみを学習するだけでよく、このため、初期開発コストを低減することができる。
また、このため、例えば、オブジェクト状態遷移装置がインターフェイスの異なる装置に置き換わったとしても利用者側の利用方法が変更されることは無く、システム作成時に発生するコストを低減できる。
さらに、オブジェクトの構成操作と状態遷移操作を業務ロジック中に混入させないため、システム発注者側の要求によりオブジェクトの構成または状態遷移の変更が発生した場合であっても、業務ロジックを変更することなく、システムを変更できメンテナンス時に発生するコストを低減できる。
【００１６】
実施の形態２．
実施の形態２は、データ操作部の詳細を示すものであり、図１のオブジェクト状態遷移操作手段３とオブジェクト構成管理操作手段４とを持たない場合についてのものである。
図５は、この発明の実施の形態２によるデータ操作部の詳細な構成を示す構成図である。
図５において、１、２、５、６、１０は図１におけるものと同一のものである。  
【００１７】
図５は、図２のデータ操作部１０をより詳細に示すものである。データ管理手段２は、オブジェクト状態遷移手段５とオブジェクト構成管理手段６の機能を利用する原始的な（汎用的な）機能を多数有する。これらの機能には、オブジェクト構成管理手段６の機能を利用するオブジェクト新規作成機能、子オブジェクト追加機能、親オブジェクト追加機能や、オブジェクト状態遷移手段５の機能を利用するオブジェクト状態検索機能、オブジェクト状態遷移機能などが含まれる。
データ管理操作手段１は、データ管理手段２の有する原始的な機能を複数組み合わせ、システム開発者が理解できるようにした業務機能を多数有する。これらの機能には、見積依頼作成機能、見積依頼削除機能、発注依頼作成機能、発注依頼削除機能、検収依頼作成機能、検収依頼削除機能などが含まれる。
システム開発者は、データ管理操作手段１が有する機能を使用して、開発作業を実施する。
【００１８】
実施の形態２によれば、データ管理操作手段により、利用者に、より業務向きの機能を提供することで、開発コストを低減する効果がある。
【００１９】
実施の形態３．
実施の形態３は、データ操作部の詳細を示すものであり、図５の構成にオブジェクト状態遷移操作手段３とオブジェクト構成管理操作手段４とを追加したものである。
図６は、この発明の実施の形態３によるデータ操作部の詳細な構成を示す構成図である。
図６において、１、２、５、６、１０は図５におけるものと同一のものである。図６では、オブジェクト状態遷移操作手段３とオブジェクト構成管理操作手段４とが追加されている。
【００２０】
図６では、データ管理手段２がオブジェクト構成管理手段６の機能を直接使用するのではなく、データ管理手段２が必要とする機能とそれに対するオブジェクト構成管理手段６が持っている機能の対応付けを行うオブジェクト構成管理操作手段４を有する。また、オブジェクト状態遷移手段５の機能とデータ管理手段２が必要とする機能の対応付けを行うオブジェクト状態遷移操作手段３を有する。
オブジェクト構成管理操作手段４は、データ管理手段２からの指示により、オブジェクト構成管理手段６のオブジェクトの構成を変化させ、オブジェクト状態遷移操作手段３は、データ管理手段２からの指示により、オブジェクト状態遷移手段５のオブジェクトの状態を変化させるものである。データ管理手段２は、オブジェクトの構成と状態の整合性を保つように指示を行う。
これにより、オブジェクト構成管理手段６やオブジェクト状態遷移手段５が、一般市場に流通している市販品によって置き換えられたとしても、オブジェクト構成管理操作手段４とオブジェクト状態遷移操作手段３の持つ対応付けを変更することで、市販品への置き換えに対応することができる。この場合、変更されないその他の機能は、そのまま使用できる。
【００２１】
実施の形態３によれば、オブジェクト構成管理手段とオブジェクト状態管理手段を、別装置に置き換えた場合にも、オブジェクト構成管理操作手段とオブジェクト状態遷移操作手段のみの変更を実施すれば、置き換えに対応できるため、メンテナンスコストを低減する効果がある。
【００２２】
実施の形態４．
実施の形態４は、ＳＱＬの利用についてのものである。
図７は、この発明の実施の形態４によるデータ操作部のオブジェクト状態検索機能を説明する説明図である。
図７において、２、３、５は図６におけるものと、７は図１におけるものとそれぞれ同一のものである。データ管理手段２は、オブジェクト状態検索機能３１を有している。
ＳＱＬ定義７は、データベースのデータを検索する定義文を予め作成しておき、検索時に利用されるようにしたもので、データベースが変ってもこのＳＱＬ定義７の訂正で対応できるようにし、検索用のプログラムを訂正しなくてもよいようにする。ＳＱＬ定義７は、データ操作部１０の汎用ＤＡＯ８により読み書きされる。
図７には、その一例が示されている。オブジェクト状態検索手段３１は、ＳＱＬ定義７を使って問い合わせる文を作成し、オブジェクト状態遷移操作手段３を介してオブジェクト状態遷移手段５に渡す。オブジェクト状態遷移手段５は、ＳＱＬ定義７を解釈し、これに基き、データベースへの問い合わせ文を作成する。
【００２３】
図７は、オブジェクト状態遷移手段５の機能を利用者から隠蔽するために、利用者にはオブジェクト状態遷移手段５が管理する状態名のみを指定させる方法である。これは、次の手順によって行われる。
（１）利用者は、オブジェクト状態遷移手段５の管理するデータから、ある状態名を持つオブジェクトを検索するために利用するＳＱＬＤＥＦ−ＩＤ（図７では、ＳＳ０５）を、オブジェクト状態検索手段３１に対して指定する。
（２）オブジェクト状態検索手段３１は、外部に定義されたＳＱＬ定義７を参照し、（１）により指定されたＳＱＬＤＥＦ−ＩＤを持つ＜ＳＱＬＤＥＦ  ＩＤ＞というＸＭＬ（ｅＸｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）タグを検索する。
（３）上記が検索されれば、その中にある＜ＳＴＡＴＥＭＥＮＴ＞タグを検索する。
（４）＜ＳＴＡＴＥＭＥＮＴ＞タグ内の＜ＳＱＬ＞タグを検索し、そこに指定されているＳＱＬ文を読む。
【００２４】
（５）さらに＜ＳＴＡＴＥ−ＮＡＭＥ＞タグが存在すれば読む。
（６）（５）で読まれた＜ＳＴＡＴＥ−ＮＡＭＥ＞タグは、（４）にて読まれたＳＱＬ文と結合され、データベースへの検索用ＳＱＬとなるように、オブジェクト状態遷移手段５が新しいＳＱＬ文を生成する。
（７）オブジェクト状態遷移手段５が、生成したＳＱＬを状態データベースＤ２に対して発行し、検索結果を利用者へ返却する。
このようにして、ＳＱＬ定義７を利用することにより、オブジェクト状態検索機能３１は、状態データベースＤ２からオブジェクトの状態を検索することができる。
【００２５】
実施の形態４によれば、ＳＱＬ定義の利用により、利用者にオブジェクト状態遷移手段の機能を隠蔽するとともに、開発コストを低減する効果がある。
【００２６】
実施の形態５．
実施の形態５は、オブジェクト構成管理手段の管理するオブジェクトの構成についてのものであり、複数の親オブジェクトをもつようにした点に特徴がある。
図８は、この発明の実施の形態５による構成データベースでのオブジェクトの構成を示す図であり、図８（ａ）は、ツリー状に表現されたオブジェクトＡ〜Ｌを示す図、図８（ｂ）は、図８（ａ）のオブジェクトＡ〜Ｌを、構成データベースＤ３に格納されたツリー構成テーブルで表現したものである。
【００２７】
図８は、１オブジェクトに複数の親オブジェクトを実現するオブジェクト構造とデータである。
オブジェクト構成については、例えば、あるオブジェクトの子オブジェクトを調べたい、あるいは、あるオブジェクトの親オブジェクトを調べたいなどの問い合わせが業務アプリケーション２０から行われる。
オブジェクト構成管理手段６は、問い合わせに応じて、ツリー構成テーブルのデータを検索する。以下には、あるオブジェクトの子オブジェクトを調べたい、という問い合わせに対する構成データベースＤ３の検索手順を示している。
（１）指定されたオブジェクトを上位に持つレコード（そのレコードの下位に子オブジェクトがある。）が存在すれば、存在するレコード数分のルートオブジェクトを生成する。これは、子オブジェクトを探すステップである。）
（２）上記レコード毎に下位のオブジェクトを上位に持つレコードが存在するかを検索し、存在すれば上位オブジェクトをルートオブジェクトの下に追加し、（１）（２）を繰り返す。これは、子オブジェクトのさらに子オブジェクトを探すステップである。
（３）レコード毎に下位のオブジェクトを上位に持つレコードが存在しなければ、最下層までたどったと判断し、下位オブジェクトを上位オブジェクトの下に追加し、検索を終了する。
（４）（２）で検索された全てのレコードについて（３）が終了したならば、（１）のルートオブジェクトの下にすべての親子関係が生成される。
（５）（１）で検索されたレコードのうち、下位オブジェクトが空白のレコードは、単独のオブジェクトと判断し、親子関係は生成しない。
このようにして、あるオブジェクトの子オブジェクトを調べたい、という問い合わせに対する回答を得る。
なお、オブジェクトの親子関係を形成するときは、ツリー構成テーブルに親子関係を追加または削除することにより、行われる。
【００２８】
実施の形態５によれば、子オブジェクトは、複数の親オブジェクトをもつことができるので、より広範囲な要件に対応できるシステムを実現することができる。
【図面の簡単な説明】
【００２９】
【図１】この発明の実施の形態１による業務システムのデータ操作装置を示す構成図である。
【図２】この発明の実施の形態１による業務システムのデータ操作装置の詳細を示す構成図である。
【図３】この発明の実施の形態１による業務システムのデータ操作装置の業務データベースを示す図である。
【図４】この発明の実施の形態１による業務システムのデータ操作装置の状態データベースを示す図である。
【図５】この発明の実施の形態２によるデータ操作部の詳細な構成を示す構成図である。
【図６】この発明の実施の形態３によるデータ操作部の詳細な構成を示す構成図である。
【図７】この発明の実施の形態４によるデータ操作部のオブジェクト状態検索機能を説明する説明図である。
【図８】この発明の実施の形態５による構成データベースでのオブジェクトの構成を示す図である。
【符号の説明】
【００３０】
１  データ管理操作手段
２  データ管理手段
３  オブジェクト状態遷移操作手段
４  オブジェクト構成管理操作手段
５  オブジェクト状態遷移手段
６  オブジェクト構成管理手段
７  ＳＱＬ定義
８  汎用ＤＡＯ
１０  データ操作部
２０  業務アプリケーション
２１  Ｗｅｂブラウザ
２２  プロセスコントローラ
２３  アクションクラス
２４  ビジネスロジック
３１  オブジェクト状態検索機能
Ｄ１  業務データベース
Ｄ２  状態データベース
Ｄ３  構成データベース
【図１】
2007334578.tif 000003
【図２】
2007334578.tif 000004
【図３】
2007334578.tif 000005
【図４】
2007334578.tif 000006
【図５】
2007334578.tif 000007
【図６】
2007334578.tif 000008
【図７】
2007334578.tif 000009
【図８】
2007334578.tif 000010