JP2002082796A - データ表示方法及びデータ表示装置 - Google Patents
データ表示方法及びデータ表示装置Info
- Publication number
- JP2002082796A JP2002082796A JP2000272567A JP2000272567A JP2002082796A JP 2002082796 A JP2002082796 A JP 2002082796A JP 2000272567 A JP2000272567 A JP 2000272567A JP 2000272567 A JP2000272567 A JP 2000272567A JP 2002082796 A JP2002082796 A JP 2002082796A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data management
- management
- display
- mediation
- 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.)
- Granted
Links
Landscapes
- Digital Computer Display Output (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
に、データの共有関係の構造的変更をコーディングレス
で行い、新たな抽象度のビューの追加を既存のソースコ
ードの僅かな修正で行うデータ表示方法及びデータ表示
装置を提供する。 【解決手段】 管理カテゴリ毎にデータ管理オブジェク
トを定義し、データ集合及び表示パラメータ集合を相互
の関連性に基づいて複数のグループに分割し、各グルー
プのデータ集合及び表示パラメータ集合を複数のデータ
管理オブジェクトにそれぞれ記憶し、各データ管理オブ
ジェクトの処理動作を管理ポリシーによって指定し、複
数のデータ管理オブジェクトとそれらにアクセスする表
示オブジェクトその他の外部オブジェクトとの間に、メ
ッセージ、イベント及びデータの交換を行う仲介オブジ
ェクトを設けて両者を仲介し、表示オブジェクトが表示
処理を行う。
Description
基づいてメモリーに読み込まれたデータ集合を、コンピ
ュータディスプレイ上に、種々の形式で複数のビューと
して表示するデータ表示システムの構成技術に関するも
のである。
書形式、表形式、数値グラフ形式、グラフィック図形形
式等、種々の形式で複数のビューに表示できることが必
要である。このためのシステムでは、同一のデータ集合
に対して複数のビューを表示させる場合、更に、データ
集合の値の更新を的確なタイミングで各ビューに反映さ
せることが必要である。また、種々のビューのバリエー
ションが追加された場合でも既存のソースコードの変更
を抑えることが必要になる。
ト指向ソフトウェア構成技術におけるMVC(Model, Vi
ew, Control)パターンによって上記の要件を実現してい
る。MVCパターンについては、例えば、E.Gamma,R.He
lem,J.Johnson,J.Vissides,「デザインパターン」(本
位田真一、吉田和樹監訳、ソフトバンク、1995)、及
び、F.Bushmann,R.Meunier,H.Rohnert,P.Sommerlad,M.S
tal,「ソフトウェアアーキテクチャ」(金澤典子他訳、
トッパン、1999)に詳細が記載されている。MVCは、
データ集合を保持するModelオブジェクトと、そのModel
オブジェクトからデータの値を取得してディスプレイ上
に表示するViewオブジェクトと、ユーザーの入力イベン
トを受け取りViewオブジェクトの情報に基づいてModel
オブジェクトの内容を変更するControllerオブジェクト
から構成される。
がModelオブジェクトからViewオブジェクトへ通知さ
れ、それを受けたViewオブジェクトがModelオブジェク
トの内容にアクセスして実際の表示処理を実行する。即
ち、Modelオブジェクトは、表示処理の内容に依存しな
いように定義される。このため、一つのModelオブジェ
クトに対し複数のViewオブジェクトとControllerオブジ
ェクトとを組合せることが可能である。このように、M
VCを用いることにより、同一のデータ集合に対して複
数のビューを表示し、的確なタイミングでそれを更新す
ることが可能である。その際、Modelオブジェクトの定
義は変更する必要が無いため既存のソースコードの変更
を抑える拡張が可能である。
め、データ集合を異なる抽象度で複数ビューに表示する
ことが必要となる場合がある。その場合、データの抽象
度に応じて元のデータ集合の一部を変換し、又は新たな
表示パラメータを追加することが必要になる。また、デ
ータ集合を共有する他のビューの処理に影響が及ばない
ようにすることが必要になる。従来は、これを、オブジ
ェクト指向ソフトウェア構成技術におけるPAC(Prese
ntation, Abstraction, Control)パターンによって実現
している。PACパターンについては、例えば、F.Bush
mann,R.Meunier,H.Rohnert,P.Sommerlad,M.Stal,「ソフ
トウェアアーキテクチャ」(金澤典子他訳、トッパン、
1999)に詳細が記載されている。
ポインタによってツリー状に構成し、下位の複数のオブ
ジェクトが上位の一つのオブジェクトを共有し参照す
る。データ集合はAbstractionオブジェクトに格納さ
れ、データの表示及び操作の処理はPresentationオブジ
ェクトが実行する。Controlオブジェクトは、二つのオ
ブジェクト間に介在し、データアクセスの制御及びメッ
セージの転送を行う。
クトへのアクセスの際にControlオブジェクトを介して
ツリーの上位のAbstractionオブジェクトから予めデー
タの内容をコピーしておくか又はアクセスが行われた時
点で間接的にアクセスを行う。また、更新イベントの通
知の際、ツリーの上位から下位へブロードキャストを行
う。このように、PACを用いることにより、抽象度に
応じてデータの変換又は表示パラメータの追加等を行う
ことが可能になる。また、データ集合を共有する他のビ
ューの処理に影響が及ばないようにすることが可能にな
る。
の共有関係は、Controlオブジェクトを定義する際にツ
リーの親又は子として実装されたControlオブジェクト
により固定的に決定される。即ち、同じ種類のControl
オブジェクトが兄弟関係にあるノードとして追加される
ような数的な変更はコーディングレスに行うことができ
るが、親ノードの種類、子ノードの種類、多段階の共有
関係における段数、それらの間の順序等、構造的な変更
を行うことはできない。
では、データ集合の共有関係を構造的に変更できること
が望ましいが、PACでは、それらの変更が生じた場合
はソースコードを逐一修正することによって対応する必
要がある。
を管理するオブジェクト、即ちデータ管理オブジェクト
の定義の良否は、開発コストに大きな影響を与える。M
VCにおいては、Modelオブジェクトがデータ管理オブ
ジェクトに相当する。PACにおいては、Controlオブ
ジェクトとAbstractionオブジェクトとの組がデータ管
理オブジェクトに相当する。
は常に一つのオブジェクトとなる。これは、処理の定義
を分割管理することができないことを意味する。従っ
て、表示内容の色、大きさ、位置等を制御するパラメー
タ(表示パラメータ)の数又は表示を更新するイベント
(更新イベント)の種類が増加した場合等には、Model
オブジェクトの定義はそれらを単純に包含したものにな
る。
てプログラムロジックが急激に複雑化する傾向がある。
また、表示機能の仕様を変更する際、一度に大量のソー
スコードを解析する必要がある。更に、その変更内容の
事前検証、実装変更、試験、デバッグ等の作業コストが
増大し、間違いも生じ易くなる。特に、変更が局所的な
場合でもその影響は広域に及ぶため、作業効率は著しく
低下する。また、プログラムの保守及び管理において
も、仕様の微細な違いにより多数のバリエーションが発
生する。
ジェクトに相当する機能はAbstractionオブジェクトとC
ontrolオブジェクトとで実現される。Controlオブジェ
クトが構成するツリーに着目すると、データ管理オブジ
ェクトに相当する処理要素は複数存在する。しかし、こ
れらは機能の分割によるものではなく、それぞれが単独
のデータ管理オブジェクトとして機能するものであるた
め、重複する定義内容が多い。このため、データ管理オ
ブジェクト(AbstractionオブジェクトとControlオブジ
ェクトとの組)一つを記述するのに必要なソースコード
量はMVCと基本的に変わらず、MVCが抱える課題は
改善されない。
構造的に変更する場合には、逐一ソースコードの修正が
必要である。このことから、MVCの課題と相俟って保
守及び管理作業の効率の低下及びプログラムの質の低下
が顕著に現れる。
ームRouteViewについて説明する。RouteViewは、業務内
容毎に作成されたアプリケーションを読み込み、それに
基づいて屋外通信施設等の管理データベースを検索し、
地図データと重ね合わせてグラフィック表示する機能を
提供する。また、ユーザーはポインティングデバイスに
よって図形を選択し、その内容に基づいて新たな検索を
行い、別のウィンドウに結果を表示することができる。
り、プログラミング言語はObjective-Cを用いている。O
bjective-Cでは、メッセージ識別子による応答可能オブ
ジェクトの判定、メッセージ受信時における他オブジェ
クトへの転送等の実行時機能が利用できる。そのため、
メッセージ送信処理は直接実装することができる。
トの構成を示す図である。矩形で描かれたオブジェクト
がデータ管理オブジェクトであり、円で描かれたオブジ
ェクトが外部オブジェクトである。データ管理オブジェ
クトには、Document Controller、Document及びViewが
ある。Document Controllerは、RouteViewに対して常に
一つだけ存在し、OS上における動作環境設定及びデー
タベースに対する動作パラメータを保持する。Document
は、RouteViewにロードされた業務アプリケーション毎
に存在し、アプリケーションの動作パラメータを保持す
る。
存在し、地図図形表示に必要な表示パラメータ及びポイ
ンティングデバイスに対する動作条件等の動作パラメー
タを保持する。外部オブジェクトには、システム設定G
UI表示オブジェクト、データベース検索オブジェク
ト、アプリケーションローダ、アプリケーション設定G
UI表示オブジェクト、地図画面表示オブジェクト、ウ
ィンドウ表示オブジェクト等が存在する。これらの外部
オブジェクトは、データ管理オブジェクトにアクセスし
て各種入出力処理を行う。
リは、Global、Application、View、Map、Graphic及びD
ataである。Globalは共通パラメータであり、例えば印
刷のページサイズ、作業ディレクトリの位置、サイズ等
である。Applicationは業務アプリケーションのパラメ
ータであり、例えばビュー構成に関する情報等である。
Viewはビューに関連するGUIのパラメータであり、例
えば表示拡大率、図形選択モード等である。Mapは背景
となる地図のパラメータであり、例えば地図の種類、縮
尺率、地図ファイル検索ディレクトリ等である。Graphi
cは図形生成のためのパラメータであり、例えば生成図
形の種類、色、サイズ、表示モード等である。Dataは設
備管理データベース検索結果データであり、例えば検索
結果のテーブルデータ、特定カラムの最大値、最小値等
である。
示を行う場合のデータ管理方法を説明するための図であ
る。図示のように、表示パラメータ(管理カテゴリGrap
hic)と検索結果(管理カテゴリData)とのデータ共有
関係を変更した時に、(a)(b)(c)のようにDocu
mentオブジェクトとViewオブジェクトとの管理処理の内
容が異なってしまう。これを実装する場合は、それぞれ
の共有関係に応じて異なるバリエーションを実装する方
法、これらの機能を全て実現するオブジェクトを実装す
る方法等が考えられる。しかしながら、前者は多くのバ
リエーションを維持管理するために多大のコストを必要
とし、後者は複雑な処理を定義するために多大のコスト
を必要とする。
により複数ビュー表示の追加を行う場合のデータ管理方
法を説明するための図である。具体的には、(b)Vie
w'オブジェクトに対応するウィンドウで地図上の範囲を
指定し、より詳細な地図の表示を(c)Detail Viewオ
ブジェクトとそれに対応するウィンドウとで行う場合を
示す。ビューの追加に際して、各データ管理オブジェク
トの定義に対する修正の必要性は次の通りである。
は、上位の(b)View'オブジェクトからデータをコピ
ー又は参照するよう新規に定義する必要がある。次に、
(b)View'オブジェクトは、追加前のViewオブジェク
トに対して管理カテゴリMapのデータ管理が加えられて
いるため、定義の修正が必要である。また、(a)Docu
ment'オブジェクトについても(b)View'オブジェクト
に対する管理カテゴリMapの追加に伴い、上位の管理カ
テゴリMapとしてデータを公開するための修正が必要に
なる。更に、(a)(b)(c)の間で適切にデータ更
新イベントが伝播されるように、この共有関係専用の定
義を行わなければならない。
表示を追加する場合、多くのデータ管理オブジェクトに
修正を加えることが必要になる。この状況は、図14で
示した複数ビュー表示のバリエーションと組合された場
合に更に顕著になる。このように、従来技術によれば、
抽象度の異なるビューの開発コストが著しく大きくなる
ことがわかる。
のバリエーションを複数のビューに表示する場合に、デ
ータの共有関係の構造的変更をコーディングレスで行う
ことができ、新たな抽象度のビューの追加を既存のソー
スコードの僅かな修正によって行うことができるデータ
表示方法及びデータ表示装置を提供することにある。
は、上記の目的を達成するため、データ集合及び表示パ
ラメータ集合をコンピュータディスプレイ上に複数のビ
ューとして表示するデータ表示方法において、管理カテ
ゴリ毎にデータ管理オブジェクトを定義し、データ集合
及び表示パラメータ集合を相互の関連性に基づいて複数
のグループに分割し、各グループのデータ集合及び表示
パラメータ集合を複数のデータ管理オブジェクトにそれ
ぞれ記憶し、各データ管理オブジェクトの処理動作を管
理ポリシーによって指定し、複数のデータ管理オブジェ
クトとそれらにアクセスする表示オブジェクトその他の
外部オブジェクトとの間に、メッセージ、イベント及び
データの交換を行う仲介オブジェクトを設けて両者を仲
介し、表示オブジェクトが表示処理を行うことを特徴と
する。
理を実行するためのメッセージを送信する場合、表示オ
ブジェクトがメッセージを仲介オブジェクトに送出し、
仲介オブジェクトが、ポインタを保持するデータ管理オ
ブジェクトの中からそれに反応するものを検索し、検索
に該当するデータ管理オブジェクトが存在しない場合、
仲介オブジェクトが属する共有関係ツリー上の親ノード
に相当する他の仲介オブジェクトに再帰的検索を依頼
し、再帰的検索を通して該当するデータ管理オブジェク
トが得られた場合はそれに対してメッセージを送信し、
得られない場合はメッセージ送信エラーを発生するよう
にしてもよい。
管理オブジェクトのデータの値の更新イベントを通知す
る場合、データ管理オブジェクトが更新イベントを仲介
オブジェクトに送出し、仲介オブジェクトが、更新イベ
ントに含まれる管理カテゴリ識別子に基づいて、仲介オ
ブジェクトに予めポインタを登録したイベント通知対象
に更新イベントの発生を通知し、更新イベントに含まれ
る管理カテゴリ識別子及び仲介オブジェクトがポインタ
を保持するデータ管理オブジェクトの管理ポリシー識別
子に基づいて、仲介オブジェクトが属する共有関係ツリ
ーの子に相当する他の仲介オブジェクトに再帰的に更新
イベントを伝播するようにしてもよい。
管理オブジェクトのデータ内容を管理する場合、データ
内容を初期化する場合は、データ管理オブジェクトに関
連付けられる仲介オブジェクトの共有関係ツリー上の位
置及びデータ管理オブジェクトに予め記憶された管理ポ
リシー識別子に基づいて記憶内容の初期値を他のデータ
管理オブジェクトからコピーし、他のデータ管理オブジ
ェクトのデータを取得する場合は、データ管理オブジェ
クトに関連付けられた仲介オブジェクトの共有関係ツリ
ー上の位置及びデータ管理オブジェクトに予め記憶され
た管理ポリシー識別子に基づいてデータ参照が行われた
値の内容を他のデータ管理オブジェクトから取得するよ
うにしてもよい。
データ集合及び表示パラメータ集合をコンピュータディ
スプレイ上に複数のビューとして表示するデータ表示装
置において、データ集合及び表示パラメータ集合を相互
の関連性に基づいて分割された複数のグループのデータ
集合及び表示パラメータ集合をそれぞれ記憶する複数の
データ管理オブジェクトと、データ管理オブジェクトが
属するグループを表すためにデータ管理オブジェクトが
保持する管理カテゴリ識別子と、データ管理オブジェク
トの動作モードを表すためにデータ管理オブジェクトが
保持する管理ポリシー識別子と、複数のデータ管理オブ
ジェクトへのポインタを保持する仲介オブジェクトと、
データ内容の共有関係に基づいて複数の仲介オブジェク
トの間をポインタで結ぶ共有関係ツリーと、データ管理
オブジェクトのデータの変更を監視するため、イベント
通知対象として仲介オブジェクトにポインタを予め登録
した複数の外部オブジェクトとを具備することを特徴と
する。
毎にデータ管理オブジェクトの定義及び動作が独立して
いること、データ管理オブジェクトの動作を管理ポリシ
ーの変更によって実行時に変更することができること、
仲介オブジェクトの情報交換機能によりデータ管理オブ
ジェクト及び表示オブジェクトを含む外部オブジェクト
を定義する際に情報交換のための処理を記述する必要が
無いこと、データ管理オブジェクトを単純な定義の集合
によって構成できるのでプログラムロジックの複雑化を
避けることができること、データ共有構造の変更をコー
ディングレスに行うことができること等、従来技術には
無い特徴を実現することができる。
の構成例を示す図である。データ管理オブジェクト10
は、従来のMVCのModelオブジェクト又はPACのAbs
tractionオブジェクトとControlオブジェクトとの組に
よって実現されていたデータ管理オブジェクトを複数に
分割したものに相当する。データ管理オブジェクト10
は、データ間の相互依存性、データ変更イベントの類似
性及びデータアクセスメソッドの関連性を基準に、グル
ープ化されたデータ集合及びメソッド定義によって構成
する。データ管理オブジェクトの定義は、管理処理の内
容に応じて、基本データ管理クラスからの継承によって
作成する。ここで継承とは、オブジェクト指向プログラ
ミングにおけるソースコードの定義手法を指す。
ジェクト10のグループ化の観点を表すデータである。こ
れは、アプリケーション開発者が、アプリケーションの
ドメインに応じて任意に定義することができる。
ブジェクト10の動作を制御するデータである。これは、
Block、Copy、Refer及びShareの4値によって表され
る。それぞれの意味は後述する。
処理、変更イベント通知処理及びデータ内容管理処理に
おいて、情報交換の仲介機能を担う。更に、仲介オブジ
ェクト13-1は、複数のデータ管理オブジェクト10との間
に双方向ポインタを持つ。一つの仲介オブジェクトに対
し、同一の管理カテゴリ識別子を持つデータ管理オブジ
ェクトが二つ以上関連付けられることは基本的に無いも
のとする。また、仲介オブジェクト13-1は、仲介オブジ
ェクト13-2のデータを参照するため双方向ポインタを持
つ。更に、仲介オブジェクト13-3及び13-4に対してデー
タを公開するため双方向ポインタを持つ。
-1、13-2、13-3及び13-4によって構成されるツリー構造
全体である。外部オブジェクト15は、データにアクセス
する仲介オブジェクト13-1への片方向ポインタを持つ。
外部オブジェクト15は、例えば、実際に表示処理を行う
表示オブジェクトを含む。
本発明のデータ表示装置の構成例を示す図である。更新
イベント通知対象リスト20は、更新イベントが発生した
場合に通知すべき外部オブジェクトを記憶するリストで
ある。管理カテゴリ識別子21は、更新イベント通知対象
リスト20の各要素に一つずつ格納される。外部オブジェ
クトへのポインタ22は、管理カテゴリ識別子21に関する
更新イベントが発生した時に通知する外部オブジェクト
へのポインタである。メッセージ識別子23は、管理カテ
ゴリ識別子21に関する更新イベントが発生して外部オブ
ジェクトへのポインタ22が指すオブジェクトへ通知する
時に呼び出されるメッセージの識別子である。
内容管理、更新イベント通知及びメッセージ送信の各処
理について、管理ポリシー識別子に対応させて動作内容
を表すテーブルを示す図である。データ内容管理は、デ
ータ管理オブジェクトにおいてデータの値を参照又は変
更する時のアクセス先の制御を示す。更新イベント通知
は、データの値が変更された時の伝播範囲の制御を示
す。メッセージ送信は、外部オブジェクトから仲介オブ
ジェクトへ送られるメッセージの送信先の制御を示す。
また、テーブルの最右側欄は、データ管理オブジェクト
自体が仲介オブジェクトのポインタ先に無い場合の処理
を示す。
フローを示す図である。表示オブジェクト等の外部オブ
ジェクトから仲介オブジェクトへメッセージが送出され
ると、仲介オブジェクトはメッセージの送信先の探索処
理を開始する。探索処理では、仲介オブジェクトが保持
する複数のポインタからメッセージに反応可能なデータ
管理オブジェクトを検索する。該当するデータ管理オブ
ジェクトが得られた場合はそれにメッセージを送信し、
探索処理を終了する。該当するデータ管理オブジェクト
が得られなかった場合は、共有関係ツリーにおいて親に
相当する他の仲介オブジェクトに対して探索処理を再帰
的に実行する。共有関係ツリーの最も上位の仲介オブジ
ェクトは、親に相当するオブジェクトが存在しないの
で、メッセージ送信エラーを発生し、探索処理を終了す
る。
ローを示す図である。データ管理オブジェクトにおいて
データの値の変更が行われた場合、それを参照するオブ
ジェクトに更新イベントの通知を行う必要がある。先
ず、データ管理オブジェクトは、自己へのポインタを保
持する仲介オブジェクトへ更新イベントを通知する。こ
の時、更新イベントの情報に、データ管理オブジェクト
の管理カテゴリ識別子の情報を含むように通知する。
の通知の伝播処理を開始する。伝播処理では、更新イベ
ントに含まれるカテゴリ情報に基づいて仲介オブジェク
トが保持する複数のポインタから同じカテゴリのデータ
管理オブジェクトを検索する。該当するデータ管理オブ
ジェクトが得られない場合は、共有関係ツリーにおいて
子に相当する他の仲介オブジェクト全てについて伝播処
理を再帰的に実行する。該当するデータ管理オブジェク
トが得られた場合は、管理ポリシー識別子を調べる。管
理ポリシー識別子がRefer又はShareの場合、仲介オブジ
ェクトに登録されているイベント通知対象の外部オブジ
ェクトへ更新イベントを通知し、引き続いて共有関係ツ
リーにおいて子に相当する他の仲介オブジェクト全てに
ついて伝播処理を再帰的に実行する。識別子がBlock又
はCopyの場合、イベントは通知せず、伝播処理を終了す
る。
基本動作のフローを示す図である。データ内容の初期化
は、共有関係ツリー上の仲介オブジェクトにデータ管理
オブジェクトのポインタが設定されるか又は明示的に外
部オブジェクトから管理カテゴリを指定して初期化メッ
セージが送出されることによって行われる。それを受け
た仲介オブジェクトが初期化処理を開始する。
する複数のポインタから初期化対象となる管理カテゴリ
のデータ管理オブジェクトを検索する。該当するデータ
管理オブジェクトが得られない場合は、共有関係ツリー
において親に相当する他の仲介オブジェクトについて初
期化処理を再帰的に実行する。該当するデータ管理オブ
ジェクトが得られた場合は、既に初期化されているか否
かを調べる。既に初期化されている場合は初期化処理を
終了し、未だ初期化されていない場合は、引き続き管理
ポリシー識別子を調べる。識別子がCopyの場合、先ず共
有関係ツリーにおいて親に相当する他の仲介オブジェク
トについて初期化処理を再帰的に実行し、引き続いて該
当する管理カテゴリ識別子を持つ先祖ノードのデータ管
理オブジェクトから必要な部分をコピーし、初期化処理
を終了する。識別子がCopy以外の場合、何も実行せずに
初期化処理を終了する。
本動作のフローを示す図である。データ内容の参照は、
データ管理オブジェクトにおいて自己が保持していない
データを参照する時に発生する。それを受けた仲介オブ
ジェクトは参照処理を開始する。
る複数のポインタから参照対象となる管理カテゴリのデ
ータ管理オブジェクトを検索する。該当するデータ管理
オブジェクトが得られない場合は、共有関係ツリーにお
いて親に相当する他の仲介オブジェクトについて参照処
理を再帰的に実行する。該当するデータ管理オブジェク
トが得られた場合は、それが保持している管理ポリシー
識別子を調べる。管理ポリシーがReferの場合は、先ず
共有関係ツリーにおいて親に相当する他の仲介オブジェ
クトについて参照処理を再帰的に実行し、引き続いて該
当する管理カテゴリ識別子を持つ先祖ノードのデータ管
理オブジェクトから必要な部分を参照し、参照処理を終
了する。識別子がRefer以外の場合、何も実行せずに参
照処理を終了する。
示す図である。ツリー中段の仲介オブジェクトにおい
て、動作対象の管理カテゴリに該当するデータ管理オブ
ジェクトが存在する場合、そのデータ管理オブジェクト
のポリシーが異なる場合の動作の違いを示す。図(a)
はBlockの場合、図(b)はCopyの場合、図(c)はRef
erの場合、図(d)はShareの場合をそれぞれ示す。
す図である。図8の場合と同様にデータ管理オブジェク
トのポリシーが異なる場合の動作の違いを示す。図
(a)はBlock及びCopyの場合、図(b)はRefer及びSh
areの場合をそれぞれ示す。
場合のデータ内容管理処理、メッセージ送信処理及びイ
ベント通知処理の動作概念を示す図である。データ管理
オブジェクトが無い状態とは、ツリー中段の仲介オブジ
ェクトに動作対象の管理カテゴリに該当するデータ管理
オブジェクトが存在しない場合を意味する。
示プラットフォームRouteViewについて説明する。Route
Viewは、上述のように、業務内容毎に作成されたアプリ
ケーションを読み込み、それに基づいて屋外通信施設等
の管理データベースを検索し、地図データと重ね合わせ
てグラフィック表示する機能を提供する。また、ユーザ
ーはポインティングデバイスによって図形を選択し、そ
の内容に基づいて新たな検索を行い、別のウィンドウに
結果を表示することができる。
り、プログラミング言語はObjective-Cを用いている。
本発明はRouteViewの内部クラスとして組み込まれてい
るため、同じプログラミング言語を用いて実装されてい
る。Objective-Cでは、メッセージ識別子による応答可
能オブジェクトの判定、メッセージ受信時における他オ
ブジェクトへの転送等の実行時機能が利用できる。その
ため、メッセージ送信処理は直接実装することができ
る。
向言語では、このような実行時機構を利用できない場合
があるが、その場合は、外部オブジェクトからのメッセ
ージ送信を単一メッセージの呼び出しに置き換えること
によって実現することができる。即ち、上述のメッセー
ジ識別子は、該当する単一メッセージの引数に文字列と
して指定する等により、上述の説明と同様に仲介オブジ
ェクト内の処理で参照することができる。
クト指向言語上で、多少の作業コストを伴っても通常の
メッセージ送信を行うことが必要になる場合がある。こ
れに対しては、仲介オブジェクト側に通常のメッセージ
から単一メッセージへの変換メソッドを実装する方法が
ある。この場合は、多数の変換メソッドを定義しなけれ
ばならないが、これらのソースコードを生成する作業は
単純であるため、パール(perl)等のスクリプト言語の利
用によって効率化することが可能である。
ジェクト及び管理カテゴリは、上述の従来例におけるそ
れらと同様とする。図11は、本発明のデータ表示方法
により複数ビューの表示を行う場合の例を示す図であ
る。外部オブジェクトは共有関係ツリー上の同じレベル
の仲介オブジェクトにアクセスする。仲介オブジェクト
は、管理カテゴリ毎にメッセージ送信、更新イベント通
知及びデータアクセス転送を行う。これによって、外部
オブジェクトの定義内容は、データ管理オブジェクトが
共有関係ツリーのどこに存在するかに影響を受けない。
従って、Graphic及びDataの両カテゴリのデータ管理オ
ブジェクトをツリー上の任意の位置に移動することがで
きる。即ち、ウィンドウ間で共有させたいデータについ
ては(a)のレベルにデータ管理オブジェクトを配置
し、ローカルに保持したいデータについては(b)のレ
ベルにデータ管理オブジェクトを配置することにより、
コーディングレスで共有関係を変更することができる。
異なる抽象度の複数ビューの表示を行う場合の例を示す
図である。管理カテゴリ単位で上位のデータのコピー
(管理ポリシーはCopy)又は参照(管理ポリシーはRefe
r)を行うように動作を指定することができる。新たな
ビューの追加のために必要な定義はデータ管理オブジェ
クトMap'のみであり、これはデータ管理オブジェクトMa
pから継承によって記述できる。従って、上述の従来例
に比べて定義の数を低く抑えることができる。
四つの管理ポリシー、即ち、Block、Copy、Refer及びSh
areについて処理を定義することが必要になる。これ
は、従来は単一のデータ管理オブジェクト上で必要な処
理のみを記述していた場合に比べて一見無駄のように見
える。しかし、本発明においては、各データ管理オブジ
ェクトを実装する際にその継承元となる基本クラスで、
管理ポリシー毎の基本的なデータ管理処理を提供してお
り、このため、開発者が定義する内容は、実際にシステ
ムで利用する部分について差分の処理のみを記述すれば
よい。従って、一つの管理カテゴリについての記述量に
注目した場合でも、本発明は従来技術に比べて処理の定
義量が増えることはない。
ドの方向に更新イベント通知を伝播する場合、親ノード
がその子孫の管理ポリシーを事前に調べて伝播が必要か
否かをキャッシュしておくことにより、処理効率を向上
させることができる。また、共有ツリー上を親ノードの
方向にメッセージ送信の送信先を探索する場合、子ノー
ドがその先祖の反応メソッドの履歴を記憶して探索が必
要か否かをキャッシュしておくことにより、処理効率を
向上させることができる。これらの場合、キャッシュの
内容は、共有関係ツリーの構造変更、データ管理オブジ
ェクトの生成、削除、管理ポリシーの変更等があった場
合にはクリアする。
知を行う場合、イベント発生に対する即時性がさほど要
求されない画面表示の場合は、データ変更の都度実行せ
ずに、表示対象となるデータ集合の取得及び変換並びに
表示の際に参照する表示パラメータの変更等が全て完了
した後にそれらの結果をまとめて反映させることによ
り、処理効率を向上させることができる。外部オブジェ
クトをイベント通知対象として登録する際に、即時通知
か遅延通知かいずれかを指定し、必要に応じて使い分け
るようにしてもよい。
トから遅延通知を行う際に、同一外部オブジェクトの同
一メッセージが登録されている場合は、メッセージ送信
を1回のみ行うようにしてもよい。また、外部オブジェ
クトから、更新が発生した管理カテゴリを問い合わせる
機能を具えるようにしてもよい。この機能により、外部
オブジェクトの定義の際に、メッセージ処理を一つに統
一することができ、更に、その中で、管理カテゴリ間で
の処理の優先順位、排他処理、実行順序制御等を簡潔に
記述することができる。即ち、外部オブジェクト側の定
義をシンプルにすることができる。
複数ビュー間のデータの共有関係を変更する場合にコー
ディングレスで行うことができ、且つ、新規のビュー機
能を追加する場合に元のソースコードに対する影響を最
小にすることができる。従って、小さい開発コストで種
々のバリエーションの複数ビュー表示を実現することが
できる。
ある。
ータ表示装置の構成例を示す図である。
新イベント通知及びメッセージ送信の各処理について、
管理ポリシー識別子に対応させて動作内容を表すテーブ
ルを示す図である。
す図である。
図である。
フローを示す図である。
ローを示す図である。
る。
る。
タ内容管理処理、メッセージ送信処理及びイベント通知
処理の動作概念を示す図である。
の表示を行う場合の例を示す図である。
度の複数ビューの表示を行う場合の例を示す図である。
示す図である。
合のデータ管理方法を説明するための図である。
ビュー表示の追加を行う場合のデータ管理方法を説明す
るための図である。
Claims (5)
- 【請求項1】 データ集合及び表示パラメータ集合をコ
ンピュータディスプレイ上に複数のビューとして表示す
るデータ表示方法において、 管理カテゴリ毎にデータ管理オブジェクトを定義し、 データ集合及び表示パラメータ集合を相互の関連性に基
づいて複数のグループに分割し、各グループのデータ集
合及び表示パラメータ集合を複数のデータ管理オブジェ
クトにそれぞれ記憶し、 各データ管理オブジェクトの処理動作を管理ポリシーに
よって指定し、 複数のデータ管理オブジェクトとそれらにアクセスする
表示オブジェクトその他の外部オブジェクトとの間に、
メッセージ、イベント及びデータの交換を行う仲介オブ
ジェクトを設けて両者を仲介し、 表示オブジェクトが表示処理を行うことを特徴とするデ
ータ表示方法。 - 【請求項2】 表示処理を実行するためのメッセージを
送信する場合、 表示オブジェクトがメッセージを仲介オブジェクトに送
出し、 仲介オブジェクトが、ポインタを保持するデータ管理オ
ブジェクトの中からそれに反応するものを検索し、検索
に該当するデータ管理オブジェクトが存在しない場合、
仲介オブジェクトが属する共有関係ツリー上の親ノード
に相当する他の仲介オブジェクトに再帰的検索を依頼
し、再帰的検索を通して該当するデータ管理オブジェク
トが得られた場合はそれに対してメッセージを送信し、
得られない場合はメッセージ送信エラーを発生すること
を特徴とする請求項1に記載のデータ表示方法。 - 【請求項3】 データ管理オブジェクトのデータの値の
更新イベントを通知する場合、 データ管理オブジェクトが更新イベントを仲介オブジェ
クトに送出し、 仲介オブジェクトが、更新イベントに含まれる管理カテ
ゴリ識別子に基づいて、仲介オブジェクトに予めポイン
タを登録したイベント通知対象に更新イベントの発生を
通知し、更新イベントに含まれる管理カテゴリ識別子及
び仲介オブジェクトがポインタを保持するデータ管理オ
ブジェクトの管理ポリシー識別子に基づいて、仲介オブ
ジェクトが属する共有関係ツリーの子に相当する他の仲
介オブジェクトに再帰的に更新イベントを伝播すること
を特徴とする請求項1に記載のデータ表示方法。 - 【請求項4】 データ管理オブジェクトのデータ内容を
管理する場合、 データ内容を初期化する場合は、データ管理オブジェク
トに関連付けられる仲介オブジェクトの共有関係ツリー
上の位置及びデータ管理オブジェクトに予め記憶された
管理ポリシー識別子に基づいて記憶内容の初期値を他の
データ管理オブジェクトからコピーし、 他のデータ管理オブジェクトのデータを取得する場合
は、データ管理オブジェクトに関連付けられた仲介オブ
ジェクトの共有関係ツリー上の位置及びデータ管理オブ
ジェクトに予め記憶された管理ポリシー識別子に基づい
てデータ参照が行われた値の内容を他のデータ管理オブ
ジェクトから取得することを特徴とする請求項1に記載
のデータ表示方法。 - 【請求項5】 任意のデータ集合及び表示パラメータ集
合をコンピュータディスプレイ上に複数のビューとして
表示するデータ表示装置において、 データ集合及び表示パラメータ集合を相互の関連性に基
づいて分割された複数のグループのデータ集合及び表示
パラメータ集合をそれぞれ記憶する複数のデータ管理オ
ブジェクトと、 データ管理オブジェクトが属するグループを表すために
データ管理オブジェクトが保持する管理カテゴリ識別子
と、 データ管理オブジェクトの動作モードを表すためにデー
タ管理オブジェクトが保持する管理ポリシー識別子と、 複数のデータ管理オブジェクトへのポインタを保持する
仲介オブジェクトと、 データ内容の共有関係に基づいて複数の仲介オブジェク
トの間をポインタで結ぶ共有関係ツリーと、 データ管理オブジェクトのデータの変更を監視するた
め、イベント通知対象として仲介オブジェクトにポイン
タを予め登録した複数の外部オブジェクトとを具備する
ことを特徴とするデータ表示装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000272567A JP3798935B2 (ja) | 2000-09-08 | 2000-09-08 | データ表示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000272567A JP3798935B2 (ja) | 2000-09-08 | 2000-09-08 | データ表示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002082796A true JP2002082796A (ja) | 2002-03-22 |
JP3798935B2 JP3798935B2 (ja) | 2006-07-19 |
Family
ID=18758660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000272567A Expired - Fee Related JP3798935B2 (ja) | 2000-09-08 | 2000-09-08 | データ表示方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3798935B2 (ja) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63228335A (ja) * | 1987-03-18 | 1988-09-22 | Fujitsu Ltd | 計算機システムにおける事象通知・受取処理方式 |
JPH01312646A (ja) * | 1988-04-25 | 1989-12-18 | Hewlett Packard Co <Hp> | ファイル管理方式 |
JPH03282934A (ja) * | 1990-03-30 | 1991-12-13 | Internatl Business Mach Corp <Ibm> | グラフィカル・ユーザ・インターフェース管理装置 |
JPH08297573A (ja) * | 1995-04-27 | 1996-11-12 | Fujitsu Ltd | オブジェクトデータ処理装置 |
JPH09319538A (ja) * | 1996-05-30 | 1997-12-12 | Mitsubishi Electric Corp | グラフィカルユーザインタフェース |
JPH11338717A (ja) * | 1998-05-27 | 1999-12-10 | Nec Corp | 階層化gui部品相互通信システム |
JP2000207363A (ja) * | 1999-01-07 | 2000-07-28 | Hewlett Packard Co <Hp> | ユ―ザ・アクセス制御装置 |
JP2000215040A (ja) * | 1999-01-26 | 2000-08-04 | Nec Corp | 階層化gui部品構造の更新方法ならびにそのシステム |
-
2000
- 2000-09-08 JP JP2000272567A patent/JP3798935B2/ja not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63228335A (ja) * | 1987-03-18 | 1988-09-22 | Fujitsu Ltd | 計算機システムにおける事象通知・受取処理方式 |
JPH01312646A (ja) * | 1988-04-25 | 1989-12-18 | Hewlett Packard Co <Hp> | ファイル管理方式 |
JPH03282934A (ja) * | 1990-03-30 | 1991-12-13 | Internatl Business Mach Corp <Ibm> | グラフィカル・ユーザ・インターフェース管理装置 |
JPH08297573A (ja) * | 1995-04-27 | 1996-11-12 | Fujitsu Ltd | オブジェクトデータ処理装置 |
JPH09319538A (ja) * | 1996-05-30 | 1997-12-12 | Mitsubishi Electric Corp | グラフィカルユーザインタフェース |
JPH11338717A (ja) * | 1998-05-27 | 1999-12-10 | Nec Corp | 階層化gui部品相互通信システム |
JP2000207363A (ja) * | 1999-01-07 | 2000-07-28 | Hewlett Packard Co <Hp> | ユ―ザ・アクセス制御装置 |
JP2000215040A (ja) * | 1999-01-26 | 2000-08-04 | Nec Corp | 階層化gui部品構造の更新方法ならびにそのシステム |
Non-Patent Citations (4)
Title |
---|
ピーター・S・ショーマン: "1.NewWaveユーザ・インタフェースの設計思想", 日経バイト, vol. 第71号, CSND200200894001, 1 May 1990 (1990-05-01), pages 280 - 292, ISSN: 0000728971 * |
ピーター・S・ショーマン: "2.NewWaveの真髄 オブジェクト管理機構OMF", 日経バイト, vol. 第71号, CSND200200910001, 1 May 1990 (1990-05-01), pages 293 - 305, ISSN: 0000728972 * |
増田健: "地図表示プラットフォームにおけるデータ管理フレームワーク", 情報処理学会第61回(平成12年後期)全国大会講演論文集(3), JPN4006006374, 3 October 2000 (2000-10-03), pages 3 - 53, ISSN: 0000728970 * |
満永豊他: "DBアプリケーションを自在に構築できるエンドユーザー向けビジュアル開発環境", 日経オープンシステム, vol. 第30号, CSND199801596020, 15 September 1995 (1995-09-15), pages 385 - 397, ISSN: 0000728973 * |
Also Published As
Publication number | Publication date |
---|---|
JP3798935B2 (ja) | 2006-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5301270A (en) | Computer-assisted software engineering system for cooperative processing environments | |
US7774747B2 (en) | System and associated methods for software assembly | |
USRE40189E1 (en) | Method and apparatus for object oriented programming in component building, its storage medium, uses, support and object between-network-display | |
US8166396B2 (en) | User interface rendering | |
US9483257B2 (en) | Universal and adaptive software development platform for data-driven applications | |
RU2466450C2 (ru) | Способ и система для создания ит-ориентированных серверных сетевых приложений | |
US4835685A (en) | Virtual single machine with message-like hardware interrupts and processor exceptions | |
US7827527B1 (en) | System and method of application development | |
US5014192A (en) | System for locating a file in a logical ring by sequentially forwarding access request with file system name and file name | |
TW401558B (en) | Generic software state machine system and method of constructing dynamic objects for an application program | |
AU2010337107B2 (en) | Managing objects using a client-server bridge | |
US6430740B1 (en) | Object-oriented communications framework system with support for multiple remote machine types | |
US6810522B2 (en) | Method and system for associating parameters of containers and contained objects | |
US5047925A (en) | Logical ring in a virtual single machine | |
US20030051226A1 (en) | System and method for multiple level architecture by use of abstract application notation | |
US20080005623A1 (en) | System and method for model-based user interface using transformation nodes | |
CN110020307A (zh) | 一种客户端视图的绘制方法和装置 | |
JP2010511235A (ja) | シナリオサポートを伴うプロデューサグラフ指向のプログラミングフレームワーク | |
JP2006252557A (ja) | コンピュータ・プログラム・コードの開発オブジェクトの管理方法および開発オブジェクトの管理システム | |
US20050114361A1 (en) | Method and apparatus for integrating data repositories and frameworks | |
US20190052542A1 (en) | System and method for providing visualizations of computing infrastructure using a domain-specific language for cloud services infrastructure | |
US7409692B2 (en) | Software component architecture | |
US8341523B2 (en) | Method and system for providing multiple levels of help information for a computer program | |
US20080288918A1 (en) | Web service tool based on business object layer | |
US6289394B1 (en) | Agent management system capable of readily monitoring and controlling agent |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040902 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051018 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051216 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060316 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060322 |
|
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: 20060418 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060421 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090428 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100428 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110428 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120428 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130428 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140428 Year of fee payment: 8 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |