(57)【要約】ビジネスモデル指向、開発安全、安定なソフトウェアシステム、開発効率が高く、メンテナンスコストが低く、拡張しやすい、簡単で分かり易いメリットがあるビジネスモデル指向のソフトウェア実行プラットフォーム及び実行方法を提供する。本発明に開示されたソフトウェア実行プラットフォームは、サーバー側のシステムアーキテクチャ及びクライアント側のシステムアーキテクチャを備え、サーバー側のシステムアーキテクチャは、ビジネスモデルのファクトリーコンポーネント、ビジネスモデルのコントロールエンジン及びアクティブビジネスモデルコンポーネントを備え、クライアント側のシステムアーキテクチャは、クライアント側のコントロールエンジン、データオブジェクトの代理コンポーネント及びユーザーインターフェイスコンポーネントを備える。本発明に開示されたソフトウェア実行プラットフォーム及びその実行方法は、サービス指向のソフトウェア技術発展のために基礎を打ち建て、クラウド環境開発のコンピューターソフトウェアシステムに解決策を提供し、ネット構成されたソフトウェアの発展応用のために新しい考えの方向及び実現方法を開拓し、広い範囲に適用することが可能である。【選択図】図１
2014523042.tif 000002
【特許請求の範囲】
【請求項１】
ビジネスモデル指向のソフトウェア実行プラットフォームであって、サーバー側のシステムアーキテクチャ及びクライアント側のシステムアーキテクチャを備え、
前述のサーバー側のシステムアーキテクチャは、ビジネスモデルのファクトリーコンポーネント、ビジネスモデルのコントロールエンジン及びアクティブビジネスモデルコンポーネントを備え、
ビジネスモデルのファクトリーコンポーネントは、定義されたビジネスモデルリソースを検索し、検索されたリソースデータによって、ビジネスモデルオブジェクトを新規作成して管理するために使用し、前述のビジネスモデルは、命名アクセスを使用したデータオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースを備え、
ビジネスモデルのコントロールエンジンは、セッション安全認証及びビジネスモデルのアクセス認証サービスを提供し、アクティブビジネスモデルコンポーネントをロード又はリリーズするために使用し、
アクティブビジネスモデルコンポーネントは、クライアント側のアクセスリクエストを処理し、プログラムコンテキストインターフェイス及び外部アクセスインターフェイスを提供するために使用し、クライアント側のリクエストによって、クライアント側から伝送されたデータを同期させて受け取り、リクエストされた各種のリソースを検索して新規作成し、リクエストされたビジネスモデルアクティブを応答して実行し、ビジネスモデルアクティブの実行状況によって、リクエストされた各種のリソース、データ又は異常情報を返信し、前述のビジネスモデルのファクトリーコンポーネントが定義されたビジネスモデルオブジェクトによって、ビジネスモデルの実例をロードし、ビジネスモデルの定義とビジネスモデルの継承及びコンポーネントリンクとの関係を解析し、ビジネスモデルにおいて定義された各種のリソースを調整し、ビジネスモデルオブジェクトにおけるデータオブジェクトコンポーネントによって、アクティブデータオブジェクトの実例とインタラクティブデータを新規作成して管理し、ビジネスモデルが定義されたビジネスモデルアクティブを実行し、クライアント側の呼び出し又はその他の外部の呼び出しが完成され、
前述のクライアント側のシステムアーキテクチャは、クライアント側のコントロールエンジン、データオブジェクトの代理コンポーネント及びユーザーインターフェイスコンポーネントを備え、
クライアント側のコントロールエンジンは、クライアント側のリソースリクエスト、コマンド呼び出しを行い、サーバーに同期させたデータ又はその他のリソースを送信し、ビジネスモデルアクティブをリクエストして実行し、データのエンコード、デコード、通信、応答、解析及びロードを行い、サーバー側に返信されたデータ、コード又はその他のリソースを実行すると共に、クライアント側プログラムにコード実行環境を提供するために使用し、
データオブジェクトの代理コンポーネントは、ユーザーインターフェイスコンポーネントが表示されたデータのソースになると共に、前述のアクティブビジネスモデルコンポーネントにおいて同様に命名されたアクティブデータオブジェクトの実例と対応し、且つ前述のアクティブデータオブジェクトの実例の一部又は全部データを備え、
ユーザーインターフェイスコンポーネントは、クライアント側に表示された各種インターフェイスコンポーネントを備え、前述のビジネスモデルにおいて定義された前述のユーザーインターフェイスディスクリプションコンポーネントと、命名により対応すると共に、イベント駆動型応答機構によって、前述のデータオブジェクトの代理コンポーネントのデータと同期することを特徴とするビジネスモデル指向のソフトウェア実行プラットフォーム。
【請求項２】
前述のソフトウェア実行プラットフォームの実行方法は、
前述のソフトウェア実行プラットフォームを起動し、初期化の操作を完了させるステップS1と、
クライアント側がワークページにページリクエストを送信し、リクエストされたページパラメータが前述のソフトウェア実行プラットフォームにおいて定義されたビジネスモデル名を備えるステップS2と、
前述のワークページがページリソースをロードし、クライアント側のシステムアーキテクチャのクライアント側のコントロールエンジンを起動すると共に、ページパラメータにおけるビジネスモデル名を前述のクライアント側のコントロールエンジンに伝送され、該クライアント側のコントロールエンジンが、ユーザーインターフェイスコンポーネントリソースを初期化するように、サーバー側に該ビジネスモデル名と同名であるアクティブビジネスモデルコンポーネントをリクエストしてロードするステップS3と、
サーバー側のビジネスモデルのコントロールエンジンが、クライアント側のリクエストに応答され、リクエストされたビジネスモデル名によって、キャッシュメモリにおいてそれと同名であるアクティブビジネスモデルコンポーネントがあるかどうかを検索し、前述のアクティブビジネスモデルコンポーネントがある場合に、ステップS8に移行し、ない場合にステップS5に移行するステップS4と、
サーバー側のビジネスモデルのコントロールエンジンが、サーバー側のビジネスモデルのファクトリーコンポーネントに、クライアント側がリクエストされたビジネスモデル名と同名であるビジネスモデルオブジェクトを検索し、検索されたビジネスモデルオブジェクトによって、検査、授権認証を行うステップS5と、
サーバー側のビジネスモデルのコントロールエンジンが、認証後の前述のビジネスモデルオブジェクトによって、アクティブビジネスモデルコンポーネントを新規作成してキャッシュするステップS6と、
サーバー側のアクティブビジネスモデルコンポーネントが初期化の操作を行うステップS7と、
サーバー側のアクティブビジネスモデルコンポーネントが、前述のクライアント側のリクエストによって、リクエストされたリソースを検索し、リクエストされた前述のビジネスモデルにおいて定義されたビジネスモデルアクティブを実行し、クライアント側が提出したデータを同期させて受け取ると共に、クライアント側に返信する必要がある各種のリソース、データ及び異常情報を、書式符号化した後に、クライアント側に返信するステップS8と、
クライアント側のコントロールエンジンが、サーバー側に返信した書式データによって解析を行い、クライアント側のシステムアーキテクチャのユーザーインターフェイスコンポーネント、データオブジェクトの代理コンポーネント及びロードデータを動的に新規作成し、返信されたスクリプトとその他のリソースをキャッシュ又は実行すると共に、新規作成されたユーザーインターフェイスコンポーネントを表示するステップS9と、
クライアント側のシステムアーキテクチャのクライアント側のユーザが、関連操作を実行し、クライアント側のコントロールエンジンによって、予め定義されたスクリプトを実行し、サーバー側に増加又は修正されたデータを同期させ、及び/又は、リクエストサーバー側に対して、対応するビジネスモデルアクティブを実行するステップS10と、
を備えることを特徴とする請求項１に記載のソフトウェア実行プラットフォームの実行方法。
【請求項３】
前述のステップS5において、前述のサーバー側のビジネスモデルのコントロールエンジンは、サーバー側のビジネスモデルのファクトリーコンポーネントに、クライアント側がリクエストされたビジネスモデル名と同名であるビジネスモデルオブジェクトを検索し、該ビジネスモデルオブジェクトが存在しない時に、前述のビジネスモデルのファクトリーコンポーネントが、前述のソフトウェア実行プラットフォームにおいて、該ビジネスモデルを定義したリソースを検索すると共に、検索されたリソースデータによって、ビジネスモデルオブジェクトを新規作成して管理し、前述のビジネスモデルは、命名アクセスを使用したデータオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースをさらに備えることを特徴とする請求項２に記載のソフトウェア実行プラットフォームの実行方法。
【請求項４】
前述のビジネスモデルは、命名規則又は親ビジネスモデル名称を指定する方式を使用して、ビジネスモデルの継承を行い、子ビジネスモデルは、親ビジネスモデルが定義された内容をアクセスすることが可能であり、子ビジネスモデルは、親ビジネスモデルと同様に命名されたデータオブジェクト、ビジネスモデルアクティブとクライアント側のリソースが存在した場合に、該子ビジネスモデルをアクセスする時に、その親ビジネスモデルと対応するリソースが覆われていることを特徴とする請求項３に記載のソフトウェア実行プラットフォームの実行方法。
【請求項５】
前述のビジネスモデルは、リンクコンポーネントを定義する方式によって、非継承方式でのその他の前述のビジネスモデルにおいて定義されたユーザーインターフェイスコンポーネントをアクセスし、該ビジネスモデル及びその親モデルがリンクされたビジネスモデルと同様に命名されたデータオブジェクトが存在する時に、リンクされたビジネスモデルにおいて、同様に命名されたデータオブジェクトが覆われるようになっていることを特徴とする請求項４に記載のソフトウェア実行プラットフォームの実行方法。
【請求項６】
前述のビジネスモデルアクティブプロパティは、授権別名をさらに備え、
前述のソフトウェア実行プラットフォームの実行方法は、
前述のアクティブビジネスモデルコンポーネントが、授権別名によって、登録されたユーザが関連ビジネスモデルアクティブをリクエストして実行する権限があるかどうかを自動的に判断することを特徴とする請求項２〜５の何れか１項に記載のソフトウェア実行プラットフォームの実行方法。
【請求項７】
前述のクライアント側のシステムアーキテクチャのデータオブジェクトの代理コンポーネントの行データと、サーバー側の前述のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データとは、動的に生成された唯一行タグによって対応し、行データ同期の識別根拠としていることになり、
その中に、前述のクライアント側のシステムアーキテクチャのデータオブジェクトの代理コンポーネントと、サーバー側の前述のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データとの内容同期は、２種類の方式を備え、
第１種類は、列名に基づく同期であって、行データ毎に列名と対応する値を使用し、データをインタラクティブして同期する方式であり、
第２種類は、シリアルナンバーに基づく同期であって、行データ毎にアルファベットプラス列号と対応する値を使用し、データをインタラクティブして同期する方式であることを特徴とする請求項２〜５の何れか１項に記載のソフトウェア実行プラットフォームの実行方法。
【請求項８】
前述のビジネスモデルアクティブのスクリプトコードは、ソースコードのロードをサポートし、
前述のソフトウェア実行プラットフォームの実行方法は、
前述のビジネスモデルオブジェクト毎に、自己定義されたクラスローダーを使用し、リアルタイムでコンパイルして実行すると共に、コンパイルのスクリプトをビジネスモデルオブジェクトにキャッシュされ、
サーバー側のビジネスモデルのファクトリーコンポーネントが該ビジネスモデルオブジェクトをリリーズした時に、リアルタイムで更新するように、対応したクラスローダーがリリーズされることを特徴とする請求項２〜５の何れか１項に記載のソフトウェア実行プラットフォームの実行方法。
【請求項９】
サーバー側のビジネスモデルのファクトリーコンポーネントがビジネスモデルオブジェクトを新規作成した時に、データオブジェクト実例を生成し、アクティブビジネスモデルコンポーネントがクライアント側のリクエストを処理した時に、前述のデータオブジェクト実例によって、アクティブデータオブジェクトの実例を生成し、
アクティブデータオブジェクトは、データベース又はその他の外部リソースと、キャッシュされたアクティブデータのインタラクティブを行うことを特徴とする請求項２〜５の何れか１項に記載のソフトウェア実行プラットフォームの実行方法。
【請求項１０】
ビジネスモデル指向のソフトウェアの開発方法は、
ソフトウェア実行プラットフォームの起動を行い、初期化の操作を完了させるステップK1と、
登録を行うユーザが、登録のリクエストとレジスターを完了させた後、ワークページに入るステップK2と、
モデル管理ページに入り、ソフトウェア実行プラットフォームの各種のビジネスモデルを新規作成又は定義するステップK3と、
ビジネスモデルの内容定義インターフェイスに入るステップK4と、
ビジネスモデルのプロパティを設置するステップK5と、
ビジネスモデルのデータオブジェクトを定義するステップK6と、
ビジネスモデルの各種タイプのユーザーインターフェイスディスクリプションコンポーネントを定義するステップK7と、
ビジネスモデルのモデルアクティブを定義するステップK8と、
ビジネスモデルのクライアント側のリソースを定義するステップK9と、
を備えることを特徴とする請求項２〜５の何れか１項に記載のソフトウェア実行プラットフォームの実行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューターの技術領域に関し、特に、コンピューターのソフトウェアシステムにおいて、ビジネスモデル指向のソフトウェア実行プラットフォームを実現することに関する。
【背景技術】
【０００２】
ソフトウェアの開発技術は、手続き指向、オブジェクト指向の発展段階を経由し、コンポーネント指向、サービス指向の方向に向いて発展している。現在、市場において、ソフトウェアの開発スピードを向上し、ソフトウェアの開発周期を短縮するために、多くの解決策とソフトウェア製品が現れて来て、国外で多くのソフトウェアのメーカーにも、多くのアプリケーションを出している。しかしながら、従来の技術と解決策において、上記のアプリケーションは、基本的に従来の技術とプラットフォームに基づいて行われていて、その実行モードと設計の考え方は、本質的に変わることがなく、煩雑且つ変化の多いビジネスの要求と変化点の両方に配慮を加えることが困難であり、特に、現在、インターネット上に基づくアプリケーションは、殆どフォームベースであり、インタラクション性が悪く、制御が困難であり、且つコード量も非常に多く、開発とメンテナンスのコストが高い。現在、クラウド開発案と製品は、殆ど従来の開発手段を簡単にインターネット上に移させるだけ、又はある種類の製品を修正又はカスタムオーダーすることに限定され、エンドユーザーの要求を満足することが非常に困難であり、これは、コンピューターソフトウェア技術の発展に不利な影響を及ぼす。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本発明の主な目的は、ビジネスモデル指向を開示し、安全、安定、開発効率が良く、メンテナンスコストが低く、拡張しやすいソフトウェア実行プラットフォーム及びその実行方法を提供することである。
【課題を解決するための手段】
【０００４】
上記の目的を達成するために、ビジネスモデル指向のソフトウェア実行プラットフォームはサーバー側のシステムアーキテクチャ及びクライアント側のシステムアーキテクチャを備え、
前述のサーバー側のシステムアーキテクチャは、ビジネスモデルのファクトリーコンポーネント、ビジネスモデルのコントロールエンジン及びアクティブビジネスモデルコンポーネントを備え、
ビジネスモデルのファクトリーコンポーネントは、定義されたビジネスモデルリソースを検索し、検索されたリソースデータによって、ビジネスモデルオブジェクトを新規作成して管理するために使用し、前述のビジネスモデルは、命名アクセスを使用したデータオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースを備え、
ビジネスモデルのコントロールエンジンは、セッション安全認証及びビジネスモデルのアクセス認証サービスを提供し、アクティブビジネスモデルコンポーネントをロード又はリリーズするために使用し、
アクティブビジネスモデルコンポーネントは、クライアント側のアクセスリクエストを処理し、プログラムコンテキストインターフェイス及び外部アクセスインターフェイスを提供するために使用し、クライアント側のリクエストによって、クライアント側から伝送されたデータを同期させて受け取り、リクエストされた各種のリソースを検索して新規作成し、リクエストされたビジネスモデルアクティブを応答して実行し、ビジネスモデルアクティブの実行状況によって、リクエストされた各種のリソース、データ又は異常情報を返信し、前述のビジネスモデルのファクトリーコンポーネントが定義されたビジネスモデルオブジェクトによって、ビジネスモデルの実例をロードし、ビジネスモデルの定義とビジネスモデルの継承及びコンポーネントリンクとの関係を解析し、ビジネスモデルにおいて定義された各種のリソースを調整し、ビジネスモデルオブジェクトにおけるデータオブジェクトコンポーネントによって、アクティブデータオブジェクトの実例とインタラクティブデータを新規作成して管理し、ビジネスモデルが定義されたビジネスモデルアクティブを実行し、クライアント側の呼び出し又はその他の外部の呼び出しが完成され、
前述のクライアント側のシステムアーキテクチャは、クライアント側のコントロールエンジン、データオブジェクトの代理コンポーネント及びユーザーインターフェイスコンポーネントを備え、
クライアント側のコントロールエンジンは、クライアント側のリソースリクエスト、コマンド呼び出しを行い、サーバーに同期させたデータ又はその他のリソースを送信し、ビジネスモデルアクティブをリクエストして実行し、データのエンコード、デコード、通信、応答、解析及びロードを行い、サーバー側に返信されたデータ、コード又はその他のリソースを実行すると共に、クライアント側プログラムにコード実行環境を提供するために使用し、
データオブジェクトの代理コンポーネントは、ユーザーインターフェイスコンポーネントが表示されたデータのソースになると共に、前述のアクティブビジネスモデルコンポーネントにおいて同様に命名されたアクティブデータオブジェクトの実例と対応し、且つ前述のアクティブデータオブジェクトの実例の一部又は全部データを備え、
ユーザーインターフェイスコンポーネントは、クライアント側に表示された各種インターフェイスコンポーネントを備え、前述のビジネスモデルにおいて定義された前述のユーザーインターフェイスディスクリプションコンポーネントと、命名により対応すると共に、イベント駆動型応答機構によって、前述のデータオブジェクトの代理コンポーネントのデータと同期する。
【０００５】
上記のソフトウェア実行プラットフォームと対応し、本発明に開示された実行方法は、
前述のソフトウェア実行プラットフォームを起動し、初期化の操作を完了させるステップS1と、
クライアント側がワークページにページリクエストを送信し、リクエストされたページパラメータが前述のソフトウェア実行プラットフォームにおいて定義されたビジネスモデル名を備えるステップS2と、
前述のワークページがページリソースをロードし、クライアント側のシステムアーキテクチャのクライアント側のコントロールエンジンを起動すると共に、ページパラメータにおけるビジネスモデル名を前述のクライアント側のコントロールエンジンに伝送され、該クライアント側のコントロールエンジンが、ユーザーインターフェイスコンポーネントリソースを初期化するように、サーバー側に該ビジネスモデル名と同名であるアクティブビジネスモデルコンポーネントをリクエストしてロードするステップS3と、
サーバー側のビジネスモデルのコントロールエンジンが、クライアント側のリクエストに応答され、リクエストされたビジネスモデル名によって、キャッシュメモリにおいてそれと同名であるアクティブビジネスモデルコンポーネントがあるかどうかを検索し、前述のアクティブビジネスモデルコンポーネントがある場合に、ステップS8に移行し、ない場合にステップS5に移行するステップS4、
サーバー側のビジネスモデルのコントロールエンジンが、サーバー側のビジネスモデルのファクトリーコンポーネントに、クライアント側がリクエストされたビジネスモデル名と同名であるビジネスモデルオブジェクトを検索し、検索されたビジネスモデルオブジェクトによって、検査、授権認証を行うステップS5と、
サーバー側のビジネスモデルのコントロールエンジンが、認証後の前述のビジネスモデルオブジェクトによって、アクティブビジネスモデルコンポーネントを新規作成してキャッシュするステップS6と、
サーバー側のアクティブビジネスモデルコンポーネントが初期化の操作を行うステップS7と、
サーバー側のアクティブビジネスモデルコンポーネントが、前述のクライアント側のリクエストによって、リクエストされたリソースを検索し、リクエストされた前述のビジネスモデルにおいて定義されたビジネスモデルアクティブを実行し、クライアント側が提出したデータを同期させて受け取ると共に、クライアント側に返信する必要がある各種のリソース、データ及び異常情報を、書式符号化した後に、クライアント側に返信するステップS8と、
クライアント側のコントロールエンジンが、サーバー側に返信した書式データによって解析を行い、クライアント側のシステムアーキテクチャのユーザーインターフェイスコンポーネント、データオブジェクトの代理コンポーネント及びロードデータを動的に新規作成し、返信されたスクリプトとその他のリソースをキャッシュ又は実行すると共に、新規作成されたユーザーインターフェイスコンポーネントを表示するステップS9と、
クライアント側のシステムアーキテクチャのクライアント側のユーザが、関連操作を実行し、クライアント側のコントロールエンジンによって、予め定義されたスクリプトを実行し、サーバー側に増加又は修正されたデータを同期させ、及び/又は、リクエストサーバー側に対して、対応するビジネスモデルアクティブを実行するステップS10と、を備える。
【発明の効果】
【０００６】
本発明に開示されたビジネスモデル指向のソフトウェア実行プラットフォーム及びその実行モードは、少なくとも以下のメリットがある。
【０００７】
１、コンポーネント統合とカスタムオーダーをサポートし、プラットフォームアーキテクチャ、ユーザーインターフェイス、データ持久化、安全性、権限管理等を一体化にするようになり、発布や部署の必要がなく、コード量が従来の方式より大幅に減少することができ、簡単、明確、安全、安定、分かり易く、開発効率が高く、メンテナンスコストが低く、拡張しやすく、広い範囲範囲に適用する可能などのメリットがある。
【０００８】
２、上記のソフトウェア実行プラットフォーム及びその実行方法に基づいて、そのソフトウェアの開発方式、ソフトウェア実行プラットフォームの各種ビジネスモデルを新規作成又は定義するだけで良く、ソフトウェアシステム開発を簡略させ、プログラムを発布や部署の必要がなく、コードワークを設計する量を大幅に減少することができ、開発コスト、実施コスト及びメンテナンスコストを低減し、ソフトウェア開発周期を大幅に短縮すると共に、ネットワークインタラクティブの回数と伝送されたデータの量を効果的に減少し、システムの安全性、安定性及びユーザーインターフェイスのインタラクションを向上し、広い範囲に適用し、サービス指向のソフトウェア技術発展のために基礎を打ち建て、クラウド環境開発のコンピューターソフトウェアシステムに解決策を提供し、ネット構成化ソフトウェアの発展応用するために新しい考えの方向と実現方法を開拓している。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例に開示されたビジネスモデル指向のソフトウェア実行プラットフォームの全体アーキテクチャの概略図である。
【図２】本発明の実施例に開示されたビジネスモデルの構成と内容の概略図である。
【図３】本発明の実施例に開示されたビジネスモデルの命名継承構成の概略図である。
【図４】本発明の実施例に開示されたビジネスモデルが定義されたモデル間にリンクされたユーザーインターフェイスディスクリプションコンポーネント構成の概略図である。
【図５】本発明の実施例に開示されたコンピューターソフトウェアシステムにおいて、ビジネスモデル指向のソフトウェア実行プラットフォームの実行方法の概略的なフローチャートである。
【図６】本発明の実施例に開示されたコンピューターソフトウェアシステムにおいて、ビジネスモデル指向のソフトウェアの開発方法の概略的なフローチャートである。
【図７】本発明の実施例に開示されたコンピューターソフトウェアシステムにおいて、ビジネスモデル指向のソフトウェアの開発方法の概略的なフローチャートである。
【発明を実施するための形態】
【００１０】
以下、図面に参照しながら、本発明を実施例によってさらに説明する。
【００１１】
本実施例は、ソフトウェア実行プラットフォームを開示し、図１に示すように、サーバー側のシステムアーキテクチャ及びクライアント側のシステムアーキテクチャを備えている。そして、サーバー側のシステムアーキテクチャは、ビジネスモデルのファクトリーコンポーネント、ビジネスモデルのコントロールエンジン及びアクティブビジネスモデルコンポーネントを備えている。クライアント側のシステムアーキテクチャは、クライアント側のコントロールエンジン、データオブジェクトの代理コンポーネント及びユーザーインターフェイスコンポーネント。Port（ポート）は、サーバーがクライアント側のリクエストに応じて、開放されたアクセスポートであり、ASPは、Active Server Pageの略語であり、その意味は「アクティブサーバーページ」であり、マイクロソフト.netアーキテクチャのアプリケーションに属している。JSP、Servlet（Java（登録商標）Server Pages）は、Sun Microsystemsの主導によって、アクティブホームページ技術基準とアクセス技術を提出し、J2EE標準に属している。
【００１２】
各構成部分の機能は下記の通りである。
【００１３】
ビジネスモデルのファクトリーコンポーネントは下記の機能があり、定義されたビジネスモデルのリソースを検索し、検索されたリソースデータによって、ビジネスモデルオブジェクトを新規作成して管理するために、前述のビジネスモデルは、ソフトウェア工程の観点から、ソフトウェアシステムに要求されたディスクリプションの客体を分類することであり、具体的に、命名アクセスを使用したデータオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースを備えている。
【００１４】
ビジネスモデルのコントロールエンジンは、セッション安全認証及びビジネスモデルのアクセス認証サービスを提供し、アクティブビジネスモデルコンポーネントをロード又はリリースするために使用する。
【００１５】
アクティブビジネスモデルコンポーネントは、クライアント側のアクセスリクエストを処理し、プログラムコンテキストインターフェイス及び外部アクセスインターフェイスを提供するために使用する。クライアント側のリクエストによって、クライアント側から伝送しているデータを同期させて受け取るようになって、リクエストされた各種のリソースを検索して新規作成し、リクエストされたビジネスモデルアクティブを応じて実行するようになって、ビジネスモデルアクティブの実行状況によって、リクエストされた各種のリソース、データや異常情報（説明すべきことは、本発明において、データとリソースについて、明確に区分けしなく、一般的に、リソースの範囲がより広く、例えば、スクリプト、ユーザーインターフェイス、外部ファイルなどがリソースと呼ばれることができるが、これらのリソースは、各種の形態のデータでソフトウェアシステムに存在している）を返信する。そして、前述のビジネスモデルのファクトリーコンポーネントが定義されたビジネスモデルオブジェクトによって、ビジネスモデルの実例をロードし、ビジネスモデルの定義とビジネスモデルの継承及びコンポーネントリンクとの関係を解析し、ビジネスモデルにおいて定義された各種のリソースを調整し、ビジネスモデルオブジェクトにおけるデータオブジェクトコンポーネントによって、アクティブデータオブジェクトの実例とインタラクティブデータを新規作成して管理するようになって、ビジネスモデルにおいて定義されたビジネスモデルアクティブを実行し、クライアント側の呼び出し又はその他の外部の呼び出しを完成させた。さらに、アクティブデータオブジェクトは、データの加工処理及びデータを長続きすることを実現するように、データベース又はその他の外部リソースと、キャッシュメモリにおけるアクティブデータのインタラクティブを行っている。
【００１６】
クライアント側のコントロールエンジンは、クライアント側のリソースリクエスト、コマンドの呼び出しを行い、サーバーに同期されたデータ又はその他のリソースを送信し、ビジネスモデルアクティブをリクエストして実行し、データのエンコード、デコード、通信、応答、解析、ロード等を行い、サーバー側に返信するデータ、コードやその他のリソースを実行し、且つ、クライアント側のプログラムにコード実行環境を提供するために使用する。
【００１７】
データオブジェクトの代理コンポーネントは、ユーザーインターフェイスコンポーネントに表示されたデータのソースになると共に、前述のアクティブビジネスモデルコンポーネントにおいて、同様に命名されたアクティブデータオブジェクトの実例と対応し、アクティブデータオブジェクトの実例の一部又は全部のデータを備え、クライアント側のデータの持久化を実現する。本実施例において、該データオブジェクトの代理コンポーネントの行データとサーバー側のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データとは、アクティブ的に生成された唯一の行タグによって対応つけられ、データ同期の識別根拠になることが好ましい。該データオブジェクトの代理コンポーネントとサーバー側のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データの内容の同期は、２種類を含め、即ち、列名に基づく同期であって、行データ毎に列名の和に対応する値を使用し、データをインタラクティブし同期する方式であり、又はシリアルナンバー基づく同期であって、行データ毎にアルファベットプラス列号の和に対応する値を使用し、データをインタラクティブし同期する方式である。
【００１８】
ユーザーインターフェイスコンポーネントは、クライアント側に表示されるための各種のインターフェイスコンポーネントを備え、前述のビジネスモデルにおいて定義された前述のユーザーインターフェイスディスクリプションコンポーネントと、命名によって対応すると共に、イベント駆動型の駆動型応答機構によって、前述のデータオブジェクトの代理コンポーネントのデータと同期する。
【００１９】
該システムアーキテクチャにおいて、図１に示すように、サーバー側のビジネスモデルのファクトリーコンポーネントとアクティブビジネスモデルコンポーネントは、リソースファイルやデータをインタラクティブするように、データベースなどの外部リソースと接続している。
【００２０】
図１に示すソフトウェア実行プラットフォームは、ビジネスモデル指向のソフトウェア実行プラットフォームの全体アーキテクチャである。ビジネスモデルの内容は、図２に示すように、関連ビジネスモデルのプロパティディスクリプション及びビジネスモデルコンポーネントを備え、ビジネスモデルコンポーネントは、データオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースを備える。
【００２１】
ビジネスモデルプロパティは、モデルコード、階層コード、モデル名称、初期ユーザーインターフェイスのコンポーネント名称、アタッチメントパス、パブリックタグ、アクティブタグ、生命周期、検証タグ、サブモデルタグ、バージョン、修正日付、修正日誌情報を備えている。パブリックタグは真となる時に、全てのオンラインユーザが、前述のビジネスモデルオブジェクトによって、新規作成されたアクティブビジネスモデルコンポーネントを共有することを表示され、そうではない場合には、呼び出しによって、ユーザ毎に、一つのアクティブビジネスモデルコンポーネントを新規作成した。ビジネスモデルアクティブプロパティは、更に授権別名を含むことが好ましく、該当授権別名は、上記のアクティブビジネスモデルコンポーネントが該授権別名によって、登録ユーザがビジネスモデルアクティブをリクエストして実行する権限があるかどうかを自動的に判断するために使用している。
【００２２】
データオブジェクトは、ビジネス実体オブジェクトの抽象を行い、命名アクセスを使用する。ビジネスモデルのデータオブジェクトプロパティは、データオブジェクト名称、静態状態であるかどうか、修正プロパティ、SQLプロパティ、デフォルト値、同期列名、多表更新依頼関係、ページングとその他の列プロパティを備え、データ列をカスタムすることができる。静態状態であるかどうかは、アクティブデータオブジェクトのデータが全ての呼び出し者によって共有され、静態状態であるかどうかが真になった時に、該データオブジェクトに基づいて、新規作成したアクティブデータオブジェクトの実例の呼び出しが同一の実例を指向することを指す。指定同期列名の意味は、前述のソフトウェア実行プラットフォームのクライアント側データオブジェクトの代理コンポーネントが、サーバー側のビジネスモデルのデータオブジェクトと異なるデータ構成を有することができる。
【００２３】
ユーザーインターフェイスディスクリプションコンポーネントは、前述のビジネスモデルがクライアント側の表示層における前述のクライアント側のアーキテクチャのユーザーインターフェイスコンポーネントの内容ディスクリプションと事件スクリプトであり、命名アクセスを使用する。すなわち、ユーザーインターフェイスディスクリプションコンポーネントは、ソフトウェア実行プラットフォームクライアント側のシステムアーキテクチャにおけるユーザーインターフェイスコンポーネントに対して定義されたことであり、選択的に、クライアント側のリクエストによって、サーバー側によるアクティブビジネスモデルコンポーネントがユーザーインターフェイスコンポーネントのプロパティ定義によって、ディスクリプションテキストを生成し、さらに、クライアント側システムアーキテクチャのクライアント側コントロールエンジンの解析によって、クライアント側のインターフェイスコンポーネントを新規作成して表示する。その中に、ユーザーインターフェイスコンポーネントは、多くのタイプを有し、例えば、フリーテーブル、二次元テーブル、ツリーテーブル、ボタングループ、ウインドウ、コンポーネント容器、二分容器、タブ、メニュー、リストコンポーネント、自己定義などの複数の種類のタイプを有し、対応するユーザーインターフェイスディスクリプションコンポーネントは、ユーザーインターフェイスコンポーネントに対して行われたディスクリプションである。前述のユーザーインターフェイスディスクリプションコンポーネントは、ユーザーインターフェイスコンポーネントと対応付けられ、複数の種類の異なるタイプを有する。プロパティは、パブリックプロパティとプライベ−トプロパティを備える。パブリックプロパティは、前述のユーザーインターフェイスコンポーネントの命名、名称ディスクリプション、位置、サイズ、新規作成時に実行されたスクリプトを備える。プライベ−トプロパティは、前述のユーザーインターフェイスコンポーネントタイプに従って、異なるタイプとなるプロパティである。本実施例に、好ましいのは、一つのユーザーインターフェイスコンポーネント、即ち、ボタングループインターフェイスコンポーネント（一つ又は複数のボタンのインターフェイスコンポーネントを含め）をさらに増設することができ、定義操作方式によって、別名設置を設置して授権し、異なる操作方式または授権において、異なるボタンを表示することができ、従来の方式での複雑の授権管理を簡略した。本実施例において、好ましいのは、グリッドロケーションの方法を採用することによって、ユーザーインターフェイスコンポーネントサイズの位置決めと設置を行い、グリッドロケーションとは、ユーザーインターフェイスを論理上で複数の行、複数の列のグリッドに分けられ、行、列毎に指定された幅と高さを有し、上記のコンポーネントは、定義された異なるコンポーネントを指定することにより、グリッドにおける位置を並べることである。
【００２４】
ビジネスモデルアクティブは、前述のビジネスモデルにおいて、定義された動作であり、命名アクセスを使用する。ビジネスモデルアクティブは、主に下記の３種類のタイプのアクティブを備え、第１種類は、前述のソフトウェア実行プラットフォームサーバー側のビジネスモデルのコントロールエンジンが前述のソフトウェア実行プラットフォームアクティブビジネスモデルコンポーネントの実例を新規作成した時に、自動的に実行された初期化時のビジネスモデルアクティブである。第２種類は、前述のソフトウェア実行プラットフォームサーバー側のビジネスモデルのコントロールエンジンが新規作成した前述のソフトウェア実行プラットフォームアクティブビジネスモデルコンポーネントをアンインストールされた時に、自動的にモデルアンインストールを実行する時のビジネスモデルアクティブである。第３種類は、クライアント側の呼び出しをリクエストした時又はその他の呼び出しを表示した時に、その他のビジネスモデルアクティブを実行することである。一方、ビジネスモデルアクティブ毎に、３種類の約束方法（その他の方法をカスタムすることを除かない）をサポートし、呼び出しがリクエストされた時に、実行された時間が異なり、該ビジネスモデルアクティブが呼び出された時に、これらの３種類の約束方法は順次に実行する。方法１は、アクティブビジネスモデルコンポーネントがクライアント側から送信されたデータ操作を同期させて受け取る前に、実行されたbefore方法である。方法２は、アクティブビジネスモデルコンポーネントがクライアント側から送信されたデータ操作を同期させて受け取った後に、実行されたcall方法である。方法３は、前述のアクティブビジネスモデルコンポーネントが、前述の当該ビジネスアクティブ呼び出しを実行した後に、今回のクライアント側とサーバー側との会話が完了した時に、実行されたafter方法である。
【００２５】
クライアント側のリソースは、前述のソフトウェア実行プラットフォームクライアント側がリクエストする必要があるその他のリソース又はスクリプトであり、命名アクセスを使用する。
【００２６】
本実施例において、ビジネスモデルは、命名規則又は親ビジネスモデル名称を指定する方式を使用して、ビジネスモデルの継承を行うことが好ましい。上記のソフトウェア実行プラットフォームが動作している過程において、子ビジネスモデルは、親ビジネスモデルが定義された内容をアクセスすることができる。子ビジネスモデルは、親ビジネスモデルと同様に命名されたデータオブジェクト、ビジネスモデルアクティブとクライアント側のリソースが存在した場合に、該子ビジネスモデルをアクセスする時に、その親ビジネスモデルと対応するリソースが覆われている。以下、図３を例として詳細に説明する。
【００２７】
図３に示すように、命名継承は、ビジネスモデルコード文字列が左向きに含まれる原則を採用することによって行い、図中に、ビジネスモデルab、ab_c1、ab_c2を定義し、ビジネスモデルab_c1、ab_c2は、ビジネスモデルabを継承していることが考えられる。ビジネスモデルab_c1、ab_c2は、親ビジネスモデルabと同じような命名されたデータオブジェクト、ビジネスモデルアクティブとクライアント側のリソースが存在した時に、親ビジネスモデルと対応するリソースが覆われている。図中に、ビジネスモデルabは、データオブジェクトdb_2とユーザーインターフェイスディスクリプションコンポーネントdiv_1を定義し、div_1はdb_2を使用し、ビジネスモデルab_c2は、abを継承したと共に、データオブジェクトdb_2を定義した。この時、ビジネスモデルab_c2を使用することによって、div_1を呼び出すと、ab_c2のdb_2は、abにおいて定義されたdb_2を覆われ、即ち、div_1に実際に使用されたデータオブジェクトは、abにおけるdb_2ではなく、ab_c2におけるdb_2である。命名継承方式を使用したことでのビジネスモデルの継承は、オブジェクトの定義と異なり、その他のタグが必要なく、命名方式によって行わればよい。
【００２８】
親ビジネスモデル名称を指定する方式を使用し、ビジネスモデルの継承を行った時に、指定されたビジネスモデル名称に対応するビジネスモデルを該モデルの親モデルになり、ビジネスモデル継承規則が命名継承方式と同様である。
【００２９】
さらに、ビジネスモデルは、リンクコンポーネントを定義する方式によって、継承方式でのその他のビジネスモデルにおいて定義されたユーザーインターフェイスコンポーネントをアクセスすることができ、そして、該ビジネスモデル及びその親モデルがリンクされたビジネスモデルと同じく命名されたデータオブジェクトが存在した時に、リンクされたビジネスモデルにおいて、同じく命名されたデータオブジェクトが覆われるようになる。
【００３０】
以下、図４を例として詳しく説明する。
【００３１】
図４に示すように、前述のビジネスモデルは、リンクコンポーネントを定義する方式によって、非継承方式でのその他の前述のビジネスモデルにおいて定義されたユーザーインターフェイスコンポーネントをアクセスする。リンクコンポーネントモードで、サーバー側のアクティブビジネスモデルコンポーネントが、リンク源コンポーネントと同様に命名されたデータオブジェクトをロードした時に、リンク源コンポーネントが使用されたビジネスモデルにおいて定義されたデータオブジェクトが覆われる。図４において、ビジネスモデルacは、一つのリンクコンポーネントdiv_2を定義し、該リンクコンポーネントdiv_2が源コンポーネントビジネスモデルabのdiv_1までにリンクされ、サーバー側にロードされたアクティブビジネスモデルコンポーネントacにおいて、コンポーネントdiv_2を呼び出した時に、ビジネスモデルabにおいて定義されたデータオブジェクトdb_2は、ビジネスモデルacにおいて定義されたデータオブジェクトdb_2に覆われた。
【００３２】
図５は、図１に示すビジネスモデル指向のソフトウェア実行プラットフォームに対応し、該システムの実行方法を開示し、以下のステップを備えている。
【００３３】
ステップS1については、ソフトウェア実行プラットフォームを起動し、初期化の操作を完了させる。
【００３４】
ステップS2については、クライアント側がワークページにページリクエストを送信し、リクエストされたページパラメータが、ソフトウェア実行プラットフォームにおいて定義されたビジネスモデル名を備える。
【００３５】
ステップS3については、ワークページがページリソースをロードし、クライアント側のシステムアーキテクチャのクライアント側のコントロールエンジンを起動すると共に、ページパラメータにおけるビジネスモデル名をクライアント側のコントロールエンジンに伝送され、該クライアント側のコントロールエンジンが、ユーザーインターフェイスコンポーネントリソースを初期化するように、サーバー側に該ビジネスモデル名と同名であるアクティブビジネスモデルコンポーネントをリクエストしてロードする。
【００３６】
ステップS4については、サーバー側のビジネスモデルのコントロールエンジンが、クライアント側のリクエストに応答され、リクエストされたビジネスモデル名によって、キャッシュメモリにおいてそれと同名であるアクティブビジネスモデルコンポーネントがあるかどうかを検索し、前述のアクティブビジネスモデルコンポーネントがある場合に、ステップS8に移行し、ない場合にステップS5に移行する。
【００３７】
ステップS5については、サーバー側のビジネスモデルのコントロールエンジンが、サーバー側のビジネスモデルのファクトリーコンポーネントに、クライアント側がリクエストされたビジネスモデル名と同名であるビジネスモデルオブジェクトを検索し、検索されたビジネスモデルオブジェクトによって、検査、授権認証を行う。
【００３８】
その中に、上記のステップS5において、サーバー側のビジネスモデルのコントロールエンジンは、サーバー側のビジネスモデルのファクトリーコンポーネントに、クライアント側がリクエストされたビジネスモデル名と同名であるビジネスモデルオブジェクトを検索し、該ビジネスモデルオブジェクトが存在しない時に、ビジネスモデルのファクトリーコンポーネントが、ソフトウェア実行プラットフォームにおいて、該ビジネスモデルを定義したリソースを検索し、検索されたリソースデータによって、ビジネスモデルオブジェクトを新規作成して管理し、ビジネスモデルは、命名アクセスを使用したデータオブジェクト、ユーザーインターフェイスディスクリプションコンポーネント、ビジネスモデルアクティブ及びクライアント側のリソースを備える。
【００３９】
ステップS6については、サーバー側のビジネスモデルのコントロールエンジンが、認証後のビジネスモデルオブジェクトによって、アクティブビジネスモデルコンポーネントを新規作成してキャッシュする。図１に示すように、アクティブビジネスモデルコンポーネントは、一つまたは複数のビジネスモデルの実例を備え、ビジネスモデルの実例は、アクティブデータオブジェクト、ビジネスモデルアクティブ、アクティブユーザディスクリプションコンポーネント及びクライアント側のリソースを備える。
【００４０】
ステップS7については、サーバー側のアクティブビジネスモデルコンポーネントが初期化の操作を行い、すなわち、前述のビジネスモデルにおいて定義された初期化ビジネスモデルアクティブを実行する。ビジネスモデルオブジェクト毎に、自己定義されたクラスローダーを使用し、リアルタイムでコンパイルして実行すると共に、コンパイルされたスクリプトを前述のビジネスモデルオブジェクトにキャッシュされることが好ましい。サーバー側のビジネスモデルのファクトリーコンポーネントは、該ビジネスモデルオブジェクトをリリーズした時、リアルタイムで更新することを確保するために、前述のクラスローダーもリリーズされる。アクティブビジネスモデルコンポーネントは、自動生命周期管理をサポートすることが好ましく、サーバー側のアクティブビジネスモデルコンポーネントに具体的に表現し、以下の２種類のタイプを備える。
【００４１】
第１種類は維持であり、ロード開始から会話全体が完了するまで（表示オフを除く）又は一つの新しい同名であるアクティブビジネスモデルコンポーネントが新規作成した時に、リリーズすることが始まる。
【００４２】
第２種類は独占であり、会話の全過程において、該種類のタイプのアクティブビジネスモデルコンポーネントを一つだけに維持することができ、一つの別の同種類のタイプのアクティブビジネスモデルコンポーネントが作成されると、別の独占タイプのアクティブビジネスモデルコンポーネントが自動的にリリーズされた。
【００４３】
ステップS8については、サーバー側のアクティブビジネスモデルコンポーネントが、クライアント側のリクエストによって、リクエストされたリソースを検索し、リクエストされた前述のビジネスモデルにおいて定義されたビジネスモデルアクティブを実行し、クライアント側が提出したデータを同期させて受け取ると共に、クライアント側に返信する必要がある各種のリソース、データ及び異常情報を、書式符号化した後に、クライアント側に返信する。
【００４４】
ステップS9については、クライアント側のコントロールエンジンが、サーバー側に返信した書式データによって解析を行い、クライアント側のシステムアーキテクチャのユーザーインターフェイスコンポーネント、データオブジェクトの代理コンポーネント及びロードデータを動的に新規作成し、返信されたスクリプトとその他のリソースをキャッシュ又は実行すると共に、新規作成されたユーザーインターフェイスコンポーネントを表示する。
【００４５】
ステップS10については、クライアント側のシステムアーキテクチャのクライアント側のユーザが、関連操作を実行し、クライアント側のコントロールエンジンによって、予め定義されたスクリプトを実行し、サーバー側に増加又は修正されたデータを同期させ、及び/又は、リクエストサーバー側に対して、対応するビジネスモデルアクティブを実行する（及び/又はとは、選択的に、関連増加又は修正されたデータを同期させる時に、同時にサーバー側をリクエストし、対応するビジネスモデルアクティブを実行することができるが、相関データを同期させることは、対応するビジネスモデルアクティブをリクエストして実行することと分かられて、それぞれ独自に実行する）。通常、クライアント側がサーバー側をリクエストし、指定ビジネスモデルにおいて定義された命名ビジネスモデルアクティブを実行する。さらに、サーバー側が命名ビジネスモデルアクティブリソースを検索し、検索されたビジネスモデルアクティブのスクリプトを実行すると共に、関連結果情報をクライアント側に返信する。その後に、クライアント側のコントロールエンジンが、関連データを解析し、関連処理を行う。処理完了後に、ステップS4に移行し、次のインタラクティブ式の会話に入り、このように繰り返す。
【００４６】
図５に示す実行方法は、ビジネスモデルに基づくことであり、該方法の動作している過程中に、ビジネスモデルは、命名規則又は指定親ビジネスモデル名称方式を使用し、ビジネスモデル継承を行い、子ビジネスモデルが親ビジネスモデルが定義された内容をアクセスすることができる。子ビジネスモデルは、親ビジネスモデルと同様に命名されたデータオブジェクト、ビジネスモデルアクティブとクライアント側のリソースがあると、該子ビジネスモデルをアクセスした時に、その親ビジネスモデルと対応するリソースが覆われることになっていた。それによって、ビジネスモデルと対応するリソースが覆われることは、子ビジネスモデルが親ビジネスモデルのリソースを繰り返し使用させることができた上に、子ビジネスモデルが親ビジネスモデルと異なることが避けられ、子ビジネスモデルのパーソナルライズの要求を満足し、ビジネスモデル対するコンポーネント統合とパッケージングを実現することもできる。
【００４７】
アクティブビジネスモデルコンポーネントは、本アクティブビジネスモデルコンポーネントが依頼したビジネスモデルオブジェクトリソースと親（祖先を含む）ビジネスモデルオブジェクトリソースだけをアクセスすることができ、つまり、ビジネスモデル自身は、パッケージング性がある。本実施例において、さらに、ビジネスモデルは、リンクコンポーネントを定義する方式によって、非継承方式でのその他の前述のビジネスモデルにおいて定義されたユーザーインターフェイスコンポーネントをアクセスすることができ、該ビジネスモデル及びその親モデルがリンクされたビジネスモデルと同様に命名されたデータオブジェクトが存在すると、リンクされたビジネスモデルにおいて、同様に命名されたデータオブジェクトが覆われるようになっている。コンポーネントリンク方式によって、非継承方式でその他のビジネスモデルリソースのアクセスを実現することができ、ビジネスモデルリソースの繰り返し使用性と拡張性を向上した。コンポーネントリンク方式において、同様に命名されたデータオブジェクトが覆われることによって、リソースアクセスの衝突を避けることだけではなく、ビジネスモデルの拡張性を強化したことが得られ、ビジネスモデルがコンポーネントをサポートすることを実現した。例えば、ワークフロー処理を実現するビジネスモデルを定義し、通常、ワークフローの接続方法が統一しているが、異なるチケットやファイル処理のワークフローをサポートすることを実現するために、フロー定義規則を実現するデータオブジェクト又はフロー処理を記録するデータオブジェクトは、データベースにおいて異なるデータテーブルに対応させることが必要し、この時、ワークフロービジネスモデルをアクセスするビジネスモデルにおいて、同様に命名されたデータオブジェクトを定義すれば良く、ワークフロービジネスモデルの内容を変える必要がなく、覆われる方式がビジネスモデルの通用性と柔軟性を大幅に向上し、ビジネスモデルがコンポーネント化をサポートすることも実現した。
【００４８】
従来のソフトウェアの開発中に、登録されたユーザがある方法や機能を実行する権限があるかどうかを判断するには、プログラマが大量の時間を使用し、多くのコードを設計する必要があり、具体的な機能方法が混在し、レベルが明確ではなく、開発、修正、拡張とメンテナンスが困難である。このために、本発明の実施例は、アクティブビジネスモデルコンポーネントが、授権別名によって、登録されたユーザが関連ビジネスモデルアクティブをリクエストして実行する権限があるかどうかを自動的に判断することができる。授権別名を採用する自動的に判断する方式は、機能コードとユーザ実行権限判断とを分離させることを実現することができ、プログラマが登録されたユーザの実行権限を考えなくても良く、それにプログラムコードを設計する必要がなく、具体的な権限別名と同じ授権別名を設置すれば良く、簡単、レベルが明確し、かつ開発、拡張とメンテナンスを行い易いことを実現し、開発効率を大幅に向上した。
【００４９】
図５に示された実行方法において、さらに、下記のステップを備えることが好ましい。
クライアント側のシステムアーキテクチャのデータオブジェクトの代理コンポーネントの行データと、サーバー側の前述のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データとは、動的に生成された唯一行タグによって対応し、行データ同期の識別根拠としている。
【００５０】
その中に、前述のクライアント側のシステムアーキテクチャのデータオブジェクトの代理コンポーネントと、サーバー側の前述のアクティブビジネスモデルコンポーネントにおけるアクティブデータオブジェクトの行データとの内容同期は、２種類の方式を備える。
第１種類は、列名に基づく同期であって、行データ毎に列名と対応する値を使用し、データをインタラクティブして同期する方式である。
【００５１】
第２種類は、シリアルナンバーに基づく同期であって、行データ毎にアルファベットプラス列号と対応する値を使用し、データをインタラクティブして同期する方式である。上記の２種類の同期方式の長所・短所は下記の通りである。
【００５２】
例えば、一つの学生情報を修正又は登録することになり、学生が下記のフィールド情報がある。
StudentName：学生の名前
StudentCode：学生のコード
ClassName：クラスの名称
BornDate：誕生日
【００５３】
上記の行情報は、クライアントとサーバー側との間にデータをインタラクティブした時に、２種類の同期方式でのデータのエンコードが異なる。
【００５４】
１、列名に基づく同期は、行データ毎に列名と対応する値を使用し、データをインタラクティブして同期する方式である。
【００５５】
エンコードは、<row_rowid="1"StudentName="張三"StudentCode="0001"ClassName="101"BornDate="1980-01-01"/>である。
【００５６】
２、シリアルナンバーに基づく同期は、行データ毎にアルファベットプラス列号と対応する値を使用し、データをインタラクティブして同期する方式である。
【００５７】
エンコードは、<row_rowid="1"c1="張三"c2="0001"c3="101"c4="1980-01-01"/>である。
【００５８】
クライアント側のデータオブジェクトの代理コンポーネントとサーバー側のアクティブデータオブジェクトとは、列に対応する関係を既に形成したので、シリアルナンバーに基づく同期方式を採用した時に、伝送したデータの流量を減少することができ、且つ、例えば、列名c1が分離した後に列号1を得て、データ列の位置を直接に指向し、データ列の位置決め時間を効率的に短縮し、ソフトウェアの実行効率を向上し、しかし、第１方式を採用した時に、列名によって、列の位置を検索する必要があり、スピードが遅くなっている。
【００５９】
従来のテーブルを使用しサーバーとインタラクティブした場合と比べ、テーブルフォーム(form)における情報は、全部にダウンロ-ド又は提出する必要があり、内容を修正するかどうかと関わらず、インタラクティブの回数が多く、データ量も多くなっている。本発明に開示されたソフトウェア実行プラットフォーム及びその実行方法は、ネットワークのインタラクティブの回数と転送するデータの流量を減少することであり、少なくとも下記のa〜cの前述の内容を備える。
【００６０】
ａ、本プラットフォームにおいて、クライアント側ページの表示インターフェイスに対して、コンポーネント命名方式を使用することによって、クライアント側のインターフェイスコンポーネントが１回にロードされた後、コンポーネントがクライアント側のコントロールエンジンによってキャッシュされ（表示削除を除く）、再度にリクエストする時に、クライアント側のコントロールエンジンは、クライアント側のキャッシュメモリからロードし、この方式は、リクエストされたインターフェイスリソースデータの量を大幅に減少することができる。インターフェイスコンポーネントにおけるデータを変える必要がある時に、クライアント側のデータオブジェクトの代理コンポーネントのデータ内容だけを更新すれば、それに対応するクライアント側のインターフェイスコンポーネントの内容が、事件機構によって更新される。その表示層（View）とデータ層（Model）とは分離され、典型的なMVC構成思想と合っている。
【００６１】
ｂ、クライアント側のデータオブジェクトの代理コンポーネントとサーバー側のアクティブデータオブジェクトコンポーネントの行データは、前述の「シリアルナンバーの同期に基づく」方式によって、データのインタラクティブを行い、ネットワーク流量が従来の方式と比べて、少なくなっている（一般的に、1/3以上を減少することができる）。
【００６２】
ｃ、クライアント側のデータオブジェクトの代理コンポーネントは、修正された列ユニットデータを記録することができ、このように、サーバーに修正されたデータを提出する時に、全部ではなく、修正された部分だけを提出する。以上の例のように、ユーザーが学生の名前StudentNameフィールド内容を修正すると、伝送された行データがエンコードした後に、下記のようになっている。
<row_rowid="1"c1="李四"/>
【００６３】
この方式によって減少されたデータの量は、実際の状況に従って変化し、一般的に10%-90%のネットワークデータの量を減少することができ、従来の方式と比べて、全体的に1/2以上を減少した。
【００６４】
この実施例において、ビジネスモデルアクティブのスクリプトコードが、ソースコードのロードをサポートし、ビジネスモデルオブジェクト毎に、自己定義されたクラスローダーを使用し、リアルタイムでコンパイルして実行すると共に、コンパイルのスクリプトをビジネスモデルオブジェクトにキャッシュされたことが好ましい。サーバー側のビジネスモデルのファクトリーコンポーネントが該ビジネスモデルオブジェクトをリリーズした時に、リアルタイムで更新するように、対応したクラスローダーがリリーズされる。
【００６５】
この実施例において、サーバー側のビジネスモデルのファクトリーコンポーネントが、ビジネスモデルオブジェクトを新規作成した時に、データオブジェクト実例を生成し、アクティブビジネスモデルコンポーネントがクライアント側のリクエストを処理した時に、前述のデータオブジェクト実例によって、アクティブデータオブジェクトの実例を生成することが好ましい。アクティブデータオブジェクトは、データベース又はその他の外部リソースと、キャッシュされたアクティブデータのインタラクティブを行い、データ加工処理とデータの持久化を実現する。
【００６６】
上記のソフトウェア実行プラットフォーム及びその実行方法に基づいて、そのビジネスモデル指向のソフトウェアの開発方法は、図６に示すように、以下のステップによって実現することができる。
【００６７】
ステップK1は、ソフトウェア実行プラットフォームの起動を行い、初期化の操作を完了させる。
【００６８】
ステップK2は、登録を行うユーザが、登録のリクエストとレジスターを完了させた後、ワークページに入る。
【００６９】
ステップK3は、モデル管理ページに入り、ソフトウェア実行プラットフォームの各種のビジネスモデルを新規作成又は定義する。
【００７０】
ステップK4は、ビジネスモデルの内容定義インターフェイスに入る。
【００７１】
ステップK5は、ビジネスモデルのプロパティを設置する。
【００７２】
ステップK6は、ビジネスモデルのデータオブジェクトを定義する。
【００７３】
ステップK7は、ビジネスモデルの各種タイプのユーザーインターフェイスディスクリプションコンポーネントを定義する。
【００７４】
ステップK8は、ビジネスモデルのモデルアクティブを定義する。
【００７５】
ステップK9は、ビジネスモデルのクライアント側のリソースを定義する。
【００７６】
上記の開発方法は、非常に簡単で、ビジネスモデルの定義と具体的なビジネスの要求との関連が緊密であり、具体的な技術に対する要求が低く、開発者と実施者の主な力をビジネスに集中することができ、図７に示すように、開発者の大部分な仕事は、要求によってデータモデルを分析して作成することに集中し、その後、ビジネスモデル及びビジネスモデルの内容を定義する。技術の実現に多くの時間を費やすことがなく、実際の開発中に、この開発プラットフォームは、本発明の前述のアーキテクチャに基づいて作成した。
【００７７】
本発明において、上記のソフトウェア実行プラットフォームにおけるソフトウェアシステムアーキテクチャは、技術フレーム及び実現策略であり、実行モードと開発方法を備えるが、具体的なWebのプラットフォーム又はある具体的な言語に依頼しなく、J2EE標準、.ｎｅｔでも、その他のサービスプラットフォームでも、すべてこのようになっている。
【００７８】
本実施例に開示されたビジネスモデル指向のソフトウェア実行プラットフォーム及び開発方法、ソフトウェア実行プラットフォームクライアント側は、一般的に、ビジネスモデル名によってリクエストされた主なページファイルが一つしかなく（複数のページファイルを使用してもよい）、上記のように表示されたユーザーインターフェイスは、リクエストされたビジネスモデルにおいて、定義されたコンポーネントリソースによって異なる。主なページファイル（又はワークページと言う）テーブルを使用してプラットフォームのサーバー側とのインタラクティブを行うことがなくても良く（しかし、テーブルを使用してもよく）、ソフトウェア実行プラットフォームのクライアント側のコントロールエンジンとサーバー側のビジネスモデルのコントロールエンジンによって、統一に管理する。全体のコードの量は、従来の方式と比べて、大幅に減少し、システムの全体が簡単、明確であり、且つ発布や部署の必要がなく、ソフトウェアリリースの周期を大幅に短縮し、ソフトウェアの開発コストと実施コストを低減し、メンテナンスが簡単で、二次の開発が非常に容易である。非テーブルの方式を採用することができるので、良いヒューマンインタラクティブインターフェイスを提供することができ、エンドユーザーによって受けやすくなっている。該ソフトウェア実行プラットフォームにおいて、データオブジェクトの使用は、クライアント側がデータベースSQL対する直接的なアクセスをシールドし、SQL注入攻撃を効果的に防止することができ、性能が高くなり、より安全である。データの伝送と同期方式を最適化したので、ネットワークの流量を大幅に減少し、かつより安全、安定であり、開発大型の企業レベルのアプリケーション開発に適合している。
【００７９】
最後に、上記の実施例は、本発明の技術案を説明するだけに用い、それに限定するものではない。前述の実施例を参照し、本発明を詳細に説明したが、本領域の普通な技術者は下記のように理解すべきであり、つまり、前述の各実施例に記載された技術案を修正することができ、またはその中の一部の技術特徴を同等的に代替することができる。上記の修正又は代替は、対応する技術案の本質を本発明の各実施例の技術案の思想、範囲と離れることがない。
【産業上の利用可能性】
【００８０】
本発明のビジネスモデル指向のソフトウェア実行プラットフォーム及びその実行モードは、主にソフトウェアシステム開発に応用し、コンポーネント統合とカスタムオーダーをサーポートし、プラットフォームアーキテクチャ、ユーザーインターフェイス、データ持久化、安全性、権限管理等一体化の解決策があり、発布と部署することがなくてもよく、コード量が従来の方式により大幅に減少し、簡単、明確、安全、安定、学びやすく、開発効率が良く、メンテナンスコストが低く、拡張しやすい、適用の範囲が広い等のメリットがあると共に、ソフトウェアの開発方式は、ソフトウェア実行プラットフォームの各種ビジネスモデルを新規作成して定義するだけであればよく、ソフトウェアシステム開発を簡略化し、プログラムの部署と発布の必要がなく、かつコードワークの量を大幅に減少し、開発コスト、実施コストとメンテナンスコストを低減し、ソフトウェア開発周期を大幅に短縮し、同時に、ネットワークインタラクティブ回数と伝送されたデータの流量を効果的に減少し、従って、工業的な応用性がある。
【図１】
2014523042.tif 000003
【図２】
2014523042.tif 000004
【図３】
2014523042.tif 000005
【図４】
2014523042.tif 000006
【図５】
2014523042.tif 000007
【図６】
2014523042.tif 000008
【図７】
2014523042.tif 000009
【国際調査報告】
2014523042.tif 000010
2014523042.tif 000011
2014523042.tif 000012
2014523042.tif 000013
2014523042.tif 000014