説明

シーケンス表示装置及びシーケンス表示方法

【課題】複数の処理の進行と相関とを、ユーザが容易に把握できるシーケンス表示装置及びシーケンス表示方法を提供すること。
【解決手段】シーケンス表示装置1は、表示部20と、各処理の名称と経過時間、及び各処理間の相関関係を記憶する記憶部40と、各処理における経過時間を第1軸に表現した複数のオブジェクトを、第2軸及び第3軸によって特定される平面上に配した画像を生成するとともに、当該画像の複数のオブジェクト間に、相関関係に基づいて当該相関関係を示す指標を付すオブジェクト生成部32と、生成された画像を表示部20に出力する出力部33と、表示部20の表示面に対する第1軸、第2軸及び第3軸の向きを指定する指定部31と、を備え、オブジェクト生成部32は、指定部31にて指定された向きに準じて画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の処理の進行と相関を、複数のオブジェクトによって表現するシーケンス表示装置及びシーケンス表示方法に関する。
【背景技術】
【0002】
従来、コンピュータ上のソフトウェアは、例えば、オブジェクト指向プログラミング等により開発され、その結果、複数の処理(オブジェクト)が並列に存在することが多い。これら複数の処理は、互いに相関があり、データの授受や各種処理要求が行われている。
【0003】
このようなソフトウェアの挙動は、シーケンス図により表される場合があるが、複数の処理が並列して実行されるソフトウェアの挙動は、処理の数や相関の複雑さが増加するほど、ユーザには把握し難くなる。そこで、シーケンス図を3次元表示することにより、ユーザが処理の進行と相関とを把握し易くする方法が提案されている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2010−108221号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、シーケンス図を3次元表示した場合にも、相関が密集している部分では画像が重なるために視認が難しくなる等、視認のし易さに、ばらつきがある。したがって、表示されたシーケンス図の把握の容易さに課題があった。
【0006】
本発明は、複数の処理の進行と相関とを、ユーザが容易に把握できるシーケンス表示装置及びシーケンス表示方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明に係るシーケンス表示装置1は、複数の処理の進行と相関を、複数のオブジェクトによって表現するシーケンス表示装置であって、表示手段と、各処理の名称と経過時間、及び各処理間の相関関係を記憶する記憶手段と、各処理における経過時間を第1軸に表現した複数のオブジェクトを、第2軸及び第3軸によって特定される平面上に配した画像を生成するとともに、当該画像の前記複数のオブジェクト間に、前記記憶手段に記憶されている相関関係に基づいて当該相関関係を示す指標を付すオブジェクト生成手段と、前記オブジェクト生成手段にて生成された画像を前記表示手段に出力する出力手段と、前記表示手段の表示面に対する、前記第1軸、第2軸及び第3軸の向きを指定する指定手段と、を備え、前記オブジェクト生成手段は、前記指定手段にて指定された向きに準じて前記画像を生成する。
【0008】
また、前記オブジェクト生成手段は、各処理の進行を、前記第1軸を中心とした柱状に表現し、かつ、当該柱の太さにより各処理の活性又は非活性を表現することが好ましい。
【0009】
また、前記オブジェクト生成手段は、前記表示手段の表示面に直交する方向への各オブジェクトの配置の際、奥から手前方向へ向かって順に、各オブジェクトをαブレンディングにより描画することが好ましい。
【0010】
また、前記記憶手段は、前記オブジェクト及び前記指標の形状を、数式により記憶し、前記オブジェクト生成手段は、前記記憶手段に記憶されている数式に基づいて、前記オブジェクト及び前記指標が配される位置及び向きに応じた画像を生成することが好ましい。
【0011】
また、前記オブジェクト生成手段は、前記各処理の進行状況を前記オブジェクト内に表現した画像を生成することが好ましい。
【0012】
本発明に係るシーケンス表示方法は、複数の処理の進行と相関を、複数のオブジェクトによって表示手段に表示するシーケンス表示方法であって、各処理の名称と経過時間、及び各処理間の相関関係を記憶する記憶ステップと、各処理における経過時間を第1軸に表現した複数のオブジェクトを、第2軸及び第3軸によって特定される平面上に配した画像を生成するとともに、当該画像の前記複数のオブジェクト間に、前記記憶ステップで記憶されている相関関係に基づいて当該相関関係を示す指標を付すオブジェクト生成ステップと、前記オブジェクト生成ステップにて生成された画像を前記表示手段に出力する出力ステップと、前記表示手段の表示面に対する、前記第1軸、第2軸及び第3軸の向きを指定する指定ステップと、を含み、前記オブジェクト生成ステップにおいて、前記指定ステップで指定された向きに準じて前記画像を生成する。
【発明の効果】
【0013】
本発明によれば、ユーザは、複数の処理の進行と相関とを容易に把握できる。
【図面の簡単な説明】
【0014】
【図1】本発明の実施形態に係るシーケンス表示装置の機能を示すブロック図である。
【図2】本発明の実施形態に係るシーケンス表示装置の処理を示すフローチャートである。
【図3】本発明の実施形態に係るオブジェクトが配置された状態を示す図である。
【図4】本発明の実施形態に係るオブジェクト間の刺激を表す矢印の始点及び終点の求め方を示す図である。
【図5】本発明の実施形態に係るオブジェクト間の刺激を表す矢印の三角形部分の座標の求め方を示す図である。
【図6】本発明の実施形態に係るオブジェクトを表す円柱の求め方を示す図である。
【図7】本発明の実施形態に係る複数のオブジェクトの領域定義を示す図である。
【図8】本発明の実施形態に係るシーケンス図を上から見た場合の表示例を示す図である。
【図9】本発明の実施形態に係るシーケンス図を横から見た場合の表示例を示す図である。
【図10】本発明の実施形態に係るシーケンス図を斜めから見た場合の表示例を示す図である。
【発明を実施するための形態】
【0015】
以下、本発明の好適な実施形態の一例について説明する。なお、本実施形態のシーケンス表示装置1は、少なくとも以下の構成を備えた情報処理装置であり、例えば、PC(Personal computer)、PDA(Personal Digital Assistant)や、携帯電話機、PHS(登録商標;Personal Handy phone System)、多機能携帯電話機(スマートフォン)といった通信機器の他、ナビゲーション装置やゲーム機等であってもよい。
【0016】
図1は、本実施形態に係るシーケンス表示装置1の機能を示すブロック図である。
シーケンス表示装置1は、操作部10と、表示部20(表示手段)と、制御部30と、記憶部40(記憶手段)とを備える。
【0017】
操作部10は、ユーザからの操作入力を受け付け、この操作入力に応じた信号を制御部30へ提供する。操作部10は、例えば、キーボード、タッチパネル、マウス等の入力デバイスにより構成される。
【0018】
表示部20は、制御部30の制御に従って、所定の画像処理を行う。そして、処理後の画像データをフレームメモリに蓄え、所定のタイミングで画面出力する。表示部20は、例えば、液晶ディスプレイ(LCD)や、有機ELディスプレイ等により構成される。
【0019】
制御部30は、シーケンス表示装置1の全体を制御しており、例えば、表示部20や記憶部40等の各部に対して所定の制御を行う。また、制御部30は、操作部10等から入力を受け付けて、各種処理を実行する。そして、制御部30は、処理実行の際には、記憶部40を制御し、各種プログラム及びデータの読み出し、並びにデータの書き込みを行う。なお、本実施形態に係る制御部30の詳細機能は後述する。
【0020】
記憶部40は、例えば、ワーキングメモリを含み、制御部30による演算処理に利用され、また、本実施形態に係る各種プログラム及びデータ等を記憶する。例えば、記憶部40は、シーケンス図の表示対象である複数の処理(オブジェクト)に関して、名称の他、経過時間に関する情報として開始点、生存線、活性区間の配置データ、各処理間の相関関係としての刺激の配置データを記憶する。さらに、記憶部40は、オブジェクトの開始点、生存線及び活性区間、並びに刺激を示す指標を描画するための形状の数式データを記憶する。
【0021】
なお、上記の生存線において、オブジェクトはインスタンス化されており、この生存線の中で、同一オブジェクトのメソッドが使用された場合に活性区間として表現される。また、刺激とは、データの授受又はメソッドの実行指示を示し、オブジェクト間の相関関係が表現される。
【0022】
次に制御部30の機能を詳述する。
制御部30は、指定部31(指定手段)と、オブジェクト生成部32(オブジェクト生成手段)と、出力部33(出力手段)とを備える。
【0023】
指定部31は、ユーザから操作部10を介して入力を受け付け、表示部20の表示面に対する、3次元表示されるシーケンス図の第1軸、第2軸及び第3軸の向きを指定する。
【0024】
オブジェクト生成部32は、各オブジェクトにおける経過時間を第1軸に表現した複数の図形を、第2軸及び第3軸によって特定される平面上に配した画像を生成する。さらに、オブジェクト生成部32は、この複数の図形間に、記憶部40に記憶されている相関関係に基づいて、この相関関係を示す指標として矢印を付す。
【0025】
このとき、オブジェクト生成部32は、指定部31にて指定された向きに準じて画像を生成する。具体的には、オブジェクト生成部32は、記憶部40に記憶されている数式に基づいて、円柱及び矢印が配される位置及び向きに応じた画像を生成する。
【0026】
また、オブジェクト生成部32は、各オブジェクトにおける処理の進行を、第1軸を中心とした円柱状に表現し、かつ、この円柱の太さにより各オブジェクトの活性又は非活性を表現する。
【0027】
また、オブジェクト生成部32は、表示部20の表示面に直交する方向への各オブジェクトの配置の際、奥から手前方向へ向かって順に、各オブジェクトの画像をαブレンディングにより描画する。これにより、3次元に配置された各オブジェクトの前後関係が視認可能となる。
【0028】
さらに、オブジェクト生成部32は、各オブジェクトにおける実際の処理の進行状況を円柱内に表現した画像を生成する。具体的には、オブジェクト生成部32は、例えば、シーケンス図における進行中の位置を示す画像を付加したり、処理済みの部分と未処理の部分とを色分けしたりする。
【0029】
出力部33は、オブジェクト生成部32にて生成された画像を表示部20に出力し、ユーザが視認可能に表示させる。
【0030】
図2は、本実施形態に係るシーケンス表示装置1の処理を示すフローチャートである。
ステップS1において、制御部30は、操作部10を介して、ユーザからシーケンス図に表すオブジェクトの選択及び配置に関する入力を受け付ける。
【0031】
ステップS2において、制御部30は、操作部10を介して、ステップS1で選択されたオブジェクトに関するシーケンス図を3次元表示する際の方向の指定を受け付ける。
【0032】
ステップS3において、制御部30は、ステップS2で指定された方向に準じて、オブジェクトの描画データを生成する。
【0033】
ステップS4において、制御部30は、ステップS3で生成された描画データを表示部20へ出力し、画面表示させる。
【0034】
ステップS5において、制御部30は、シーケンス図の描画方向を変更する入力があるか否かを判定する。この判定がYESの場合、処理はステップS2に移り、判定がNOの場合、処理は終了する。
【0035】
以下、シーケンス図の描画方法を詳述する。
図3は、本実施形態に係るオブジェクトが配置された状態を示す図である。
【0036】
GUI操作により選択及び配置された複数(6個)のオブジェクトは、シーケンス図を上から見た場合として、xy平面(表示部20の表示面)の座標が割り当てられる。例えば、オブジェクト6は、座標(x6,y6)と定義される。なお、z軸は、表示部20の表示面に垂直で、奥から手前方向を正の向きとする。
ここで、各オブジェクトの開始点、生存線及び活性区間の配置データは、z軸における開始点と長さのデータで与えられるものとする。
【0037】
次に、ユーザから、z軸を中心に回転する角度(Θ)の指定を受け付けると、オブジェクト生成部32は、オブジェクトの全ての点Pn(xn,yn,zn)に対してΘだけ回転変換を施し、これをPn’(xn’,yn’,zn’)とおく。
【0038】
続いて、ユーザから、y軸を中心に回転する角度(Φ)の指定を受け付けると、オブジェクト生成部32は、オブジェクトの全ての点Pn(xn’,yn’,zn’)に対してΦだけ回転変換を施し、これをPn’’(xn’’,yn’’,zn’’)とおく。Pn’’は、表示部20の表示面において、Pdn(xn’’,yn’’)として表示される。
【0039】
開始点を表す球体は、半径R1の円として描画される。画像オブジェクトの原点は円の中心と定める。また、刺激を表す矢印は、点と点とを結ぶ線分であり、この線分上に、αブレンディングにより三角形を上書きする。
【0040】
図4は、本実施形態に係るオブジェクト間の刺激を表す矢印の始点及び終点の求め方を示す図である。
【0041】
(x1’,y1’)を中心とする半径R1の円から、(x2’,y2’)を中心とする半径R2の円へ向けて、これらの間に設けられる矢印は、円の中心を結ぶ線分上に設けられ、始点が(xl1’,yl1’)、終点が(xl2’,yl2’)となる。各座標の計算式は、以下の通りである。なお、αは任意の定数とする。
【数1】

【0042】
図5は、本実施形態に係るオブジェクト間の刺激を表す矢印の三角形部分の座標の求め方を示す図である。
【0043】
(x1’,y1’)を中心とする円から、(x2’,y2’)を中心とする半径R2の円へ向けて設けられる矢印の終点がA(xl2’,yl2’)とする。オブジェクト生成部32は、点D(xl3’,yl3’)を通り、矢印の線分と垂直な直線上で、点Dから距離Lの位置にある点B及び点Cの座標を求め、三角形ABCを塗りつぶす。点Dの座標の計算式は以下の通りである。
【数2】

【0044】
図6は、本実施形態に係るオブジェクトを表す円柱の求め方を示す図である。
円柱は、以下の楕円及び線分で表現される図形がビットマップ形式で用意される。
【0045】
上面の楕円は、以下の数式で表される。
【数3】

下面の楕円は、以下の数式で表される。
【数4】

また、側面を表す2本の線分は、以下の数式で表される。
【数5】

【0046】
また、円柱は、立体感を出すために、領域内がグラデーションで塗りつぶされ、領域外は、αブレンディングのα値を0と設定される。
【0047】
次に、オブジェクト毎の描画順を説明する。
まず、複数のオブジェクトは、それぞれのy値によりソートされ、このy値が小さいオブジェクトから順に描画される。
【0048】
また、オブジェクト同士が表示上で重なり合う場合、x値が小さい方のオブジェクトが先に描画される。ここで、オブジェクトが重なり合うか否かを判断する領域定義は、以下の通りである。
【0049】
図7は、本実施形態に係る複数のオブジェクトの領域定義を示す図である。
各オブジェクトの領域は、各々がy軸に投影された領域として定義される。図7では、オブジェクトAに対応する領域A、オブジェクトBに対応する領域B、及びオブジェクトAとオブジェクトBとの間の領域ABが存在する。ところが、オブジェクトAとオブジェクトBとがy軸方向で接近すると、領域ABがなくなり、領域Aと領域Bが重なる場合がある。この場合、x軸の値が小さいオブジェクトAが先に描画される。
このとき、各オブジェクトは、αブレンディングにより描画され、3次元画像として表現される。
【0050】
図8は、本実施形態に係るシーケンス図を上(時間軸の過去)から見た場合の表示例を示す図である。
この例では、10個のオブジェクトがそれぞれ同一半径の円で名称とともに描画され、互いに相関を持って配置されている。
【0051】
図9は、本実施形態に係るシーケンス図を横(時間軸と垂直な方向)から見た場合の表示例を示す図である。なお、オブジェクトの名称は省略している。
この例は、2次元のシーケンス図と類似するが、オブジェクト同士が重なる場合も、別々のオブジェクトとして区別されて表現されている。また、刺激を示す矢印の時間的位置が表示され、処理の流れが表現されている。さらに、刺激に応じて変化する各オブジェクトの活性区間は、円柱の径が大きくなって、時間的位置が表示される。
【0052】
図10は、本実施形態に係るシーケンス図を斜めから見た場合の表示例を示す図である。なお、オブジェクトの名称は省略している。
この例では、図9の場合に比べて、各オブジェクトの位置関係がより視認され易く表示されている。また、複数のオブジェクトの配置に応じて、ユーザはシーケンス図を回転させることができるので、オブジェクト間の相関を視認し易い方向からシーケンス図を見ることができる。
【0053】
以上のように、本実施形態によれば、シーケンス表示装置1は、複数のオブジェクトの処理の進行と相関とを、3次元のシーケンス図により表現し、さらに、ユーザから指定された方向に回転させて表示する。したがって、ユーザは、複数の処理のオブジェクトの進行と相関とを容易に把握できる。
【0054】
また、シーケンス表示装置1は、オブジェクトの処理の進行を円柱により表現し、オブジェクトの活性又は非活性を円柱の太さにより表現するので、シーケンス図を容易に描画できるとともに、ユーザによる視認性を向上できる。
【0055】
また、シーケンス表示装置1は、表示部20の表示面に直行する方向への各オブジェクトの配置の際、奥から手前方向へ向かって順に描画するので、互いに重なり合うオブジェクトを効率的に描画できる。さらに、このとき、各オブジェクトをαブレンディングにより描画するので、オブジェクトの重なり部分の視認性を向上できる。
【0056】
また、シーケンス表示装置1は、シーケンス図において描画される図形の形状を、数式により記憶し、この数式で特定される座標を回転変換することにより図形を描画する。したがって、シーケンス表示装置1は、容易にシーケンス図を表示できるので、処理負荷が低減する。
【0057】
このとき、シーケンス表示装置1は、表示面からの奥行きによらず、拡大又は縮小をせずに図形を描画する。シーケンス図の3次元立体視においては、遠近感を表現するか否かによる視認性の変化は極めて低いので、このように遠近に応じた図形の変形を行わないことにより、シーケンス表示装置1は、演算速度を向上できる。
【0058】
また、シーケンス表示装置1は、処理の進行状況を図形内に表現して、シーケンス図を描画する。したがって、ユーザは、視認し易い方向から3次元のシーケンス図を見て、現在の処理の進行状況を容易に把握できる。
【0059】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態に記載されたものに限定されるものではない。
【符号の説明】
【0060】
1 シーケンス表示装置
10 操作部
20 表示部(表示手段)
30 制御部
31 指定部(指定手段)
32 オブジェクト生成部(オブジェクト生成手段)
33 出力部(出力手段)
40 記憶部(記憶手段)

【特許請求の範囲】
【請求項1】
複数の処理の進行と相関を、複数のオブジェクトによって表現するシーケンス表示装置であって、
表示手段と、
各処理の名称と経過時間、及び各処理間の相関関係を記憶する記憶手段と、
各処理における経過時間を第1軸に表現した複数のオブジェクトを、第2軸及び第3軸によって特定される平面上に配した画像を生成するとともに、当該画像の前記複数のオブジェクト間に、前記記憶手段に記憶されている相関関係に基づいて当該相関関係を示す指標を付すオブジェクト生成手段と、
前記オブジェクト生成手段にて生成された画像を前記表示手段に出力する出力手段と、
前記表示手段の表示面に対する、前記第1軸、第2軸及び第3軸の向きを指定する指定手段と、を備え、
前記オブジェクト生成手段は、前記指定手段にて指定された向きに準じて前記画像を生成するシーケンス表示装置。
【請求項2】
前記オブジェクト生成手段は、各処理の進行を、前記第1軸を中心とした柱状に表現し、かつ、当該柱の太さにより各処理の活性又は非活性を表現する請求項1に記載のシーケンス表示装置。
【請求項3】
前記オブジェクト生成手段は、前記表示手段の表示面に直交する方向への各オブジェクトの配置の際、奥から手前方向へ向かって順に、各オブジェクトをαブレンディングにより描画する請求項1又は請求項2に記載のシーケンス表示装置。
【請求項4】
前記記憶手段は、前記オブジェクト及び前記指標の形状を、数式により記憶し、
前記オブジェクト生成手段は、前記記憶手段に記憶されている数式に基づいて、前記オブジェクト及び前記指標が配される位置及び向きに応じた画像を生成する請求項1から請求項3のいずれか1項に記載のシーケンス表示装置。
【請求項5】
前記オブジェクト生成手段は、前記各処理の進行状況を前記オブジェクト内に表現した画像を生成する請求項1から請求項4のいずれか1項に記載のシーケンス表示装置。
【請求項6】
複数の処理の進行と相関を、複数のオブジェクトによって表示手段に表示するシーケンス表示方法であって、
各処理の名称と経過時間、及び各処理間の相関関係を記憶する記憶ステップと、
各処理における経過時間を第1軸に表現した複数のオブジェクトを、第2軸及び第3軸によって特定される平面上に配した画像を生成するとともに、当該画像の前記複数のオブジェクト間に、前記記憶ステップで記憶されている相関関係に基づいて当該相関関係を示す指標を付すオブジェクト生成ステップと、
前記オブジェクト生成ステップにて生成された画像を前記表示手段に出力する出力ステップと、
前記表示手段の表示面に対する、前記第1軸、第2軸及び第3軸の向きを指定する指定ステップと、を含み、
前記オブジェクト生成ステップにおいて、前記指定ステップで指定された向きに準じて前記画像を生成するシーケンス表示方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate