JP2007242051A - ビジネスロジックプログラムを実装・実行するための装置 - Google Patents
ビジネスロジックプログラムを実装・実行するための装置 Download PDFInfo
- Publication number
- JP2007242051A JP2007242051A JP2007134528A JP2007134528A JP2007242051A JP 2007242051 A JP2007242051 A JP 2007242051A JP 2007134528 A JP2007134528 A JP 2007134528A JP 2007134528 A JP2007134528 A JP 2007134528A JP 2007242051 A JP2007242051 A JP 2007242051A
- Authority
- JP
- Japan
- Prior art keywords
- business logic
- data
- scene
- service object
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】再利用性が高く多様なビジネスロジックプログラムを実行・実装できる装置を提供する。
【解決手段】要求電文からサービスオブジェクト識別子を取得し、それによって所定のサービスオブジェクトを呼び出す電文分解部と、
前記サービスオブジェクト識別子に対応するサービスオブジェクトを生成し、それによってトランザクション管理またはジャーナル記録を実行し、モデルマネージャーを呼び出す、サービス部と、
モデルマネージャーを生成し、定義ファイルのシナリオに従って必要なシーン部品を呼び出して実行する、モデルマネージャー部と、
エンティティーを有するエンティティー部と、
シーン部品からデータの取得あるいは更新が要求されると、マッピングとシーン部品の要求に従って前記エンティティー部への値の代入と取得を行う、レコード部と、を有し、
前記シーン部品は、チェックシーン部品と、制御シーン部品と、アプライシーン部品と、データオブジェクト制御部品とを含む。
【選択図】図1
【解決手段】要求電文からサービスオブジェクト識別子を取得し、それによって所定のサービスオブジェクトを呼び出す電文分解部と、
前記サービスオブジェクト識別子に対応するサービスオブジェクトを生成し、それによってトランザクション管理またはジャーナル記録を実行し、モデルマネージャーを呼び出す、サービス部と、
モデルマネージャーを生成し、定義ファイルのシナリオに従って必要なシーン部品を呼び出して実行する、モデルマネージャー部と、
エンティティーを有するエンティティー部と、
シーン部品からデータの取得あるいは更新が要求されると、マッピングとシーン部品の要求に従って前記エンティティー部への値の代入と取得を行う、レコード部と、を有し、
前記シーン部品は、チェックシーン部品と、制御シーン部品と、アプライシーン部品と、データオブジェクト制御部品とを含む。
【選択図】図1
Description
本発明は、ビジネスロジックプログラムを実装・実行するための装置に係り、特に、プログラミング言語を習熟していない人間でも、プログラム部品の組合せ、定義によってビジネスロジックプログラムを実装でき、実装されたビジネスロジックプログラムが支障なく実行される装置、方法、及びプログラムに関する。
本明細書において、「ビジネスロジックプログラム」とは、ビジネスロジック処理を行うためのプログラムをいう。「ビジネスロジック処理」とは、いわゆる業務処理と呼ばれるような、データの照会、検索、変換等の範囲に属する企業内の事務処理をいうものとする。
また、本発明は、種々のビジネスロジックプログラムの実装に流用することができるプログラム部品を有する、ビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムに関する。
一般に企業等では、たとえば人事、財務等の情報に関してデータの照会、検索、変換等の範囲に属する業務処理(これを本明細書ではビジネスロジック処理という)をコンピュータを用いて行っている。
この業務処理用のプログラム(ビジネスロジックプログラム)は、通常はインハウスで制作され、企業の事情や個々の処理の特有の要求を満足するようにカスタマイズされている。
ところで、ビジネスロジックプログラムは、データの照会、検索、変換等の共通した処理が多いのが実情である。
たとえば、入力項目から出力項目へのコピー、ループ制御、分岐制御など、使用するデータや条件が異なるだけで、処理そのものは一定のパターンが繰り返し記述されることが多い。また、経験的に、ビジネスロジック処理では、そのような一定の処理パターンはそれほど多くないことも知られている。
このため、既存のプログラムの一部をプログラム部品として可能な限り再利用したいという要求があった。また、ビジネスロジックプログラムの実装に関して、再利用可能にプログラム部品を利用しつつ可能な限り省力化したいという要求があった。
従来は、プログラムの実装の省力化に関して、CASEツールと呼ばれるものが存在していた。
CASEツールは、ビジネスロジック処理に必要に思われる要求(設計情報という)を入力させ、自動的にソースコードを生成するツールである。
CASEツールを使用することにより、人間によってソースコードを実装する手間が軽減される。
一方、典型的なビジネスロジック処理の半製品コンポーネントも従来から市場に提供されていた。これらの半製品コンポーネントを使用すれば、ビジネスロジックプログラムの実装の手間が一部軽減される。
特開2001−155096号公報
しかし、ビジネスロジックプログラムの実装では、要件によってデータ構造が違ったり、データベースの項目が違ったり、ルールのチェックロジックが微妙に変わり、かつ、それらが相互に影響し合う。
上記半製品コンポーネントは、使用者のカスタマイズの要求に応えるためには、その分実装の手間が多くかかるようになる。
また、CASEツールでは、ソースコードを生成した後に、ソースコードを改変する必要があることがしばしば生じる。
しかし、ソースコード生成後にソースコードを改変すると、最初の設計情報と実装されたプログラムの間に不一致な点が生じてしまう。このため、最初の設計情報と実装されたプログラムの間の矛盾を人間の目によってチェックしなければ信頼できるビジネスロジックプログラムを得ることができなかった。
また、このようなソースコードの改変により、それぞれのビジネスロジックプログラムは、その処理に適したようにカスタマイズされるほど、再利用性が低下してしまう。このため、従来は完全に部品の修正なしで再利用を行うことは困難であった。
プログラム部品を再利用するためには、そのプログラム部品を使用した生産性も考慮しなければならない。
すなわち、プログラム部品を小さくすれば再利用性が高くなるが、そのような小さなプログラム部品を使用しても効率よくビジネスロジックプログラムを実装することができないという問題があった。逆に、プログラム部品を大きくすれば効率よくプログラムを実装することができるが、種々の要求に応えることができずにカスタマイズ性が低下するという問題があった。
そこで、本発明が解決しようとする課題は、以上の従来のビジネスロジックプログラムの実装の問題に鑑み、再利用性が高いプログラム部品を有し、プログラム言語に習熟していない者でも、それらのプログラム部品を組み立てることによって効率よく多様な要求のビジネスロジックプログラムを実装・実行することができるビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムを提供することにある。
本発明に係るビジネスロジックプログラムを実装・実行するための装置は、
データセットとサービスオブジェクトの識別子を含む要求電文をデータセットとサービスオブジェクト識別子に分解し、前記サービスオブジェクト識別子によって所定のサービスオブジェクトを呼び出す電文分解部と、
前記電文分解部から前記サービスオブジェクト識別子によって所定のサービスオブジェクトの呼び出しが行われると、対応するサービスオブジェクトを生成し、前記サービスオブジェクトはトランザクション管理かジャーナル記録かの処理形態とモデルマネージャーとシナリオの情報とを含む定義ファイルから前記サービスオブジェクト識別子に対応する定義ファイルを取得し、前記対応する定義ファイルに基づいてトランザクション管理またはジャーナル記録を実行し、前記対応する定義ファイルで指定されているモデルマネージャーを呼び出す、サービス部と、
前記サービス部のサービスオブジェクトによって所定のモデルマネージャーの呼び出しが行われると、対応するモデルマネージャーを生成し、前記モデルマネージャーは前記定義ファイルに定義されたシナリオに従って必要なシーン部品を呼び出して実行する、モデルマネージャー部と、
前記モデルマネージャーのシーン部品の実行により所定のシーン部品から所定のデータの取得あるいは更新が要求されると、エンティティーの定義と属性のファイルから対応するエンティティーのコンフィグを取得し、要求されたエンティティーにアクセスするためのマッピングを取得し、前記マッピングと前記シーン部品の要求に従って前記エンティティー部のエンティティーへの値の代入と取得を行う、レコード部と、
数値化されたアドレスに格納されたデータを有するエンティティー部と、
を有するビジネスロジックプログラムを実装・実行するための装置において、
前記シーン部品は、データの存在やデータ関の矛盾をチェックするチェックシーン部品と、分岐制御やループ制御を行う制御シーン部品と、データの登録や更新や削除を行うアプライシーン部品と、入出力データの代入や結合を行うデータオブジェクト制御部品とを含むことを特徴とする。
データセットとサービスオブジェクトの識別子を含む要求電文をデータセットとサービスオブジェクト識別子に分解し、前記サービスオブジェクト識別子によって所定のサービスオブジェクトを呼び出す電文分解部と、
前記電文分解部から前記サービスオブジェクト識別子によって所定のサービスオブジェクトの呼び出しが行われると、対応するサービスオブジェクトを生成し、前記サービスオブジェクトはトランザクション管理かジャーナル記録かの処理形態とモデルマネージャーとシナリオの情報とを含む定義ファイルから前記サービスオブジェクト識別子に対応する定義ファイルを取得し、前記対応する定義ファイルに基づいてトランザクション管理またはジャーナル記録を実行し、前記対応する定義ファイルで指定されているモデルマネージャーを呼び出す、サービス部と、
前記サービス部のサービスオブジェクトによって所定のモデルマネージャーの呼び出しが行われると、対応するモデルマネージャーを生成し、前記モデルマネージャーは前記定義ファイルに定義されたシナリオに従って必要なシーン部品を呼び出して実行する、モデルマネージャー部と、
前記モデルマネージャーのシーン部品の実行により所定のシーン部品から所定のデータの取得あるいは更新が要求されると、エンティティーの定義と属性のファイルから対応するエンティティーのコンフィグを取得し、要求されたエンティティーにアクセスするためのマッピングを取得し、前記マッピングと前記シーン部品の要求に従って前記エンティティー部のエンティティーへの値の代入と取得を行う、レコード部と、
数値化されたアドレスに格納されたデータを有するエンティティー部と、
を有するビジネスロジックプログラムを実装・実行するための装置において、
前記シーン部品は、データの存在やデータ関の矛盾をチェックするチェックシーン部品と、分岐制御やループ制御を行う制御シーン部品と、データの登録や更新や削除を行うアプライシーン部品と、入出力データの代入や結合を行うデータオブジェクト制御部品とを含むことを特徴とする。
また、本発明に係るビジネスロジックプログラムを実装・実行するための装置は、ビジネスロジックの処理で使用される定型処理を規定したシーン部品と、前記シーン部品の組合せと動作を定義することによってビジネスロジック処理を定義し実行できるモデルマネージャーとを有し、するビジネスロジックプログラムを実装・実行するための装置において、前記シーン部品は、入力項目の存在や入力項目間の関連チェックを行うチェックシーン部品と、分岐制御を行う分岐制御シーン部品とを含むことを特徴とする。
本発明は、トランザクション管理またはジャーナル記録の処理形態を規定するサービスオブジェクトを有することもできる。
また、本発明は、ビジネスロジック処理で使用するデータを抽象的なアドレスに格納するデータベースと、前記データベースのデータとビジネスロジック処理で取得あるいは更新する有意なデータとを対応させるマッピング手段とを有することもできる。
本発明によれば、業務処理における定型処理をシーン部品として用意し、シーン部品の組み立てによってビジネスロジックプログラムを記述し、それを実行することができる。また、本発明によれば、レコード部を有し、プログラム実行中にシーン部品が使用するデータを取得してシーン部品に提供し、あるいはデータを更新する。データは抽象化されたアドレスに記憶され、レコード部によってアクセスされる。これにより、複数のプログラムが共用するデータが重複なく記憶され、データの変更に対してはレコード部のマッピング手段の定義を変更させることによって容易に対応することができる。
次に、本発明によるビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムの実施の形態について以下に説明する。
理解容易のために、最初にビジネスロジックプログラムを実行する装置・方法について説明し、後に実装する装置・方法について説明する。
図1は、本発明の一実施形態によるビジネスロジックプログラムを実装・実行するための装置の構成とその概略の処理の流れを説明的に示している。
本発明のビジネスロジックプログラムを実装・実行するための装置は、クライアントサーバーシステムに限られないが、本実施形態のビジネスロジックプログラムを実装・実行するための装置1は、図1のようにクライアントサーバーシステムの形態をとる。
ビジネスロジックプログラムを実装・実行するための装置1は、クライアント側に配置された電文分解部2、サーバー側に配置されたサービス部3、モデルマネージャー部4、レコード部5、サーバーに属するとは限らないがサーバーから参照可能な場所にあるエンティティー部6を有している。
また、サーバーは、各種の情報を含むコンテキストを記憶するための記憶手段7を備えている。コンテキストは、サービス部3、モデルマネージャー部4がプログラムを実行する際に、参照する種々の情報である。
電文分解部2は、クライアントからの要求電文を分解し、データの定義と、サービスオブジェクトの呼び出しに変換する手段である。
電文分解部2は、クライアント側に位置して、クライアントからビジネスロジック処理の要求を受けて、そのビジネスロジック処理名に対応する処理結果をクライアントに返す。
サービス部3は、個々のビジネスロジック処理に依存しないファシリティ処理、すなわち、ジャーナル記録やトランザクション管理、あるいは業務フローの制御、あるいは前記電文分解部2との接続、モデルマネージャーの呼び出し等、の処理を行う手段である。
サービス部3は、クライアント側からビジネスロジック処理に入る入り口となるレイヤーとなる。
サービスオブジェクトはサービス部3にあって、サービス部3で行う処理を管理するオブジェクトである。サービス部3で行う処理、すなわちサービスオブジェクトが管理する処理をサービスフローという。
サービス部3は、電文分解部2から入力した情報に基づいてサービスフローを特定し、その処理を実行する。実際にはサービス部3は、トランザクションを管理し、または、ジャーナルを記録し、サービスフローに対応するモデルマネージャーを呼び出す機能を果たす。
サービス部3は、個々のビジネスロジック処理の内容に関係がない部分のファシリティ処理をビジネスロジック処理の内容に関するプログラムから切り離す役割を果たす。
モデルマネージャーを呼び出すにあたっては、サービス部3は、記憶手段7に記憶されたビジネスロジック処理名とモデルマネージャーとシナリオの関係を定義した定義ファイルを参照して該当するモデルマネージャーを呼び出す。
モデルマネージャー部4は、ビジネスロジック処理を実行する手段である。すなわち、モデルマネージャー部4がビジネスロジックの実際の処理、たとえばデータの照合、検索、変換等を行うのである。
モデルマネージャー部4は、個々のビジネスロジック処理に対応して定義された複数のモデルマネージャーを有している。各モデルマネージャーはその作動内容がカスタマイズされている。
ここで、「シーン部品」とは、ビジネスロジック処理の一片、すなわちデータの存在や関連をチェックする処理、分岐を制御する処理、データの登録更新削除を行う(アプライ)処理、データの結合代入を行う処理等、個々の定型処理を記述したプログラム部品である。
「シナリオ」とは、ビジネスロジック処理をシーン部品の組合せによって記述したものである。すなわち、シナリオはシーン部品の構造体ということができる。
シナリオはたとえば、項目がAだったらBに変換し、項目の補充を行い、関連チェックを行い、計算を行い、返り電文を構築し、・・・というような一連の処理を記述したものである。
「データオブジェクト」とは、ビジネスロジック処理の実行時に使用されるデータを保持したものである。データオブジェクトはシナリオによって参照される。なお、データオブジェクトは記憶手段7によって保持される。
各モデルマネージャーは、それぞれシナリオを定義されており、そのシナリオに応じて必要なシーン部品を呼び出し、実行させる。実行時には必要に応じてデータオブジェクトを参照する。
すなわち、モデルマネージャーは、必要なシーン部品をシナリオから取得し、動的にローディングし、それらのシーン部品の動作をシナリオから取得し、動的動作をシーン部品に指示し、必要なデータ(エンティティー:データの実体をいう)を動的に取得し、電文との動的マッピングを行う。
レコード部5は、データへのアクセスを抽象化する手段である。すなわち、レコード部5は、ビジネスロジック処理における有意なデータを抽象化されたアドレスに格納されたデータに対応させる手段ということができる。「抽象化されたアドレス」とは、データの項目や属性等とは関係なく数値化されたアドレスを言う。
レコード部5は、抽象化されたデータベースのデータとビジネスロジック処理で取得あるいは更新する有意なデータとを対応させるマッピング手段を有している。
レコード部5は、ビジネスロジック処理に使用されるデータベースのデータを抽象化させることに意味がある。
すなわち、データを抽象化させることにより、複数のビジネスロジック処理が参照する共通データについては、レコード部5のマッピング手段によって対応させればよく、複数のデータを重複して用意する必要がなくなる。また、より重要なこととして、データベースの再利用性を高めることができるのである。
エンティティー部6は、抽象化されたアドレスにデータを格納するデータベースを有する手段である。
図1に示すように、ビジネスロジックプログラムを実装・実行するための装置1によれば、クライアントから所定のビジネスロジック処理の要求電文が発せられると、電文分解部2がその要求電文を分解しサービスオブジェクトを呼び出す。サービスオブジェクトの呼び出しはサービスオブジェクトの識別子による。次に、サービス部3がビジネスロジック処理名に応じてジャーナル記録、あるいは、トランザクション管理を行い、ビジネスロジック処理名に対応するモデルマネージャーを呼び出す。次に、モデルマネージャー部4はその処理を行うモデルマネージャーを呼びだし、そのモデルマネージャーは定義されたシナリオに従って必要なシーン部品を呼び出し、それらのシーン部品を定められた順序通りに実行する。シーン部品の実行の間にシーン部品はレコード部5を通じてエンティティー部6に対してデータの取得あるいは更新を行う。そのようにして処理した結果は、出力のデータオブジェクトとしてサービス部3に返され、サービス部3は、当該処理結果を電文分解部2に返す。電文分解部2は必要な電文変換を行って発信元のクライアントに処理結果を返すのである。
図2は、ビジネスロジックプログラムを実装・実行するための装置1の処理で使用される処理手段とソフトウェア上の要素とそれらの内容または機能を示している。
図2に示すように、ビジネスロジックプログラムを実装・実行するための装置1は、処理手段として既述の電文分解部2とサービス部3とモデルマネージャー部4とレコード部5とエンティティー部6を有している。
その他に、ビジネスロジックプログラムを実装・実行するための装置1は、ソフトウェア上の要素として、シーン部品8と、データオブジェクト9とを有している。
シーン部品8は、ビジネスロジック処理の定型処理を規定したプログラム部品である。図2に示すように、シーン部品8の主要なものとして、チェックシーン部品、アプライシーン部品、制御シーン部品、データオブジェクト制御部品等が挙げられる。
チェックシーン部品は、データの存在やデータ間の矛盾をチェックするプログラム部品である。アプライシーン部品は、データの登録、更新、削除を行うプログラム部品である。制御シーン部品は、分岐制御、ループ制御を行うプログラム部品である。データオブジェクト制御部品は、入出力データの代入、結合等の操作を行うプログラム部品である。
ビジネスロジック処理は、上述したシーン部品によってほとんど記述することができる点は注目すべきである。
データオブジェクト9は、データの参照、保管等を行うオブジェクトである。
データオブジェクト9は、シナリオから参照可能であり、単票型(一行データ)と伝票型(ヘッダ部、明細行部をもつデータ)が用意されている。データオブジェクト9には、入力データオブジェクトと出力データオブジェクトの2種類がある。
なお、図2に示したロギング機能とは、要求電文の処理権限をチェックするなど、安全性(セキュリティー)を確保する機能である。また、キャッシュ機能は、すべに参照したデータ等を一時的に保持し、たとえば同一エンティティーへのアクセスを省略し、キャッシュメモリから読みとるようにした機能である。
次に、サービス部3、モデルマネージャー部4、レコード部5のそれぞれの処理について図3〜図5を用いて説明する。
図3はサービス部3の処理を示している。
図3に示すように、サービス部3は電文分解部2からサービスオブジェクトの識別子を指定されることにより、対応するサービスオブジェクトを呼び出す。次に、定義ファイルからそのサービスオブジェクトが実行すべきコマンド等の情報を取得する。なお、定義ファイルには、処理形態(ジャーナル記録まはたトランザクション管理)、モデルマネージャー、シナリオ等が定義されている。
サービス部3は、上記定義ファイルから取得した情報に基づいて各コマンドを実行する。すなわち、ジャーナル記録またはトランザクション管理を行い、モデルマネージャー部4に対してモデルマネージャーとシナリオを呼び出す。
図4はモデルマネージャー部4の処理を示している。
図4に示すように、モデルマネージャー部4は、サービス部3からモデルマネージャーやシナリオ等の情報を含む入力データオブジェクトを受け取り、そのシナリオ名に対応するように、シナリオを記録したファイルとモデルマネージャーを記録したファイルとエンティティー名を記録したファイルから必要な情報を得てシナリオを形成する。次にモデルマネージャーにより、形成したシナリオを実行する。シナリオの実行においては、入力データオブジェクトの値を参照しながらビジネスロジック処理を実行し、必要に応じてレコード部5を通じてエンティティー部6にアクセスし、入力データオブジェクトの値を更新する。
図5はレコード部5の処理を示している。
図5に示すように、レコード部5は、モデルマネージャー部4からエンティティーへのアクセスを要求されると、エンティティー定義とエンティティー属性のファイルから要求されたエンティティーのコンフィグ(定義)を取得する。次にレコード部5は、要求されたエンティティーにアクセスするためのマッピングを取得し、そのマッピングに従ってエンティティーへの値の代入、エンティティーの値の取得等を行う。その際に、すでにアクセスして保持しているエンティティーであれば、キャッシュ機能によりメモリから直接取得することができる。
このようにして取得したエンティティーは、モデルマネージャー部4に返される。
以上がビジネスロジック処理の実行に関する説明であった。次に、ビジネスロジックプログラムの実装について説明する。
図6は、本発明によるビジネスロジックプログラムの実装を説明的に示したものである。
上記説明したように、本発明によれば、シーン部品、シナリオ、モデルマネージャー、サービスオブジェクト、によってビジネスロジック処理を実行することができる。したがって、ビジネスロジックプログラムの実装においては、上記シーン部品、シナリオ、モデルマネージャー、サービスオブジェクトが作動するように定義することによって、ビジネスロジックプログラムを実装することができる。
図6に示すように、本発明のビジネスロジックプログラムを実装・実行するための装置は、ビジネスロジック生成手段10を有している。
ビジネスロジック生成手段10は、所定のビジネスロジックの処理で使用される情報の定義と、定型処理を行うシーン部品の指定と、前記シーン部品の実行を定義するシナリオの定義と、前記シーン部品が取得あるいは更新するデータの定義とを行わせる手段である。
ビジネスロジック生成手段10は好ましくは上記定義を視覚的に入力することができるインターフェースを提供する。この視覚的インターフェースによりプログラム言語の知識を有しない者でも、シーン部品を使用してシナリオを容易に組み立てられるようになる。
ビジネスロジックプログラムを実装するには、シーン部品とビジネスロジック処理の設計情報が必要である。ビジネスロジック処理の設計情報とは、具体的には画面項目定義、入出力電文定義、ユーザープロファイル定義、処理概要定義、締め処理方式、権限レベル定義等の定義を行うための情報である。
すなわち、ビジネスロジック処理の設計情報は、ビジネスロジック処理を行う主体、処理を行う対象である客体、参照するデータ等を定義するための情報ということができる。
ビジネスロジック生成手段10は、ビジネスロジック処理の設計情報によってビジネスロジック処理の主体と客体と参照データとを定義させ、具体的な処理内容についてはシーン部品を組み合わせることによってシナリオを生成し、併せてファリシティ処理を定義してサービスフローを生成させる。
生成された設計情報の定義やシナリオ、サービスフロー等の情報は定義ファイルとして記録され、ビジネスロジックプログラムの実行装置の使用に供される。一方、参照されるデータとして、エンティティーが作成され、これもビジネスロジックプログラムの実行装置の使用に供される。
以上により、本発明のビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムによれば、ビジネスロジック処理の設計情報と実装が一人の者によって行われ、かつ、設計情報から直接プログラムの実装が行われる。このため、ビジネスロジック処理の設計情報と実装の間に矛盾を生じることがない。従って、従来のように、設計情報から生成されたソースコードをカスタマイズすることにより、設計情報と実装されたプログラムの間に不整合が生じ、その不整合を確認するために多大な時間をかけてプログラムをチェックする必要がなくなるのである。
また、本発明のビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムによれば、ビジネスロジック生成手段によってシーン部品を組み立てることによって、ビジネスロジック処理を記述することができるので、プログラム言語に習熟した人間によってプログラムを実装する必要がない。これにより、プログラム言語に習熟していない人間でも、ビジネスロジックプログラムを実装することができるようになる。
また、本発明のビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムによれば、ビジネスロジック処理を、処理の具体的な要件である処理の主体、客体、参照データを定義させ、一方、処理の具体的な要件に関係しない定型的な処理をシーン部品化することにより、シーン部品の再利用性がきわめて高くなる。
たとえば、異なるビジネスロジック処理のプログラムを生成するときは、そのビジネスロジック処理の具体的な要件である主体、客体、参照データを定義すれば、すでに定義されたシナリオ(プログラム処理の流れ)をそのまま流用することが可能になる。
また、処理の具体的な要件に関係しない定型的な処理をシーン部品化することにより、各シーン部品が具体的な事情によって影響されないので、大きなまとまりとして作成することができる。これにより、プログラム部品が大きくなり、これを組み立ててプログラムを実装する際には、きわめて効率よくプログラムを既述、実装することができるようになる。
さらに、シーン部品は、必要なビジネスロジック処理に応じて作成でき、種々のビジネスロジック処理に対応できる高い拡張性を得ることもできる。
同時に、シーン部品とシーン部品は互いに関係なく作成できるので、シーン部品間で影響を及ぼすことがなく、プログラム部品の改変によって他のビジネスロジックプログラムに影響が及ぶことがない。
以上の説明から明らかなように、本発明のビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラムによれば、プログラム言語に習熟していない者でも、シーン部品を組み合わせることによってビジネスロジック処理用のプログラムを容易に実装することができる。
また、ビジネスロジック処理の設計情報を考えた者とプログラムを実装する者を同一の者によって行うことができ、設計情報と実装の間の不整合性がなく、従来設計情報と実装プログラムの間の整合性をチェックしていた手間や時間を省略することができる。
また、本発明によるシーン部品は、ビジネスロジック処理の具体的な事情や要件とは切り離されているので、種々のビジネスロジックプログラムの実装に再利用することができる。同様に、具体的な事情に影響されないので、シーン部品を大きなかたまりとして作成することができ、これらを組み立ててプログラムを実装する際に、きわめて効率が高い実装作業を実現することができる。
さらに本発明によれば、ビジネスロジック処理の主体や処理対象や参照するデータ等の定義をすることにより、プログラム部品のみならず、従来のビジネスロジックのメインプログラムに該当するシナリオを再利用することもできる。
さらにまた、本発明によれば、シーン部品は互いに関係なく作成できるので、種々のビジネスロジック処理に対応して拡張することができる。同じ理由により、本発明によれば、シーン部品を改変する場合に、他のシーン部品に影響を与えることがなく、他のシーン部品を使用する他のビジネスロジック処理には影響を与えることがないという利点を有する。
1 ビジネスロジックプログラムを実装・実行するための装置
2 電文分解部
3 サービス部
4 モデルマネージャー部
5 レコード部
6 エンティティー部
7 記憶手段
8 シーン部品
9 データオブジェクト
10 ビジネスロジック生成手段
2 電文分解部
3 サービス部
4 モデルマネージャー部
5 レコード部
6 エンティティー部
7 記憶手段
8 シーン部品
9 データオブジェクト
10 ビジネスロジック生成手段
Claims (4)
- データセットとサービスオブジェクトの識別子を含む要求電文をデータセットとサービスオブジェクト識別子に分解し、前記サービスオブジェクト識別子によって所定のサービスオブジェクトを呼び出す電文分解部と、
前記電文分解部から前記サービスオブジェクト識別子によって所定のサービスオブジェクトの呼び出しが行われると、対応するサービスオブジェクトを生成し、前記サービスオブジェクトはトランザクション管理かジャーナル記録かの処理形態とモデルマネージャーとシナリオの情報とを含む定義ファイルから前記サービスオブジェクト識別子に対応する定義ファイルを取得し、前記対応する定義ファイルに基づいてトランザクション管理またはジャーナル記録を実行し、前記対応する定義ファイルで指定されているモデルマネージャーを呼び出す、サービス部と、
前記サービス部のサービスオブジェクトによって所定のモデルマネージャーの呼び出しが行われると、対応するモデルマネージャーを生成し、前記モデルマネージャーは前記定義ファイルに定義されたシナリオに従って必要なシーン部品を呼び出して実行する、モデルマネージャー部と、
前記モデルマネージャーのシーン部品の実行により所定のシーン部品から所定のデータの取得あるいは更新が要求されると、エンティティーの定義と属性のファイルから対応するエンティティーのコンフィグを取得し、要求されたエンティティーにアクセスするためのマッピングを取得し、前記マッピングと前記シーン部品の要求に従って前記エンティティー部のエンティティーへの値の代入と取得を行う、レコード部と、
数値化されたアドレスに格納されたデータを有するエンティティー部と、
を有するビジネスロジックプログラムを実装・実行するための装置において、
前記シーン部品は、データの存在やデータ関の矛盾をチェックするチェックシーン部品と、分岐制御やループ制御を行う制御シーン部品と、データの登録や更新や削除を行うアプライシーン部品と、入出力データの代入や結合を行うデータオブジェクト制御部品とを含むことを特徴とするビジネスロジックプログラムを実装・実行するための装置。 - ビジネスロジックの処理で使用される定型処理を規定したシーン部品と、前記シーン部品の組合せと動作を定義することによってビジネスロジック処理を定義し実行できるモデルマネージャーとを有し、するビジネスロジックプログラムを実装・実行するための装置において、
前記シーン部品は、入力項目の存在や入力項目間の関連チェックを行うチェックシーン部品と、分岐制御を行う分岐制御シーン部品とを含むことを特徴とするビジネスロジックプログラムを実装・実行するための装置。 - トランザクション管理またはジャーナル記録の処理形態を規定するサービスオブジェクトを有することを特徴とする請求項2に記載のビジネスロジックプログラムを実装・実行するための装置。
- ビジネスロジック処理で使用するデータを抽象的なアドレスに格納するデータベースと、前記データベースのデータとビジネスロジック処理で取得あるいは更新する有意なデータとを対応させるマッピング手段とを有することを特徴とする請求項2または3に記載のビジネスロジックプログラムを実装・実行するための装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007134528A JP2007242051A (ja) | 2007-05-21 | 2007-05-21 | ビジネスロジックプログラムを実装・実行するための装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007134528A JP2007242051A (ja) | 2007-05-21 | 2007-05-21 | ビジネスロジックプログラムを実装・実行するための装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002083465A Division JP2003280898A (ja) | 2002-03-25 | 2002-03-25 | ビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007242051A true JP2007242051A (ja) | 2007-09-20 |
Family
ID=38587455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007134528A Pending JP2007242051A (ja) | 2007-05-21 | 2007-05-21 | ビジネスロジックプログラムを実装・実行するための装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007242051A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633163A (zh) * | 2019-09-26 | 2019-12-31 | 深圳市七星石科技有限公司 | 一种基于多进程服务器的预防应用程序崩溃的开发方法 |
CN111078747A (zh) * | 2019-11-20 | 2020-04-28 | 北京中电飞华通信股份有限公司 | 一种面向电力运营企业的新型业务逻辑设置方法 |
CN116755804A (zh) * | 2023-07-03 | 2023-09-15 | 红有软件股份有限公司 | 一种可装配的一体化大数据处理方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348498A (ja) * | 1993-06-11 | 1994-12-22 | Fujitsu Ltd | 部品化ソフトウェアの実行制御方法および実行装置 |
JPH0778215A (ja) * | 1993-09-08 | 1995-03-20 | Hitachi Ltd | 業務プログラムの実行方法 |
JPH09114711A (ja) * | 1995-10-17 | 1997-05-02 | Nippon Telegr & Teleph Corp <Ntt> | データ流通支援装置 |
JP2001155096A (ja) * | 1999-11-26 | 2001-06-08 | Hitachi Ltd | 業務処理システム |
JP2003280898A (ja) * | 2002-03-25 | 2003-10-02 | Nri & Ncc Co Ltd | ビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラム |
-
2007
- 2007-05-21 JP JP2007134528A patent/JP2007242051A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348498A (ja) * | 1993-06-11 | 1994-12-22 | Fujitsu Ltd | 部品化ソフトウェアの実行制御方法および実行装置 |
JPH0778215A (ja) * | 1993-09-08 | 1995-03-20 | Hitachi Ltd | 業務プログラムの実行方法 |
JPH09114711A (ja) * | 1995-10-17 | 1997-05-02 | Nippon Telegr & Teleph Corp <Ntt> | データ流通支援装置 |
JP2001155096A (ja) * | 1999-11-26 | 2001-06-08 | Hitachi Ltd | 業務処理システム |
JP2003280898A (ja) * | 2002-03-25 | 2003-10-02 | Nri & Ncc Co Ltd | ビジネスロジックプログラムを実装・実行するための装置、方法、及びプログラム |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110633163A (zh) * | 2019-09-26 | 2019-12-31 | 深圳市七星石科技有限公司 | 一种基于多进程服务器的预防应用程序崩溃的开发方法 |
CN110633163B (zh) * | 2019-09-26 | 2022-12-09 | 深圳市七星石科技有限公司 | 一种基于多进程服务器的预防应用程序崩溃的开发方法 |
CN111078747A (zh) * | 2019-11-20 | 2020-04-28 | 北京中电飞华通信股份有限公司 | 一种面向电力运营企业的新型业务逻辑设置方法 |
CN116755804A (zh) * | 2023-07-03 | 2023-09-15 | 红有软件股份有限公司 | 一种可装配的一体化大数据处理方法及系统 |
CN116755804B (zh) * | 2023-07-03 | 2024-04-26 | 红有软件股份有限公司 | 一种可装配的一体化大数据处理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109087004B (zh) | 一种基于领域模型的公共工作流引擎系统 | |
US10296305B2 (en) | Method and device for the automated production and provision of at least one software application | |
US7895156B2 (en) | Method, system, and computer program product for implementing a model exchange framework generating a synchronization record in response to a model exchange request using fusion technology | |
CN103377336B (zh) | 一种计算机系统用户权限的控制方法和系统 | |
US8806185B2 (en) | System and method for automatic configuration of portal composite applications | |
US8495564B2 (en) | Automated merging in a software development environment | |
US11783254B2 (en) | Method and system for implementing an adaptive data governance system | |
US20100031232A1 (en) | Creating deployable software code for implementing a business process using a library of preconfigured processes | |
US20020010766A1 (en) | Input/output device information management system for multi-computer system | |
US20070043716A1 (en) | Methods, systems and computer program products for changing objects in a directory system | |
CN102542382A (zh) | 业务规则的管理方法和装置 | |
US20110029479A1 (en) | Method and system to maintain service architecture repositories | |
Rinderle et al. | A formal framework for adaptive access control models | |
US20110010420A1 (en) | Client environment creation system, client environment creation method, client environment creation program and storage medium | |
US9542656B2 (en) | Supporting ETL processing in BPEL-based processes | |
US20040083238A1 (en) | Method, system, and storage medium for integrating project management tools | |
CN106600226B (zh) | 用于优化流程管理系统的方法及装置 | |
CN109684028A (zh) | 一种操作系统与用户数据分离的方法、装置及设备 | |
US20030131018A1 (en) | Common business data management | |
EP2343658A1 (en) | Federation as a process | |
JP4695903B2 (ja) | Webアプリケーションシステム、そのプログラム | |
JP2007242051A (ja) | ビジネスロジックプログラムを実装・実行するための装置 | |
US20090138621A1 (en) | System and method for delegating a dependent business object | |
JP5426578B2 (ja) | コードレスプロビジョニング | |
Ivković et al. | An approach to validation of business-oriented smart contracts based on process mining |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Effective date: 20100625 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100722 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100716 |
|
A02 | Decision of refusal |
Effective date: 20101119 Free format text: JAPANESE INTERMEDIATE CODE: A02 |