[go: up one dir, main page]

JP6887182B1 - 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置 - Google Patents

入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置 Download PDF

Info

Publication number
JP6887182B1
JP6887182B1 JP2020114064A JP2020114064A JP6887182B1 JP 6887182 B1 JP6887182 B1 JP 6887182B1 JP 2020114064 A JP2020114064 A JP 2020114064A JP 2020114064 A JP2020114064 A JP 2020114064A JP 6887182 B1 JP6887182 B1 JP 6887182B1
Authority
JP
Japan
Prior art keywords
category
information
group
transition
input
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.)
Active
Application number
JP2020114064A
Other languages
English (en)
Other versions
JP2022012306A (ja
Inventor
克秀 浅沼
克秀 浅沼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Asanuma Holdings Co Ltd
Original Assignee
Asanuma Holdings Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Asanuma Holdings Co Ltd filed Critical Asanuma Holdings Co Ltd
Priority to JP2020114064A priority Critical patent/JP6887182B1/ja
Application granted granted Critical
Publication of JP6887182B1 publication Critical patent/JP6887182B1/ja
Priority to US18/003,686 priority patent/US12236215B2/en
Priority to PCT/JP2021/023358 priority patent/WO2022004455A1/ja
Publication of JP2022012306A publication Critical patent/JP2022012306A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】コンピュータプログラミングに精通していないユーザが、プログラミング、あるいは維持管理(再利用、アップデート)を行うことができるようにする。【解決手段】 入出力機能によってカテゴライズされた制御オブジェクトと、配置グループオブジェクトと、それらを機能統合する挙動管理モデルを有し、挙動制御システムと、挙動管理モデル編集システムとによって構成されるコンピュータシステムであって、制御オブジェクトは、入出力ポートを有し、カテゴライズされ、カテゴリは、継承関係を持つことが可能であって、配置グループオブジェクトは、処理系列遷移機能及び優先処理要求機能を持つことが可能であって、それらの機能を利用して関連付けられた制御オブジェクトはシステムへのレスポンスやタイミング情報によって、動的に管理されるとともに、配置するオブジェクトの動的な配置も可能とする。【選択図】図1

Description

本発明は、モデル駆動型アーキテクチャの手法により、プログラムオブジェクトのクラスをメソッドの戻り値及び引数の機能と型情報によってカテゴライズし、オブジェクトカテゴリに対応した機能をもつグループオブジェクトにクラスやインスタンスを関連付けることによってシステムのプログラミング、あるいは維持管理(再利用、アップデート)を行うことができるようにしたシステム及びAPI(アプリケーションプログラミングインターフェイス装置)に関する。
特許文献1には、プロセスプラントを柔軟に構成する方法であって、
前記プロセスプラントのエンティティに対応する現在の親オブジェクトへの修正の指示を受け取ることと、
修正された子オブジェクトの第1のサブセットを作成するように、現在の子オブジェクトのセットの第1のサブセットの各現在の子オブジェクトに前記修正を伝達することであって、
現在の子オブジェクトの前記セットに含まれる各現在の子オブジェクトが、前記現在の親オブジェクトから派生し、前記プロセスプラントのそれぞれの指定要素に対応し、
前記それぞれの指定要素が、前記プロセスプラントにおいて制御されている1つ以上のプロセスに対応する機能を提供するように、前記各現在の子オブジェクトのインスタンス化に従って動作する、伝達することと、
現在の子オブジェクトの前記セットの第2のサブセットに前記修正を伝達しないことと、
修正された子オブジェクトの第2のサブセットを作成するように、現在の子オブジェクトの前記セットの第3のサブセットの現在の子オブジェクトの各々に前記修正を伝達することと、
修正された現在の子オブジェクトの前記第1のサブセットのインスタンス化を生成させるとともに、それぞれの指定要素の第1のセットでの修正された現在の子オブジェクトの
前記第1のサブセットのインスタンス化の実行を第1の指定された時間まで遅延させ、その後、修正された現在の子オブジェクトの前記第1のサブセットの前記インスタンス化をそれぞれの指定要素の前記第1のセットにおいて実行させ、それぞれの指定要素の前記第1のセットが修正された現在の子オブジェクトの前記第1のサブセットの前記インスタンス化に従ってランタイム間に動作するようにすることと、
現在の子オブジェクトの前記セットの前記第2のサブセットに対応するそれぞれの指定要素の第2のセットが、現在の子オブジェクトの前記セットの前記第2のサブセットの前記インスタンス化に従ってランタイム間に動作するように、現在の子オブジェクトの前記セットの前記第2のサブセットのインスタンス化を維持することと、
それぞれの指定要素の第3のセットでの修正された子オブジェクトの前記第2のサブセットのインスタンス化の実行を、前記第1の指定された時間とは異なる第2の指定された時間まで遅延させること、
を含む、方法が記載されている。
特許文献2には、プロセスプラントを柔軟に構成する方法であって、
前記プロセスプラントのエンティティに対応する現在の親オブジェクトへの修正の指示を受け取ることと、
修正された子オブジェクトの第1のサブセットを作成するように、現在の子オブジェクトのセットの第1のサブセットの各現在の子オブジェクトに前記修正を伝達することであって、
現在の子オブジェクトの前記セットに含まれる各現在の子オブジェクトが、前記現在の親オブジェクトから派生し、前記プロセスプラントのそれぞれの指定要素に対応し、
前記それぞれの指定要素が、前記プロセスプラントにおいて制御されている1つ以上のプロセスに対応する機能を提供するように、前記各現在の子オブジェクトのインスタンス化に従って動作する、伝達することと、
現在の子オブジェクトの前記セットの第2のサブセットに前記修正を伝達しないことと、
修正された現在の子オブジェクトの前記第1のサブセットのインスタンス化を生成させ、かつ修正された現在の子オブジェクトの前記第1のサブセットの前記インスタンス化をそれぞれの指定要素の第1のセットにおいて実行させ、それぞれの指定要素の前記第1のセットが修正された現在の子オブジェクトの前記第1のサブセットの前記インスタンス化に従ってランタイムに動作するようにすることと、
現在の子オブジェクトの前記第2のサブセットに対応するそれぞれの指定要素の第2のセットが、現在の子オブジェクトの前記第2のサブセットの前記インスタンス化に従ってランタイムに動作するように、現在の子オブジェクトの前記セットの前記第2のサブセットのインスタンス化を維持することと、を含む、方法が記載されている。
特許文献3には、プロセスプラントを柔軟に構成する方法であって、
親オブジェクトへの更新の指示を受け取ることであって、複数の子オブジェクトの各子オブジェクトが、前記親オブジェクトから派生し、前記各子オブジェクトのインスタンス化が、前記プロセスプラントにおいて1つ以上のプロセスを制御することに対応する機能を実施するようにそれぞれの要素において実行される、受け取ることと、
更新された親オブジェクトを生成するように、前記指示に基づいて、前記親オブジェクトを更新することと、
更新された子オブジェクトのセットを生成するように、前記複数の子オブジェクトの第1のサブセットに、前記更新を伝達することと、
前記複数の子オブジェクトの第2のサブセットに前記更新が伝達されることを阻止することと、
更新された子オブジェクトの前記セットに対応する前記それぞれの要素のそれぞれの構成を、更新された子オブジェクトの前記セットの前記インスタンス化に従って更新させ、前記それぞれの要素が、更新された子オブジェクトの前記セットのインスタンス化に従ってリアルタイムに動作するようにすることと、を含む、方法が記載されている。
特許文献4には、ランタイムシステムのサーバの間に処理タスクを効率的に分散させるためにグラフに基づくプログラムの仕様を処理するための方法であって、
ユーザインターフェースにおいて、グラフに基づくプログラムの仕様を与えるステップであって、
複数の構成要素を規定するユーザ入力を受け取ることであって、前記複数の構成要素の各々が、処理タスクに対応し、少なくとも一部の構成要素が、1又は2以上のポートを含む、受け取ること、及び
複数のリンクを規定するユーザ入力を受け取ることであって、前記リンクの少なくとも一部が、前記複数の構成要素の上流の構成要素の出力ポートを前記複数の構成要素の下流の構成要素の入力ポートに接続する、受け取ることを含む、ステップと、
前記複数の構成要素の1又は2以上のサブセットを特定するために前記グラフに基づくプログラムの仕様を処理するステップであって、
リンクされる構成要素のデータ処理の特徴に少なくとも部分的に基づいて異なるサブセット内の構成要素の間に現れる1又は2以上のサブセットの入口点及び1又は2以上のサブセットの出口点を特定すること、
前記特定されたサブセットの入口点及び前記特定されたサブセットの出口点に基づいて前記サブセットを形成すること、
前記ユーザインターフェース内に前記形成されたサブセットの視覚的表現を与えること、並びに
前記ランタイムシステムによる実行のために使用されるときに、それぞれの形成されたサブセット内の前記構成要素に対応する処理タスクを行わせる、それぞれの形成されたサブセットのための準備されたコードを生じさせることを含む、ステップとを含む、前記方法が記載されている。
特許6423348号公報 特開2019−016400号公報 特開2019−016401号公報 特許6479966号公報
近時にあっては、多くのユーザーがスマートフォンなどの携帯端末を用いてアクセスするウェブシステムの需要が増加している。そのようなウェブシステムでは、特に、交信タイミング制御と、配信対象の管理が重要である。さらに、関連するウェブシステムのステイタス情報取得、連携や配信、その他の非同期シグナルの送受信を適切なタイミングで行うことが求められる。そして、そのようなシステムを編集したり、管理したり、再利用したり、修正したりするシステム管理者は、必ずしもコンピュータプログラミングに精通した者ではないものが行うのが望ましいと本発明の発明者は考える。スピードが求められるものであるため、修正などの必要が生じる際に、その都度、そのシステムに習熟した専門家に依頼したのでは、費用の面でも、時間的な面においても不利だからである。
そこで、多くのユーザーが携帯端末を用いてアクセスするウェブシステムにあっては、ウェブシステムアプリケーションの組み立てをGUI(グラフィカルユーザインターフェイス)で行い、編集方法も同様にGUIで行えるように、API(アプリケーションプログラミングインターフェイス)装置を準備することが望ましいと本発明の発明者は考える。
本発明は、このような実情に鑑みてなされたものであり、モデル駆動型アーキテクチャの手法により、プログラムオブジェクトのクラスをメソッドの戻り値及び引数の機能と型情報によってカテゴライズし、オブジェクトカテゴリに対応した機能をもつグループオブジェクトにクラスやインスタンスを関連付けることによってシステムのプログラミング、あるいは維持管理(再利用、アップデート)を行うことができるようにしたシステム及びAPI(アプリケーションプログラミングインターフェイス装置)を提供しようとするものである。
本発明に係るコンピュータシステムは、
入出力機能によってカテゴライズされたオブジェクトであり、端末機器、データベース装置、及び他のシステムもしくは端末機器との連携を担う複数の制御オブジェクトと、関連付け可能な前記制御オブジェクトのカテゴリ情報によって定義される配置グループオブジェクトと、それらを機能統合する挙動管理モデルを有し、前記制御オブジェクトを構造的に組み立てることにより、前記制御オブジェクトの個々の挙動を前記配置グループオブジェクトと関連付けて調整する挙動管理を実施する挙動制御システムと、
前記制御オブジェクトの機能詳細を記述する記述機能をアプリケーションプログラム構築者に提供する制御オブジェクト編集ユーザインタフェイス装置と、前記挙動管理モデルの記述機能をアプリケーションプログラム構築者に提供する挙動管理モデル編集ユーザインタフェイス装置とを有する挙動管理モデル編集システムと
によって構成されるコンピュータシステムであって、
前記制御オブジェクトは、
待機、イベント・トリガー待受け或いは割込みのタイミングを含むタイミング制御を伴う入出力機能を有する入出力ポートを有し、
型と機能とによってカテゴライズされた入出力ポート群によって定義されるとともに、制御オブジェクトカテゴリとしてカテゴライズされ、
前記配置グループオブジェクトは、
前記挙動管理モデルを構築するために、カテゴリ入出力ポート間の遷移定義セットによる遷移管理機能である処理系列遷移機能及びグループ配置制御オブジェクトの識別情報による遷移管理機能である優先処理要求機能を持つことが可能であって、前記処理系列遷移機能及び前記優先処理要求機能を利用して関連付けられた制御オブジェクトはシステムへのレスポンスやタイミング情報によって、動的に管理されることを特徴とする。
これにより、個々の処理を呼び出し関係の定義ではなく、あるグループやポジションへの配置として取り扱うことができ、要素のアップデートや置き換えを容易にすることができるようになる。
さらに、当該制御オブジェクトカテゴリは、継承元の入出力機能を引き継ぐことを条件に、継承関係を持つようにできる。
これにより、プログラミングをしやすくなる。
また、配置グループオブジェクトを不定とする設定をすることにより、配置するオブジェクトの動的な配置も可能である。
これにより、いったん作ったプログラムをあとから作り直して、動的なオブジェクト配置をすることができる。
また、本発明のアプリケーションプログラム構築方法は、上述のコンピュータシステムを用いたアプリケーションプログラム構築方法であって、
前記制御オブジェクトのカテゴリ、前記配置グループと関連付けされた制御オブジェクトもしくは配置グループである配置子の配置子カテゴリをインターフェイスに関する仕様により定義づけるカテゴリ定義づけステップと、
継承元から継承先へカテゴリ情報を継承することを利用して制御オブジェクトのカテゴリ祖形と優先処理要求/処理系列遷移機能を対応させ定義する継承ステップと、
前記カテゴリ祖形を組み合わせて制御オブジェクトのカテゴリ設計を行うカテゴリ設計ステップ
を有する。
これにより、制御オブジェクトのカテゴリ設計を行うユーザインタフェイス装置を提供できる。
また、本発明のアプリケーションプログラム構築方法は、上述のアプリケーションプログラム構築方法であって、
制御オブジェクト、配置グループ、優先処理要求定義、処理系列遷移定義のうちのいずれかのカテゴリが指定された時点あるいは配置時に、
インスタンスに対応する記述クラスを呼び出す記述クラス呼出ステップと、
当該呼び出しステップにて呼び出した記述クラスからカテゴリ情報を抽出するカテゴリ情報抽出ステップと、
当該カテゴリ情報抽出ステップにて抽出されたカテゴリ情報に基づいてカテゴリ要件を呼び出すカテゴリ要件呼出ステップと、
当該カテゴリ要件呼出ステップにて呼び出されたカテゴリ要件と、前記記述クラス呼出ステップにて呼び出された記述ステップとが適合するか否かをチェックするカテゴリ適合チェックステップと
を有する。
これにより、コンピュータプログラミングに精通していないユーザであっても、入出力の間違いのない適切なカテゴリ設計を行えるユーザインタフェイス装置を提供できる。
また、本発明のアプリケーションプログラム構築方法は、上述のアプリケーションプログラム構築方法であって、
出力元ポートから優先処理要求がなされる出力元ポート優先処理要求差し出しステップと、
入力先識別グループ、参照配置グループに優先処理要求がなされる優先処理要求受け取りステップと、
遷移定義された識別グループ及び参照配置グループの実配置情報、ステイタス情報を受け取る情報受け取りステップと、
遷移出力情報、関連実配置情報、関連ステイタス情報及び実配置情報のうちのいずれか一つ以上の情報を利用して出力先の優先条件計算を行う優先条件計算ステップと、
当該優先条件計算ステップにてなされた優先条件計算に基づき識別グループ実配置情報から入力先配置子の識別情報を抽出する識別情報抽出ステップと、
入力先識別グループポートに遷移先指定情報(リスト)を添えて、或いは該当する配置子ポートに遷移出力情報を送る遷移出力情報送出ステップと
を有する。
これにより、コンピュータプログラミングに精通していないユーザであっても優先処理要求を適切に処理できるユーザインタフェイス装置を提供できる。
また、本発明のアプリケーションプログラム構築方法は、上述のアプリケーションプログラム構築方法であって、
配置子がカテゴリ適合であるかチェックし、不適合なら配置不能とするカテゴリ適合チェックステップと、
数値範囲条件に適合しているかチェックする数値範囲適合チェックステップと、
関連付けがなされている配置子についてプロパティに従って判定条件に不適合ならば配置不能とする配置子プロパティ適合チェックステップと、
配置可能な配置子の関連付け済み配置子を関連付けチェックの対象に編入する関連付けチェック対象編入ステップと
を有し、これらカテゴリ適合チェックステップから関連付けチェック対象編入ステップまでをすべての関連付けチェックの対象である配置子すべてに対して、当該配置子の登録順に逐次的に行うことを特徴とする。
これにより、コンピュータプログラミングに精通していないユーザであっても、配置を適切に処理できるユーザインタフェイス装置を提供できる。
また、本発明のコンピュータシステムは、上述のコンピュータシステムであって、
前記制御オブジェクト編集ユーザインタフェイス装置は、
オブジェクトアイコンを収納できるグリッドをマトリックス状に展開したグリッドシートを用いて、グラフィカルユーザインターフェイスにより前記配置グループ機能を実現することを特徴とする。
これにより、視覚的な直感にしたがって配置グループ機能を実現できる。
また、本発明のコンピュータシステムは、上述のコンピュータシステムであって、
前記グリッドシートの一部をマトリックスとして切り取ったオブジェクトに前記配置グループとして前記優先処理要求機能及び前記処理系列遷移機能を付与したテーブルを用いて、前記配置グループオブジェクトを定義することを特徴とする。
これにより、ユーザインタフェイスと内部処理との対応関係がわかりやすいユーザインタフェイス装置を実現できる。
また、本発明のアプリケーションプログラム構築方法は、上述のコンピュータシステムを用いたアプリケーションプログラム構築方法であって、
一つ又は複数のユーザインターフェイスグリッドシートを用意してそれぞれ識別情報を付与するグリッドシート設計ステップと、
アルゴリズム設計を行い、処理フローに対応するテーブルを決定し、必要なマトリックス範囲を決定し、グリッドシート上にテーブルを割り付けるテーブル配置ステップと、
テーブルマトリックスの二軸もしくは三軸に、モジュールを収納する識別グループとして機能する識別軸であるか、遷移制御情報として利用される処理軸であるかのいずれであるかを定義する軸定義ステップと、
識別軸シーケンスに対して配置子カテゴリ定義を行う配置子カテゴリ定義ステップと、
グリッドに対してモジュールを配置するモジュール配置ステップと
を有する。
これにより、コンピュータプログラミングに精通していないユーザであっても、グリッドモデルの要素の配置を容易に実現できる。
以上、説明したように、コンピュータプログラミングに精通していないユーザであっても、容易にアプリケーションプログラムを構築可能となる。
システム構成図である。 オブジェクトの階層を示す図である(カテゴリ継承を示す図を含む)。 オブジェクトクラスモデルを示す図である。 制御オブジェクトモデルを示す図である。 入出力定義オブジェクトカテゴリモデルを示す図である。 配置グループ実配置情報構造を示す図である。 入出力ポート定義配置グループの実配置情報例を示す図である(識別情報モデルを示す図を含む)。 優先処理要求フローを示す図である。 優先処理要求出力と優先処理要求入力について示す図である。 処理系列遷移定義挙動を示す図である。 処理系列遷移機能モデルを示す図である。 配置グループ間遷移フローモデルを示す図である。 配置子適合チェックプロパティモデルを示す図である。 GUIでの配置グループへの制御オブジェクト配置例を示す図である。 プロトタイプ拡大モデルにおけるオブジェクト関連を示す図である。 カテゴリ定義を示す図である。 記述クラス生成を示す図である。 ボックス内配置例を示す図である。 配置子のプロトタイプ要素でのカテゴリーモデル化を示す図である。 評価ステップとシナリオ構造のモデル化を示す図である。 モジュール連結パターンを示す図である。 グリッドモデルのオブジェクト関連図及びテーブル割付図A及びテーブル割付図Bを示す図である。 マトリックス配置図を示す図である。 本発明のコンピュータシステムのビジネスユーザ及びエンドユーザ間での位置づけを説明する図である。 本発明のコンピュータシステムのサーバ内の構成を示す図である。
以下、添付図面を参照しながら、本発明の管理システムを実施するための最良の形態を詳細に説明する。図1から図25までは、本発明の実施の形態を例示する図であり、これらの図において、同一の符号を付した部分は同一物を表わし、基本的な構成及び動作は同様であるものとする。
図24は、本発明のコンピュータシステムのビジネスユーザ及びエンドユーザ間での位置づけを説明する図である。図の中央に楕円で示すインターネット網には、サーバ(サーバコンピュータ)10、顧客(一般ユーザ、エンドユーザ)へサービスを提供するためのアプリケーションプログラムを作成する管理者ユーザ(ビジネスユーザ)が、管理者ユーザアカウントを取得してサーバ10にアクセスする管理者ユーザ端末21,22,23,24、そして一般ユーザ(エンドユーザ)端末31,32,33,34を示している。管理者ユーザ端末、一般ユーザ端末は、いわゆるスマホ、タブレットコンピュータ、ノートパソコン、ICカードやQR記載カードと読み取り機器及び表示器、発音機器の組み合わせであり得る。図24では、端末が直接インターネットとやり取りしているように描いているが、Wi-Fi機器を介してインターネットにつながるのでもよい。また、携帯電話ネットワークを介してインターネットにつながるのでもよい。
図25は、本発明のコンピュータシステムのサーバ内の構成を示す図である。図24に示すサーバ10の内部には、DB(データベース)装置51、挙動制御システム61、挙動管理モデル編集システム62、挙動管理モデル65、制御オブジェクト66を有している。そして、挙動管理モデル編集システム62は、編集UI(ユーザインタフェイス)装置67を有していて、その中には、挙動管理モデル編集装置63、制御オブジェクト編集装置64が含まれる。
以下、本発明のコンピュータシステムをサーバコンピュータと、ユーザの端末とをインターネットで接続して構成する場合に、主にサーバコンピュータにインストールするコンピュータプログラムの仕様を中心に説明する。
≪拡大機能モデル(配置グループ)≫
入出力をカテゴライズされたオブジェクト間の協働をカテゴリ別のオブジェクト配置数が定義されたオブジェクトグループを利用して実現するAPI(アプリケーションプログラミングインターフェイス)装置を提供するものである。
基本モデル
図1のシステム構成図を参照しつつ、本発明の基本モデルの構成の概要について説明する。
このシステムはプログラムオブジェクトのクラスをメソッドの戻り値および引数の機能と型情報によってカテゴライズしそれを単純な呼び出し関係ではなくオブジェクトカテゴリに対応した機能を持つグループオブジェクトにクラスやインスタンスを関連付けする事によって柔軟にシステムのプログラミング、あるいは維持管理を行う事が出来るようにしたシステムである。 これによって個々の処理を呼び出し関係の定義ではなくあるグループやポジションへの配置として取り扱う事が出来、要素のアップデートや置換を容易にする事が出来るようになる。さらに例えばGUIにおいてユーザ定義部分をグリッドやボックスへのアイコン化されたオブジェクトの落とし込みイベントでする場合の処理定義が一般化、簡易化されAPI等からユーザ編集画面を構成する事が容易となる。
このカテゴリオブジェクトは特に交信タイミング制御と配信対象の管理が重要となる携帯端末への配信タイミングや対象の確定、関連するwebシステムのステイタス情報取得、連携や配信、その他の非同期シグナルの送受信を適切なタイミングで行いシステム管理者の意図通りにサービスを提供するwebシステムアプリケーションの組み立てをGUIで行うシステム、編集方法(API)として最適である。その為ここでは入出力機能によってカテゴライズされたオブジェクトの事を制御オブジェクトと呼ぶ。また制御オブジェクトの個々の挙動を調整する方法の事を挙動管理とする。
挙動管理は個々の機能を担う制御オブジェクトを構造的に組み立て実現する。そのアプリケーションのモデル及び構造を挙動管理モデルと呼ぶ。制御オブジェクトはそれぞれの目的に応じた挙動管理モデルに従って相互に制御情報をやり取りし価値や制御情報を保存し一定の期間生存し携帯端末や他のwebシステムと通信を行い制御を行う。
カテゴリは制御オブジェクトと配置グループの配置子カテゴリなどインターフェイスに関する仕様で定義付けられ、相互の対応関係を定義出来る。これにより継承を利用して 制御オブジェクトのカテゴリー祖形と優先処理要求/処理系列遷移機能を対応させ定義し、そのカテゴリー祖形を自由に組み合わせて制御オブジェクトのカテゴリー設計を行う事が出来る。
システムの構成: このシステム構成は制御オブジェクトの挙動管理を行う挙動制御システムと挙動管理モデルの編集を行う挙動管理モデル編集システムによって構成されている。挙動制御システムは端末、DB,他システム連携を担う制御オブジェクトとそれを機能統合する挙動管理モデルを持ち実施する。一方、挙動管理モデル編集システムはそれらのオブジェクトの機能詳細を記述する編集UIを持ち、挙動管理モデル及び制御オブジェクトの記述機能をユーザに提供する。
このシステムは次の特徴を持つ。
1:個々の制御オブジェクトはタイミング制御(待機、イベント・トリガー待ち受け或いは割り込み)を伴う入出力機能(ポート)を持つ。
2:制御オブジェクトは型と機能によってカテゴライズされた入出力ポート群によって定義されカテゴライズされる。
3:制御オブジェクトは配置グループと関連付けられて挙動管理される。配置グループオブジェクトは関連付け可能なオブジェクトのカテゴリ情報によって定義される。その定義は数量範囲情報を持ってもよい。
4:制御オブジェクトカテゴリは継承関係を持ちうるが継承するカテゴリは継承元の入出力機能を引き継ぐ必要がある。
5:配置グループは挙動管理モデルを構築する為に 処理系列遷移機能 及び優先処理要求機能を持ちうる。二つの機能を利用して関連付けられた制御オブジェクトはシステムへのレスポンスやタイミング情報によって動的に管理される。またグループを不定設定することで配置するオブジェクトの動的な配置も可能となる。
制御オブジェクトの挙動管理によって以下の事が可能となる。
・制御オブジェクトプロセス実施順、実施対象の制御
・制御オブジェクトプロセス割り込みのタイミング制御
・シグナル、レスポンスによって呼び出される一連の制御オブジェクトプロセスの最適化
・共通するユーティリティ/例外処理の呼び出し
・制御オブジェクト間で適切な情報のやり取りをする。
・配置可能プロセスの明確化(配置/関連付けパターン管理)
エディタで記述されたり配置されたりする(制御オブジェクト及び配置グループ)オブジェクトは記述クラスと呼び、記述クラスが稼働のために適合チェックされる要件をカテゴリと呼ぶ。稼働時に記述クラスに従って生成される個別処理プロセスを(処理)インスタンスと呼ぶ。これは実装レベルのオブジェクトインスタンス概念とは異なり個別処理に必要な価値の保存、処理対象の限定を指す概念である。
図2は、オブジェクトの階層をしめす図である。
≪オブジェクトクラスモデル≫
図3は、オブジェクトクラスモデルを示す図である。
図3には利用されるオブジェクト間の関係が示されている。(配置)オブジェクトは制御オブジェクトと配置グループに大別され共に配置子として配置グループに関連付け可能である。配置グループの内入出力定義配置グループは優先処理要求機能、処理系列遷移機能を実現できる。優先処理要求機能を実施する為には遷移制御オブジェクトが必要となる。
制御オブジェクト: 価値保存機能および演算処理機能、タイミング制御機能、外部との入出力機能を持つオブジェクト。特に携帯端末、現地機器、ほかのwebサービスとの配信、受信機能を持つものを想定している。これらの制御オブジェクト間の相互作用は型と機能によって識別されたメソッド、入出力インターフェイスによって行われる。これをポートと呼び記述式のAPI、あるいはGUIによって呼び出される。開始、終了、インスタンス生成、消去、タイミング情報、数値や文字列、ポインタ情報などのやり取りはすべてこれによって行われる。
制御オブジェクトはカテゴリ情報を持つ。カテゴリは処理内容によって決定されるが識別は継承関係を含むカテゴリクラス、それが持つべき必須ポートのカテゴリ情報によって
行われる(そのカテゴリの制御オブジェクトはカテゴリの必須ポートを持たなければならない)。
ポートは処理内容を反映した制御オブジェクトポートカテゴリ情報、情報型情報によって識別される。
制御オブジェクトのインスタンスの管理はシステムごとに異なるが優先処理要求/処理系列遷移機能にインスタンス管理機能を持たせてもよい。
(イベント管理システムにおいては規格化されたモジュール、シナリオが該当する)
上述の機能を模式化した「制御オブジェクトモデル」を図示する。
図4は、制御オブジェクトモデルを示す図である。
制御オブジェクトモデルは入出力値モデル、入出力ポートモデル、内部ロジックモデル、システム入出力モデルから構成される。制御オブジェクトの他配置オブジェクトとの遷移を管理する入出力ポートは入力値を受ける入力ポート(インスタンス生成、リクエスト)と出力値を発する出力ポート(レスポンス、インスタンス終了)から構成される。入出力値は型情報を持つ。生成入力を受けてインスタンスを生成するインスタンス生成及びインスタンスを終了させるエリミネータは基本的なポートの機能にインスタンスの生成終了を行う機能を持つ。返値ポートは関連のあるレスポンスとリクエストをまとめた概念である。また各入出力はステイタス情報を持つ事がある。これは処理系列コンテキストや終了ステイタス、メンバースコープ情報、評価時間情報などが含まれる。
一方、システム入出力モデルは端末入出力やデータベース、他システムとの入出力情報や端末などに対する出力などを扱う。情報は対象とのプロトコルに従って加工されやり取りされる。
内部ロジックは入出力情報に基づいてレスポンスやアウトプットの条件やタイミング、出力情報の計算を行う。内部値、現在時間情報などの時間条件、リクエスト入力、インプット情報を利用しながらロジックを構成する。
入出力ポート: メソッドの引数、戻り値の格納先、イベントの発生通知、オブジェクトの取り入れや吐き出しなどを抽象化した仕様。情報型と(機能を担保する)カテゴライズされた識別情報で区別され適合した型の情報、値をやり取りできる。評価時間やインスタンス識別情報、その他のメタ情報を付与する事もできる。
出力ポートと入力ポートの対応関係は一対一或いは複数を許容できるかカテゴリごとにプロパティを持つ事が出来る(対応可能範囲)。1以上の整数範囲で有ってもよい。複数の入力を受け付ける入力ポートは対応する出力ポートでイベントが発生する毎に遷移を受け付け、出力ポートは対応する入力ポートに一斉に遷移を行う。
入力ポートは対応が定義された出力ポートで出力イベントが発生すると値を受け取り制御オブジェクトインスタンスを生成、或いは指定されたインスタンスで受け取り待機状態を解除する。その入力がインスタンスを生成させるか否かはポート(のカテゴリ)による。
出力ポートは制御オブジェクトの内部プロセスによって独自のタイミングで出力を行う。またインスタンスの終了処理を伴うものもある。対応する入力ポートがあれば値を受け渡し相手制御オブジェクトの生成、或いは待ち受けを解除する。これには対応するインスタンス、或いはインスタンスのグループを指定する必要がある。出力ポートには要求を受けて値を返す機能を期待されているものもある。この場合は対応する待ち受け入力ポートが存在するが以下の記述では出力ポートと一体として扱う(特に区別する場合は返値ポートと呼ぶ)。
出力ポートと入力ポートの遷移定義は(入出力ポート定義)配置子記述クラスのポート間での直接定義か処理系列遷移機能を使ったカテゴリ定義の二つの方法がある。 対応関係の無い出力の発火は無視される。
やり取りする情報: ポート識別情報 型 値 評価時間 (インスタンス)識別情報インスタンス識別情報は識別情報の他に処理系列コンテキストである場合もある。
(インスタンス)生成入力ポート:制御オブジェクトインスタンスを生成する入力ポート。
返値ポート: 対応する待ち受け入力ポートが存在する。この場合受け取ったインスタンス識別情報に従って出力先のインスタンス識別情報が生成される。
ステイタス返値ポート: 優先処理要求機能によってカテゴリ毎に定義されるステイタス情報を返す返値ポート。それとして定義された返値ポートは実配置情報に基づいたステイタス配列として返される。
直接定義: ある(入出力ポート定義)配置子の出力ポートとある(入出力ポート定義)配置子の入力ポートを指定する。(入出力ポート定義)配置子はどのレベル(配置グループカテゴリ、配置グループ記述クラス、制御オブジェクトカテゴリ、制御オブジェクト記述クラス)及びインスタンス識別可能ならインスタンスにも定義可能。
遷移はインスタンス識別情報が付与される対象か記述によって該当するすべてのインスタンスに対して行われる。
出力配置子 出力ポート 入力配置子 入力ポート <インスタンス識別情報>
図5は、入出力定義オブジェクトカテゴリモデルを示す図である。
図5には入出力ポートモデルが示されている。入出力定義オブジェクトにはカテゴリポートを配置可能でそれはポート種別を持つ。ポート種別は制御オブジェクトモデル図の入出力ポートモデルに記述されている種別と同様であり、カテゴリ識別情報、情報型、対応可能範囲情報を持つ。
遷移のインスタンススコープ: ある遷移が入出力ポート間に定義された場合、その定義を持つ配置子インスタンスの出力ポートが発火した場合入力先の対象と様態についての定義。後述の処理系列コンテキストがあるかないかによって遷移が変わる。
1:コンテキスト無しの遷移
A)生成入力:識別グループ識別情報で対象となる記述クラスを持つコンテキスト無しのインスタンスを記述クラスにつき一つ生成する。
B)非生成入力:識別グループインスタンス識別情報で対象となる配置子インスタンス
2:コンテキストが存在する遷移
A)生成入力:識別グループ識別情報で対象となる記述クラスを持つそのコンテキストを持つインスタンスを記述クラスにつき一つ生成する。
B)同型系列指定された非生成入力:識別グループインスタンス識別情報で対象となるそのコンテキストを持つ配置子インスタンス
C)系列指定されない非生成入力:識別グループインスタンス識別情報で対象となる配置子インスタンス
配置グループ:配置グループ記述クラスは配置子記述クラス(動的に配置される場合もある)のカテゴリ集合の和集合として定義される。
配置Gオブジェクトは制御オブジェクトおよびほかの配置Gオブジェクトを関連付け管理制御する機能を持つ(配置子)。それはどのカテゴリの配置子を(どの数量範囲で)関連付けられるかで定義づけられる。配置子として定義される場合には自身もカテゴリを持つ事が必須である。幾つかのカテゴリの総計で数値範囲条件を決めても良い。また後述する処理系列遷移機能、優先処理要求機能のどちらあるいは双方を持つかでも定義される。また配置Gへの所属情報は識別Gでの優先処理対象抽出の為の条件としても使用される。
配置グループのインスタンスはグループインスタンス生成入力によって生成し定義に従って生成された配置子インスタンスを関連付けする。
配置子: 配置子は配置グループと関連付けされた制御オブジェクトもしくは配置グループを指す。配置子は記述クラスであり稼働すると生成入力を受けてインスタンスが生成される。
最終的に実配置配置子として抽出される配置子は入出力ポートが定義された制御オブジェクトもしくは入出力ポート定義配置グループとなる。
実配置情報: 特定の時点での配置グループに関連付けられた配置子及びその関連性識別情報と各配置子と関連付けられたその他の配置グループ情報。優先処理要求がされるまでには各配置子のインスタンス情報が付加される必要がある。特定の入出力ポートの識別グループ処理対象となる(特定の入出力ポートを備えた)配置子のみにフィルタリングして受け渡す事も出来る。各配置子はユニーク、関連性識別情報を持つ。
図6は、配置グループ実配置情報構造を示す図である。
図6には実配置情報の構造が示されている。実配置情報は配置子カテゴリ情報、それに含まれる記述クラス情報、そしてそれより生成される配置子インスタンス情報からなる。さらにそれに関連する配置グループ情報とインスタンスにはグループインスタンス情報が存在する。
図7は、入出力ポート定義配置グループの実配置情報例を示す図である。
図7には実配置情報の実例と入出力ポート情報が示されている。
最終識別配置子指定: 配置子には配置グループと制御オブジェクトが適合しうるが最終的に析出する実配置情報としてグループを含むのか含まないのか(入出力ポートが定義されているか否かでもよい)指定する事が出来る。またグループのみ或いは配置子間の関係をグループによる構造化情報と見なして該当識別Gの階層構造の深度を指定する事も出来る。このプロパティは遷移制御オブジェクト側で指定出来る事にしても良い。また実配置情報から除外するカテゴリを指定する事も出来る(前記プロパティ用配置子など)。
入出力ポート定義配置グループ: グループへの入出力を機能として取り扱うためグループオブジェクトに入出力ポートを定義する事も出来る。これを配置子抽出ポートと呼ぶ。基本的な機能としてインスタンス識別情報を持った入力は該当するインスタンスの同カテゴリ入力ポートに入力される。同カテゴリ出力ポートのどの出力でも該当する抽出出力ポートは出力すると言うものである。 インスタンス識別情報を持たない入出力の処理方法を決定しておく必要がある。
また要求時点の実配置情報を返す返値ポートである 実配置情報返値ポート が存在する場合がある。
優先処理オブジェクト要求機能は実配置返値ポートを持つ入出力定義グループを対象とする。
配置子抽出ポート: 基本的には配置G内のすべての配置子のポートカテゴリの積集合か和集合がグループのポート(カテゴリ集計型)として指定されるが配置子のポートのすべてを合計して配置情報を加えた識別子を割り振り識別Gのポートとしても良い(加算型)。これは識別Gが処理系列遷移機能を持つ場合やグループオブジェクトのプロパティ情報が必要な場合などプロパティ用の配置子を設定する時などに利用される。こうして内部配置子の入出力ポート情報から定義される配置グループの入出力ポートを抽出入出力ポートと呼ぶ。
カテゴリ定義の際はこれらの抽出されたポート情報の内必須なポートカテゴリを指定し必須ポートとする。
一部のカテゴリを指定して加算型とし残りをカテゴリ集計型としてもよい。
非識別ポート定義Gは配置子の出力ポートが発火すれば対応するグループの出力ポートが発火し、識別情報無しの入力がグループ入力ポートにあれば内部のすべての配置子の該当ポートに入力がなされる。
同型ポート集約: 複数の情報型が同じポートカテゴリを一つの新しいポートカテゴリに集約し配置グループの入出力ポートカテゴリとして再定義する事も出来る。この場合集約されるカテゴリ配置子の関連性識別情報に集約情報を反映する(細別グループ等の)識別子を追加する事も出来る。これによって同じ働きをする異なる配置子カテゴリ継承系列のポートを統合する事が出来る。
プロパティカテゴリ: グループに属性や特別な集計処理機能を実装するためにプロパティ(制御オブジェクト)カテゴリを配置子カテゴリに加えられる。グループインスタンスの生成を含めたインスタンス管理(グループインスタンス生成/削除入力)、実配置情報の取得入力ポート(特殊なカテゴリ)を持ち、カテゴリ定義により集計用の返値ポートを持つ。
動的な配置子関連付け: ユーザや環境とインタラクティブに制御オブジェクトの配置が決定されるタイプのサービスの場合、関連付け(配置子配置プロセス)を優先処理要求時に行う事にしても良い。この場合、編集時には配置候補制御オブジェクトのリストを取得するためのAPIを配置子カテゴリの配置情報として指定する事になる。出力されたリスト情報に対して配置子配置プロセスを行い実配置制御オブジェクトを確定する。
優先処理要求機能: 優先処理要求機能はグループの抽出入出力ポートと他オブジェクトの出力カテゴリポートが遷移関係に有るときその入出力カテゴリポートを実装する配置子群のどの配置子間に実際の遷移を行うか決定する機能。対象となる配置グループを識別グループと呼ぶ。このグループは実配置情報返値ポートと機能によって要求されるステイタス返値ポート(リスト)を持つ。また優先処理を行う遷移制御オブジェクト(機能)が必要となる。
入力時のみ、あるいは出力時のみの定義でも構わない。
実際の記述クラスでの定義は直接定義か処理系列遷移定義(双方のカテゴリ適合チェックを受ける)で行われる。
関連付けした配置Gに対して個々の配置子の識別情報及び関連性識別情報( 実配置情報 )、優先処理に必要な内部のインスタンスの ステイタス情報 を提供しその情報とトリガとなる入出力ポートからの 優先処理要求入出力情報、参照配置グループ情報 を元に優先処理要求入力情報を識別グループ内部のどのインスタンスの対象ポートに入力させるか或いは優先処理要求出力情報を出力するか遷移制御オブジェクトで遷移計算をする。
識別グループ、参照配置グループは入出力ポート定義配置グループである必要がある。
図8は、優先処理要求フローを示す図である。
図8には優先処理要求処理のフローが図示されている。
1:優先処理要求入出力が遷移元ステイタス情報とともに遷移制御オブジェクトになされる。
2:遷移制御オブジェクト関連情報要求により遷移制御オブジェクトの制御値情報などが呼び出される。
3:実配置情報要求により識別グループ、参照配置グループの実配置情報が呼び出される。
4:ステイタス情報要求により識別グループ、参照配置グループの配置子やグループの内要求された(ポートを指定)ステイタス情報が呼び出される。
ここで入力と出力でフローは分岐する。
入力1:優先配置子計算により以上の情報から識別グループ内での遷移先インスタンスの優先度が計算される。
入力2:優先配置子確定により閾値等の条件計算により対象配置子インスタンス(集合)が確定しユニーク識別情報が出力情報に付与される。
入力3:グループ対象ポートへ入力値が出力され、ユニーク識別情報により確定した対象配置子の該当ポートに入力処理が行われる。
出力1:条件計算によりその入力の出力の可否が評価される。
出力2:可なら出力が決定。
出力3:出力情報再計算により出力情報あるいはステイタス情報が修正される。
出力4:遷移制御オブジェクトより出力される。
図9は、優先処理要求出力と優先処理要求入力について示す図である。
優先処理要求入力: 他オブジェクトの出力ポートからの優先処理要求入力を受けた時に発生し、入力を受け付ける配置子インスタンス、或いは配置子インスタンス集合を決定する。
優先処理要求出力: 出力ポート使用時は内部配置子の出力が発生したときに行われ、出力カウンタとして機能する。ここでいう出力カウンタとは内部出力の発生毎に出力を相手側入力ポートに遷移させるか条件判定をし、出力内容を再計算する機能を言う。
識別グループの入出力ポートはグループオブジェクトの機能として遷移制御オブジェクト機能が有ればプロパティにて識別方法を指定し通常の遷移情報を受け取る。遷移制御オブジェクト機能が無ければその前に優先処理要求に対して返す実配置情報及び識別ステイタス情報を付与して受け取り該当する配置子入力ポートに情報を送る。
処理系列遷移機能: 処理系列遷移機能は幾つかの入出力ポート定義配置グループカテゴリの可能配置子カテゴリの入出力ポート間の遷移定義が最低一組以上定義された配置グループ。 配置G内の配置子カテゴリの必須ポート情報の出力と入力のマッチング情報を付与して配置グループに制御オブジェクトの協働機能を付与してプロセス制御を行わせる機能。一組以上の配置子カテゴリの出力ポート(カテゴリ)と入力ポート(カテゴリ)間に遷移関係を定義し、該当する出力が発火した場合は処理系列コンテキストに従って指定されたカテゴリの入力ポートに入力が行われる。また処理コンテキスト管理の為に入力ポートのみの定義も可能となる。この場合は存在する配置子の出力のいずれか一つが遷移定義されていなくてはならない。
遷移定義にはコンテキスト生成管理及び複数コンテキスト容認の二つのプロパティを設定できる。また非生成入力について同型指定を掛ける事も出来る。
カテゴリに配置される配置子は複数でも構わないがその場合はカテゴリに優先処理オブジェクト要求機能を持たせることになる。自己カテゴリに対する遷移も認められる(出力から入力ポートへの対応関係なら)。
配置カテゴリには単一制御オブジェクトか識別グループが配置される。
以上の定義の結果出来る配置子内での入力と出力の対応(定義された入力すべてと出力すべてが結ばれる)関係を配置子内遷移定義と呼ぶ。これは明示的に定義される事はなく遷移定義から自動的に構成される。
この結果として処理系列遷移定義はコンテキスト生成指定のある入力か出力ポートとそれに続く遷移定義及び配置子内遷移定義を通じて一連の有効連結グラフが一つ以上構成される。
またこの機能を配置グループにて実現する事も出来る。遷移定義から配置オブジェクト情報を抽出し配置子カテゴリとして数値範囲1::1の配置グループとして定義する。これを 処理グループ と呼ぶ。
処理グループに配置された配置子は自動的に配置子のカテゴリポート間で処理系列遷移が定義される。
処理系列コンテキスト: 処理系列での処理が開始された時一連の遷移処理の一体性を確保する為に遷移定義の指定された入出力ポートが評価された時処理系列コンテキストが発行される。処理系列コンテキストが発行されると属する処理系列遷移の遷移定義、配置子内遷移定義を辿って継承される。この時定義が重なる他の(処理系列)遷移定義は基本的に無視される。処理対象としてコンテキストを持つ生成入力で生成された配置子インスタンスを利用し、無ければ該当処理系列の配置子内遷移定義を持つインスタンスを利用して処理が行われる。一旦遷移系列を外れた遷移が行われてもコンテキストは保持され同一処理系列コンテキストの入力定義に遷移した場合はコンテキストは継承される。コンテキスト生成管理ポートで消滅指定を受けるポートを評価すると消える。
遷移定義別遷移詳細
1:インスタンス生成入力から出力:その配置子インスタンスコンテキストでの出力
2:リクエスト入力から出力(同コンテキスト生成配置子):その配置子インスタンスコンテキストでの出力
3:リクエスト入力から出力(非同コンテキスト配置子):実装で実用的なレベルで処理系列コンテキスト遷移の対応が一対一である事が要件(識別情報やタイミング序列管理など)。制御オブジェクトカテゴリの要件仕様。実際はグローバル変数を持つインスタンスで処理可能。処理系列定義された優先処理要求を識別グループに対して行うなど
4:出力からインスタンス生成入力:識別グループ識別情報で対象となる記述クラスを持つそのコンテキストを持つインスタンスを記述クラスにつき一つ生成する。
5:出力からリクエスト入力(同コンテキスト生成配置子):識別グループインスタンス識別情報で対象となるそのコンテキストを持つ配置子インスタンス。
6:出力からリクエスト入力(非同コンテキスト配置子):識別グループインスタンス識別情報で対象となる配置子インスタンス。同型指定された場合遷移は発生しない。
7:非定義の遷移から定義された入力:その処理系列遷移定義でのコンテキストが存在すれば1〜3と同様の処理。
8:コンテキストを持つ非定義の出力:コンテキストは保持されるが遷移の形態対象に影響は与えない。
9:コンテキストを持たないコンテキスト生成指定も無い遷移定義:無視。
以上の関係を図10に図示する。図10は、処理系列遷移定義挙動を示す図である。
コンテキスト生成管理指定: コンテキスト生成管理指定は生成と消滅の二つのモードで指定可能である。生成指定が設定されるとその処理系列遷移定義のコンテキストを持たない遷移が評価された時に処理系列コンテキストが生成される。
消滅指定がなされるとその処理系列遷移定義のコンテキストを持つ遷移が評価された時にそれは削除される。
生成は単に有効連結グラフ内でのみ有効としても良い。
複数コンテキスト容認: その指定がされた遷移定義で他のコンテキストの生成、継承がなされた場合それは認められる。一つの評価に複数のコンテキストが存在可能でコンテキスト毎に可能な上の1〜9の遷移の様態に従って遷移が行われる。
図11は、処理系列遷移機能モデルを示す図である。
図11には、処理系列遷移機能の機能全体の関係が図示されている。
遷移定義を受ける入力及び出力ポートは所属配置子(カテゴリ)情報を持ち入力ポートについてはリクエスト入力とインスタンス生成入力に分けられる。明示的にポート間に遷移定義がなされると同じ処理系列の遷移定義がなされた入力ポートと出力ポートが同一配置子に存在すると配置子内遷移定義が自動的に定義される。これらの遷移定義は処理グループカテゴリ定義されているならカテゴリでの定義となる。処理グループは処理系列遷移を行う配置子をカテゴリ配置子として定義した配置グループでそれぞれの配置子カテゴリに一つの記述クラス配置子しか取れない。
そのインスタンスでの遷移実現時には処理系列コンテキストが生成される。処理系列遷移定義を構成する明示的な遷移定義と配置子内遷移定義による有向連結グラフの集合が処理系列を構成すし評価されてゆくがそのポートに対してコンテキスト生成管理(生成)されたポートに対する評価がなされるとコンテキストが生成されコンテキスト生成管理(消滅)されたポートが評価されるとコンテキストは消滅する。それぞのポートに対して詳細なプロパティとして複数コンテキスト容認、同系列指定の指定がなされうる。
遷移制御オブジェクト: 識別グループの入出力を制御するために特別な仕様を持った配置子(制御オブジェクトもしくは)を定義できる。遷移制御オブジェクトは一つ以上の入力先識別グループ或いは制御オブジェクト(カテゴリリスト/入力先オブジェクト)を持ち、一つ以上の出力元入出力ポート定義配置グループ或いは制御オブジェクト(カテゴリリスト/出力元オブジェクト)を持つ。また制御ステイタス取得の為の識別グループ或いは制御オブジェクト(カテゴリリスト/ステイタスオブジェクト)を持っていてもよい。
遷移制御オブジェクトは出力元オブジェクトのいずれから出力を受けると入力先オブジェクト及びステイタスオブジェクトに優先処理要求を送り実配置情報及びステイタス情報を取得し入力先オブジェクトにステイタス識別情報付きの出力を送り出す。
なお入力先、出力元としてどちらか一方に関して単純に情報型或いはポートカテゴリのみを指定する事も可能。
またカテゴリ定義の他に必須となるポート間の遷移関係を定義してもよい。あるカテゴリの特定ポートと自身のポート間の遷移関係を必須遷移として扱う。
カテゴリ: 配置G,制御オブジェクト、ポートはカテゴリ情報を持つ。カテゴリ情報は継承関係を持ち得、継承元の必須の条件を引き継ぐ継承カテゴリを定義できる。親の必須条件が欠けるカテゴリは継承とはみなされない。以上の条件を満たせば複数の継承元を持つカテゴリを作る事もできる。これにより優先処理要求機能カテゴリ、処理系列遷移機能カテゴリに対応する制御オブジェクト祖形カテゴリを組み合わせて必要な機能を持った制御オブジェクトカテゴリーを定義できる。またカテゴリがユニークである必要のある定義時には識別情報のみ異なる継承カテゴリを定義して異なる機能を持つオブジェクト群を識別することも可能である。
継承元カテゴリ要件を求められた場合継承カテゴリはそれを満たすものとして扱われる。
以上のカテゴリの継承で実現される機能についてはオブジェクトが複数のカテゴリを持ち得、カテゴリ適合チェック時に合致したカテゴリが存在すれば認めるとしてもよい。
継承時に要件に入るカテゴリ情報については同時に継承を行って識別子を変更してもよい。複数のクラスから継承を行って要件を統合する時同じ要件カテゴリは統合される。別にしたい場合は別識別子とする必要がある。
入出力ポートが要件カテゴリの継承時親の必須入出力ポートを削除することはできない。ただしプロパティにより遷移発生時の処理を例外として定型化して機能を絞る事も出来る。絞ることを指定した入出力ポートには遷移発生時の処理を定義する必要がある(システムによってポートのプロパティとして予め用意された処理を提供する事も可能)
図2の下半分には、カテゴリ継承を示す図が描かれている。図2には継承オブジェクトカテゴリもしくはオブジェクトが複数の祖形を持ちうる事、カテゴリの継承には祖形カテゴリ定義全てと追加定義を満たす必要があることが示されている。
制御オブジェクトカテゴリ: 制御オブジェクトのカテゴリは機能(識別子)および必須の入出力ポートカテゴリ情報によって定義される。一つのポートカテゴリは一つのポートに対応している。複数の同種のポートが必要な場合はポートカテゴリを継承して異なるカテゴリを定義する。既存の制御オブジェクトからカテゴリを定義する場合は必須ポートを指定する必要がある。
必須要件:カテゴリ識別子 ポートカテゴリ(リスト) <ポートプロパティ/継承時>
ポートカテゴリ: 機能(識別子)及びポートの入出力機能、情報型、対応可能範囲によって定義される。
必須要件:カテゴリ識別子 情報型 ポート種別 対応可能範囲
配置グループカテゴリ: 配置Gカテゴリは関連性を設定できる制御オブジェクトカテゴリ、配置グループカテゴリ(配置子カテゴリ)とその(インスタンス)許容数、そのカテゴリと関連付けが許容されるほかの配置Gカテゴリ情報によって定義される。許容数は記述クラス及びインスタンス数の許容度として単純な数値範囲やカテゴリ間の整数比(範囲)で決定される。(インスタンス)総数の範囲も定義できる。
以上のグループの定義条件を配置グループカテゴリ構造条件と呼ぶ。
配置グループカテゴリは実装仕様においては関連性識別情報の形態が定義される。識別子は単にユニークである場合から序列情報もしくは複数の位置尺度による相対位置を判別する位置情報(多次元ベクトル情報)、細別グループ情報を持つ識別子を持つかの二相によって高機能化しても良い。
入出力ポート定義配置グループ: 入出力ポートを実装する配置グループは制御オブジェクトと同じように入出力ポートのカテゴリ配置数によるカテゴリ定義が定義内容に入る。
優先処理要求機能カテゴリ: カテゴリ定義は機能に基づくカテゴリ識別情報、優先処理要求が出力か入力かの種別、優先処理要求入出力情報(入出力ポートカテゴリ)、利用可能な識別グループ情報、利用可能な参照配置グループ情報、識別グループに機能が無ければ遷移制御オブジェクトカテゴリ情報からなる。
必要に応じて記述クラスの遷移詳細を定義する為に処理系列遷移定義や直接定義を利用する。
対象配置グループカテゴリ定義情報:配置子カテゴリ 利用ステイタス返値ポート(リスト)
カテゴリ要件:カテゴリ識別情報 種別 (優先処理要求)入出力ポートカテゴリ 識別グループカテゴリ定義情報(リスト) 参照配置グループカテゴリ定義情報(リスト)
<遷移制御オブジェクトカテゴリ>
処理系列遷移機能カテゴリ: 配置オブジェクトカテゴリの入出力ポート間に遷移定義情報を持つ(カテゴリ遷移情報)。出力ポート、入力ポートカテゴリ情報の組を必要に応じて定義する。複数の同種の配置子が必要な場合はポートカテゴリを継承して異なるカテゴリを定義する。
遷移定義:遷移定義は処理グループの配置子カテゴリに属する出力ポートと入力ポートの間に定義される。
出力配置オブジェクトカテゴリ 出力ポートカテゴリ 入力配置オブジェクトカテゴリ 入力ポートカテゴリ <コンテキスト生成指定> <複数コンテキスト容認> <同系列指定/非生成入力>
カテゴリ要件:カテゴリ識別情報 遷移定義(リスト)
遷移制御オブジェクトカテゴリ
必須要件:カテゴリ識別子 入力先オブジェクトカテゴリ(リスト) 出力元オブジェクト(リスト) ステイタスオブジェクトカテゴリ(リスト) <カテゴリ遷移情報(リスト)>
カテゴリ定義: 制御オブジェクトおよび配置グループ、入出力ポート、優先処理要求機能、処理系列遷移機能のカテゴリ定義は直接的に定義、或いは既存のオブジェクトから条件を抽出して決める事が出来る。
カテゴリ定義の手順
1:カテゴリ識別子の指定。利用する値空間においてユニークな識別子を決定する。継承元のカテゴリがあるなら指定。複数を指定可能だがそれぞれの必須要件を継承する必要がある(同種同カテゴリの要件は統合される)。
2:カテゴリ必須要件の定義。必須要件を設定する。継承関係が存在する場合はそれに従って定義を行う。
3:継承チェック。継承関係が存在する場合はその条件を満たしているかチェックを行う。満たしていれば継承カテゴリとして定義される。
カテゴリ適合チェック: 制御オブジェクトおよび配置グループ、優先処理要求定義、処理系列遷移定義はカテゴリが指定された時点或いは配置時などに定義されたオブジェクトがカテゴリに適合しているかチェックされる。適合チェックは記述クラスベースで行われる。ポートカテゴリはそれぞれの定義の要素として検証される。
1:(インスタンスに対応する)記述クラスが呼び出される。
2:カテゴリ情報の抽出
3:カテゴリ要件の呼出
4:記述クラスとカテゴリ要件の適合チェックを行う。
識別情報: 識別Gの配置子識別に利用する情報は以下の三種の情報の一つ以上から計算される。ある配置子に複数のインスタンスが存在する場合識別はインスタンス単位で行われる。識別ステイタス情報はインスタンスに依存し、優先処理オブジェクト要求機能でインスタンス識別を行う場合はそれを利用する。関連性識別情報には付加識別情報が加えられる。この他にインスタンス識別を行う機構としては後述の処理系列コンテキストや 別発明のメンバースコープによる制御などである 。
1:ユニーク識別情報:個々の配置子の関連付けによって自動的に発生する。配置毎にユニークな識別情報が割り振られる。最終的な配置子指定情報はこのユニーク識別情報のリスト群或いは序列情報となる。同様にインスタンスもユニーク識別情報を持つ。
2:関連性識別情報:関連付け時に決定されるグループ及び相互の関連性情報。関連性識別情報は最終的に以下のベクトル情報或いは細別グループ情報、連結情報に集約される。これによって序列関係と機能区別を管理する。インスタンスは記述クラスの関連性識別情報の他に関連するオブジェクトインスタンスとの関連性識別情報を持つ。メンバースコープに関する識別性情報や処理系列コンテキストなどがそれに当たる。
2-1:ベクトル情報:定義時の個別の仕様によって序列情報の組を割り振る。それはレーンの序列やベクトル空間での位置づけ優先順位を示す識別子のプロパティ指定などによってなされる。
2-2:細別G情報:定義時の個別の仕様によって配置子を組み分けするラベルの組を割り振る。それは識別子のプロパティ指定、GUIの特定のボックスやグリッド、部分への配置子の配置によって行われる。
2-3:連結情報:配置子を他の配置子との連結関係によって管理する場合その連結のノードーエッジ情報がグループ内での相対関係の枠組みとなる。識別情報は配置されたオブジェクトのノード或いはエッジに還元した相対位置情報となる。これはディレクトリ構造のブランチなどに配置される場合や遷移関係にノードを追加して関係を定義する場合などが当たる。
3:識別ステイタス情報:遷移元及び相手識別Gの優先処理要求時点でのインスタンスステイタス情報。処理時刻、保有属性値の現在値、発火元の実配置情報やステイタス情報(カレントステイタス)など動的に変化するステイタス情報。各配置子の識別ステイタス情報の出力ポートとして指定された情報を利用する。
識別情報については 識別情報モデル図(図7の上部)に図示されている。識別情報はユニーク識別情報、関連性識別情報、識別ステイタス情報に分かれ関連性識別情報はベクトル情報、細分グループ情報、連結情報によって識別される。関連性識別情報は記述クラス定義時に記述クラスの識別情報が付与され、優先処理要求時に関連性識別情報のインスタンス識別情報と識別ステイタス情報が付与される。
優先処理要求: 識別グループの配置子に遷移を行う場合(入力ポートへ)、個別の配置子のインスタンス識別情報(リスト)が付与されていない場合は優先処理要求を行い遷移範囲の配置子インスタンス(リスト)を確定する。この確定を行うためのオブジェクトを優先処理遷移制御オブジェクトと呼ぶ。これはグループオブジェクトのプロパティとして管理されても配置子として管理されても良い。(その場合のポートの仕様の差異は識別Gの項に記述)プロパティとして管理される場合は配置ステップは内部プロセスとして扱われる。
A)配置ステップ
1:優先処理要求カテゴリ適合チェック。関連オブジェクトが処理系列遷移定義として配置されるか直接遷移定義、すなわち遷移関係が結ばれた時点で関連オブジェクトのカテゴリがカテゴリ要件と適合しているかチェックを行う。また優先処理要求入力ポートや必須遷移と定義したものなど必須のポート遷移関係についてチェックを行ってもよい。
B)優先処理要求処理
1:出力元ポートから優先処理要求。
2:入力先識別グループ、参照配置グループに優先処理要求。
3:遷移定義された識別グループ及び参照配置グループの実配置情報、ステイタス情報を受け取る。
4:以下の情報を利用して出力先の優先条件計算を行う。
・遷移出力情報
・関連実配置情報
・関連ステイタス情報(、実配置情報)
5:優先条件計算に基づき識別G実配置情報から入力先配置子の識別情報を抽出する。
6:入力先識別Gポートに遷移先指定情報(リスト)を添えて、或いは該当する配置子ポートに遷移出力情報を送る。
図9の優先処理要求入力には以上の関係が図示されている。
優先処理要求入力が遷移制御オブジェクトにされると識別グループ、参照配置グループに実配置情報、ステイタス要求がなされ優先処理要求入力対象入力ポートに入力がなされる。
優先処理要求のステイタス情報には優先処理要求入力対象入力ポート情報、出力元インスタンス情報が含まれる。
出力カウンタ: 識別グループの配置子から出力があった場合、通常の入出力ポート定義配置グループと同じようにその出力をそのまま出力してもよい。しかし識別情報を利用して適切な形でフィルタリング或いは加工して出力させる事も可能である。この為に遷移制御オブジェクトを利用できる(プロパティとして組み込む事も出来る)。この場合は出力元は識別グループである必要がある。
A)配置ステップ
優先処理と同様。
B)出力カウンタ
1:出力元ポートから優先処理要求。
2:入力先、出力先、ステイタスオブジェクトに優先処理要求。
3:識別グループ及び参照配置グループの実配置情報、ステイタス情報を受け取る。
4:以下の情報を利用して出力先の優先条件計算を行う。
・遷移出力情報
・関連実配置情報
・関連ステイタス情報(、実配置情報)
5:出力条件計算に基づき出力情報を加工或いは条件計算し出力条件を満たしていれば加工した情報を出力。
6:入力先に遷移出力情報を送る。
優先処理要求出力 には以上の関係が図示されている。
優先処理要求出力が遷移制御オブジェクトになされると識別グループ、参照配置グループに実配置情報、ステイタス要求がなされ出力条件が判定され、出力されると値もしくはステイタス情報が変更され出力される。
配置グループ間遷移モデル: 優先処理要求及び処理系列遷移を利用した典型的な遷移モデルを提示する。
図12を参照しつつ、配置グルプ間遷移フローモデルについて説明する。
このフローは、図12の配置グループ間遷移フローモデルを示す図に、プロセスフローと対応するオブジェクトの関係として記述されている。
1:処理の先頭となる制御オブジェクトが生成
2:遷移定義された出力ポートが評価
3:遷移定義された配置グループ生成入力が配置グループインスタンス生成
4:3の配置グループを識別グループとして入力遷移制御オブジェクトへ優先処理要求入力
5:優先処理が行われ識別グループ内の最適なカテゴリの配置子記述クラスのインスタンスが生成
6:優先処理要求出力が生成したインスタンスから発せられる。
7:出力遷移制御オブジェクトにて条件計算が行われ満たせば出力がなされる。
8:処理系列遷移を利用して同様の処理が行われる。
配置子適合チェック/配置グループ: 配置グループへの配置子のセッティングは配置しようとする配置子のカテゴリ適合条件を満たすかチェックを行い関連付けするか決める。またその配置子とすでに関連付けが行われている配置子がその配置グループのカテゴリ適合条件を満たしているかチェックする事によって構造化条件を満たす形で関連付けを行う事が出来る。この時カテゴリ適合を相互に満たしているか、一方的に満たしているか条件が存在しないかのそれぞれについて関連付けを認めるか否かのプロパティを設定する事によって成立する構造を決定する。
ある配置子について
1:配置子がカテゴリ適合であるかチェックする。そうでないなら配置不能。
2:数値範囲条件に適合しているかチェックする(限界的に)。
3:関連付けがなされている配置子についてプロパティに従って判定条件に合わないもの
は配置不能。
4:配置可能な配置子の関連付け済み配置子を関連付けチェックの対象に編入する。
これをすべての関連付けチェックの対象である配置子すべてに行う。チェックは登録順に逐次的に行う。リストなどで登録する場合は検証優先度を付与してもよい。
この配置子適合チェックは編集時に配置子を配置するとき或いは優先処理要求時に行う。
図13は、配置子適合チェックプロパティモデルを示す図である。
図13にはプロパティの詳細について図示してある。
図の矩形は制御オブジェクト或いは適合チェックを受ける配置グループ。丸縁矩形Aは関連性を判定する配置グループ、その他の丸縁矩形は関連性を問われる配置グループ。
位相空間に配置可能な関係とは空間上に(互いに一部重なり合うようにも可)配置グループのスロットが配置されその内部に制御オブジェクトを配置するGUIやそれに沿った仕様に配置する場合の制限である。この場合は「カテゴリ適合を相互に満たしている」条件のみ認めるプロパティとなる。
階層化構造は配置グループが階層化している場合のみ認めるもので「一方的に満たしている」場合のみ認める。上位のグループに直接下位の配置子が属さないようにするためには被カテゴリ条件でソートしたのちチェックを開始するなど順序の制御が必要となる。
その他の組み合わせや順序を採用して配置子構造を細分化しても良い。
図14は、GUIでの配置グループへの制御オブジェクト配置例を示す図である。
図14のGUIでの配置グループへの制御オブジェクト配置例には位相空間に配置可能な関係を構成する制御オブジェクトと配置グループの配置例が示されている。
小文字のアルファベットが附番されたアイコンは制御オブジェクトを示し,アルファベットが異なるオブジェクトはカテゴリーが異なる。番号が異なるのはカテゴリーを共有する記述クラス。大文字は配置グループとなる。
記述式APIとしての実装: jsonやxml、htmlフォームなどを利用した構造記述にて基本モデルのオブジェクトの登録を行い実施することも出来る。スタティック識別子はこの場合は辞書のキー情報となっている。次の数式により記述例を示す。
Figure 0006887182
≪プロトタイプ拡大モデル≫
本発明の発明者は、本発明に先立って、イベント管理システムを提案した。そのイベント管理システムは、当該システムのビジネスユーザが、末端ユーザを集めて催し物を開く際に、用いるシステムである。ビジネスユーザは、特に、プログラミングに精通していないものであっても、システムの改変や、新規作成をすることができるように、GUIを駆使して、プログラミングを支援するように作られていた。
配置グループ機能のイベント管理GUIプロトタイプへの導入。モジュール機能を拡大し機能を取り込む。その為に以下の機能をプロトタイプに組み込む。
1:モジュールにカテゴリを導入
2:ボックスタイプモジュールの導入(グループボックス、カテゴリボックス)
配置グループはボックスタイプのモジュールの一つとしてフロー型遷移アイコンとして配置し外部に対しては通常のモジュールと同様に遷移矢で連結される。内部にはカテゴリー情報によって規格化されたボックスやモジュールを配置し配置グループ機能によって遷移を管理する。配置グループボックスは基本モデルの入出力ポート定義配置グループとしての機能を持つ。ボックス以外のモジュールは基本モデルの制御オブジェクトとして扱う。
カテゴリ: モジュールおよび配置グループを入出力ポート、配置子カテゴリー及び機能によってカテゴライズする機能。カテゴリ設定時、アイコン配置時にカテゴリー適合チェックを行う。カテゴリーの継承関係は基本モデルに従う。配置グループはプロパティとして処理グループ機能を持ちうる。またカテゴリボックスオブジェクトはこのカテゴリのオブジェクトを収納、適合チェックを行う機能を持つ。
入出力ポートと遷移: この導入モデルにおいて入出力ポートは基本モデルと同様に情報型、カテゴリ情報、返値ポート機能を持つ。返値ポートは二つの入力ポート及び出力ポートの組で構成されるが単一のポートとしてGUI上では認識される。入出力ポートのカテゴリ定義はモジュールのカテゴリ定義時に付随的になされるが独自のカテゴリデータベース情報を持ちそれで管理される。
出力ポートと入力ポート間には遷移定義を行う事が出来る。これは収納されたモジュールおよびグループボックスの入出力ポート間に自由に(遷移矢等によって)設定できその処理は処理グループに優先する。
モジュール: プロトタイプモジュールにカテゴリプロパティを機能として加えたもの。カテゴリ適合したカテゴリボックスに収納可能でその場合の遷移関係は直接定義か属するグループボックスの処理グループ機能によって定義される。動的なモジュール配置、カテゴリ定義の簡略化のためにブランクアイコンが存在する。正規モジュールに限定する事にしてもよい。
ボックス: ボックスオブジェクトには(配置)グループオブジェクトとカテゴリボックスオブジェクトが存在する。ボックスオブジェクトはグローバルモジュールとして識別情報を持ち複数の機能シートに配置可能である。各ボックスは他のオブジェクトアイコンを収納しそれをリストなどの構造化データとして保存する機能を持つ。リストの序列情報などの収納オブジェクトの関係性情報を各収納アイコン上に表示し、それを組み替える機能も持つ。この実装ではシート上の相対位置によって序列を決定し二次元の附番を行っている。或いは序列を示す遷移矢にて優先順位を指定している。
グループボックス: 配置グループ機能を担うボックスオブジェクト。ボックス内にはカテゴリボックスを収納可能で配置子カテゴリに対応したカテゴリボックスをそれぞれ複数配置できる。配置子適合チェック時には対応する配置子カテゴリのカテゴリボックス全ての内部のモジュール、またはグループボックスを集計して適合チェックを行う。この時カテゴリボックス単位で他のグループボックスに配置されているカテゴリボックスの収納配置グループボックスの状況がチェックされる。またグループボックスの入出力ポートはインスタンス識別情報が付与された入力を該当するインスタンスの該当するポートに入力をつなぐ機能を持つ。
グループはプロパティにしたっがって抽出ポートから自身の入出力ポートのセットを生成する。またプロパティカテゴリが設定され実配置情報(返値)ポートより実配置情報を返す事が出来る。
さらにカテゴリ間に処理系列遷移定義情報を加えて処理グループとすることも可能。
カテゴリボックス: 対応するカテゴリのモジュール或いはグループボックスを収納するボックス。オブジェクトの集合を管理する為のもので入出力ポートは持たない。グローバルで定義する事も可能でその場合には複数のグループボックスに配置される事も出来る。収納するオブジェクトがカテゴリ適合するかのチェックを行う機能を持つ。配置数に制限は無いがカテゴリボックスがグループボックスに配置されるとき、すでに配置されたカテゴリボックスに新たなオブジェクトが配置されるときにグループボックスの適合チェックが行われる。
ブランクオブジェクトとワイルドカードオブジェクト: カテゴリ定義時、記述クラスの定義時に既存のモジュールからではなくブランクのモジュールまたボックスオブジェクトに定義情報を加えて定義する事も課可能である。また外部定義API利用の為記述内容をブランクのまま置いておくワイルドカードオブジェクトも定義可能である。ワイルドカードにはURL等を指定し動的に記述クラスを利用することも出来る。これは基本モデルの動的な配置子関連付けに対応している。
図15は、プロトタイプ拡大モデルにおけるオブジェクト関連を示す図である。
図15には上述の関係が図示されている。
拡大モデル固有のオブジェクトはプロトタイプのモジュールとして定義される。モジュールは制御オブジェクトタイプとボックスモジュールタイプの二つに分けられ、ボックスはグループボックスとカテゴリボックスに分けられる。
これらは基本モデルのオブジェクトと対応関係にある。制御オブジェクト(と遷移制御オブジェクト)は基本モデルの制御モデルの機能を持ち、グループボックスは識別機能を持った配置グループと対応する。基本モデルの配置子カテゴリと直接には対応しないがカテゴリボックスはカテゴリに関連する配置子の収納用のオブジェクトとして機能する。またデフォルトでプロパティカテゴリを持ち、プロパティボックスに収納される。
グループボックスは処理系列定義をすることによって処理グループとして機能する。
優先処理要求: この導入モデルにおいて優先処理要求を実現する機能はグループボックスの実配置情報ポート及び各モジュールの返値ポート及び入出力ポートに対するインスタンス識別情報付与機能となる。遷移制御オブジェクトとの遷移定義は通常処理グループ(カテゴリ)によって管理され特別の優先処理要求カテゴリは持たない。
処理系列遷移: 基本モデルの処理系列遷移は処理グループ機能によって実現される。配置子カテゴリのモジュールもしくはグループボックスのカテゴリポート間の遷移定義情報をグループカテゴリのプロパティとして定義、そのグループボックスに配置子オブジェクト(を収納するカテゴリボックス)を配置して実施する。
カテゴリ定義: このモデルでのカテゴリ定義プロセスはモジュールカテゴリ定義プロセスとボックス定義プロセスに大別される。またそれぞれは記述済みモジュールに対するカテゴリ生成設定とブランクオブジェクトを利用した生成設定の二種類が存在する。
カテゴリ定義の最初のステップはカテゴ定義対象の指定である。記述済モジュール(グループは不可)を利用するならモジュール記述の一つを指定、ブランクオブジェクトを利用するなら定義しようとする種別のブランクオブジェクトを配置する。
次にカテゴリ識別情報の定義を行う。継承カテゴリを生成するなら対象オブジェクトの種別に合う親カテゴリをカテゴリリストから一つ以上指定しカテゴリ識別情報の生成指定。そうで無いなら単にカテゴリ識別情報を生成指定する。
次のステップではモジュールの場合は入出力ポート定義を行いグループボックスの場合は配置子カテゴリ定義を行う。
入出力ポート定義は継承元カテゴリが存在するなら元カテゴリの入出力ポートカテゴリ継承を行う。ブランクの場合は継承元カテゴリの入出力ポートセットがそのまま定義される。記述モジュールに対してはカテゴリ適合操作が行われる。タイプ及び情報型の同じモジュールのポートにカテゴリポートを当て嵌め全て指定する必要が有る。指定された入出力ポートにはカテゴリ情報が付与され以降カテゴリポートとして扱われる。未指定の継承元カテゴリポートが残る場合は定義不能となる。
継承元の無い、或いはポート継承の済んだモジュールに対しては追加ポートカテゴリの指定を行う。カテゴリ識別情報と情報型情報を指定し追加或いは既存同士型ポートへの指定を行う。
モジュールカテゴリの生成ステップは以上の通りである。なお、記述モジュールを定義に利用した場合、その記述クラスは該当カテゴリを持つ記述クラスにアップデートされる。
配置子カテゴリ定義はモジュール、グループボックスカテゴリリストから配置子カテゴリを指定配置(ブランクの該当カテゴリオブジェクトを生成し一つ配置)する事で行われる。また同時にその数的範囲情報を指定する。更にポート抽出時にそのカテゴリのポートをどう扱うかの指定を行う。指定は基本モデルに従う。これを必要なカテゴリに付いて行う。
カテゴリが指定されたなら適合タイプの指定を行う。これも基本モデルに従う。また抽出ポートの集計プロパティを基本モデルに従い指定し抽出ポートセットを生成する。
図16は、カテゴリ定義を示す図である。
図16には上述の内容の図示がされている。
もしそのグループボックスカテゴリを処理グループとするならカテゴリポート間遷移を配置カテゴリオブジェクトのポート間を遷移矢等を利用し遷移定義し処理系列遷移定義を行う。
処理グループ(ボックス)定義図には以上の定義例が図示されている。図は通常のクラス記述に附番で系列遷移定義をするもので遷移矢とボックスに1の系列名で定義を行っている。
グループボックスカテゴリの生成ステップは以上の通りである。
クラス記述: カテゴライズしたモジュール、ボックスオブジェクトをシート上に配置しプロトタイプモジュールとして機能させる記述を行う。モジュール、ボックスオブジェクトの記述クラス生成、ボックス内へのオブジェクト配置、外縁ボックスと通常のブロックとの遷移定義を行う。カテゴリ定義についてはルートシートに配置された定義モジュール、ボックス内の機能シート上もしくはダッシュボードで行う。
記述クラス生成: モジュール、グループボックス、カテゴリボックスの記述クラスの生成及び既存モジュールへのカテゴリ設定は次の様に行われる。
既存モジュールでなければブランクオブジェクトに記述クラスのユニーク識別情報を生成指定する。
次にカテゴリボックスであればカテゴリリストより一つ選び収納カテゴリ情報を指定する。それ以外のオブジェクトはカテゴリリストより一つ選び記述クラスのカテゴリ設定を行う。
次に既存モジュールであればカテゴリ適合操作が行われる。これはカテゴリ定義の同操作と同様に行われる。
ブランクであるなら内部記述を行うかワイルドカードとして指定するか選択を行う。ワイルドカードであるなら識別情報と参照先情報の適合を行う。内部記述を行う場合、モジュールはプロトタイプの記法に従って記述されボックスオブジェクトの場合はボックス内配置で内部を定義する。
図17は、記述クラス生成を示す図である。図17には上述の内容の図示がされている。
ボックス内配置: ボックス内機能シートには記述クラスとして定義されたモジュール及びボックスオブジェクトが配置される。
グループボックス内に収納可能なのはカテゴリボックスのみである。その場で定義するかモジュールリストより配置カテゴリに該当するカテゴリボックスが指定され配置される。適合チェックは配置、内部構成の変更の度に行われるがカテゴリボックスそのものはチェックの条件とはならず内部配置の配置子のコンテナとしてだけ利用される。
カテゴリボックス内に配置可能なのはカテゴライズされたモジュールもしくはグループボックスの記述クラスのみである。配置時に配置子カテゴリとボックスの収納カテゴリが同一であるかチェックされる。
またシート上の相対位置関係によりスタティック識別情報が各配置子に付与される。個別にラベリングして定義しても良い。
図18は、ボックス内配置例を示す図である。図18には上述の関係が図示されている。
グループボックスにはカテゴリボックスがカテゴリ毎に定義されて複数ずつ配置されてる。カテゴリボックス1には制御オブジェクトが配置されているがアイコンの位置関係によって二組の数値でマトリックス状に関連性識別情報が附番されている。カテゴリボックス2には同様に遷移矢で関連性識別情報が定義されディレクトリ型の附番がなされている。
ボックス外遷移定義: ボックスオブジェクトに包含されない外縁グループボックスの入出力ポートは通常のモジュールの入出力ポートと同様の機能を持ちシート上の他のポートを持つオブジェクトとプロトタイプの記法に従って遷移定義する事が可能である。また直接遷移定義された記述クラスとの遷移も有効となる。インスタンス識別情報はプロトタイプで利用可能な参加者識別情報やメンバースコープによるグループ属性情報などが付与され内部で利用可能である。
図19は、配置子のプロトタイプ要素でのカテゴリーモデル化を示す図である。規格化されたモジュールはプロセス処理モジュールと端末処理モジュールとに大きくカテゴライズされ機能とポートタイプによって、図19に示す通り、カテゴライズされる。
各カテゴリは継承されることによって実際の詳細な機能をもつカテゴリに分割される。
規格化モジュールは、異なる入力に対応する複数のプロセス処理モジュール、端末処理モジュールを持ち得る。プロセス処理モジュールと端末処理モジュールの双方を持つことも可能である。
図20は、評価ステップとシナリオ構造のモデル化を示す図である。本発明は、上述したように、カテゴリ適合チェック及び配置子プロパティ適合チェックの機能を持つので、アプリケーションプログラムが適切に動作するか否かを評価することができる。そのことを図20においては、評価ステップと呼んでいる。
図21は、モジュール連結パターンを示す図である。上述した配置子を配置することは、モジュールの連結と考えることもできる。図21では、一連の処理の流れをシナリオと呼んで、アプリケーションプログラムの一連の流れをモジュールの連結により実現するものとしてとらえるものである。
≪グリッドモデル≫
グリッドにオブジェクトアイコンを収納できるスプレッドシート型のGUIで配置グループ機能を実現する仕様。スプレッドシート及びその一部を行列状に区画したマトリックスと呼ばれる要素とグリッドに配置されるモジュール、補助的なグラフィックでUIは構成される。マトリックスの座標軸に識別グループと処理グループを割り付けグリッドの相対位置情報及び処理系列遷移定義情報で収納されたモジュールオブジェクトの挙動を制御する。
なお記述ではマトリックスについて三次元マトリックスまで含めた記述を行っているが図表では理解のし易さのため二次元までについてのものとなっている。
またグリッドモデルは表計算の機能強化として理解できる。
1:表計算ソフトではセルに埋め込まれた関数はリクエスト返値ポートが一つであると考えられるがグリッドモデルでは制御用の入出力を取り扱うオブジェクトを対象としている。その為制御の対象がセルではなく配置オブジェクトの入出力ポートとなっている。
2:識別グループ機能と処理グループ機能をグリッドの領域に対して定義しシートそのものに処理機能を持たせている。機能定義がセルに配置する関数に帰結する表計算機能、その操作を手続き的に定義するマクロ機能とはその点が異なる。
モジュール: プロトタイプ拡大モデルと同様にカテゴライズされた引数受け取り、戻り値受け渡し機能を備える関数機能、制御オブジェクトや配置グループをアイコンで管理するもの。配置グループはこのグリッド仕様でもその他のタイプでもよい。ただし配置子適合チェックにおいては制御オブジェクトとして扱われる。マトリックスのある位置に配置された時に適合チェックを受ける。
入出力ポート: このモデルにおいて入出力ポートを持つのはモジュール及びテーブル、識別軸を構成する各領域となる。前記のマトリックスは内部のモジュールに対して入出力ポート定義配置グループとして振る舞い配置モジュールカテゴリを反映した入出力ポートを持つ。
ポートのアイコンは必要に応じてオブジェクトアイコンの周辺に出現し、直接の遷移定義の際には定義の起点として利用される。
遷移定義: このモデルにおいてもモジュールもしくは入出力ポートが定義されたマトリックスの出力ポートと入力ポートの間で遷移定義を行う事が出来る。一つはあるカテゴリポート同士を直接結ぶ直接定義であり、遷移状況を示す表示を必要に応じて出現される。もう一つはテーブルの処理軸レーンを利用して識別軸同士に処理系列遷移を定義する事である。この場合は入出力ポートアイコンは表現されない。直接定義の制限は基本モデルに依る。
マトリックス: モジュールを配置するグリッドを縦横に長方形に並べたオブジェクト。複数のシート間で関連性を持たせて三次元マトリックスに拡張する事も出来る。必要に応じて周囲を区切るグラフィック処置がなされる。機能を持つオブジェクトとしては三種類が存在しグリッドUIのシート全体であるグリッドシート、配置グループ機能を実現するテーブル、その一部をモジュール化した領域となる。マトリックスは配置グループとして識別情報やカテゴリー情報、入出力ポートを持ちうる。
マトリックスには基点が存在し通常は左上となる(0番号列、行を設定してマトリックス内に基点を置くことも可能)。基点から行列の方向にシーケンス番号が設定されグリッドはこの整数ベクトルで位置情報を管理される。一つのグリッドが複数のマトリックスに属している場合、そのマトリックスのコンテキストに対してそれぞれ位置情報を持つことになる。
マトリックスの範囲内で画面横軸に縦に並ぶグリッドシーケンスを列、画面縦軸に横に並ぶグリッドシーケンスを行としそれぞれ列番号と行番号を持つ。また識別性を高めるために番号の他に名称や識別情報を持つことが出来る。
マトリックスはユーザレベルに応じて操作不能性を付与する事も可能である。 これはマトリックス設計によってシステムのアルゴリズムを実現し技能の低い一般ユーザにはモジュール配置のみを行わせることによってシステムのアップデートを容易にする事が出来るためである。
グリッド: グリッドはスプレッドシートのセルに当るものでモジュールアイコンを収納し所属マトリックスの定義情報に従って値やタイミング情報の授受を行う。所属マトリックスに対する相対位置情報を持ちそれを収納オブジェクトのスタティック識別情報として利用させる事が出来る。一つのグリッドは後述の領域としても定義可能でその場合は領域の機能を持つことが出来る。
グリッドシート: その上にテーブルや領域を配置し配置グループ処理による制御を実現するフィールドを構成するマトリックス。一枚のシートでUIの一画面(ウィンドウ)を構成する。1枚だけでなく複数のグリッドシートを三次元マトリックスとして処理を構成する事も出来、その場合はマトリックスの総体位置情報とグリッドシード識別情報でグリッドの相対位置を管理する。グリッドシート上の全てのマトリックスグリッドの相対位置情報はグリッドシートの相対位置情報と関連付けされる。UIのグリッドシートと処理上のグリッドシートを区別するためUI画面を構成するグリッドシートをUIグリッドシートと呼ぶ。単にグリッドシートとした場合は処理全体を包括するグリッドシートを指す。この(処理)グリッドシートは連結して処理範囲を拡大することもできる。グリッドシートそのものは入出力ポートを持たず。
外部との値のインポートエクスポートは内部のテーブル(と入出力ポート)を指定して行う(グリッドシート全体をテーブルとして定義する事は可能)。
UIグリッドシートは基点からモデル上無限に行列を延長することが出来る。
テーブル: グリッドシートの一部をマトリックスとして切り取ったオブジェクトに配置グループとして優先処理要求機能及び処理系列遷移機能を付与したもの。テーブルマトリックスの二軸もしくは三軸に処理軸と識別軸を割り当てる必要がある(一つの軸は処理軸か識別軸のどちらかを持つ必要がある)。割り当てられた軸はその1列(行)毎(複列化した場合は複数の行(列))のグリッドシーケンスを持ちそれぞれ識別軸シーケンス、処理軸シーケンスと呼ぶ。
三次元の場合はどちらかがマトリックスとなる。
識別軸シーケンスについてはシーケンス番号の範囲を限定しないことも可能。
テーブル型の配置グループは配置されたモジュールと識別軸シーケンスを配置子として持つ。
また同じ領域に複数のテーブルを定義する事も出来る。この時それぞれのテーブルは関連付け配置子として扱う(位相空間条件)。
またテーブルは入出力ポート定義配置グループとして入出力ポートを持つ。
図22は、グリッドモデルのオブジェクト関連図を示す図である。
図22は、グリッドモデルに関連するオブジェクトの関係について図示している。
このモデルにおいてはオブジェクトはマトリックスと呼ばれる行列を持つグリッド構造をしたGUIアダプターのグリッドに配置される。グリッドに配置されるオブジェクトはモジュールとして定義される。制御オブジェクトとグループモジュールに大別されそれぞれ基本モデルの制御オブジェクトと配置グループに対応している。グループモジュールはマトリックスのテーブルと領域に分かれ最大のアダプターであるグリッドシートに配置される。また領域はテーブルの一部分を切り取ったものとなる。グループモジュールは割り付けにより処理軸と識別軸を持つ。識別軸をまとめた処理軸レーンや複列化という機能を持つ。
識別軸: 識別軸として割り付けられるとそのグリッドシーケンス(マトリックス)は処理軸に対してモジュールを収納する識別グループとして機能するようになる。 識別軸シーケンス は識別グループとしての機能を持ち基本的な遷移制御機能を持つ。遷移制御タイプのカテゴリを処理軸レーンに挟み込むことによって複雑な制御を行う事も出来る。
識別軸シーケンスは配置子カテゴリ定義をする必要がある。システム的に設定された入出力ポートの他は和集合か積集合タイプとして配置子カテゴリ情報から抽出される。
基本制御タイプA: 出力元と処理軸シーケンスを共有するグリッドの処理が優先される(処理系列コンテキストとして処理開始記述モデルと同番号のシーケンス番号の記述モデルに遷移するのを優先)。そのグリッドが空白の場合はシーケンス番号が若い(多い)モジュールに遷移される(開始シーケンス番号はコンテキストに保持される)。
基本制御タイプB: 処理済みモジュール情報保持。指定したスタティック識別情報もしくは識別ステイタス情報から生成した序列情報に従って優先度の高いモジュール記述クラスから処理が行われ、次に識別軸シーケンスに遷移が行われた場合は処理済みモジュールを除いたモジュールに対して優先計算がされ次の処理モジュール記述クラスが指定される。
処理軸: 処理軸が割り付けられるとそのグリッドシーケンス(マトリックス)は遷移制御情報として利用される( 処理軸シーケンス )。ただ処理軸としての機能として重要なのはその軸に並んで配置される識別軸シーケンスの集合である。これを 処理軸レーン と呼ぶ。テーブルを処理グループとして機能させる為には処理軸レーンを構成する識別軸シーケンスのポート間に遷移定義を行う必要がある。
通常はテーブルの軸割り当て時に識別軸シーケンスの配置子カテゴリ定義が終わった時点で識別軸シ−ケンスのポート間に(カテゴリ)遷移定義を行う事によって定義される。また処理軸シーケンスのシーケンス番号に従って処理が進んでゆく制御タイプをとる事も出来る(シーケンス処理)。
図22(a)は、テーブル割付図Aを示す。図22(a)にはテーブルに識別軸、処理軸を割り付けた場合の状況が例示されている。
図では行に識別軸、列に処理軸を割り付けたがこれは逆でも良い。識別軸方向(列)に並ぶグリッドのシーケンスを識別軸グリッドシーケンスと呼び処理軸方向に(行)に並ぶグリッドのシーケンスを処理軸グリッドシーケンスと呼ぶ。また識別軸グリッドシーケンスの並びを処理軸レーンと呼ぶ。処理を行うに当たって重要な要素は識別軸グリッドシーケンスと処理軸レーンであり識別グループと処理グループとしての機能を担う。
図22(b)は、テーブル割付図Bを示す。図22(b)にはテーブルに遷移定義をする場合の状況が例示されている。モジュール及び識別軸グリッドシーケンスは入出力ポートアイコンを表示させることが出来、直接定義、処理軸レーンによる処理系列遷移定義に利用できる。これによりグリッドシーケンス、モジュールの入出力ポート間に遷移矢や識別情報指定により遷移定義を行う事が出来る。直接定義にはすべての遷移が、処理系列遷移定義にはグリッドシーケンス間遷移が利用される。
複列(行)化: (ある配置子カテゴリの)識別軸シーケンスを複数の列(行)に跨って(マトリックスとして)設定する事が出来る。一つの識別グループとして扱われる。マトリックスの大きさを限定したりスタティック識別情報による優先順位を設定するときなどに使われる。
離散テーブル: 複数のテーブル、領域やUIグリッドシートに跨った処理を行うために複数のマトリックスをショートカットアイコンで連結して一つのテーブルとして扱う事が出来る。ショートカットアイコンは遷移矢状のアイコンでマトリックス間を結ぶ表現がなされる。領域間を結ぶ場合は領域に含まれる全ての識別軸シーケンスを識別軸レーンの要素として処理が行われる。テーブル間を結ぶ場合は包含化テーブルとして扱われる。ショートカットアイコンで結ばれたマトリックス同士で処理軸の定義を行う事が出来る。
領域: テーブルの一部をマトリックスとして切り出す事も出来、それを領域と呼ぶ。その内部に含まれる識別軸シーケンス(の部分マトリクス)の集合して扱い、元テーブルとは異なる(離散)テーブルの処理軸レーンの一部として定義できる。遷移定義するポートが重なる場合は処理系列遷移の処理に従って遷移優先度が解決される。グリッドシーケンスは領域の一形態として扱われる。
包含化テーブル: テーブルの概念は非マトリックスに拡大する事が出来る。連続したテーブルをテーブルで包含したり、ショートカットアイコンで結ぶ事によって包含化テーブルを構成できる。包含化テーブルの要素となったテーブルは識別軸シーケンスとして取り扱われ包含化テーブルの処理軸レーンの要素として遷移定義がポート間でなされる。
処理階層化(グループモジュール): グリッドにカテゴリモジュールとしてテーブルを埋め込むことが出来る。この場合、そのテーブルを配置するUIグリッドシートが必要となるがこれを上位のシートと共用できるかの設定を取る必要がある。またその他の形式の入出力ポート定義配置グループもモジュール形式を取っていれば配置できる。
連結アイコン: 直接遷移定義及び離散テーブルの処理軸レーンを定義する為に連結アイコンが使われる。ポート若しくはマトリックス外周同士の対応関係を示すアイコンとなる。シート内では線状のアイコンや相互の対応先を示すアイコンがポートやマトリックスと連結、対応させられる。シート同士では相互の対応先を示すアイコンが利用される。また単純にマトリックス範囲を示す枠情報をテーブル毎にユニークなグラフィックや識別情報の割り付けを行う事にしてもよい。
配置: グリッドモデルの要素の配置はまずマトリックス構造の設計を行い、カテゴリー定義を含むマトリックス設計、そしてモジュールのグリッドへの配置が行われる。
1:グリッドシート設計>UIグリッドシートを一つにまとめるのか複数用意して三次元或いは階層構造をとらせるかの決定を行う。
作成するグリッドシートそれぞれに識別情報を付与
2:テーブル配置>アルゴリズム設計を行い処理フローに対応するテーブルを決定したなら必要なマトリックス範囲を決定しグリッドシート上にテーブルを割り付ける。この時連結アイコンにて離散テーブル間のテーブル、領域間の関係も定義する。
マトリックスの配置
連結アイコン配置
テーブル識別情報を付与
3:テーブル定義>通常、離散問わずテーブルの機能を定義する。
3−1:軸定義>>識別軸、処理軸の定義を行う。また複列(行)化を行う識別軸シーケンスが有ればそれも定義する。軸シーケンスに識別情報を付与するならこの時行う。
軸定義を行う
複列(行)化
軸シーケンスに識別情報を付与
3−2: 配置子カテゴリー定義 >>識別軸シーケンスに対して配置子カテゴリー定義を行う。カテゴリー入出力ポートの抽出も行う。基本モデルに準拠。
3−3:処理軸レーン定義>>テーブルが含む識別軸シーケンスに対して処理系列遷移定義を行う。全ての入出力ポートに対して定義を行う必要はない。
処理系列遷移定義
4:モジュール配置>グリッドに対してモジュールを配置する。この時配置子適合チェックが行われる。
X:カテゴリー定義>テーブル定義時配置グループカテゴリーの適用を行う事によって配置子カテゴリー定義及び処理系列遷移定義を行う事が出来る。この時カテゴリー適用チェックが行われる。
図23は、マトリックス配置図を示す図である。図23には上述のグリッドシート上の配置の例示がされている。
3×6のテーブルAは2×6のテーブルBと連結アイコンで結ばれ一つのテーブルを構成している。1×5のテーブルAの領域1は2×5のテーブルCと連結され一つのテーブルを構成している。この離散テーブルが包含化テーブルかどうかをグラフィカルに識別できるようにしてもよい(縁や連結アイコンの性状などで)。
本コンピュータシステムは、多くのユーザーがスマートフォンなどの携帯端末を用いてアクセスするウェブシステムに応用可能である。特に、交信タイミング制御と、配信対象の管理が重要となるウェブシステムに応用できる。さらに、関連するウェブシステムのステイタス情報取得、連携や配信、その他の非同期シグナルの送受信を適切なタイミングで行うことが求められるウェブシステムに応用できる。
≪出願後の補正、または出願分割に役立つと思われる技術事項のメモ≫
ビジネスユーザに対するAPI、エンドユーザに対するAPIに着眼して、本発明の切り口をとらえることもできる。
本発明のプログラム編集は、現に動作しているシステムに対して、変更を加える動的な修正、変更をも可能とする。たとえば、ある顧客がプロジェクトから、抜けてもそのプロジェクトは続行する必要があるなどの場合にも臨機応変に対応するためである。そのような動的な編集に着眼して、本発明をとらえることができる。
本発明のコンピュータシステムは、端末機器によってウェブサーバにアクセスするエンドユーザーに対して、ウェブサーバを介して働きかけたり、催し物を行ったりするビジネスユーザが存在する産業すべてにおいて利用することができる。
10 サーバ
21,22,23,24 管理者ユーザ端末
31,32,33,34 一般ユーザ端末
51 DB(データベース)装置
61 挙動制御システム
62 挙動管理モデル編集システム
63 挙動管理モデル編集装置
64 制御オブジェクト編集装置
65 挙動管理モデルアプリケーション装置
66 制御オブジェクト
67 編集ユーザインターフェイス装置

Claims (10)

  1. プログラムオブジェクトのクラスをメソッドの戻り値及び引数の機能と型情報によってカテゴライズし、オブジェクトカテゴリに対応した機能をもつグループオブジェクトにクラスやインスタンスを関連付けることによってシステムのプログラミング、あるいは維持管理(再利用、アップデート)を行うコンピューターシステムであって、
    前記プログラムオブジェクトは、
    入出力機能によってカテゴライズされたオブジェクトであり、端末機器、データベース装置、及び他のシステムもしくは端末機器との連携を担う複数の制御オブジェクトを含み
    前記グループオブジェクトは、
    関連付け可能な前記制御オブジェクトのカテゴリ情報によって定義される配置グループオブジェクトを含み、
    前記型情報として、前記制御オブジェクトと前記配置グループオブジェクトとを機能統合する挙動管理モデルを有し、
    さらに、
    前記制御オブジェクトを構造的に組み立てることにより、前記制御オブジェクトの個々の挙動を前記配置グループオブジェクトと関連付けて調整する挙動管理を実施する挙動制御システムと、
    前記制御オブジェクトの機能詳細を記述する記述機能をアプリケーションプログラム構築者に提供する制御オブジェクト編集ユーザインタフェイス装置と、前記挙動管理モデルの記述機能をアプリケーションプログラム構築者に提供する挙動管理モデル編集ユーザインタフェイス装置とを有する挙動管理モデル編集システムと
    を有し、
    前記制御オブジェクトは、
    待機、イベント・トリガー待受け或いは割込みのタイミングを含むタイミング制御を伴う入出力機能を有する入出力ポートを有し、
    前記挙動関連モデルと関連する前記情報と機能とによってカテゴライズされた入出力ポート群によって定義されるとともに、制御オブジェクトカテゴリとしてカテゴライズされ、
    前記配置グループオブジェクトは、
    前記挙動管理モデルを構築するために、カテゴリ入出力ポート(カテゴライズされた入出力ポート)間の遷移定義セット(出力ポートと入力ポートとを対応づける遷移を定義する遷移定義の集合)による遷移管理機能(遷移を管理する機能)である処理系列遷移機能及びグループ配置制御オブジェクトの識別情報による遷移管理機能である優先処理要求機能を持つことが可能であって、
    前記処理系列遷移機能及び前記優先処理要求機能を利用して関連付けられた制御オブジェクトはシステムへのレスポンスやタイミング情報によって、動的に管理される
    ことを特徴とするコンピュータシステム。
  2. 前記制御オブジェクトカテゴリは、継承元の入出力機能を引き継ぐことを条件に、継承関係を持つことを特徴とする請求項1に記載のコンピュータシステム。
  3. 前記配置グループオブジェクトを不定とする設定をすることにより、配置するオブジェクトの動的な配置を可能とすることを特徴とする請求項1に記載のコンピュータシステム。
  4. 請求項2に記載するコンピュータシステムを用いたアプリケーションプログラム構築方法であって、
    前記制御オブジェクトのカテゴリ、前記配置グループオブジェクトと関連付けされた制御オブジェクトもしくは配置グループである配置子の配置子カテゴリをインターフェイスに関する仕様により定義づけるカテゴリ定義づけステップと、
    継承元から継承先へカテゴリ情報を継承することを利用して制御オブジェクトのカテゴリ祖形と優先処理要求/処理系列遷移機能を対応させ定義する継承ステップと、
    前記カテゴリ祖形を組み合わせて制御オブジェクトのカテゴリ設計を行うカテゴリ設計ステップ
    を有するアプリケーションプログラム構築方法。
  5. 請求項4に記載するアプリケーションプログラム構築方法であって、
    制御オブジェクト、配置グループ、優先処理要求定義、処理系列遷移定義のうちのいずれかのカテゴリが指定された時点あるいは配置時に、
    インスタンスに対応する記述クラスを呼び出す記述クラス呼出ステップと、
    当該呼び出しステップにて呼び出した記述クラスからカテゴリ情報を抽出するカテゴリ情報抽出ステップと、
    当該カテゴリ情報抽出ステップにて抽出されたカテゴリ情報に基づいてカテゴリ要件を呼び出すカテゴリ要件呼出ステップと、
    当該カテゴリ要件呼出ステップにて呼び出されたカテゴリ要件と、前記記述クラス呼出ステップにて呼び出された記述ステップとが適合するか否かをチェックするカテゴリ適合チェックステップと
    を有するアプリケーションプログラム構築方法。
  6. 請求項4に記載するアプリケーションプログラム構築方法であって、
    出力元ポートから優先処理要求がなされる出力元ポート優先処理要求差し出しステップと、
    入力先識別グループ、参照配置グループに優先処理要求がなされる優先処理要求受け取りステップと、
    遷移定義された識別グループ及び参照配置グループの実配置情報、ステイタス情報を受け取る情報受け取りステップと、
    遷移出力情報、関連実配置情報、関連ステイタス情報及び実配置情報のうちのいずれか一つ以上の情報を利用して出力先の優先条件計算を行う優先条件計算ステップと、
    当該優先条件計算ステップにてなされた優先条件計算に基づき識別グループ実配置情報から入力先配置子の識別情報を抽出する識別情報抽出ステップと、
    入力先識別グループポートに遷移先指定情報(リスト)を添えて、或いは該当する配置子ポートに遷移出力情報を送る遷移出力情報送出ステップと
    を有するアプリケーションプログラム構築方法。
  7. 請求項5に記載するアプリケーションプログラム構築方法であって、
    配置子がカテゴリ適合であるかチェックし、不適合なら配置不能とするカテゴリ適合チェックステップと、
    数値範囲条件に適合しているかチェックする数値範囲適合チェックステップと、
    関連付けがなされている配置子についてプロパティに従って判定条件に不適合ならば配置不能とする配置子プロパティ適合チェックステップと、
    配置可能な配置子の関連付け済み配置子を関連付けチェックの対象に編入する関連付けチェック対象編入ステップと
    を有し、これらカテゴリ適合チェックステップから関連付けチェック対象編入ステップまでをすべての関連付けチェックの対象である配置子すべてに対して、当該配置子の登録順に逐次的に行うことを特徴とするアプリケーションプログラム構築方法。
  8. 請求項1から請求項3までのいずれか1項に記載するコンピュータシステムであって、
    前記制御オブジェクト編集ユーザインタフェイス装置は、
    オブジェクトアイコンを収納できるグリッドをマトリックス状に展開したグリッドシートを用いて、グラフィカルユーザインターフェイスにより前記配置グループ機能を実現することを特徴とするコンピュータシステム。
  9. 請求項8に記載するコンピュータシステムであって、
    前記グリッドシートの一部をマトリックスとして切り取ったオブジェクトに前記配置グループオブジェクトとして前記優先処理要求機能及び前記処理系列遷移機能を付与したテーブルを用いて、前記配置グループオブジェクトを定義することを特徴とするコンピュータシステム。
  10. 請求項9に記載するコンピュータシステムを用いたアプリケーションプログラム構築方法であって、
    一つ又は複数のユーザインターフェイスグリッドシートを用意してそれぞれ識別情報を付与するグリッドシート設計ステップと、
    アルゴリズム設計を行い、処理フローに対応するテーブルを決定し、必要なマトリックス範囲を決定し、グリッドシート上にテーブルを割り付けるテーブル配置ステップと、
    テーブルマトリックスの二軸もしくは三軸に、モジュールを収納する識別グループとして機能する識別軸であるか、遷移制御情報として利用される処理軸であるかのいずれであるかを定義する軸定義ステップと、
    識別軸シーケンスに対して配置子カテゴリー定義を行う配置子カテゴリー定義ステップと、
    グリッドに対してモジュールを配置するモジュール配置ステップと
    を有するアプリケーションプログラム構築方法。
JP2020114064A 2020-07-01 2020-07-01 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置 Active JP6887182B1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020114064A JP6887182B1 (ja) 2020-07-01 2020-07-01 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置
US18/003,686 US12236215B2 (en) 2020-07-01 2021-06-21 Computer system and application programing intreface device to realize collaboration between objects categorized in accordance with input/output, by using an object group in which categories of objects which can be placed are defined
PCT/JP2021/023358 WO2022004455A1 (ja) 2020-07-01 2021-06-21 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020114064A JP6887182B1 (ja) 2020-07-01 2020-07-01 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置

Publications (2)

Publication Number Publication Date
JP6887182B1 true JP6887182B1 (ja) 2021-06-16
JP2022012306A JP2022012306A (ja) 2022-01-17

Family

ID=76313314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020114064A Active JP6887182B1 (ja) 2020-07-01 2020-07-01 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置

Country Status (3)

Country Link
US (1) US12236215B2 (ja)
JP (1) JP6887182B1 (ja)
WO (1) WO2022004455A1 (ja)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000276338A (ja) 1999-03-19 2000-10-06 Hitachi Tohoku Software Ltd 視覚プログラミング方法およびシステムならびに視覚プログラミングのための記録媒体
WO2001055898A1 (en) * 2000-01-14 2001-08-02 Synquiry Technologies, Ltd. Software composition using graph types, graphs, and agents
US7334216B2 (en) * 2000-04-04 2008-02-19 Sosy, Inc. Method and apparatus for automatic generation of information system user interfaces
US6681383B1 (en) * 2000-04-04 2004-01-20 Sosy, Inc. Automatic software production system
EP1530766A2 (en) * 2002-08-21 2005-05-18 Windmill Microsystems Holding B.V. Object-oriented design method for the time-effective and cost-effective development of production-grade embedded systems based on a standardized system architecture
US7877248B1 (en) * 2004-09-20 2011-01-25 The Mathworks, Inc. Modifying block parameters in a discrete event execution domain
US10824400B2 (en) * 2004-09-20 2020-11-03 The Mathworks, Inc. Graphical representation of ports of multiple types
JP2007219649A (ja) 2006-02-14 2007-08-30 Mitsubishi Electric Corp ダイヤグラム編集装置
WO2009126710A2 (en) * 2008-04-10 2009-10-15 Perceptive Pixel, Inc. Methods of interfacing with multi-input devices and multi-input display systems employing interfacing techniques
JP6873868B2 (ja) * 2017-08-23 2021-05-19 株式会社日立製作所 データ分析処理支援装置、及びデータ分析処理支援方法
US20220291753A1 (en) * 2021-03-10 2022-09-15 Finch Technologies Ltd. Spatial Gesture Recognition using Inputs from Different Devices to Control a Computing Device

Also Published As

Publication number Publication date
US20230259336A1 (en) 2023-08-17
JP2022012306A (ja) 2022-01-17
WO2022004455A1 (ja) 2022-01-06
US12236215B2 (en) 2025-02-25

Similar Documents

Publication Publication Date Title
CN107370786B (zh) 一种基于微服务架构的通用信息管理系统
US20220215122A1 (en) Specifying a new computational step of a data pipeline
US8340995B2 (en) Method and system of using artifacts to identify elements of a component business model
US8478602B2 (en) Executing business processes using persistent variables
CN110443010A (zh) 一种在信息系统中权限可视化配置控制方法、装置、终端及存储介质
Ellis et al. Computer science and office information systems
CN115640045A (zh) 基于领域驱动设计的低代码开发平台及业务系统创建方法
US9361325B2 (en) Governing information
CN116301760A (zh) 用于软件开发的应用设计系统
CN109542432A (zh) 风控规则编辑方法及终端设备
US20220270122A1 (en) Information delivery method, apparatus, and device, and computer-readable storage medium
JP6887182B1 (ja) 入出力をカテゴライズされたオブジェクト間の協働を、配置可能なオブジェクトカテゴリが定義されたオブジェクトグループを利用して実現するコンピュータシステム及びアプリケーションプログラミングインターフェイス装置
CN117850764A (zh) 基于集成式模型驱动架构的设计建模方法及装置
CN110648081A (zh) 用于计算系统的业务建模方法、装置和计算机系统
CN110018815A (zh) 基于数据库和电子表格软件的应用开发系统和方法
CN114296789B (zh) 基于全流程配置的业务处理方法、装置、设备和存储介质
CN110737427A (zh) 互联网技术架构及其构建方法、装置、电子设备和介质
CN110111203A (zh) 业务数据的批量操作方法、装置及电子设备
CN116360891A (zh) 一种可视化人工智能建模的算子自定义的方法和系统
CN109460217A (zh) 售票网站后台管理系统构架
CN115794835A (zh) 基于知识图谱的政务表单生成方法及系统、设备、介质
CN115543428A (zh) 一种基于策略模板的模拟数据生成方法和装置
Waszkowski Low-code Development Platform for Business Process Automation: Aurea BPM
van Hee et al. Designing case handling systems
US20140365989A1 (en) Information product builder, production and delivery system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200702

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200702

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200803

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210114

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210415

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210511

R150 Certificate of patent or registration of utility model

Ref document number: 6887182

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250