JP6021109B2 - プログラム分析装置及び方法及びプログラム - Google Patents
プログラム分析装置及び方法及びプログラム Download PDFInfo
- Publication number
- JP6021109B2 JP6021109B2 JP2013105119A JP2013105119A JP6021109B2 JP 6021109 B2 JP6021109 B2 JP 6021109B2 JP 2013105119 A JP2013105119 A JP 2013105119A JP 2013105119 A JP2013105119 A JP 2013105119A JP 6021109 B2 JP6021109 B2 JP 6021109B2
- Authority
- JP
- Japan
- Prior art keywords
- concept
- program
- formal
- analysis
- scenario
- 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.)
- Active
Links
Images
Description
プログラムへの入力操作の集合であり、該プログラムの典型的な機能を網羅するシナリオ群の実行に関するトレース情報が格納されている実行トレース記憶手段と、
前記シナリオをオブジェクトとし、前記トレース情報に出現するモジュールを属性とする形式文脈を抽出する形式文脈抽出手段と、
前記形式文脈を形式概念分析の手法で分析し、概念束を生成する概念分析手段と、
前記概念束に含まれるモジュールを系列パターンマイニングの手法で分析し、モジュール間の依存関係を抽出する系列パターンマイニング手段と、を有する。
前記概念束のうち理解したい形式概念を選択し、選択した該形式概念が関連するシナリオ群のトレース情報のみを入力として、該形式概念と関係するトレース情報と該トレース情報の部分系列となるモジュールとその頻出系列を出力する手段を含む。
1) 理解の対象となるソースコード;
2) プログラムへの入力操作の集合であり、プログラムの典型的な機能を網羅するシナリオ群;
3) シナリオを起動した際に、実行されるモジュールの実行トレースを取得する手段;
4) シナリオをオブジェクトとし、シナリオにより実行されるモジュールを属性とする形式文脈を抽出する手段;
5) 形式文脈を形式概念分析の手法で分析する手段;
6) 理解したい形式概念を選択し、その形式概念に固有でない実行トレースを判別、除去する手段;
7) 系列パターンマイニングを実行するための手段;
を使用することが最良の形態である。1)に対し、2)を定義し、3)によりトレースを取得する。さらにトレースを用いて、4)としてシナリオをオブジェクト、シナリオ実行時に実行されるモジュールを属性とする形式文脈を構成する。これに対し5)を施して、6)により必要の無い情報を判別除去し、7)によりモジュール間の依存関係(実行順序)分析を行なうことで、本願発明が実施可能となる。
ステップ340)ステップ330から実行トレースが渡されると、入力された実行トレースに含まれるモジュールを順に取り出すループを実行し、モジュールをループの内側のステップ350に出力として渡す。
ステップ350)ステップ340からモジュールが渡されると、入力がnullかどうかを判断し、入力がnullでない場合ステップ360にモジュールを渡す。入力がnullである場合は、ステップ340に戻り次のモジュールを取出す。
2)対象とする情報システムがミドルウエアやプラットフォーム製品を多用している;
以上の様な情報システムをリバースエンジニアリングを用いて理解する際には、対象システムのアプリケーション部分のトレース情報を取得しても、どのような仕組み・因果関係でアプリケーションが実行されるのか判らない場合がある。例えば、Webフレームワークを用いたシステムにおいて、画面‐メソッド間の依存関係をWebフレームワークが司っており、因果関係がソースコードを読解することでは判らない場合等が挙げられる。このような場合、保守者によるプログラムの構造や処理内容の理解を支援するために従来技術や、本発明を使用することが、産業上の利用方法として想定される。
1) 設計ドキュメントに記載された機能の、プログラムにおける実装箇所を特定する;
2) 特徴として得られたモジュールの実装状況の分析にもとづき、設計ドキュメントの修正に資することができる;
という効果を求める産業上の利用可能性がある。
110 CPU
111 トレース部
112 トレース結合部
113 系列パターン抽出部
114 形式文脈抽出部
115 概念分析部
116 部分系列抽出部
120 メモリ
121 形式文脈記憶部
122 実行トレース部分系列記憶部
130 磁気ディスク
131 実行トレース記憶部
Claims (5)
- プログラムの構造や処理の理解を支援するためのプログラム分析装置であって、
プログラムへの入力操作の集合であり、該プログラムの典型的な機能を網羅するシナリオ群の実行に関するトレース情報が格納されている実行トレース記憶手段と、
前記シナリオをオブジェクトとし、前記トレース情報に出現するモジュールを属性とする形式文脈を抽出する形式文脈抽出手段と、
前記形式文脈を形式概念分析の手法で分析し、概念束を生成する概念分析手段と、
前記概念束に含まれるモジュールを系列パターンマイニングの手法で分析し、モジュール間の依存関係を抽出する系列パターンマイニング手段と、
を有することを特徴とするプログラム分析装置。 - 前記系列パターンマイニング手段は、
前記概念束のうち理解したい形式概念を選択し、選択した該形式概念が関連するシナリオ群のトレース情報のみを入力として、該形式概念と関係するトレース情報と該トレース情報の部分系列となるモジュールとその頻出系列を出力する手段を含む
請求項1記載のプログラム分析装置。 - プログラムの構造や処理の理解を支援するためのプログラム分析方法であって、
プログラムへの入力操作の集合であり、該プログラムの典型的な機能を網羅するシナリオ群の実行に関するトレース情報が格納されている実行トレース記憶手段と、
形式文脈抽出手段、概念分析手段、系列パターンマイニング手段を有する装置において、
前記形式文脈抽出手段が、前記シナリオをオブジェクトとし、前記トレース情報に出現するモジュールを属性とする形式文脈を抽出する形式文脈抽出ステップと、
前記概念分析手段が、前記形式文脈を形式概念分析の手法で分析し、概念束を生成する概念分析ステップと、
前記系列パターンマイニング手段が、前記概念束に含まれるモジュールを系列パターンマイニングの手法で分析し、モジュール間の依存関係を抽出する系列パターンマイニングステップと、
を行うことを特徴とするプログラム分析方法。 - 前記系列パターンマイニングステップにおいて、
前記概念束のうち理解したい形式概念を選択し、選択した該形式概念が関連するシナリオ群のトレース情報のみを入力として、該形式概念と関係するトレース情報と該トレース情報の部分系列となるモジュールとその頻出系列を出力する
請求項3記載のプログラム分析方法。
- コンピュータを、
請求項1または2記載のプログラム分析装置の各手段として機能させるためのプログラム分析プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013105119A JP6021109B2 (ja) | 2013-05-17 | 2013-05-17 | プログラム分析装置及び方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013105119A JP6021109B2 (ja) | 2013-05-17 | 2013-05-17 | プログラム分析装置及び方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014225198A JP2014225198A (ja) | 2014-12-04 |
JP6021109B2 true JP6021109B2 (ja) | 2016-11-02 |
Family
ID=52123817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013105119A Active JP6021109B2 (ja) | 2013-05-17 | 2013-05-17 | プログラム分析装置及び方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6021109B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019075637A1 (zh) * | 2017-10-17 | 2019-04-25 | 深圳中兴力维技术有限公司 | 输入输出请求行为的检测方法及装置、存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2008096632A1 (ja) * | 2007-02-05 | 2010-05-20 | 日本電気株式会社 | オブジェクト図表示装置、オブジェクト図表示方法、プログラム、及びコンピュータ読み取り可能な記録媒体 |
JP5045517B2 (ja) * | 2008-03-25 | 2012-10-10 | 富士通株式会社 | 設計書作成プログラム、該装置、及び該方法 |
-
2013
- 2013-05-17 JP JP2013105119A patent/JP6021109B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014225198A (ja) | 2014-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Moran et al. | Machine learning-based prototyping of graphical user interfaces for mobile apps | |
US9928155B2 (en) | Automated anomaly detection service on heterogeneous log streams | |
JP5725623B2 (ja) | プログラム分析装置及び方法及びプログラム | |
JP5582540B2 (ja) | グラフ構造を有するデータから頻度の高い部分構造を抽出する方法、その装置およびプログラム | |
Acher et al. | Vivid: A variability-based tool for synthesizing video sequences | |
JP6021109B2 (ja) | プログラム分析装置及び方法及びプログラム | |
Lenka et al. | Comparative analysis on automated testing of web-based application | |
JP5447054B2 (ja) | データ生成方法,データ生成装置,およびデータ生成プログラム | |
Wienke et al. | Performance regression testing and run-time verification of components in robotics systems | |
Nabuco et al. | Inferring ui patterns with inductive logic programming | |
Popp | Comprehensive support of the lifecycle of machine learning models in model management systems | |
Gallina et al. | Ontology-based identification of commonalities and variabilities among safety processes | |
Raigoza et al. | Browser Performance of JavaScript Framework, SAPUI5 & jQuery | |
JP6287506B2 (ja) | データベースアクセス制御プログラム、データベースアクセス制御方法、及び情報処理装置 | |
Guo et al. | A business process explorer: recovering and visualizing e-commerce business processes | |
JP2010287143A (ja) | 記事整理システム | |
Moosavi et al. | Indexing rich internet applications using components-based crawling | |
Jiang et al. | Replacing code metrics in software fault prediction with early life cycle metrics | |
Dramski | Missing data problem in the event logs of transport processes | |
Noughi et al. | Conceptual interpretation of SQL execution traces for program comprehension | |
Cui et al. | REMS: Recommending Extract Method Refactoring Opportunities via Multi-view Representation of Code Property Graph | |
Parulian et al. | or2yw: Modeling and Visualizing OpenRefineHistories as YesWorkflow Diagrams | |
Dolques et al. | Fixing Generalization Defects in UML Use Case Diagrams. | |
CN117406990B (zh) | 页面生成方法、装置、电子设备及计算机可读存储介质 | |
Zoppi et al. | A tool for evolutionary threat analysis of smart grids |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150708 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20150708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160412 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160613 |
|
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: 20160920 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160927 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6021109 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |