JP2007219586A - ソースコード解析装置 - Google Patents

ソースコード解析装置 Download PDF

Info

Publication number
JP2007219586A
JP2007219586A JP2006036120A JP2006036120A JP2007219586A JP 2007219586 A JP2007219586 A JP 2007219586A JP 2006036120 A JP2006036120 A JP 2006036120A JP 2006036120 A JP2006036120 A JP 2006036120A JP 2007219586 A JP2007219586 A JP 2007219586A
Authority
JP
Japan
Prior art keywords
module division
source code
module
rule data
division rule
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.)
Pending
Application number
JP2006036120A
Other languages
English (en)
Inventor
Hiroshi Fujiwara
寛 藤原
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006036120A priority Critical patent/JP2007219586A/ja
Publication of JP2007219586A publication Critical patent/JP2007219586A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】設計の意図まで汲み取ったモジュール分割を実現すると供に、作成者依存性を廃しつつソフトウェア構造解析が行えるソースプログラム解析装置を提供する。
【解決手段】ソースコード1を入力としてモジュール分割ルールデータ3aを算出するモジュール分割ルールデータ算出部2と、算出されたモジュール分割ルールデータ3aを格納するモジュール分割ルールデータテーブル3と、ルールデータ3aを基にソースコードをモジュール分割するモジュール分割部4と、モジュール分割されたモジュール分割結果5を提示するモジュール分割結果提示部6と、提示されたモジュール分割結果を基に使用者がモジュール分割のルールを修正するための分割ルール修正部7とを備える。
【選択図】図1

Description

本発明はソフトウェアのソースコード解析装置に関するものである。
従来のソースコード解析装置として、例えば図9に示すようなものがある(例えば、特許文献1参照)。このソースコード解析装置において、ファイル間の関係抽出(N1)では、Javaソースコード・ファイルX1を解析し、クラス間の継承等を再利用関係として抽出する。また、SMMT(Similarity Metrics Mesuring Tool)(M1)で、Javaソースコード・ファイルX1の類似度を算出する。SMMT(M1)で得られた類似度を基にクラスタ分析(M2)を行い、ファイルの集合をM個の部品群に分類する。クラスタ分析(M2)とファイル間の関係抽出(N1)の結果から、部品群間の関係を抽出する(N2)。部品群間の関係から、部品群の相対的重要性評価値による評価を行う(N3)。最後に、部品群の相対的重要性評価を、ファイル(ソフトウェア部品)の評価に変換する(M3)。
WO2003/69466(特願2003−568523号)(第9頁、第5図)
上記従来のソースコード解析装置では、ソースコードから機械的に読み取って評価値を算出できる情報のみを利用してモジュールの抽出などのソフトウェア構造解析を行っている。しかし、ソースコードから機械的に読み取ることのできないソフトウェア構造はその抽出が容易ではなく、設計者の意図は判りにくい。
さらに、ソースコードから読み取られたソフトウェアの構造を人間に判りやすく表現するためには、文字のみでなく、図表を用いて図的表現を行うが、図の作成者がソースコード作成者の意図を酌み取った上で作図する必要があり、完成図は作成者依存的なものとなってしまう。
本発明は、このような事情に鑑みて創作したものであり、設計の意図まで酌み取ったモジュール分割を実現するとともに、作成者依存性を廃しつつソフトウェア構造解析が行えるソースコード解析装置を提供することを目的としている。
本発明によるソースコード解析装置は、
ソースコードを入力としてモジュール分割ルールデータを算出するモジュール分割ルールデータ算出部と、
前記モジュール分割ルールデータ算出部によって算出された前記モジュール分割ルールデータを格納するモジュール分割ルールデータテーブルと、
前記モジュール分割ルールデータテーブルの前記モジュール分割ルールデータを基に前記ソースコードをモジュール分割するモジュール分割部と、
前記モジュール分割部によってモジュール分割された結果のモジュール分割結果を提示するモジュール分割結果提示部と、
前記モジュール分割結果提示部によって提示された前記モジュール分割結果を基に前記モジュール分割ルールデータテーブルにおける前記モジュール分割ルールデータを修正するための分割ルール修正部とを備えたものである。モジュール分割ルールデータは、ソースコードをモジュールに分割するルールを表すデータである。
この構成において、モジュール分割ルールデータ算出部は、ソースコードを入力し、ソースコードからモジュール分割ルールデータを算出し、そのモジュール分割ルールデータをモジュール分割ルールデータテーブルに格納する。モジュール分割部は、モジュール分割ルールデータテーブルからモジュール分割ルールデータを読み出し、そのモジュール分割ルールデータを基にソースコードをモジュール分割する。モジュール分割された結果のモジュール分割結果はモジュール分割結果提示部に提示される。使用者は、提示されたモジュール分割結果を基に分割ルール修正部を用いてモジュール分割ルールデータテーブルにおけるモジュール分割ルールデータを修正する。以上のようにして、使用者による修正を反映しながらモジュール分割ルールデータを更新するので、ソースコードから読み取ることのできる情報のみでなく、設計の意図まで酌み取ったモジュール分割を自動的に行うことができる。
上記の構成において、前記モジュール分割ルールデータテーブルは、複数の評価基準と前記評価基準に付随する優先度と前記評価基準に付随する閾値とを持ち、モジュール分割対象となる全ての関数に対して前記評価基準に基づいた評価値を格納するように構成されているという態様がある。
また上記において、前記評価基準は、前記ソースコード中に含まれる関数を数式によって数値化されるものであるという態様がある。
また上記において、前記評価基準は、前記ソースコード中に含まれる関数の名前、または前記関数の名前と引数の組み合わせの文字列であるという態様がある。
また、上記の構成において、前記分割ルール修正部は、前記モジュール分割ルールデータの修正を前記評価基準ごとに個別に行うという態様がある。これによれば、モジュール分割ルールデータの修正をきめ細かく行うことが可能となる。
また、上記の構成において、前記分割ルール修正部は、特定の前記評価基準を指定することにより、前記評価基準に付随する前記優先度を自動的に下げる一方、指定のなかった前記評価基準については付随する前記優先度を自動的に上げるように構成されているという態様がある。これによれば、モジュール分割結果提示部により提示されたモジュール分割結果が不適切であると使用者が判断した場合に、分割ルール修正部の機能によって、評価基準の優先度を使用者の感覚に近い優先度に変化させていくことが可能となる。
また、上記の構成において、前記分割ルール修正部は、前記モジュール分割ルールデータテーブルに新たな評価基準を追加するように構成されているという態様がある。これによれば、モジュール分割が困難な条件下でも、モジュール分割の可能性を高めることが可能となる。
また、上記の構成において、前記モジュール分割ルールデータ算出部は、入力される前記ソースコード中の関数が以前に入力された関数と同一の関数であった場合には、前記同一の関数の前記評価基準に基づく前記評価値の算出を中止するという態様がある。これによれば、以前に評価値を算出済みの関数については処理を省略するため、ソースコードに含まれる関数毎の評価値を高速に算出することが可能となる。
また、上記の構成において、前記モジュール分割結果提示部は、前記モジュール分割部による前記モジュール分割結果において、前記モジュール間の重心を算出し、その重心を画面中央に配置するという態様がある。これによれば、モジュール分割結果をバランス良く表示することが可能となる。
また、上記の構成において、前記モジュール分割ルールデータテーブルにあらかじめ設計済み分割モジュールのモジュール分割ルールデータを設定しておき、前記モジュール分割部は、前記設計済み分割モジュールのモジュール分割ルールデータに基づいて前記ソースコードをモジュール分割するように構成されているという態様がある。これによれば、予定していた通りのモジュール分割が行われるかどうかによって、入力となるソースコードが予定されていた通りに作成されているかどうかを検査することが可能となる。
本発明によれば、ソースコードから機械的に読み取ることのできる評価値のみではなく、ソースコードから機械的に読み取ることのできない設計者の意図を反映したモジュール分割を自動的に行うことができる。
以下、本発明にかかわるソースコード解析装置の実施の形態を図面に基づいて詳細に説明する。
(実施の形態1)
図1は本発明の実施の形態1におけるソースコード解析装置の構成を示すブロック図である。
図1において、1はソースコード、2はソースコード1を入力としてモジュール分割ルールデータ3aを算出するモジュール分割ルールデータ算出部、3はモジュール分割ルールデータ算出部2によって算出されたモジュール分割ルールデータ3aを格納するモジュール分割ルールデータテーブル、4はモジュール分割ルールデータテーブル3から読み出したモジュール分割ルールデータ3aを基にソースコード1をモジュール分割するモジュール分割部、6はモジュール分割部4によってモジュール分割された結果のモジュール分割結果5を提示するモジュール分割結果提示部、7はモジュール分割結果提示部6によって提示されたモジュール分割結果5を基に使用者8がモジュール分割ルールデータ3aを修正するための分割ルール修正部である。
次に、上記のように構成された本実施の形態のソースコード解析装置の動作を説明する。
モジュール分割ルールデータ算出部2は、ソースコード1からモジュール分割ルールデータ3aを算出し、モジュール分割ルールデータテーブル3に格納する。モジュール分割部4は、モジュール分割ルールデータ算出部2によって算出されたモジュール分割ルールデータ3aに従って、解析対象のソースコード1をモジュール分割する。モジュール分割部4によって分割されて得られたモジュール分割結果5は、モジュール分割結果提示部6によって使用者8に提示される。使用者8は、モジュール分割結果提示部6によって提示されたモジュール分割結果5を見て、提示されたモジュール分割が適切に行われたかどうかを判断する。モジュール分割が不適切であった場合には、使用者8は、分割ルール修正部7を通して、モジュール分割ルールデータテーブル3に格納されているモジュール分割ルールデータ3aを修正する。モジュール分割ルールデータ3aが修正されることにより、次回のモジュール分割時には、使用者8のモジュール分割の意図が反映されたモジュール分割が行われることとなる。
図2にモジュール分割ルールデータテーブル3を示す。このモジュール分割ルールデータテーブル3は表の形式をもつ。モジュール分割ルールデータテーブル3は、ソースコード1中に存在する全ての関数fについて、1つまたは複数個の評価基準Eに従って算出した評価値V群を格納する。評価基準は様々な算出方法によって値を算出できる。例えば各関数名の文字列を基に関数名の類似度を算出する評価基準などが利用できる。なお、評価基準Eによって評価値Vを算出する対象となるソースコード1中の関数fについては、全ての関数fを対象とする必要はなく、モジュール分割の対象となる関数fのみを評価値算出の対象とすることもできる。Pはモジュール分割における処理の優先度、Tは評価基準Eに対応する閾値である。
次に、モジュール分割ルールデータ算出部2の動作を図3に示すフローチャートに従って説明する。
まず、ステップS1において、モジュール分割ルールデータ算出部2がソースコード1を読み込む。
次いでステップS2において、読み込んだソースコード1中に存在する全ての関数fを抽出する。
次いでステップS3において、ある関数fを処理対象として設定する。このステップは、ステップS6から戻ってくるもので、全ての関数fについて処理が完了していない場合に、次の関数fを処理対象として設定する。
次いでステップS4において、抽出した全ての関数fについて処理を行うため、まず全ての関数fについて処理が完了したかどうかを判定する。
次いでステップS5において、モジュール分割ルールデータテーブル3からモジュール分割ルールの評価基準Eを読み込む。
次いでステップS6において、読み込んだ全ての評価基準Eに基づいて評価値Vの算出を行うため、まず全ての評価基準Eに基づいて評価値Vの算出が完了したかどうかを判定する。
全ての評価基準Eに基づいて評価値Vの算出が完了していない場合には、次いでステップS7に進んで、次の評価基準Eを算出対象として設定する。
次いでステップS8において、現在処理対象に設定されている関数fに対して、現在算出対象として設定されている評価基準Eを適用し、評価値Vを算出する。
次いでステップS9において、算出された評価値Vをモジュール分割ルールデータテーブル3に格納する。
以上で、1つの関数fに対して1つの評価基準Eに基づく評価値Vの算出が終了する。
1つの評価基準Eに基づく評価値Vの算出が終了すると、ステップS6に戻り、全ての評価基準Eに基づいて評価値Vの算出が完了したかどうかを判定する。全ての評価基準Eに基づく評価値Vの算出が終了すると、ステップS3に戻り、関数fについて次候補を処理対象に設定し、ステップS4で全ての関数fについて処理が完了したかどうかを判定する。全ての関数fについて処理が完了すると、モジュール分割データ算出処理を終了する。
次に、モジュール分割部4の動作を図4、図5に示す示すフローチャートに従って説明する。
まず、ステップS11において、モジュール分割部4がソースコード1を読み込む。
次いでステップS12において、ステップS11で読み込んだソースコード1中に存在する全ての関数fを抽出する。
次いでステップS13において、モジュール分割ルールデータテーブル3を読み込む。
次いでステップS14において、評価基準E毎に設定された優先度順に処理を行うため、処理対象の優先度Pを1に初期化する。なお、ここで優先度Pは、数値が大きくなるほど優先度が低いものとし、優先度P=1が最高優先度である。
次いでステップS15において、候補となるモジュールの番号nを0に初期化する。
次いでステップS16において、モジュール候補M(n)に属する関数f群を空にする。最初期段階ではn=0であるので、M(0)に属する関数f群が空にされる。
次いでステップS17において、優先度Pに該当する評価基準Eをモジュール分割ルールデータテーブル3から取得する。
次いでステップS18において、評価基準Eに対応する閾値Tをモジュール分割ルールデータテーブル3から取得する。
次いでステップS19において、最初の関数fを処理対象に設定する。
次いでステップS20において、全ての関数fについて処理が終了したかどうかを判定する。この判定が否定的のときは、次にステップS21に進んで、現在の処理対象関数fについて評価基準Eに対応する評価値Vをモジュール分割ルールデータテーブル3から取得する。
次いでステップS22において、評価値Vが評価基準Eに対応する閾値Tに対して同じかそれ以上であるか判定し、V≧Tの場合にはステップS23に進んで、現在処理対象の関数fをモジュール候補M(n)に追加する。一方、V<Tの場合にはステップS23は実行しない。
次いでステップS24において、次の関数fを処理対象関数に設定し、ステップS20に戻り、全関数fの処理が終了するまで処理を繰り返す。
ステップS20の判断において、対象となる全関数fの処理が終了すると、ステップS25に進み、優先度Pをインクリメントして、次に高い優先度Pを設定する。
次いでステップS26において、モジュール候補番号nをインクリメントして新たなモジュール候補M(n)を設定する。
最後にステップS27において、全ての評価基準Eについて処理が終了したかどうかを判定し、処理が終了していなければステップS16に戻り、全ての評価基準Eについて処理が完了するまで繰り返し処理を行う。全ての評価基準Eに対して処理が完了していれば、終了する。
以上のような動作でモジュール分割部4によって生成されたモジュール分割結果5は、モジュール分割結果提示部6によって使用者8に提示される。使用者8は、提示されたモジュール分割結果5を検討して、適切に分割が行われているかどうかを判定する。モジュール分割結果5が適切でない場合には、分割ルール修正部7を通してモジュール分割ルールデータテーブル3の修正を行う。モジュール分割ルールデータテーブル3の修正は、評価基準Eの追加・削除・修正、さらに評価基準E毎に設定された優先度Pの変更、さらに評価基準E毎に設定された閾値Tの変更によって行う。
このようにしてモジュール分割ルールデータテーブル3の修正を行い、再度、ソースコード1を入力としてモジュール分割を行うことにより、修正後のモジュール分割ルールデータテーブル3に従った新しいモジュール分割結果5が提示されることとなる。使用者8は、適切なモジュール分割結果5が提示されるまで、以上の作業を繰り返し行う。
上記では、評価基準Eは各関数名の文字列を基に関数名の類似度を算出するとしたが、評価基準Eはソースコード1中に含まれる関数fを数式によって数値化したものとしてもよい。さらに、評価基準Eはソースコード1中に含まれる関数fの名前、または関数fの名前と引数の組み合わせの文字列としてもよい。
かかる構成によれば、使用者の意図に沿ったモジュール分割を自動的に行うことができ、ソースコード1の分析を容易に短時間で行うことが可能となる。
なお、分割ルール修正部7については、特定の評価基準Eを指定することにより、その評価基準Eに付随する優先度Pを自動的に下げる一方、指定のなかった評価基準Eについては付随する優先度Pを自動的に上げるように構成してもよい。これによれば、モジュール分割結果提示部6により提示されたモジュール分割結果5が不適切であると使用者8が判断した場合に、分割ルール修正部7の機能によって、評価基準Eの優先度Pを使用者8の感覚に近い優先度に変化させていくことが可能となる。
また、分割ルール修正部7については、モジュール分割ルールデータテーブル3に新たな評価基準Eを追加するように構成してもよい。モジュール分割が困難な条件下でも、評価基準Eを新たに追加することにより、モジュール分割の可能性を高めることが可能となる。
(実施の形態2)
図6は本発明の実施の形態2におけるソースコード解析装置のモジュール分割ルールデータ算出部2の動作を示すフローチャートである。図6において、図3と同じステップ要素については同じ符号を用い説明を省略する。
実施の形態2のモジュール分割ルールデータ算出部2の動作においては、ステップS31において、現在の処理対象関数fが以前に処理済みかどうかを判定し、以前に処理済みでない関数fである場合には図3と同様の処理を継続する。処理対象関数fが、以前に処理済みである場合には、ステップS32に進んで、以前に算出済みの評価値Vをモジュール分割ルールデータテーブル3に格納し、評価値算出ステップは処理を省略する。
かかる構成によれば、以前に評価値Vを算出済みの関数fについては処理を省略することができるため、高速にソースコードに含まれる関数f毎の評価値Vを算出することができる。
(実施の形態3)
図7は本発明の実施の形態3におけるソースコード解析装置のモジュール分割結果提示部6が提示するモジュール分割結果5の表示例である。ディスプレイ装置21上にモジュール分割部4によって分割された分割結果のモジュール22と、分割されたモジュール22間の関係23が表示される。
モジュール分割結果提示部6は、モジュール分割部4によるモジュール分割結果5において、モジュール間に重量値を設定し、モジュール間の重心を算出し、その重心を画面中央に配置する。これによれば、モジュール分割結果5の各モジュールを画面上で偏りなくバランス良く表示することが可能となる。
(実施の形態4)
図8は本発明の実施の形態4におけるソースコード解析装置の構成を示すブロック図である。図8において、図1と同じ構成要素については同じ符号を用い説明を省略する。
実施の形態4においては、あらかじめ使用者8がソースコード1のモジュール分割設計を完了しており、その結果が設計済み分割モジュール9として存在する。設計済み分割モジュール9は、実施の形態1と同様に、モジュール分割ルールデータ3aが計算され、モジュール分割ルールデータテーブル3にあらかじめ格納される。その後、設計済み分割モジュール9に従って検査対象のソースコード1が正しく記述されているかどうかを検査する。ソースコード1はあらかじめ格納されているモジュール分割ルールデータテーブル3のデータに従い、モジュール分割部4によってモジュール分割され、モジュール分割結果5がモジュール分割結果提示部6に提示される。使用者8は提示されたモジュール分割結果5とあらかじめ設計された設計済み分割モジュール9を比較することにより、ソースコード1が正しく記述されたかどうかを検査することができる。
本発明のソースコード解析装置は、各種プログラミング言語で記述されたソフトウェアのソースコードを解析する装置として、広くソフトウェア一般に対して利用することができ、その産業上の利用可能性は非常に広くかつ大きい。
本発明の実施の形態1におけるソースコード解析装置の構成を示すブロック図 本発明の実施の形態1におけるモジュール分割ルールデータテーブルの構成図 本発明の実施の形態1におけるモジュール分割ルールデータ算出部の動作を示すフローチャート 本発明の実施の形態1におけるモジュール分割部の動作を示すフローチャート(その1) 本発明の実施の形態1におけるモジュール分割部の動作を示すフローチャート(その2) 発明の実施の形態2におけるソースコード解析装置のモジュール分割ルールデータ算出部の動作を示すフローチャート 本発明の実施の形態3におけるソースコード解析装置のモジュール分割結果提示部が提示するモジュール分割結果の表示例 本発明の実施の形態4におけるソースコード解析装置の構成を示すブロック図 従来の技術におけるソースコード解析装置の構成を示すブロック図
符号の説明
1 ソースコード
2 モジュール分割ルールデータ算出部
3 モジュール分割ルールデータテーブル
3a モジュール分割ルールデータ
4 モジュール分割部
5 モジュール分割結果
6 モジュール分割結果提示部
7 分割ルール修正部
9 設計済み分割モジュール
21 ディスプレイ装置
22 分割結果モジュール
f 関数
E 評価基準
V 評価値
P 優先度
T 閾値

Claims (10)

  1. ソースコードを入力としてモジュール分割ルールデータを算出するモジュール分割ルールデータ算出部と、
    前記モジュール分割ルールデータ算出部によって算出された前記モジュール分割ルールデータを格納するモジュール分割ルールデータテーブルと、
    前記モジュール分割ルールデータテーブルの前記モジュール分割ルールデータを基に前記ソースコードをモジュール分割するモジュール分割部と、
    前記モジュール分割部によってモジュール分割された結果のモジュール分割結果を提示するモジュール分割結果提示部と、
    前記モジュール分割結果提示部によって提示された前記モジュール分割結果を基に前記モジュール分割ルールデータを修正するための分割ルール修正部とを備えたソースコード解析装置。
  2. 前記モジュール分割ルールデータテーブルは、複数の評価基準と前記評価基準に付随する優先度と前記評価基準に付随する閾値とを持ち、モジュール分割対象となる全ての関数に対して前記評価基準に基づいた評価値を格納するように構成されている請求項1に記載のソースコード解析装置。
  3. 前記評価基準は、前記ソースコード中に含まれる関数を数式によって数値化されるものである請求項2に記載のソースコード解析装置。
  4. 前記評価基準は、前記ソースコード中に含まれる関数の名前、または前記関数の名前と引数の組み合わせの文字列である請求項2に記載のソースコード解析装置。
  5. 前記分割ルール修正部は、前記モジュール分割ルールデータの修正を前記評価基準ごとに個別に行う請求項2から請求項4までのいずれかに記載のソースコード解析装置。
  6. 前記分割ルール修正部は、特定の前記評価基準を指定することにより、前記評価基準に付随する前記優先度を自動的に下げる一方、指定のなかった前記評価基準については付随する前記優先度を自動的に上げるように構成されている請求項2から請求項5までのいずれかに記載のソースコード解析装置。
  7. 前記分割ルール修正部は、前記モジュール分割ルールデータテーブルに新たな評価基準を追加するように構成されている請求項2から請求項6までのいずれかに記載のソースコード解析装置。
  8. 前記モジュール分割ルールデータ算出部は、入力される前記ソースコード中の関数が以前に入力された関数と同一の関数であった場合には、前記同一の関数の前記評価基準に基づく前記評価値の算出を中止する請求項2から請求項7までのいずれかに記載のソースコード解析装置。
  9. 前記モジュール分割結果提示部は、前記モジュール分割部による前記モジュール分割結果において、前記モジュール間の重心を算出し、その重心を画面中央に配置する請求項1から請求項8までのいずれかに記載のソースコード解析装置。
  10. 前記モジュール分割ルールデータテーブルにあらかじめ設計済み分割モジュールのモジュール分割ルールデータを設定しておき、
    前記モジュール分割部は、前記設計済み分割モジュールのモジュール分割ルールデータに基づいて前記ソースコードをモジュール分割するように構成されている請求項1から請求項9までのいずれかに記載のソースコード解析装置。
JP2006036120A 2006-02-14 2006-02-14 ソースコード解析装置 Pending JP2007219586A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006036120A JP2007219586A (ja) 2006-02-14 2006-02-14 ソースコード解析装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006036120A JP2007219586A (ja) 2006-02-14 2006-02-14 ソースコード解析装置

Publications (1)

Publication Number Publication Date
JP2007219586A true JP2007219586A (ja) 2007-08-30

Family

ID=38496856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006036120A Pending JP2007219586A (ja) 2006-02-14 2006-02-14 ソースコード解析装置

Country Status (1)

Country Link
JP (1) JP2007219586A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199175A (ja) * 2008-02-19 2009-09-03 Sanyo Electric Co Ltd プログラム分割装置および方法
WO2016092677A1 (ja) * 2014-12-11 2016-06-16 株式会社日立製作所 モジュール分割支援装置、方法、及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199175A (ja) * 2008-02-19 2009-09-03 Sanyo Electric Co Ltd プログラム分割装置および方法
WO2016092677A1 (ja) * 2014-12-11 2016-06-16 株式会社日立製作所 モジュール分割支援装置、方法、及びプログラム
JPWO2016092677A1 (ja) * 2014-12-11 2017-04-27 株式会社日立製作所 モジュール分割支援装置、方法、及びプログラム
US10025558B2 (en) 2014-12-11 2018-07-17 Hitachi, Ltd. Module division assistance device, module division assistance method, and module division assistance program

Similar Documents

Publication Publication Date Title
US20100057648A1 (en) Creating forms with business logic
JP2006018693A (ja) 類似ソースコード抽出プログラム、類似ソースコード抽出装置および類似ソースコード抽出方法
JP6778654B2 (ja) 単語分割推定モデル学習装置、単語分割装置、方法、及びプログラム
WO2018079225A1 (ja) 自動予測システム、自動予測方法および自動予測プログラム
US8347223B2 (en) GUI evaluation system, method, and program for evaluating a text input component
US9990104B2 (en) Computer-based apparatus and method for operating on data
JP6309795B2 (ja) 情報処理装置、情報処理方法およびプログラム
JPWO2012144140A1 (ja) UI(UserInterface)作成支援装置、UI作成支援方法及びプログラム
JP2006285707A (ja) 業務仕様作成支援システム及び方法
US20130185698A1 (en) Simplifying analysis of software code used in software systems
JP2007219586A (ja) ソースコード解析装置
JP5041990B2 (ja) ソフトウェア部品抽出支援装置
JP2011096082A (ja) プログラム解析方法、プログラム解析プログラムおよびプログラム解析装置
CN110990294A (zh) 一种软件缺陷检测规则确定方法、装置、设备和存储介质
JP6097231B2 (ja) プログラム生成装置および方法
US20150370819A1 (en) Computer Implemented System and Method for Comparing At Least Two Visual Programming Language Files
US9015658B2 (en) Automatic program generation device and automatic program generation method
JP2009251666A (ja) 変更履歴作成装置、方法及びプログラム
JP2009211143A (ja) 情報処理装置および情報処理プログラム
US7979476B2 (en) Information processing apparatus, control method therefor, program, and storage medium
US20140281941A1 (en) Classifier Designer - A Graphical System for Designing Classifiers Using Visual Representations of Example Content
JP2016051367A (ja) データ解析装置、データ解析方法、および、プログラム。
JP6523998B2 (ja) 読み上げ情報編集装置、読み上げ情報編集方法およびプログラム
JP2020198023A (ja) 情報処理装置、方法及びプログラム
JP2010134766A (ja) 文書データ処理装置およびそのプログラム