JP4781163B2 - 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体 - Google Patents

設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体 Download PDF

Info

Publication number
JP4781163B2
JP4781163B2 JP2006134264A JP2006134264A JP4781163B2 JP 4781163 B2 JP4781163 B2 JP 4781163B2 JP 2006134264 A JP2006134264 A JP 2006134264A JP 2006134264 A JP2006134264 A JP 2006134264A JP 4781163 B2 JP4781163 B2 JP 4781163B2
Authority
JP
Japan
Prior art keywords
information
processing
name
module
executed
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
JP2006134264A
Other languages
English (en)
Other versions
JP2007304980A (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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2006134264A priority Critical patent/JP4781163B2/ja
Publication of JP2007304980A publication Critical patent/JP2007304980A/ja
Application granted granted Critical
Publication of JP4781163B2 publication Critical patent/JP4781163B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Description

この発明は設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体に関し、特に、コンピュータソフトウェア設計において、設計情報を比較することで設計の不整合を検出する設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体に関する。
ソフトウェアの設計は、要求仕様を実現するためのモジュール構成と、モジュール間の概略処理を決定する基本設計とを行なった後、複数の設計者が、基本設計に沿って各モジュールのメソッドと、メソッドの処理内容とを決定する詳細設計を行なう。そのため、設計者のミス等により、基本設計により作成された情報と、詳細設計により作成された情報との間に不整合が生じるという問題があった。特許文献1はこの問題を解決することのできる開発支援方法および装置を開示している。
特許文献1に開示の方法および装置は、基本設計により作成された情報から、詳細設計を自動化することで不整合を防止する。
特開2004−110378号公報
しかしながら、特許文献1に開示の技術では、ディスパッチャーとそのディスパッチャーから呼出される複数のモジュールとからなり、ディスパッチャーより振り分けたユーザの入力を各モジュールで処理するソフトウェア構成しか設計できないという制限があった。このため、前記ソフトウェア構成以外のソフトウェア構成においては、基本設計と詳細設計との情報の不整合をなくすことはできなかった。
本発明はこのような問題に鑑みてなされたものであって、適用できるソフトウェア構成に関わらず、モジュール間の処理手順とメソッドの仕様との不整合を検出することができる設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体を提供することを目的とする。
上記目的を達成するために、本発明のある局面に従うと、設計検証装置は、処理内容を表わす情報と処理内容を実行するモジュール名とを処理する順に列挙した概処理手順情報と、メソッド名とメソッドを含むモジュール名とメソッドが実行する処理を表わす情報とを含む詳細設計情報とを受付ける受付手段を備え詳細設計情報のメソッドが実行する処理を表わす情報は、当該メソッドが実行する処理が他のメソッドを呼び出す処理である場合に当該メソッドが呼び出す他のメソッドを特定する情報を含み、概略処理手順情報から、処理する順において最初に実行する処理である開始処理を抽出する開始処理抽出手段と、詳細設計情報と開始処理抽出手段で抽出された開始処理を表わす情報とから、メソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報を作成する処理手順抽出手段と、概略処理手順情報と詳細設計処理手順情報とを比較して、不整合情報を検出する手順情報検証手段とをさらに備える。
また、設計検証装置は、検証を行なう概略処理手順情報を指定する手段をさらに備え、開始処理抽出手段は指定された概略処理手順情報から開始処理を抽出することが好ましい。
また、処理手順抽出手段は、概略処理手順情報から、開始処理の処理内容と開始処理の次に実行する第1モジュール名とを読込む処理と、詳細設計情報から、第1モジュールに含まれる第1メソッドが実行する処理の処理内容を読込む処理と、第1メソッドが実行する処理の処理内容から、当該処理の次に実行する第2モジュール名および第2メソッド名を特定する処理と、詳細設計情報から、第2モジュールに含まれる第2メソッドが実行する処理の処理内容を読込む処理と、第2メソッドが実行する処理の処理内容から、当該処理の次に実行する第3モジュール名および第3メソッド名を特定する処理とを実行して詳細設計処理手順情報を作成することが好ましい。
さらに、第2メソッドが実行する処理は第1処理と第2処理とを含み、処理手順抽出手段は、第2メソッドが実行する第1処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、第2モジュール名を第3モジュール名とし、第2処理を実行する第2メソッド名を第3メソッド名とすることが好ましい。
または、設計検証装置は特定されたモジュール名および第N処理を実行するメソッド名を順次格納する次モジュールスタックをさらに含み、処理手順抽出手段は、第2メソッドが実行する処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、次モジュールスタックより第4モジュール名および第N処理を実行する第4メソッド名を取出し、第4モジュール名を第3モジュール名とし、第N処理の次の処理である第(N+1)処理を実行する第4メソッド名を第3メソッド名とすることが好ましい。
本発明の他の局面に従うと、設計検証プログラムは、コンピュータにコンピュータソフトウェアの設計検証を実行させるプログラムであって、処理内容を表わす情報と処理内容を実行するモジュール名とを処理する順に列挙した概要処理手順情報と、メソッド名とメソッドを含むモジュール名とメソッドが実行する処理を表わす情報とを含む詳細設計情報とを入力するステップをコンピュータに実行させ詳細設計情報のメソッドが実行する処理を表わす情報は、当該メソッドが実行する処理が他のメソッドを呼び出す処理である場合に当該メソッドが呼び出す他のメソッドを特定する情報を含み、概略処理手順情報から、処理する順において最初に実行する処理である開始処理を抽出する開始処理抽出ステップと、詳細設計情報と開始処理抽出ステップで抽出された開始処理を表わす情報とから、メソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報を作成する処理手順抽出ステップと、概略処理手順情報と詳細設計処理手順情報とを比較して、不整合情報を検出する手順情報検証ステップとをさらにコンピュータに実行させる。
また、設計検証プログラムは、検証を行なう概略処理手順情報を指定するステップをさらに実行させ、開始処理抽出ステップにおいて指定された概略処理手順情報から開始処理を抽出することが好ましい。
また、処理手順抽出ステップは、概略処理手順情報から、開始処理の処理内容と開始処理の次に実行する第1モジュール名とを読込むステップと、詳細設計情報から、第1モジュールに含まれる第1メソッドが実行する処理の処理内容を読込むステップと、第1メソッドが実行する処理の処理内容から、当該処理の次に実行する第2モジュール名および第2メソッド名を特定するステップと、詳細設計情報から、第2モジュールに含まれる第2メソッドが実行する処理の処理内容を読込むステップと、第2メソッドが実行する処理の処理内容から、当該処理の次に実行する第3モジュール名および第3メソッド名を特定するステップとをさらに含むことが好ましい。
さらに、第2メソッドが実行する処理は第1処理と第2処理とを含み、処理手順抽出ステップにおいて、第2メソッドが実行する第1処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、第2モジュール名を第3モジュール名とし、第2処理を実行する第2メソッド名を第3メソッド名とすることが好ましい。
または、設計検証プログラムは特定されたモジュール名および第N処理を実行するメソッド名を次モジュールスタック順次格納するステップをさらに実行させ、処理手順抽出ステップは、第2メソッドが実行する処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、次モジュールスタックより第4モジュール名および第N処理を実行する第4メソッド名を取出し、第4モジュール名を第3モジュール名とし、第N処理の次の処理である第(N+1)処理を実行する第4メソッド名を第3メソッド名とすることが好ましい。
本発明のさらに他の局面に従うと、記録媒体はコンピュータ読取可能な記録媒体であって、上記設計検証プログラムを記録する。
本発明にかかる設計検証装置によれば、適用できるソフトウェア構成に関わらず、モジュール間の処理手順とメソッドの仕様との不整合を検出することができ、設計の不備を早期に改善できる。そのため、本発明にかかる設計検証装置を用いて効率的なソフトウェア開発を行なうことができる。
以下に、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品および構成要素には同一の符号を付してある。それらの名称および機能も同じである。
本実施の形態にかかる設計検証装置1は、一般的なパーソナルコンピュータによって実現され、そのハードウェア構成は、CPU(Central Processing Unit)やRAM(Random Access Memory)等を備える一般的なコンピュータのハードウェア構成と同様である。
設計検証装置1では、CPUがRAM等の記憶装置に記憶される設計検証プログラムを実行することで、モジュール間の処理手順となる、各処理内容を表わす情報と処理内容を実行するモジュール名とを処理する順が列挙された概略処理手順情報(I1)と、メソッドの仕様となる、メソッド名とメソッドを備えるモジュール名とメソッドが実行する処理を表わす情報とを含む詳細設計情報(I2)と、検証者が検証したい設計情報を指示する概略処理手順ID(I3)とから、メソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報(I4)を作成し、概略処理手順情報(I1)と詳細設計処理手順情報(I4)とから不整合情報(I5)を出力する。
概略処理手順情報(I1)は基本設計者によって作成され、詳細設計情報(I2)は概略処理手順情報(I1)に基づいて詳細設計者によって作成され、概略処理手順ID(I3)は概略処理手順情報(I1)および不整合情報(I5)に基づいて検証者によって作成される。
図1は、本実施の形態にかかる設計検証装置1の機能構成の具体例を示すブロック図である。図1に示される各機能は、パーソナルコンピュータ等である設計検証装置1において、CPUがRAM等の記憶装置に記憶される設計検証プログラムを実行することで主にCPUに形成される機能であり、その一部はハードウェアによって実現される機能であってもよい。
設計検証装置1で設計検証処理を行なうための機能構成は、図1を参照して、詳細設計処理手順情報作成部10と、手順情報検証部20とを含んで構成される。さらに、詳細設計処理手順情報作成部10には、開始処理抽出部11と、処理手順抽出部12とが含まれる。
詳細設計処理手順情報作成部10は、概略処理手順情報(I1)、詳細設計情報(I2)、および概略処理手順ID(I3)の入力を受付ける。開始処理抽出部11は、概略処理手順情報(I1)および概略処理手順ID(I3)からモジュール間の処理手順において最初に実行する処理の情報を抽出し、処理手順抽出部12に入力する。処理手順抽出部12は、開始処理抽出部11から入力された最初に実行する処理の情報と詳細設計情報(I2)とから詳細設計処理手順情報(I4)を作成し、手順情報検証部20に入力する。
手順情報検証部20は、概略処理手順情報(I1)の入力を受付け、概略処理手順情報(I1)と処理手順抽出部12から入力された詳細設計処理手順情報(I4)とを比較して不整合情報(I5)を出力する。
図2は概略処理手順情報(I1)の第1の具体例を示す図であり、図3は概略処理手順情報(I1)の第2の具体例を示す図である。図2および図3に示される概略処理手順情報は、携帯電話で「かかってきた電話を受ける」という要求を実現する概略処理手順を表わしている情報である。
図2はシーケンス図で概略処理手順を表現した情報を表わし、図3はテーブルで概略処理手順を表現した情報を表わしており、これらの情報量は等しい。また、これらの情報は、システム開発支援ツールと開発方法論の統合、システム開発作業の効率化を目的としたコンピュータ支援ソフトウェアであるCASE(Computer Aided Software Engineering)ツールと言われるソフトウェアを用いることで、容易に相互変換され得る。また、概略処理手順情報(I1)の形式はシーケンス図およびテーブルに限定されず、その他の形式であってもよい。たとえば、OMG(Object Management Group)が標準化しているXMI(Extensible Markup Language Metadata Interchange)形式等であってもよい。
図2および図3を参照して、概略処理手順情報(I1)には、複数の概略処理手順情報から1つを特定し得る識別情報である概略処理手順ID100が含まれる。
図2に示されるシーケンス図による表現では、モジュール名101が上部に列挙され、2つのモジュール名間が矢印でつながれ、矢印の上部に処理内容が記載される。
詳しくは、矢印の根元は処理内容を実行するモジュール名を、矢印の先端は次の処理を実行するモジュール名を示している。具体的に、矢印102および処理内容103は、通信管理モジュールがアプリ管理モジュールに対して着信を通知し、アプリ管理モジュールに次の処理を実行させることを示している。
根元がモジュール名上にない矢印は、ユーザまたはハードウェアからの入力によるソフトウェアの開始処理を表わす。具体的に、矢印104は、無線通信ハードウェアにより着信信号を受信し、通信管理モジュールに次の処理を実行させることを示している。
先端がモジュール名上にない矢印は、ユーザまたはハードウェアへの出力によるソフトウェアの終了処理を表わす。具体的に、矢印105は、表示管理モジュールが表示装置に表示し、実行結果をユーザに提示することを示している。
複数の矢印の記載順序は、各処理の実行順序を表わしており、上部に記載された矢印から順に処理されることを示している。具体的には、図2に示された処理の場合、矢印104から順に14種類の処理が順に実行されることを示している。
また、図3に示されるテーブルによる表現では、1行に処理内容を実行するモジュール名106と、処理内容107と、次に実行するモジュール名108とが含まれ、処理される順に上の行から下の行へ処理が列挙される。
詳しくは、開始処理は、第110行,第120行に示されるように、処理内容を実行するモジュール名106に開始処理であることを表わす記号が付されている。図3では記号「−」が使用されている。同様に、終了処理は、第116行,第126行に示されるように、次に実行するモジュール名108に終了処理であることを表わす記号が付されている。図3では記号「−」が使用されている。なお、図3に示されるテーブルによる表現では、記載順がモジュールの処理順を表わす場合には、次に実行するモジュール名108が必ずしも含まれていなくてもよい。
図4は、図2および図3に示された概略処理手順情報に基づいて作成された詳細設計情報(I2)の具体例を示す図である。詳細設計情報(I2)はモジュールごとに作成され、図4では6種類のモジュールの詳細設計情報が示されている。図4(A)〜図4(F)に示された、キー入力管理モジュール220、アプリ管理モジュール221、表示管理モジュール222、通信管理モジュール223、電話アプリモジュール224、およびメールアプリモジュール225に対応した各詳細設計情報には、モジュール名201が付されている。また、詳細設計情報(I2)は、モジュールが備える複数のメソッド名202と、各メソッドで実施される複数の処理の順番を示す処理番号203と、処理の内容を示す処理内容204とを含む。
詳しくは、図4(B)を参照して、アプリ管理モジュール221には、2種類のメソッドaddKeyEvent()とaddTelEvent()とが含まれ、メソッドaddTelEvent()では、メールアプリモジュールのメソッドkillApli()を呼出してアプリを終了させる第1の処理と、電話アプリモジュールを起動させて電話アプリモジュールのメソッドaddTelEvent()を呼出し、着信を通知する第2の処理とが実行されることが示されている。
メソッド名202では、メソッドを実行する際の引数がある場合、その引数が入力用か出力用かを示す情報と引数名とが空白文字で区切られ、括弧内に記載される。引数が複数の場合、入出力を示す情報と引数名との組が記号「,」で区切られ列挙される。具体的に、図4(B)を参照して、アプリ管理モジュール221のメソッド名addKeyEvent(in Key)は、メソッドaddkeyEvent()が引数を1つ持ち、引数KeyがメソッドaddKeyEvent()の入力であることが示されている。
メソッド名202では、メソッドを実行後、そのメソッドから返される戻り値がある場合、その戻り値の型が記号「:」に続けて記載される。具体的に、図4(D)を参照して、通信管理モジュール223のメソッド名connectPhone():Resultは、メソッドconnectPhone()実行後の戻り値の型がResultであることが示されている。
また、メソッド名202が「−」である場合、そのメソッドは開始処理であることが示されている。具体的に、図4(A)を参照して、キー入力管理モジュール220のメソッド名「−」が、開始処理であることを示している。
メソッドの処理内容204は、他のメソッドを呼出す処理である場合に呼出す他のメソッドを容易に認識できるように記載される。具体例としては、図4に示されるように、記号「< >」が他の文字列と区別するために用いられて、<モジュール名:メソッド名>のように記載される。具体的に、図4(B)を参照して、アプリ管理モジュール221のメソッドaddKeyEvent()の第1の処理で電話アプリモジュールのaddKeyEvent()メソッドが呼出されることが示されている。
図5は、本実施の形態にかかる設計検証装置1での設計検証処理を示すフローチャートである。図5のフローチャートに示される処理は、パーソナルコンピュータ等である設計検証装置1において、CPUがRAM等の記憶装置に記憶される設計検証プログラムを実行し、図1に示される各部を制御することで実現される。
図5を参照して、本実施の形態にかかる設計検証装置1では、始めに、図示されない入力装置を介して概略処理手順情報(I1)、詳細設計情報(I2)、および概略処理手順ID(I3)の入力を受付け(ステップ、以下S1)、開始処理抽出部11において概略処理手順情報(I1)および概略処理手順ID(I3)からモジュール間の処理手順において最初に実行する処理である開始処理の情報が抽出される(S2)。次に、処理手順抽出部12において、S1で抽出された実行する処理の情報と詳細設計情報(I2)とから詳細設計処理手順情報(I4)が作成される(S3)。そして、手順情報検証部20において、概略処理手順情報(I1)およびS3で作成された詳細設計処理手順情報(I4)から不整合情報(I5)が作成され、出力される(S4)。
上記ステップS2で、開始処理抽出部11は、検証者が指定した概略処理手順ID(I3)の入力を受付けてそのIDを持つ概略処理手順情報(I1)を特定し、概略処理手順情報(I1)より開始処理情報を抽出して処理手順抽出部12に入力する。
検証者により、図2または図3において示された概略処理手順ID100が指定された場合、開始処理抽出部11は、そのIDに対応した概略処理手順情報として図2または図3に示された概略処理手順情報(I1)を特定し、図3において第110行、および第120行で表わされた開始処理情報を抽出して処理手順抽出部12に入力する。
上記ステップS3で、処理手順抽出部12は、開始処理抽出部11から入力された開始処理から詳細設計情報(I2)の処理を順にたどることで、詳細設計処理手順情報(I4)を作成し、不整合検出部20に入力する。図6および図7は、上記ステップS3での処理手順抽出部12における処理を示すフローチャートである。
また、図8は、処理手順抽出部12でステップS3の処理を行なう際に用いられる、次モジュールスタックの動作を説明する図である。次モジュールスタックは、処理手順抽出部12の内部、またはCPU等の他に含まれ、次に実行するモジュール名、メソッド名、および処理番号を一時的に格納するために用いられる。
また、図9は、詳細設計処理手順情報(I4)の具体例を示す図である。図9を参照して、詳細設計処理手順情報(I4)には、処理の呼び出し元のモジュール名、処理を実行するメソッド名、および呼び出し元のメソッドが実行する処理の順番を示す処理番号が、記号「:」で区切って記載された呼び出し元情報501と、呼び出し元のメソッドが実行する処理内容を示す処理内容502と、呼び出し先または次に実行するモジュール名、処理を実行するメソッド名、および呼び出し先のメソッドが実行する処理の順番を示す処理番号が、記号で区切って記載された呼び出し先情報503とが含まれる。なお、詳細設計処理手順情報においてその記載順がモジュールおよびメソッドの処理順を表わす場合には、呼び出し先情報503が必ずしも含まれていなくてもよい。
図8および図9を用いて図6および図7に示されたステップS3の処理を説明する。
図6を参照して、始めに、処理手順抽出部12は、上記ステップS2の処理の結果として開始処理抽出部11から開始処理情報を受取ると次モジュールスタックを初期化する(S301)。図8の次モジュールスタック401は、ステップS301で初期化された状態を示している。
次に、処理手順抽出部12は、開始処理抽出部11から入力された開始処理情報から1行分の情報を読込んで(S302)、詳細設計処理手順情報の1行分を作成し(S303)、作成された詳細設計処理手順情報を1行分書出す(S304)。
上記ステップS2の処理の結果として、図3に第110行、第120行に示される開始処理の情報を受取った場合、処理手順抽出部12は、上記ステップS302で、まず第110行の開始処理情報を読込み、ステップS303で、その開始処理情報の実行中モジュール名「−」から、モジュール名「−」、メソッド名なし、処理番号なしとして、詳細設計処理手順情報の呼び出し元情報「−」を作成する。また、第110行の開始処理情報の処理内容「着信信号を受信する」を詳細設計処理手順情報の処理内容にコピーし、第110行の開始処理情報の次実行モジュール名「通信管理」から、モジュール名「通信管理」、開始処理を表わすメソッド名「−」、最初の処理を表わす処理番号「1」により、詳細設計処理手順情報の呼び出し先情報として「通信管理:−:1」を作成する。
ステップS304で、作成した詳細設計処理手順情報が書出される。図9に示される詳細設計処理手順情報(I4)の第510行は、上記具体例によって書出された詳細設計処理手順情報を表わしている。
次に、処理手順抽出部12は、前回の処理で書出された詳細設計処理手順情報から呼び出し先情報を読込み、今回の処理で作成する詳細設計処理手順情報の呼び出し元情報に設定する(S305)。なお、詳細設計処理手順情報に呼び出し先情報が含まれない場合には、上記ステップS303で詳細設計処理手順情報が1行分作成された際に、呼び出し先情報に該当する情報を、直接、次回の処理で作成する詳細設計処理手順情報の呼び出し元情報とする。以降、同様である。
さらに、ステップS305で設定された呼び出し元情報が指し示す詳細設計情報の処理内容を詳細設計情報(I2)から読込み(S306)、読込んだ処理内容を、モジュール名・メソッド名と残りの処理内容とに分離する(S307)。
ステップS304で図9の第510行に示される詳細設計処理手順情報が書出された場合、上記ステップS305で処理手順抽出部12は呼び出し先情報として「通信管理:−:1」を読込み、今回の処理で作成する詳細設計処理手順情報の呼び出し元情報を「通信管理:−:1」に設定する。次に、ステップS306で、図4に示される詳細設計情報(I2)より、設定された呼び出し元情報「通信管理:−:1」で指し示される通信管理モジュール223にある、メソッド名「−」で処理番号「1」の行から、処理内容「<アプリ管理:addTelEvent()>に着信を通知する」を読込み、ステップS307で、モジュール名「アプリ管理」、メソッド名addTelEvent()と、処理内容「着信を通知する」とに分離する。
次に、処理手順抽出部12は、S307で分離されたメソッド名にメソッド名情報が含まれていることが検出された場合(S308で「あり」)、ステップS307で分離して得られた処理内容を今回の処理で作成する詳細設計処理手順情報の処理内容に設定する(S310)。また、ステップS307で分離したモジュール名とメソッド名と処理番号「1」とを、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報に設定する(S311)。そして、上記ステップS305,S310,S311で設定された呼び出し元情報、処理内容、および呼び出し先情報を、詳細設計処置手順情報の1行分として書出す(S312)。
上記具体例では、ステップS307で分離して得られたメソッド名にはメソッド名情報「addTelEvent()」が含まれるため、上記ステップS310では、今回の処理で作成する詳細設計処理手順情報の処理内容として、ステップS307で分離して得られた処理内容「着信を通知する」が設定される。また、上記ステップS311では、ステップS307で分離して得られたモジュール名「アプリ管理」、メソッド名addTelEvent()、および処理番号「1」から、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報として「アプリ管理:addTelEvent():1」が設定される。
ステップS312で、以上の設定を含んだ詳細設計処理手順情報が今回の処理で作成する詳細設計処理手順情報として書出される。図9に示される詳細設計処理手順情報(I4)の第511行は、上記具体例によって書出された詳細設計処理手順情報を表わしている。
そして、処理手順抽出部12は、上記ステップS305で設定された呼び出し元情報を次モジュールスタックに追加し(S313)、ステップS305に処理を戻す。上記具体例の場合、ステップS313では、上記ステップS305で設定された呼び出し元情報「通信管理:−:1」が次モジュールスタックに追加される。図8の次モジュールスタック402は、ステップS313で呼び出し元情報が追加された状態を示している。
上記ステップS305に処理が戻された後、同様にステップS305〜S308,S310〜S313の処理が繰返されて、図4に示された詳細設計情報(I2)に含まれる処理情報が順に処理され、ステップS312で詳細設計処理手順情報の1行分が書出される。図9に示される詳細設計処理手順情報(I4)の第512行は、上記具体例によって次に書出された詳細設計処理手順情報を表わしている。
そして、処理手順抽出部12は、ステップS313で、上記ステップS305で設定された呼び出し元情報を次モジュールスタックに追加し、ステップS305に処理を戻す。図8の次モジュールスタック403は、ステップS313で呼び出し元情報が追加された状態を示している。
上記ステップS305〜S308,S310〜S313の処理は、ステップS308においてステップS307で分離して得られたメソッド名にメソッド名情報が含まれていることが検出されなくなるまで繰返され、メソッド名情報が含まれていることが検出されなかった場合(S308で「なし」)、図7を参照して、ステップS306で読込んだ処理内容を今回の処理で作成する詳細設計処理手順情報の処理内容に設定し(S320)、さらに処理内容に次の処理が含まれているか否かを判定する(S321)。処理内容に次の処理が含まれていないと判定された場合(S321で「なし」)、次モジュールスタックに呼び出し元情報が記憶されているかどうかを判定し(S330)、次モジュールスタックに呼び出し元情報がある場合は(S330で「あり」)、次モジュールスタックから呼び出し元情報を取出して(S331)、ステップS321に処理を戻し、ステップS331で次モジュールスタックから取出した呼び出し元情報のメソッドの処理内容に次の処理が含まれているか否かを判定する。次の処理が含まれていると判定された場合(S321で「あり」)、次モジュールスタックから取出した呼び出し元情報の処理番号に1を加え、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報に設定する(S322)。そして、上記ステップS305,S320,S322で設定された呼び出し元情報、処理内容、および呼び出し先情報を、詳細設計処置手順情報の1行分として書出し(S323)、処理をステップS305に戻す。
上記具体例で図9に示される詳細設計処理手順情報(I4)の第512行が書出された後、上記ステップS305〜S307の処理が実行されると、図3,図4より、ステップS307で分離してメールアプリモジュールのメソッドkillApli()が得られる。図4より、メールアプリモジュール225のメソッドkillApli()の処理内容「終了通知を返す」にはメソッド名が含まれていないため(S308で「なし」)、処理手順抽出部12は、上記ステップS320で、メールアプリモジュール225のメソッドkillApli()の処理内容「終了通知を返す」を、今回の処理で作成する詳細設計処理手順情報の処理内容に設定する。また、上記ステップS321でメールアプリモジュール225のメソッド「killApli()」に次の処理(処理番号2)が含まれているか否かを判定する。図4より、メールアプリモジュール225のメソッドkillApli()には次の処理(処理番号2)が含まれていないため、処理手順抽出部12は、上記ステップS330で、次モジュールスタックに呼び出し元情報が含まれているか否かを判定する。図8より、次モジュールスタック403には上記ステップS313で追加された呼び出し元情報が含まれているため、処理手順抽出部12は、上記ステップS331で、次モジュールスタック403から呼び出し元情報「アプリ管理:addTelEvent():1」を取出し、上記ステップS321で、アプリ管理モジュールのメソッドaddTelEvent()に次の処理(処理番号2)が含まれているか否かを判定する。図4より、アプリ管理モジュール221のメソッドaddTelEvent()には処理番号2の処理が含まれるため、処理手順抽出部12は、上記ステップS321で、メソッドaddTelEvent()の処理に次の処理(処理番号2)が含まれていると判定し、ステップS322で、処理番号に1を加えた処理番号2を、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報「アプリ管理:addTelEvent():2」として設定する。そして、ステップS323で、呼び出し元情報「メールアプリ:killApli():1」、処理内容「終了通知を返す」、呼び出し先情報「アプリ管理:addTelEvent():2」を、詳細設計処置手順情報の1行分として書出す。図9に示される詳細設計処理手順情報(I4)の第513行は、上記具体例によって次に書出された詳細設計処理手順情報を表わしている。
同様に、上記処理が繰返されることで、図9に示される詳細設計処理手順情報(I4)の第514行〜第515行が書出される。図8の次モジュールスタック404は詳細設計処理手順情報(I4)が第515行まで書出されたときの状態を示している。
ステップS306で読込んだ処理内容に次の処理が含まれておらず(S321で「なし」)、さらに次モジュールスタックに呼び出し元情報がなくなった場合(S330で「なし」、処理手順抽出部12は、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報に「−」を設定し(S332)、上記ステップS305,S320,S332で設定された呼び出し元情報、処理内容、および呼び出し先情報を、詳細設計処置手順情報の1行分として書出す(S333)。
上記具体例で図9に示される詳細設計処理手順情報(I4)の第515行が書出された後、さらに、上記ステップS305〜S308の処理が実行され、ステップS307で分離して表示管理モジュールのメソッドsetDisplay()の処理内容「表示装置に表示する」が得られると、図4より、表示管理モジュール221のメソッドsetDisplay()の処理内容にはメソッド名が含まれないため、処理がステップS320へ進む。さらに、処理内容に次処理が含まれていないため、ステップS331で、次モジュールスタック404から呼び出し元情報「電話アプリ:addTelEvent():1」が取出される。ステップS321では、図4より、この電話アプリ224のメソッドaddTelEvent()に次の処理(処理番号2)が含まれていないことが判定されるため、次モジュールスタック404から呼び出し元情報「アプリ管理:addTelEvent():2」,「通信管理:−:1」も取出されるが、図4より、これらの呼び出し元情報についても同様に、ステップS321で次の処理が含まれていないことが判定される。図8の次モジュールスタック401は、このときの状態を示している。
この場合、ステップS332で処理手順抽出部12は、今回の処理で作成する詳細設計処理手順情報の呼び出し先情報に「−」を設定し、詳細設計処置手順情報の1行分として書出す。図9に示される詳細設計処理手順情報(I4)の第516行は、上記具体例によって次に書出された詳細設計処理手順情報を表わしている。
上記ステップS302〜S334の処理は、開始処理抽出部11から入力された開始処理情報のすべての情報について処理が終了するまで繰返され、すべての情報について処理が終了すると、本処理が終了する。上記具体例の場合、上記処理が繰返されることで、図9に示される詳細設計処理手順情報(I4)の第525行までが書出される。
上記ステップS4で、手順情報検証部20は、概略処理手順情報(I1)と、上記処理で作成された詳細設計処理手順情報(I4)とを比較し、不整合情報(I5)を作成して出力する。図10および図11は、上記ステップS4での手順情報検証部20における処理を示すフローチャートである。
図10を参照して、始めに、手順情報検証部20は、概略処理手順情報(I1)のうちの検証の対象とする行、および上記ステップS3で作成された詳細設計処理手順情報(I4)のうちの検証の対象とする行を、各々の先頭行に設定する(S601)。処理対象の概略処理手順情報(I1)が図3に示された情報であり、詳細設計処理手順情報(I4)が図9に示された情報である場合、ステップS601では、概略処理手順情報(I1)の第110行、および詳細設計処理手順情報(I4)の第510行が各々検証対象行に設定される。
次に、手順情報検証部20は、概略処理手順情報から検証対象行の情報を1行分取出し(S602)、詳細設計処理手順情報から検証対象行の情報を1行分取出し(S603)、含まれる情報をそれぞれ比較し、すべての情報が一致しているかどうかを判定する(S604)。上記具体例の場合、ステップS604では、概略処理手順情報の実行中モジュール名106と詳細設計処理手順情報の呼び出し元情報501の呼び出し元モジュール名とを、概略処理手順情報の処理内容107と詳細設計処理手順情報の処理内容502とを、概略処理手順情報の次実行モジュール名108と詳細設計処理手順情報の呼び出し先情報503の呼び出し先/次に実行するモジュール名とを、それぞれ比較する。
上記具体例では、より具体的に、手順情報検証部20は、上記ステップS602で図3の概略処理手順情報の検証対象行である第110行から、実行中モジュール名「−」、処理内容「着信信号を受信する」、および次実行モジュール「通信管理」を取出し、上記ステップS603で、図9の詳細設計処理手順情報の検証対象行である第510行から、呼び出し元情報「−」、処理内容「着信信号を受信する」、および呼び出し先情報「通信管理:−:1」を取出す。そして、ステップS604で、概略処理手順情報の実行中モジュール名「−」と詳細設計処理手順情報の呼び出し元情報のモジュール名「−」とを比較し、概略処理手順情報の処理内容「着信信号を受信する」と詳細設計処理手順情報の処理内容「着信信号を受信する」とを比較し、概略処理手順情報の次実行モジュール「通信管理」と詳細設計処理手順情報の呼び出し先情報のモジュール名「通信管理」とを比較する。
ステップS604での比較の結果すべての情報が一致した場合には(S604で「一致」)、図11を参照して、手順情報検証部20は、概略処理手順情報および詳細設計処理手順情報の検証対象行を、各々、次の行とする(S613,S614)。上記具体例の場合、図3の概略処理手順情報の検証対象行は第110行から第111行となり、図9の詳細設計処理手順情報の検証対象行は第510行から第511行となる。
ステップS604での比較の結果含まれる情報のいずれかが一致していないと判定した場合(S604で「不一致」)、手順情報検証部20は、概略処理手順情報および詳細設計処理手順情報の検証対象行を、各々、不一致行として記憶する(S605,606)。
上記具体例で、検証対象行が図3の概略処理手順情報の第124行および図9の詳細設計処理手順情報の第524行である場合、上記ステップS604で、図3の概略処理手順情報の第124行の実行中モジュール名「通信管理」、処理内容「通信結果を返す」、および次実行モジュール名「電話アプリ」と、図9の詳細設計処理手順情報の第524行の、呼び出し元情報のモジュール名“通信管理”、処理内容「回線を接続する」、および呼び出し先情報のモジュール名「通信管理」とは、含まれる情報のすべてが一致していないと判定され、上記ステップS605で概略処理手順情報の不一致行として第124行が記憶され、上記ステップS606で詳細設計処理手順情報の不一致行として第524行が記憶される。
次に、詳細設計処理情報の検証対象行を次の行とし(S607)、図11を参照して、詳細設計処理手順情報の検証対象行に情報が含まれている場合(S608で「あり」)、手順情報検証部20は詳細設計処理手順情報から検証対象行の情報を1行分取出し(S610)、上記ステップS604と同様に、先に設定された概略処理手順情報の検証対象行と含まれる情報をそれぞれ比較し、すべての情報が一致しているかどうかを判定する(S611)。
上記具体例の場合、上記ステップS606で詳細設計処理手順情報の不一致行として第524行が記憶された後、上記テップS607で検証対象行が第525行となる。上記ステップS608では、図9より、第525行には情報が含まれると判定され、上記ステップS610で、第525行より、新たに呼び出し元情報「通信管理:conncetPhone():2」、処理内容「通信結果を返す」、および呼び出し先情報「−」が取出される。上記ステップS611で、手順情報検証部20は、上記ステップS611で不一致行とされた概略処理手順情報の実行中モジュール名「通信管理」、処理内容「通信結果を返す」、および次実行モジュール「電話アプリ」と、上記ステップS610で新たに取り出した、呼び出し元情報のモジュール名「通信管理」、処理内容「通信結果を返す」、および呼び出し先情報のモジュール名「−」とを比較する。
ステップS611での比較の結果すべての情報が一致した場合には(S611で「一致」)、上記ステップS606で記憶された詳細設計処理手順の不一致行は詳細設計時に追加された処理手順と判定できるため、上記ステップS605で記憶した概略処理手順情報の不一致行と、上記ステップS606で記憶した詳細設計情報の不一致行とを破棄する(S612)。
ステップS611での比較の結果含まれる情報のいずれかが一致していないと判定した場合(S611で「不一致」)、処理はステップS607に戻り、手順情報検証部20は、詳細設計処理手順情報をさらに検証対象として次の行を検証する。
詳細設計処理手順情報の検証対象行に情報が含まれていない場合(S608で「なし」)すべての詳細設計情報を検証したこととなるため、概略処理手順情報の不一致行は詳細設計時に設計されたものではないと判定できる。そこで、手順情報検証部20は、ステップS605,S606で記憶した不一致行に関する情報を不整合情報として出力する(S620)。
上記具体例で、詳細設計処理手順情報の第525行の情報と概略処理手順情報の第124行の情報とが比較されると、ステップS611で不一致と判定されてステップS606にて詳細設計処理手順情報の不一致行が更新され、ステップS607で詳細設計処理手順情報の次の行が検証対象行となる。しかし、図9より、ステップS608で詳細設計処理手順情報の検証対象行とする第525行の次の行には情報がないことが判定されるため、概略処理手順情報の不一致行と判定された第124行の情報が不整合情報として出力される。
次に、手順情報検証部20は、概略処理手順情報の検証対象行を次の行とする(S621)。
上記ステップS607で設定されてステップS611で概略処理手順情報の検証対象行と不一致とされた詳細設計処理手順情報の検証対象行にも、ステップS621で設定された概略処理手順情報の検証対象行にも情報がある場合には(S615で「あり」、かつS616で「あり」)、処理をステップS602へ戻して、上記処理を繰返す。また、ステップS621で概略処理手順情報の検証対象行に情報がない場合には(S615で「なし」)、処理を終了する。また、ステップS621で概略処理手順情報の検証対象行に情報がある場合であっても、ステップS607で設定された詳細設計処理手順情報の検証対象行に情報がない場合には(S615で「あり」、かつS616で「なし」)、概略処理手順情報の検証対象行以降のすべての行を不整合情報として出力する(S630)。
上記具体例の場合、ステップS620で概略処理手順情報の不一致行である第124行を不整合情報として出力した後、手順情報検証部20は、ステップS621で概略処理手順情報の検証対象行を第125行にし、概略処理手順情報の検証対象行を第125行と、ステップS607で設定された詳細設計処理手順情報の検証対象行である第525行とに対してステップS615以降の処理を行なう。そして、ステップS602以降の処理が繰返されることで、図3の概略処理手順情報の第125行、および第126行が不一致情報として出力される。
図12は、上記処理によって作成される不整合情報(I5)の具体例を示す図である。上記具体例の場合、上記ステップS620,S630で図3の概略処理手順情報の第124行、第125行、および第126行が出力され、図12の不整合情報(I5)の第1行〜第3行にその旨が示されている。
以上のように、本実施の形態にかかる設計検証装置1では、基本設計者によって作成された概略処理手順情報(I1)と、詳細設計者によって作成された詳細設計情報(I2)と、検証者によって作成された概略処理手順ID(I3)とからメソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報(I4)を作成し、概略処理手順情報(I1)と詳細設計処理手順情報(I4)とを比較する。したがって、ソフトウェア構成に関わらずメソッド単位で比較することができるため、適用できるソフトウェア構成に関わらず、モジュール間の処理手順とメソッドの仕様との不整合を検出することができ、設計の不備を早期に改善できる。そのため、設計検証装置1を用いて効率的なソフトウェア開発を行なうことができる。
さらに、設計検証装置1での設計検証処理をコンピュータに実行させるプログラムを提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)およびメモリカードなどのコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
なお、本発明にかかるプログラムは、コンピュータのオペレーションシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
提供されるプログラム製品は、ハードディスクなどのプログラム格納部にインストールされて実行される。なお、プログラム製品は、プログラム自体と、プログラムが記録された記録媒体とを含む。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本実施の形態にかかる設計検証装置1の機能構成の具体例を示すブロック図である。 概略処理手順情報(I1)の第1の具体例を示す図である。 概略処理手順情報(I1)の第2の具体例を示す図である。 詳細設計情報(I2)の具体例を示す図である。 設計検証装置1での設計検証処理を示すフローチャートである。 ステップS3での処理手順抽出部12における処理を示すフローチャートである。 ステップS3での処理手順抽出部12における処理を示すフローチャートである。 処理手順抽出部12でステップS3の処理を行なう際に用いられる、次モジュールスタックの動作を説明する図である。 詳細設計処理手順情報(I4)の具体例を示す図である。 ステップS4での手順情報検証部20における処理を示すフローチャートである。 ステップS4での手順情報検証部20における処理を示すフローチャートである。 不整合情報(I5)の具体例を示す図である。
符号の説明
1 設計検証装置、10 詳細設計処理手順情報作成部、20 手順情報検証部、11 開始処理抽出部、12 処理手順抽出部、101,106,108,201 モジュール名、102,104,105 矢印、103,107,204,502 処理内容、202 メソッド名、220 キー入力管理モジュール、221 アプリ管理モジュール、222 表示管理モジュール、223 通信管理モジュール、224 電話アプリモジュール、225 メールアプリモジュール、401,402,403,404 次モジュールスタック、501 呼び出し元情報、503 呼び出し先情報。

Claims (11)

  1. 処理内容を表わす情報と前記処理内容を実行するモジュール名とを処理する順に列挙した概処理手順情報と、メソッド名と前記メソッドを含むモジュール名と前記メソッドが実行する処理を表わす情報とを含む詳細設計情報とを受付ける受付手段を備え
    前記詳細設計情報の前記メソッドが実行する処理を表わす情報は、当該メソッドが実行する処理が他のメソッドを呼び出す処理である場合に当該メソッドが呼び出す前記他のメソッドを特定する情報を含み、
    前記概略処理手順情報から、前記処理する順において最初に実行する処理である開始処理を抽出する開始処理抽出手段と、
    前記詳細設計情報と前記開始処理抽出手段で抽出された前記開始処理を表わす情報とから、メソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報を作成する処理手順抽出手段と、
    前記概略処理手順情報と前記詳細設計処理手順情報とを比較して、不整合情報を検出する手順情報検証手段とをさらに備える、設計検証装置。
  2. 検証を行なう概略処理手順情報を指定する手段をさらに備え、
    前記開始処理抽出手段は指定された前記概略処理手順情報から開始処理を抽出する、請求項1に記載の設計検証装置。
  3. 前記処理手順抽出手段は、
    前記概略処理手順情報から、前記開始処理の処理内容と前記開始処理の次に実行する第1モジュール名とを読込む処理と、
    前記詳細設計情報から、前記第1モジュールに含まれる第1メソッドが実行する処理の処理内容を読込む処理と、
    前記第1メソッドが実行する処理の処理内容から、当該処理の次に実行する第2モジュール名および第2メソッド名を特定する処理と、
    前記詳細設計情報から、前記第2モジュールに含まれる前記第2メソッドが実行する処理の処理内容を読込む処理と、
    前記第2メソッドが実行する処理の処理内容から、当該処理の次に実行する第3モジュール名および第3メソッド名を特定する処理とを実行して前記詳細設計処理手順情報を作成する、請求項1に記載の設計検証装置。
  4. 前記第2メソッドが実行する処理は第1処理と第2処理とを含み、
    前記処理手順抽出手段は、前記第2メソッドが実行する前記第1処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、前記第2モジュール名を第3モジュール名とし、前記第2処理を実行する前記第2メソッド名を第3メソッド名とする、請求項3に記載の設計検証装置。
  5. 特定されたモジュール名および第N処理を実行するメソッド名を順次格納する次モジュールスタックをさらに含み、
    前記処理手順抽出手段は、前記第2メソッドが実行する処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、前記次モジュールスタックより第4モジュール名および第N処理を実行する第4メソッド名を取出し、前記第4モジュール名を第3モジュール名とし、前記第N処理の次の処理である第(N+1)処理を実行する前記第4メソッド名を第3メソッド名とする、請求項3に記載の設計検証装置。
  6. コンピュータにコンピュータソフトウェアの設計検証を実行させるプログラムであって、
    処理内容を表わす情報と前記処理内容を実行するモジュール名とを処理する順に列挙した概処理手順情報と、メソッド名と前記メソッドを含むモジュール名と前記メソッドが実行する処理を表わす情報とを含む詳細設計情報とを入力するステップを前記コンピュータに実行させ
    前記詳細設計情報の前記メソッドが実行する処理を表わす情報は、当該メソッドが実行する処理が他のメソッドを呼び出す処理である場合に当該メソッドが呼び出す前記他のメソッドを特定する情報を含み、
    前記概略処理手順情報から、前記処理する順において最初に実行する処理である開始処理を抽出する開始処理抽出ステップと、
    前記詳細設計情報と前記開始処理抽出ステップで抽出された前記開始処理を表わす情報とから、メソッドが実行される順に各メソッドの処理を列挙した詳細設計処理手順情報を作成する処理手順抽出ステップと、
    前記概略処理手順情報と前記詳細設計処理手順情報とを比較して、不整合情報を検出する手順情報検証ステップとをさらに前記コンピュータに実行させる、設計検証プログラム。
  7. 検証を行なう概略処理手順情報を指定するステップをさらに実行させ、
    前記開始処理抽出ステップにおいて指定された前記概略処理手順情報から開始処理を抽出する、請求項6に記載の設計検証プログラム。
  8. 前記処理手順抽出ステップは、
    前記概略処理手順情報から、前記開始処理の処理内容と前記開始処理の次に実行する第1モジュール名とを読込むステップと、
    前記詳細設計情報から、前記第1モジュールに含まれる第1メソッドが実行する処理の処理内容を読込むステップと、
    前記第1メソッドが実行する処理の処理内容から、当該処理の次に実行する第2モジュール名および第2メソッド名を特定するステップと、
    前記詳細設計情報から、前記第2モジュールに含まれる前記第2メソッドが実行する処理の処理内容を読込むステップと、
    前記第2メソッドが実行する処理の処理内容から、当該処理の次に実行する第3モジュール名および第3メソッド名を特定するステップとをさらに含む、請求項6に記載の設計検証プログラム。
  9. 前記第2メソッドが実行する処理は第1処理と第2処理とを含み、
    前記処理手順抽出ステップにおいて、前記第2メソッドが実行する前記第1処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、前記第2モジュール名を第3モジュール名とし、前記第2処理を実行する前記第2メソッド名を第3メソッド名とする、請求項8に記載の設計検証プログラム。
  10. 特定されたモジュール名および第N処理を実行するメソッド名を次モジュールスタック順次格納するステップをさらに実行させ、
    前記処理手順抽出ステップは、前記第2メソッドが実行する処理の処理内容から当該処理の次に実行する第3モジュール名および第3メソッド名が特定されない場合、前記次モジュールスタックより第4モジュール名および第N処理を実行する第4メソッド名を取出し、前記第4モジュール名を第3モジュール名とし、前記第N処理の次の処理である第(N+1)処理を実行する前記第4メソッド名を第3メソッド名とする、請求項8に記載の設計検証プログラム。
  11. 請求項6〜10のいずれかに記載の設計検証プログラムを記録する、コンピュータ読取可能な記録媒体。
JP2006134264A 2006-05-12 2006-05-12 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体 Expired - Fee Related JP4781163B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006134264A JP4781163B2 (ja) 2006-05-12 2006-05-12 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006134264A JP4781163B2 (ja) 2006-05-12 2006-05-12 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体

Publications (2)

Publication Number Publication Date
JP2007304980A JP2007304980A (ja) 2007-11-22
JP4781163B2 true JP4781163B2 (ja) 2011-09-28

Family

ID=38838839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006134264A Expired - Fee Related JP4781163B2 (ja) 2006-05-12 2006-05-12 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体

Country Status (1)

Country Link
JP (1) JP4781163B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5121891B2 (ja) * 2010-07-30 2013-01-16 株式会社富士通マーケティング 規則検査装置、規則検査方法及び規則検査プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0311426A (ja) * 1989-06-08 1991-01-18 Hitachi Ltd 動的システムのソフトウェア部品再利用方法
JPH07262044A (ja) * 1994-03-25 1995-10-13 Hitachi Ltd イベントトレース解析方法
JPH1031584A (ja) * 1996-07-16 1998-02-03 Toshiba Corp ソフトウエアの検証自動化装置
JPH113216A (ja) * 1997-06-11 1999-01-06 Fujitsu Ltd シナリオに基づくオブジェクト指向分析設計支援方法および支援装置
EP1341081A4 (en) * 2000-12-08 2005-12-07 Fujitsu Ltd METHOD AND DEVICE FOR SEQUENCE ANALYSIS

Also Published As

Publication number Publication date
JP2007304980A (ja) 2007-11-22

Similar Documents

Publication Publication Date Title
US20120330662A1 (en) Input supporting system, method and program
US20150179173A1 (en) Communication support apparatus, communication support method, and computer program product
US8117586B2 (en) Printed circuit board layout system and method thereof
JP2007025497A (ja) 教育支援プログラムおよび教育支援装置
JP4781163B2 (ja) 設計検証装置、設計検証プログラム、および設計検証プログラムを記録する記録媒体
CN103380442A (zh) 信息处理设备
JPH10275093A (ja) プログラムテスト支援装置
CN1195293C (zh) 声音识别方法及装置、声音合成方法及装置及记录媒体
JP2019185478A (ja) 分類プログラム、分類方法、および情報処理装置
JP4625432B2 (ja) 操作部品データ作成装置
JP4215255B2 (ja) デグレード確認検査方法、デグレード確認検査システム、およびそのためのプログラム
JP2013077124A (ja) ソフトウェアテストケース生成装置
JP2010231594A (ja) 試験プログラム及び試験装置
JP2019159690A (ja) 情報処理プログラム、情報処理方法及び情報処理装置
CN111767214B (zh) 软件ui的自动化测试方法及装置
JP5225553B2 (ja) テストケース抽出装置、テストケース抽出プログラム、テストケース抽出プログラムが格納された記憶媒体およびテストケース抽出方法
KR101790544B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 기억 매체
CN102378005A (zh) 运动图像处理装置、运动图像处理方法和程序
JP2000163602A (ja) 入力履歴蓄積装置
JP6624607B1 (ja) 出力音誤り検出支援プログラム、出力音誤り検出支援方法、および、出力音誤り検出支援装置
CN111258997B (zh) 基于NiFi的数据处理方法和装置
JP2013105286A (ja) プログラム自動生成装置およびプログラム自動生成方法
JP5253115B2 (ja) プログラム変換装置、プログラム分析装置、プログラム変換方法、プログラム分析方法、およびプログラム
JP7163845B2 (ja) 情報処理装置、およびプログラム
CN115146649A (zh) 一种架子鼓乐谱识别方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110609

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

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

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

Free format text: PAYMENT UNTIL: 20140715

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees