JP4208468B2 - ソフトウェアシステム動作確認装置 - Google Patents

ソフトウェアシステム動作確認装置 Download PDF

Info

Publication number
JP4208468B2
JP4208468B2 JP2002003663A JP2002003663A JP4208468B2 JP 4208468 B2 JP4208468 B2 JP 4208468B2 JP 2002003663 A JP2002003663 A JP 2002003663A JP 2002003663 A JP2002003663 A JP 2002003663A JP 4208468 B2 JP4208468 B2 JP 4208468B2
Authority
JP
Japan
Prior art keywords
model
state
program execution
execution log
information
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.)
Expired - Fee Related
Application number
JP2002003663A
Other languages
English (en)
Other versions
JP2003208334A5 (ja
JP2003208334A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2002003663A priority Critical patent/JP4208468B2/ja
Publication of JP2003208334A publication Critical patent/JP2003208334A/ja
Publication of JP2003208334A5 publication Critical patent/JP2003208334A5/ja
Application granted granted Critical
Publication of JP4208468B2 publication Critical patent/JP4208468B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、工学的開発方法論に則ったモデリングを行い、その分析モデルからソフトウェアコードに変換されたプログラムの実行に際して、その実行状態を記録、出力表示すると共に、元となった分析モデルを出力表示させるソフトウェアシステム動作確認装置に関する。
【0002】
【従来の技術】
従来、ソフトウェアの保守とメンテナンス、或は開発時の動作確認やデバッグのために、ファンクションモジュールの呼び出しやイベント送受信、その際の各変数の値等、プログラムの実行状態を実行ログとして記録することが行われてきた。
【0003】
特に最近では、工学的開発方法論であるオブジェクト指向開発が取り入れられてきたことにより、プログラム構造を分析モデル図(以下、モデル図)という可視化された図面によって、より一層開発者が把握し易くなってきており、実行ログからモデル図、即ちプログラム論理を辿ることが容易となり、その保守効率が向上されてきた。
【0004】
実行ログの記録内容としては、インスタンス名、イベント名、状態名、属性値と、その他時刻等の付加情報等が挙げられる。
【0005】
【発明が解決しようとする課題】
ところが、前記ログ情報はあくまでもテキストデータの羅列であり、その膨大な情報からエンジニアが対応するモデルを特定し、双方を照らし合わせながら1つ1つ確認作業を行っていくことは大変煩雑な作業であった。
【0006】
更に、モデル図は異なる視点から階層的に複数表記されるものであり、実行ログ上の或る1つの情報が、例えば情報モデルと状態モデルの両方に関連するような場合がある。そのような場合にも、エンジニアが関連するであろうモデル図を推測したとしても、念のため全てのモデル図を確認する必要がある等、煩雑で不確定な面があるものであった。
【0007】
本発明は上記問題に鑑みてなされたもので、その目的とする処は、実行ログがプログラムのどの処理部分にあるかを判断することができるとともに、プログラムが正しく動作しているか否かを容易に判断して保守及びデバッグ業務を効率的に行うことができるソフトウェアシステム動作確認装置を提供することにある。
【0008】
【課題を解決するための手段】
上記目的を達成するため、本発明のソフトウェアシステム動作確認装置は、工学的システム開発手法に基づいて作成されたプログラム構造を表す、オブジェクト間の相互関係を定義した情報モデルと各オブジェクトの状態遷移を定義した状態モデルとを記憶するモデル記憶手段と、該モデル記憶手段に記憶された情報モデル及び状態モデルをコードに変換したプログラムを実行するプログラム実行手段と、前記プログラム実行手段によるプログラム実行ログとして、受信されたイベントに対して、そのイベントを受信したタスクと、そのタスクを実行するオブジェクトのインスタンスと、そのイベントをトリガとして状態遷移したオブジェクトの状態と、その状態の振る舞いにより更新された属性の値とを、逐次記録していくプログラム実行ログ記録手段と、該プログラム実行ログ記録手段に記録されたプログラム実行ログを、複数のイベントについてイベント毎に1行で表現した表形式により表示するプログラム実行ログ表示手段と、該プログラム実行ログ表示手段により表示されたプログラム実行ログの中から任意に選択されたログに関わる情報モデルまたは状態モデルの表示指示操作を受け付けるモデル表示指示操作受付手段と、該モデル表示指示操作受付手段において情報モデルの表示指示操作を受け付けた場合は、選択された前記プログラム実行ログに含まれるオブジェクトの属する情報モデルを表示するとともに、該情報モデルにおいて当該プログラム実行ログに含まれるオブジェクト及び更新された属性の値を識別表示する情報モデル表示手段と、前記モデル表示指示操作受付手段において状態モデルの表示指示操作を受け付けた場合は、選択された前記プログラム実行ログに含まれるオブジェクトの状態モデルを表示するとともに、該状態モデルにおいて当該プログラム実行ログに含まれるイベント及びそのイベントの処理後のオブジェクトの状態を識別表示する状態モデル表示手段とを備える。
【0009】
【発明の実施の形態】
以下に本発明の実施の形態を添付図面に基づいて説明する。
【0010】
<実施の形態1>
図7は本プログラムが動作する装置を説明するブロック図である。
【0011】
CPU201は画像形成装置全体の制御を司るマイクロプロセッサーである。HD202は前記CPU201が動作を行う上での複数のアプリケーションを蓄積しておく大容量ハードディスクであり、本件におけるシステム分析を行ったモデル図の情報や、そのプログラム実行状態記録情報等が含まれる。前述のCPU201の管理下にあるものである。
【0012】
メモリ203はCPU201が動作する上でのワークメモリであり、HD202と同じく本件におけるシステム分析を行ったモデル図の情報や、そのプログラム実行状態記録情報等が含まれる。CPU201から高速にアクセスできるものである。
【0013】
高速CPUバス204は前述したCPU201、HD202、メモリ203や、後述する各機能ユニットとを接続するバスで、CPU201が処理したデータを各機能ユニットに転送したり、各機能ユニット間同士でデータを高速に転送(DMA転送)するためのものである。一般的にはVLバス又はPCIバスが挙げられる。
【0014】
RIP205は後述するコンピュータと接続される外部インターフェースより入力された、画像形成コマンドを受け、その内容に従ってビットマップ画像に変換を行う機能ユニットであると同時に、メモリ203又はHDD202上に存在するプログラム実行状態記録情報やモデル図情報を受け、その内容に従ってビットマップ画像に変換を行う機能ユニットである。画像形成コマンドは高速CPUバス204より入力され、後述する高速イメージバス216にイメージ画像を出力するものである。RIPの種類としては、ポストスクリプト、PCL、LIPS、CaPSL等が挙げられる。
【0015】
画像処理206は、高速イメージバス216から入力されたイメージ画像をCPU201の指示による処理命令に従ってスムージング処理やエッジ処理等のイメージ画像に対するフイルタリング処置を行う機能ユニットである。
【0016】
この他にも、画像処理206の機能としては、高速イメージバス216より入力された画像に対して文字認識(OCR)機能や文宇部とイメージ部を分離するイメージセパレート機能をも有する。
【0017】
圧縮/伸長部207は、高速イメージバス216から入力されたイメージ画像に対して、MH、MR、MMR、JPEG等の画像圧縮方法により圧縮を掛け、高速CPUバス204又は再び高速イメージバス216にその圧縮されたデータを送出したり、その逆にそれらの2つのバスから入力された圧縮データをこの機能ユニットにより圧縮された方式に従って伸長し、高速イメージバス216に送出する機能を持つものである。
【0018】
バスブリッジ208は高速CPU204と後述する低速CPUバス209とを繋ぐためのバスブリッジコントローラであり、バス間の処理スピードの差を吸収するものである。このバスブリッジ208を介することで高速に動作するCPU201は低速CPUバス209に接続された低速に動作する機能ユニットをアクセスすることができる。
【0019】
低速CPUバス209は、前記高速CPUバス204よりは転送速度の遅いバス構成で、処理能力の比較的遅い機能ユニットが繋がるためのバスである。一般的にはISAバス等が挙げられる。
【0020】
モデム210は、公衆回線211と低速CPUバス209とを介在する機能ユニットで、低速CPUバス209より送られてきたデジタルデータを公衆回線にデータを流せるように変調する機能と、公衆回線より送られてきた変調されたデータを画像形成装置内で処理できるデジタルデータに変換する機能を持つ。HD202又はメモリ203上に存在するプログラム実行状態記録情報を読み出すことが可能である。
【0021】
LAN212は、本画像形成装置を構内ネットワークに接続するための機能ユニットで、構内ネットワークとのデータの送受信を行うためのものである。一般的には、イーサネット等が挙げられる。HD202又はメモリ203上に存在するプログラム実行状態記録情報やモデル図情報を読み出すことが可能である。
【0022】
管理装置インターフェース214は、本画像形成装置と管理装置222とを接続するための機能ユニットで、本インターフェース214を介して管理装置へ本画像形成装置から制御コマンドを送ったり、管理装置から本画像形成装置ヘイネーブル信号を返したりするのに使用される機能ユニットである。HD202又はメモリ203上に存在するプログラム実行状態記録情報を読み出すことが可能である。
【0023】
パネルインターフェース215は、画像形成装置における操作部221との各種制御信号をやり取りするところで、後述する操作部221に配置されているキー等の入力スイッチの信号をCPU201に伝えたり、RIP205、画像処理部206、圧縮/伸長部207で作成された画像データを操作部221にある液晶表示部に表示するための解像度変換を行うユニットである。HD202又はメモリ203上に存在するプログラム実行状態記録情報やモデル図情報を読み出すことが可能である。
【0024】
高速イメージバス216は、各種画像生成ユニット(RIP205、画像処理部206、圧縮/伸長部207)における画像入出力バスと後述するスキャナインターフェース217、プリンタインターフェース219とを相互に接続するためのバスである。このバス216の制御はCPU201の管理下には置かれず、後述するバスコントローラ222によって制御されデータ転送を行う。
【0025】
スキャナユニット218は、原稿自動送り装置を備えた可視画像読み取り装置で、RGBの3ラインのCCDカラーセンサー又は1ラインの白黒のCCDラインセンサーを有するものである。このスキャナユニット218で読み取られた画像データは、スキャナインターフェースユニット217によって高速イメージバス216に転送される。
【0026】
スキャナインターフェースユニット217においては、前記スキャナユニット218で読み取られた画像データをその後の過程における処理の内容によって最適な2値化を行い、高速イメージバス216のデータ幅に合わせたシリアルーパラレル変換を行ったり、読み込まれたRGBの3原色のカラーデータをCMYBkのデータに変換したりする機能を持ち合わせる。
【0027】
プリンタユニット220は、後述するプリンタインターフェースユニット219から受け取った画像データを記録用紙上に可視画像データとして印刷するものである。読み出したプログラム実行状態記録情報結果やモデル図情報を出力印刷するものである。プリンタユニット220には、バブルジェット方式を用いて記録用紙上に印刷するバブルジェットプリンタやレーザ光線を利用して感光ドラム上に画像を形成し記録用紙に画像を形成する電子写真技術を利用したレーザビームプリンタが挙げられる。レーザービームプリンタには単色のものと、CMYBkによるカラーレーザビームプリンタがある。
【0028】
プリンタインターフェースユニット219は高速イメージバス216から送られてきた画像データをプリンタユニットに転送するもので、高速イメージバス216のバス幅から出力しようとするプリンタの階調に合わせたバス幅に変換するバス幅変換機能やプリンタの印刷速度と高速イメージバス216の画像データの転送速度の差を吸収するための機能を有する。
【0029】
操作部221は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。タッチパネル又はハードキーにより入力された信号は前述したパネルインターフェース215を介してCPU201に伝えられ、液晶表示部はパネルインターフェース215から送られてきた画像データを表示するものである。液晶表示部には、本画像形成装置の操作における機能表示や画像データ等を表示する。読み出したプログラム実行状態記録情報結果やモデル図情報を出力表示するものである。
【0030】
次に、オブジェクト指向分析におけるモデル図について説明する。
【0031】
工学的手法であるオブジェクト指向を用いた一般的なソフトウェア開発において、モデル図としてどのようなものを必要とするかは、各工学的手法、各方法論によって多少違いがあり、それぞれ定められているが、一般的には情報モデル、状態モデルを列挙することができる。
【0032】
オブジェクトとは、システムが対象とする実世界に存在する実体を抽象化したものであり、その中には、その抽象化された実体の識別を可能とする識別子と、その実体が持つ性質を抽象化した属性が含まれる。それぞれのオブジェクトは、実世界の中で体系的に成立する関連の集合を抽象化した関係で結ばれている。これら定義されたオブジェクトと、その相互関係を定義し、システムの静的側面を表現したものが情報モデルである。
【0033】
インスタンスとは、その抽象化したオブジェクトの実体そのものである。例えば、或る人が保有している2台の自動車を抽象化してオブジェクトとした場合、自動車というオブジェクトは1つであるが、実際に存在する1号車、2号車それぞれが別々なインスタンスとなる。
【0034】
前記情報モデルから、それぞれのオブジェクトの動作側面を表したものが状態モデルである。オブジェクトの状態遷移(ライフサイクルとも言う)を定め、それぞれの状態での動的な振る舞いを記述していく。それぞれの状態はイベントによって遷移され、それぞれの状態がオブジェクトの行う処理の単位である。
【0035】
次に、ソフトウェア開発にて作成されたモデル図について説明する。
【0036】
先ず、情報モデルについて図1を用いて説明する。
【0037】
オブジェクト0bj1は、その識別子をobj 1_IDとし、aという属性を持っている。同じく、オブジェクト0bj2は、その識別子をobj2_ID とし、zという属性を持っている。両オブジェクトは関係R1によって関係付けられており、その対応は1対1である。つまり、0bj1のインスタンスは必ず1つの0bj2のインスタンスと関係し、その反対に、0bj2のインスタンスは必ず1つの0bj1のインスタンスと関係すると記されている。
【0038】
次に、0bj1の状態モデルについて図2を用いて説明する。
【0039】
状態としてはState1とState2が定義されており、オブジェクトはその何れかの状態を取るということが分かる。それぞれの状態遷移のトリガとして、init,next,backのイベントが定義されている。プログラム立ち上げ時の初期状態位置は、その数字の小さい方、即ちState1であり、nextイベントを受けることにより、State2の振る舞いを実行することになる。各状態遷移を起こす有効なイベント以外のイベントは無視されることになる。例えばState1の状態である場合に、backイベントを受信しても無視され、何の振る舞いも実行されない。
【0040】
init イベントは、State1の状態で受け取る限り、State1の振る舞いを実行することになる。特に、initイベントは、プログラムの立ち上げ時にその初期化処理の終了とともに、外部処理部であるBootモジュールから1回だけ送信される特別なイベントである。次に、State1の状態での振る舞いとして、post(Self:next) と記されている。これは、nextというイベントを、Self、つまり自インスタンスヘ送信している意である。又、State2の状態での振る舞いとしては、Self[a]=fund(Self[a]) にて、fundという関数を呼び出している。その引数としてSelf[a] 、つまり、自インスタンスの属性aの値を渡し、同じくその返値を改めて自インスタンスの属性aに代入している。次に、post(Self:back) によって、backというイベントを、Self、つまり自インスタンスヘ送信している。これにより、現在の状態State2からState1への状態遷移を行わせている。
【0041】
次に、0bj2の状態モデルについて図3を用いて説明する。
【0042】
状態としてはState1が定義されている。取り得る状態はただ1つであるが、その振る舞いを呼び出すイベントとしてonが定義されている。onイベントを受け取る度に、State1の振る舞いを実行することになる。State1の振る舞いとしては、Self[z]=func2(Self[z])にて、func2 という関数を呼び出している。その引数としてSelf[z] 、つまり、自インスタンスの属性zの値を渡し、同じくその返値を改めて自インスタンスの属性zに代入するものである。
【0043】
ここで、状態から呼び出される関数func1 について図4を用いて説明する。
【0044】
func1 はプログラム言語を用いてコーディングされたソースコードである。引数aをインクリメントした結果を返す。
【0045】
同じく関数func2 について図5を用いて説明する。
【0046】
func2 はプログラム言語を用いてコーディングされたソースコードである。引数zを2倍した結果を返す。
【0047】
この場合の動作実行ログの記録について図6を用いて説明する。
【0048】
ログとして記録される情報は図6に示されるようなものであり、その記録内容として、受信したイベント、受信したオブジェクト、受信したインスタンス、それにより実行された状態名、状態中で更新された属性の値、の各情報が記録される。
【0049】
記録は、前述した処理説明に対応して行われるものであり、イベントを受信してから、その状態が終了するまでの間の、その振る舞い実行による属性値の更新結果を1行に表現する。ここでは、0bj1のインスタンスは、識別子(obj1_ID )の値が1であるとし、0bj2のインスタンスは、識別子(obj2_ID )の値が10であるとする。属性値が更新されなかった場合には「−」表示となる。属性は図1で示される通り、0bj1ではa、0bj2ではzを指す。ここでは、それぞれ初期値は「1」であるものとしている。この実行ログ結果を確認することにより、それぞれのモデルの実行状態を確認することが可能となる。
【0050】
<実施の形態2>
次に、本発明の実施の形態2について説明する。
【0051】
記録された実行ログ結果を操作部221に出力表示する場合について図8を用いて説明する。
【0052】
図8は本装置における操作部221での画面表示状態である。画面はグラフイッカルに構成され、メッセージ表示や各種ボタン表示がなされている。その中で、実行ログ表示ボタン11−1を押下することにより、実行ログ表示画面へと切り替わる。
【0053】
図9は実行ログが表示されている状態を表す。画面内には、記録されているプログラム実行状態が1度に5行分表示される。但し、ここでは全部で4行分の情報である例となっている。実行ログ表示行は指等で押下されることで行単位で反転表示となる。実行ログのない空自行は押下することができない。図上ではログ番号4の行が反転して表示されている。反転行は、再度押下されることでその反転を解除し、通常表示と切り替えられる。又、反転している行は1つに限り、或る行が反転中に他の行が押下されると、それまで反転していた行の反転は解除され、新たに押下された行が反転表示となる。
【0054】
上スクロールボタン12−1は、画面をページ単位で上ヘスクロールするボタンであり、前の5行分を表示することになる。上スクロールに値する情報がある場合には黒く有効表示となるが、図のように上スクロールに値しないような場合には、網掛け表示され、押されても何も機能しない。下スクロールボタン12−3も同様である。
【0055】
ページ表示部12−2は、総ページ数を分母に、現在表示ページを分子とするものであり、全体の情報量と、現在表示中の情報の位置を特定することが可能なものである。閉じるボタン12−4は本画面を閉じ、図8の画面へ戻るものである。現ページ印刷ボタン12−5は、現在表示中のページ(5行分)を用紙にプリントアウトするためのボタンである。全印刷ボタン12−6は、記録されている全ての実行ログ情報を用紙にプリントアウトするためのボタンである。モデル表示ボタン12−7は、実行ログ表示中に前記反転行がある場合にのみ有効表示となり、押下可能である。反転行がない場合には網掛け表示となり押下されても何の処理も行わない、つまり、押下することはできない。モデル表示ボタン12−7が押下された場合には、その反転実行ログ表示行に関係の深いモデル図表示へと切り替わる。
【0056】
<実施の形態3>
次に、本発明の実施の形態3について説明する。
【0057】
モデル表示ボタン12−7が押下され、前記反転実行ログ表示行に関係の深いモデル図を表示する場合の例について図9〜図11を用いて説明する。
【0058】
前述したように、図9において、ログ番号4の行が反転している場合にモデル表示ボタン12−7が押下された場合、ログ番号4の情報から、0bj1に関する動作ログであることと、その0bj1のState1状態が実行されたことが分かる。
【0059】
更に、実行状態State1では属性値が4へ変更されたことも読み取れる。そこで、モデル表示ボタン12−7が押下されたならば、前記実行ログから判断し、該実行ログに関連する適切なモデル図を表示する。その場合、どのモデル図を表示するかの選択は、より広範囲の情報を表すモデル図から徐々にその範囲を絞り込んでいく形を取る。例えば、前述の実行ログ番号4では、0bj1に関する情報モデル→状態State1に関する状態モデルという表示順序となる。勿論、状態モデル表示中に情報モデルヘ戻ることも可能ではある。
【0060】
図10は本装置における操作部221での情報モデル表示状態である。画面はグラフイッカルに構成され、メッセージ表示や各種ボタン表示がなされている。
【0061】
図10はより広範囲の情報として最初に表示されている画面である。13−1は表示マットであり、モデルを表示するエリアである。表示エリアは限られている範囲であるため、上下左右スクロールが可能である。13−4,13−5,13−6,13−7はそれぞれスクロールボタンであり、押下するとその方向へ表示マットを移動し、全てのモデルを表示し切れない場合にモデルの全体を確認することが可能となる。今、表示マット13−1上に0bj1が属する情報モデルが表示されている。それと分かるよう、表示モデル名表示エリア13−2には「情報モデル:0bj1」と表示される。情報モデルはシステムに1つとは限らないが、実行ログから判断し0bj1の属する情報モデルを自動的に選択表示される。
【0062】
又、0bj1の存在が一目で分かるよう目立つ表示方法にてハイライト表示される。同じく、実行ログ上の情報から、属性値の変更が読み取れるため、属性aもハイライト表示される。
【0063】
続いて更に情報を絞り込み表示を行わせる場合には、絞込ボタン13−9を押下する。押下すると図11に示すような状態モデルが表示され、更に詳しいオブジェクトの振る舞いについてモデルから確認することができる。それ以上絞り込み表示ができない場合には絞り込みボタンは網掛け表示され、押下不能となる。反対に絞込んだモデル図から、より広範囲なモデル図表示に戻す場合には、広範囲ボタン13−8を押下する。
【0064】
同様に、それ以上広範囲なモデル図がない場合には広範囲ボタン13−8は網掛け表示され、押下不能となる。閉じるボタン13−12は本画面を閉じ、図8の画面へ戻るものである。現モデル印刷ボタン13−11は現在表示マット13−1上に表示中のモデルだけを用紙にプリントアウトするためのボタンである。全印刷ボタン13−10は、記憶されている全てのモデルを用紙にプリントアウトするためのボタンである。
【0065】
絞込みボタン13−9を押下して0bj1のState1状態を含む状態モデルを表示した結果が図11である。14−1〜14−12までのそれぞれの機能は図10のものと同じである。
【0066】
表示マット14−1上に0bj1の状態モデルが表示されている。それと分かるよう、表示も出る名表示エリア14−2には「情報モデル:State1」と表示されている。更に、State1の存在が一目で分かるよう目立つ表示方法にてハイライト表示される。同じく、実行ログ上の情報から、その状態へ遷移するきっかけとなったイベントbackもハイライト表示される。それ以上表示モデルを絞り込むことができないため、絞込みボタン14−9は網掛け表示され、押下不能となっている。広範囲ボタン14−8を押下すると、図10の表示へ戻ることができる。
【0067】
<実施の形態4>
次に、本発明の実施の形態4について説明する。
【0068】
選択反転実行ログ表示行に関係の深いモデル図を表示する場合の別な例について、図12〜図14を用いて説明する。
【0069】
前述の図9とほぼ同様な図が図12であるが、15−7,15−8,15−9の各ボタンの機能が異なる。実行ログ表示ボタン15−7は図12に示す実行ログ情報を表示するためのボタンで、既に図12の表示中であれば押下しても何ら変化を起こさない。その階層状態を視覚的に表現するため、状態モデルボタン15−9は情報モデルボタン15−8内に配置される。情報モデルボタン15−8は、状態モデル15−9よりも外側の部分を押下されることで機能する。情報モデルボタン15−8を押下すれば選択実行ログに関連するオブジェクトが含まれる情報モデルの表示へ切り替わり、状態モデルボタン15−9を押下すれば選択実行ログに関連する状態モデルの表示へと切り替わる。
【0070】
ここで、情報モデルボタン15−8が押下されると、選択反転実行ログに関連するオブジエクトが含まれる情報モデルが図13の通り表示される。図13は図10とほぼ同様な図であり、その詳細はここでは割愛する。
【0071】
16−13,16−14,16−15の各ボタンが異なり、それぞれ図12で説明したボタン15−7,15−8,15−9と同じ機能を有する。図13では既に情報モデルを表示中であるため、情報モデルボタン16−14を押下しても何ら変化を起こさないが、状態モデルボタン16−15を押下することで、図14に示される状態モデル表示となる。
【0072】
図12において、状態モデルボタン15−9が押下されると、選択反転実行ログに関連する状態モデルが図14の通り表示される。図14は図11とほぼ同様な図であり、その詳細はここでは割愛する。
【0073】
17−13,17−14,17−15の各ボタンが異なり、それぞれ図12で説明したボタン15−7,15−8,15−9と同じ機能を有する。図14では既に情報モデルを表示中であるため、状態モデルボタン17−14を押下しても何ら変化を起こさないが、情報モデルボタン16−14を押下することで、図13に示される情報yモデル表示となる。
【0074】
【発明の効果】
以上の説明で明らかなように、本発明によれば、プログラムが処理実行された状況について、プログラム実行状態を記録した情報と、そのプログラム構造を表すモデル情報とを関連づけて表示することによって、記録されたプログラム実行状態がプログラムのどの位置に相当するかをモデル(プログラムを可視化したの)を通してエンジニアが把握することができる。その場合、モデルの階層構造をそのオペレーションに対応付けすることによって、開発段階でモデルを作成した際に行った思考を反映した自然な操作感を提供することができる。
【0075】
又、モデルを表示する場合にも、選択されたプログラム実行状態に関連する情報を識別表示することにより、多くの情報の中からも一目でそれと判断できることが可能となる。それにより、選択されたプログラム実行状態がプログラムのどの処理部分であるか、そしてプログラムが正しく動作しているかを容易に判断することが可能となり、その保守またはデバッグ業務をより効率的に行うことが可能となる。
【0076】
更に、その動作確認を実機上にてそのまま確認することが可能であるため、複雑な機器接続や煩雑なオペレーションから開放され、例えば不具合が発生したマシンの上で直接現象の解析が可能となる。
【図面の簡単な説明】
【図1】システム分析による情報モデル図である。
【図2】システム分析による状態モデル図である。
【図3】システム分析による状態モデル図である。
【図4】状態内で読み出される関数コードを示す図である。
【図5】状態内で読み出される関数コードを示す図である。
【図6】動作記録内容図である。
【図7】プログラムが動作する装置を説明するブロック図である。
【図8】操作パネル上に表示される動作記録図である。
【図9】操作パネル上に表示される動作記録図である。
【図10】操作パネル上に表示されるモデル図である。
【図11】操作パネル上に表示されるモデル図である。
【図12】操作パネル上に表示される動作記録図である。
【図13】操作パネル上に表示されるモデル図である。
【図14】操作パネル上に表示されるモデル図である。
【符号の説明】
201 CPU
202 HDD
203 メモリ
204 高速CPUバス
205 RIP
206 画像処理部
207 圧縮/伸長部
208 バスブリッジ
209 低速CPUバス
210 モデム
211 公衆回線
213 LAN
214 インターフェース(I/F)
216 高速イメージバス
217 スキャナインターフェースユニット
218 スキャナ
219 プリンタインターフェースユニット
220 プリンタユニット
221 操作部

Claims (2)

  1. 工学的システム開発手法に基づいて作成されたプログラム構造を表す、オブジェクト間の相互関係を定義した情報モデルと各オブジェクトの状態遷移を定義した状態モデルとを記憶するモデル記憶手段と、
    該モデル記憶手段に記憶された情報モデル及び状態モデルをコードに変換したプログラムを実行するプログラム実行手段と、
    前記プログラム実行手段によるプログラム実行ログとして、受信されたイベントに対して、そのイベントを受信したタスクと、そのタスクを実行するオブジェクトインスタンスと、そのイベントをトリガとして状態遷移したオブジェクトの状態と、その状態振る舞いにより更新された属性の値とを、逐次記録していくプログラム実行ログ記録手段と、
    該プログラム実行ログ記録手段に記録されたプログラム実行ログを、複数のイベントについてイベント毎に1行で表現した表形式により表示するプログラム実行ログ表示手段と、
    該プログラム実行ログ表示手段により表示されたプログラム実行ログの中から任意に選択されたログに関わる情報モデルまたは状態モデルの表示指示操作を受け付けるモデル表示指示操作受付手段と、
    該モデル表示指示操作受付手段において情報モデルの表示指示操作を受け付けた場合は、選択された前記プログラム実行ログに含まれるオブジェクトの属する情報モデルを表示するとともに、該情報モデルにおいて当該プログラム実行ログに含まれるオブジェクト及び更新された属性の値を識別表示する情報モデル表示手段と、
    前記モデル表示指示操作受付手段において状態モデルの表示指示操作を受け付けた場合は、選択された前記プログラム実行ログに含まれるオブジェクトの状態モデルを表示するとともに、該状態モデルにおいて当該プログラム実行ログに含まれるイベント及びそのイベントの処理後のオブジェクトの状態を識別表示する状態モデル表示手段とを備えることを特徴とするソフトウェアシステム動作確認装置。
  2. 前記モデル表示指示操作受付手段は、前記プログラム実行ログの表示中に前記情報モデルの表示の指示操作受け付け、前記情報モデルの表示中に前記状態モデルの表示の指示操作受け付けることを特徴とする請求項1記載のソフトウェアシステム動作確認装置。
JP2002003663A 2002-01-10 2002-01-10 ソフトウェアシステム動作確認装置 Expired - Fee Related JP4208468B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002003663A JP4208468B2 (ja) 2002-01-10 2002-01-10 ソフトウェアシステム動作確認装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002003663A JP4208468B2 (ja) 2002-01-10 2002-01-10 ソフトウェアシステム動作確認装置

Publications (3)

Publication Number Publication Date
JP2003208334A JP2003208334A (ja) 2003-07-25
JP2003208334A5 JP2003208334A5 (ja) 2005-08-04
JP4208468B2 true JP4208468B2 (ja) 2009-01-14

Family

ID=27643201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002003663A Expired - Fee Related JP4208468B2 (ja) 2002-01-10 2002-01-10 ソフトウェアシステム動作確認装置

Country Status (1)

Country Link
JP (1) JP4208468B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5374405B2 (ja) * 2010-02-12 2013-12-25 株式会社日立製作所 モデルデバッグ装置およびモデルデバッグ方法
JP5943861B2 (ja) 2013-02-28 2016-07-05 京セラドキュメントソリューションズ株式会社 リモートデバッグシステム

Also Published As

Publication number Publication date
JP2003208334A (ja) 2003-07-25

Similar Documents

Publication Publication Date Title
JP3027009B2 (ja) 設計取り込みシステム
US20070070473A1 (en) Image display device, image display method, computer program product, and image display system
CN101676868B (zh) 图像处理装置和图像处理方法
US20050237572A1 (en) Document processing apparatus, control method therefor, and computer program
US6467078B1 (en) Program development system, method for developing programs and storage medium storing programs for development of programs
CN101894002B (zh) 图像输出装置和图像输出方法
CN104915093A (zh) 图像显示装置、图像显示系统以及图像显示方法
US7779377B2 (en) Method and apparatus for aiding verification of circuit, and computer product
US7346673B1 (en) Method and apparatus for selecting a device and a computer product
JP4208468B2 (ja) ソフトウェアシステム動作確認装置
JP2006252526A (ja) 文書ファイル管理装置、文書ファイル管理方法、および文書ファイル管理プログラム
US7788643B2 (en) Method and apparatus for supporting verification of hardware and software, and computer product
JP4208460B2 (ja) ソフトウエアシステム動作確認装置
JP4208461B2 (ja) ソフトウエアシステム動作確認装置
US20090070389A1 (en) Image forming apparatus with log collection mechanism
JP7279415B2 (ja) 情報処理装置、情報処理方法、及びプログラム
CN100394386C (zh) 信息处理装置
CN113010129A (zh) 虚拟演播厅全流程多终端板书提取方法和装置
JPH02502318A (ja) 高速ラスタ・イメージ・プロセッサ
JP4482526B2 (ja) 画像形成装置
JP2006252527A (ja) 文書ファイル管理装置、文書ファイル管理方法、および文書ファイル管理プログラム
JP5063207B2 (ja) 色変換処理装置、方法、記録媒体及びプログラム
JP2653276B2 (ja) キーボードシュミレータ
CN105763757A (zh) 信息设备
JP3012748B2 (ja) 計算機システム及び帳票編集出力装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050111

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071127

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080701

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080901

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: 20080930

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081021

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees