JP2013092950A - プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui - Google Patents
プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui Download PDFInfo
- Publication number
- JP2013092950A JP2013092950A JP2011235534A JP2011235534A JP2013092950A JP 2013092950 A JP2013092950 A JP 2013092950A JP 2011235534 A JP2011235534 A JP 2011235534A JP 2011235534 A JP2011235534 A JP 2011235534A JP 2013092950 A JP2013092950 A JP 2013092950A
- Authority
- JP
- Japan
- Prior art keywords
- reliability
- code
- code range
- debugging
- range
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3676—Test management for coverage analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3624—Software debugging by performing operations on the source code, e.g. via a compiler
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/77—Software metrics
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
【解決手段】(a)プログラムの分類項目の指標毎の信頼度を含む信頼度情報を記憶部に格納するステップS11と、(b)演算処理部が、記憶部からデバッグ対象のプログラムについての信頼度情報を読み出して、当該信頼度情報中の指標毎の信頼度を用いて、信頼できるコード範囲と信頼できないコード範囲とを決定するステップS12と、(c)演算処理部が、信頼できないコード範囲についてのみデバッグ対象のプログラムのデバッグを実行するステップS13と、を含む。
【選択図】図4
Description
(a)デバッガは、ブレークポイントの位置を、信頼できないコードの範囲に分類されているデバッグ対象のプロセスに指示する。
(b)デバッグ対象のプロセスは、指示されたブレークポイントまでプロセスを実行し、ブレークポイントで停止したことをデバッガに通知する。
(c)デバッガは、ステップ実行について、信頼度情報に基づいて次の実行位置までを指示する、またはプロセスの再開については従来どおり信頼度情報に基づかずに指示を行う。
(d)デバッグ対象のプロセスは、指示に従ってステップ実行またはプロセスを再開する。
<ステップインの場合>
(a)デバッガは、デバッグ対象のプロセスにステップインを指示する。
(b)デバッグ対象のプロセスは、ステップインを実行し、停止位置をデバッガに通知する。
(c)デバッガは、停止位置を信頼できるコード範囲、信頼できないコードの情報に基づいて判別する。すなわち、信頼できないコード範囲であればその位置で停止させる。信頼できるコード範囲であれば、デバッグ対象のプロセスにステップアウトを指示し、信頼できないコード範囲に到達した位置で停止させる。
(a)デバッガは、デバッグ対象のプロセスにステップアウトを指示する。
(b)デバッグ対象のプロセスは、ステップアウトを実行し、停止位置をデバッガに通知する。
(c)デバッガは、停止位置を信頼できるコード範囲、信頼できないコード範囲の情報に基づいて判別する。すなわち、信頼できないコード範囲であればその位置で停止させる。信頼できるコード範囲であれば、デバッグ対象のプロセスに再開を指示し、信頼できないコード範囲に到達した位置で停止させる。
20 PC
30 ネトワークドライブ
40 ネットワーク
100 ネットワークシステム
300 表示画面
310 第1のウィンドウ
320 第2のウィンドウ
330 スライダー表示部
Claims (9)
- 記憶部と演算処理部を有するコンピュータによるプログラムのデバッグ方法であって、
プログラムの分類項目の指標毎の信頼度を含む信頼度情報を前記記憶部に格納するステップと、
前記演算処理部が、前記記憶部からデバッグ対象のプログラムについての前記信頼度情報を読み出して、当該信頼度情報中の前記指標毎の信頼度を用いて、信頼できるコード範囲と信頼できないコード範囲とを決定するステップと、
前記演算処理部が、前記信頼できないコード範囲についてのみ前記デバッグ対象のプログラムのデバッグを実行するステップと、を含む方法。 - 前記演算処理部が、前記デバッグの実行中において、ユーザからの指示に応じて、実行パス上のコードについて、前記指標毎の信頼度の基づき既に決定された前記信頼できるコード範囲と前記信頼できないコード範囲とを更新するステップをさらに含む、請求項1の方法。
- 前記決定するステップおよび前記更新するステップの少なくとも一方は、
前記指標毎の信頼度からコード範囲毎の信頼度を算出するステップと、
コード範囲毎の信頼度が所定範囲内である場合に、当該コード範囲を信頼できないコード範囲と決定するステップと、
を含む、請求項2の方法。 - プログラムのデバッグ装置であって、
プログラムの分類項目の指標毎の信頼度を含む第1の信頼度情報を保管する第1の保管部と、
前記第1の保管部の前記指標毎の信頼度からコード範囲毎の信頼度を算出する信頼度算出部と、
前記コード範囲毎の信頼度を含む第2の信頼度情報を保管する第2の保管部と、
デバッグ対象のプログラムについて、前記第2の保管部の前記コード範囲毎の信頼度に基づき、信頼できるコード範囲と信頼できないコード範囲とを決定する決定部と、
前記信頼できないコード範囲について前記デバッグ対象のプログラムのデバッグを実行するデバッガと、を備えるデバッグ装置。 - 前記デバッガは、デバッグ中の実行パスを前記信頼度算出部に通知し、
前記信頼度算出部は、ユーザからの指示に応じて、前記実行パス上のコードについて、既に算出された前記コード範囲毎の信頼度を更新して前記第2の保管部に保管し、
前記決定部は、前記第2の保管部の更新された前記コード範囲毎の信頼度に基づき、信頼できるコード範囲と信頼できないコード範囲とを更新する、請求項4のデバッグ装置。 - 前記決定部は、前記コード範囲毎の信頼度が所定範囲内である場合に、当該コード範囲を信頼できないコード範囲と決定する、請求項4または5のデバッグ装置。
- 記憶部と演算処理部を有するコンピュータによるプログラムのデバッグを支援するためのグラフィカル・ユーザ・インターフェース(GUI)であって、
前記記憶部に格納された、プログラムの分類項目の指標毎の信頼度を含む信頼度情報を用いて、前記演算処理部が、デバッグ対象のプログラムについて、信頼できるコード範囲と信頼できないコード範囲とを決定し、前記信頼できないコード範囲についてのみデバッグを実行するように支援するために、
表示画面と、
前記表示画面上の、デバッグ対象のプログラムの実行パス上の複数のコード名が表示された第1のウィンドウと、
前記表示画面上の、前記第1のウィンドウ内の前記複数のコード名の中から選択したコード名に対応するコード範囲を表示可能な第2のウィンドウと、
前記表示画面上の、前記第1のウィンドウ内の前記複数のコード名の各々について、または前記第2のウィンドウ内に表示されたコード範囲について、対応するコード名またはコード範囲の信頼度に応じて、前記コード名または前記コード範囲を表示する色を選択的に可変するためのスライダー表示部と、を備えるGUI。 - 前記スライダー表示部における前記コード名および前記コード範囲を表示する色または当該色の濃淡の可変は、前記デバッグ対象のプログラムのデバッグ中に前記スライダー表示部のポインタ位置を変えることによりおこなうことができる、請求項7のGUI。
- 前記信頼度に応じて、前記コード名または前記コード範囲の表示色が変化する、あるは当該表示色の濃淡が変化する、請求項7または8のGUI。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011235534A JP5785474B2 (ja) | 2011-10-27 | 2011-10-27 | プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui |
US13/593,523 US9740592B2 (en) | 2011-10-27 | 2012-08-24 | Supporting debugging of program and graphical user interface for supporting debugging |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011235534A JP5785474B2 (ja) | 2011-10-27 | 2011-10-27 | プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013092950A true JP2013092950A (ja) | 2013-05-16 |
JP5785474B2 JP5785474B2 (ja) | 2015-09-30 |
Family
ID=48173817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011235534A Expired - Fee Related JP5785474B2 (ja) | 2011-10-27 | 2011-10-27 | プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui |
Country Status (2)
Country | Link |
---|---|
US (1) | US9740592B2 (ja) |
JP (1) | JP5785474B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9129063B2 (en) * | 2013-05-14 | 2015-09-08 | Oracle International Corporation | Visualizing a computer program execution history |
KR102505127B1 (ko) | 2018-05-30 | 2023-03-02 | 삼성전자주식회사 | 소프트웨어 취약점을 검출하는 전자 장치 및 그 동작 방법 |
US11487538B1 (en) * | 2021-01-20 | 2022-11-01 | Two Six Labs, LLC | Software repository recommendation engine |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09212387A (ja) * | 1996-01-31 | 1997-08-15 | Matsushita Electric Works Ltd | プログラム開発支援装置 |
JP2005316685A (ja) * | 2004-04-28 | 2005-11-10 | Mitsubishi Electric Corp | プログラム管理装置 |
Family Cites Families (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06103113A (ja) | 1992-09-22 | 1994-04-15 | Hitachi Ltd | 差分テストデバック支援方法 |
JPH11272502A (ja) | 1998-03-24 | 1999-10-08 | Canon Inc | ソフトウェア信頼性評価装置及びソフトウェア信頼性評価方法並びに記憶媒体 |
US6079032A (en) * | 1998-05-19 | 2000-06-20 | Lucent Technologies, Inc. | Performance analysis of computer systems |
US6895577B1 (en) * | 1999-05-13 | 2005-05-17 | Compuware Corporation | Risk metric for testing software |
US6651244B1 (en) * | 1999-07-26 | 2003-11-18 | Cisco Technology, Inc. | System and method for determining program complexity |
JP2001043110A (ja) | 1999-08-03 | 2001-02-16 | Kenji Kobayashi | プログラムのデバッグ方法 |
JP2002108652A (ja) | 2000-09-29 | 2002-04-12 | Denso Corp | プログラムの相関関係検出装置 |
US7013457B2 (en) * | 2001-07-26 | 2006-03-14 | Springsoft, Inc. | Prioritized debugging of an error space in program code |
US7257805B2 (en) * | 2001-11-09 | 2007-08-14 | International Business Machines Corporation | Restoring debugging breakpoints subsequent to program code modifications |
US7293256B2 (en) * | 2002-06-18 | 2007-11-06 | Microsoft Corporation | Debugger causality system and methods |
US7272823B2 (en) * | 2002-08-22 | 2007-09-18 | Sun Microsystems, Inc. | Method and apparatus for software metrics immediate feedback mechanism |
US20040040013A1 (en) * | 2002-08-26 | 2004-02-26 | Mohit Kalra | Time-based breakpoints in debuggers |
JP2004252684A (ja) | 2003-02-20 | 2004-09-09 | Hitachi Ltd | プログラムデバッグ方法およびシステム |
US7401323B2 (en) * | 2003-04-21 | 2008-07-15 | Microsoft Corporation | Just-My-Code debugging |
US7299456B2 (en) * | 2003-09-18 | 2007-11-20 | International Business Machines Corporation | Run into function |
JP2005141406A (ja) | 2003-11-05 | 2005-06-02 | Toyota Motor Corp | コンパイラ検査システムおよび同プログラム |
US7519960B2 (en) * | 2003-12-19 | 2009-04-14 | International Business Machines Corporation | Method and system for debugging business process flow |
US20050273757A1 (en) * | 2004-06-07 | 2005-12-08 | Anderson Craig D | Methods, systems, and computer program products for summarizing operational behavior of a computer program |
US7581209B2 (en) * | 2005-02-28 | 2009-08-25 | Microsoft Corporation | Method for determining code coverage |
US20060225051A1 (en) * | 2005-04-05 | 2006-10-05 | Cisco Technology, Inc. | Method and system for code coverage |
US20060288332A1 (en) * | 2005-06-21 | 2006-12-21 | Microsoft Corporation | Workflow debugger |
US20070061782A1 (en) * | 2005-09-15 | 2007-03-15 | Microsoft Corporation | Independent software integration |
JP2007233754A (ja) | 2006-03-01 | 2007-09-13 | Nec Corp | デバッグシステム、デバッグ方法およびプログラム |
US7886272B1 (en) * | 2006-03-16 | 2011-02-08 | Avaya Inc. | Prioritize code for testing to improve code coverage of complex software |
EP2011004B1 (en) * | 2006-04-04 | 2019-01-02 | TIBCO Software Inc. | Method and system for providing a visual debugger for an interpreted statistical language |
CA2543304A1 (en) * | 2006-04-11 | 2007-10-11 | Ibm Canada Limited - Ibm Canada Limitee | Code highlight and intelligent location descriptor for programming shells |
US7890935B2 (en) * | 2006-05-31 | 2011-02-15 | International Business Machines Corporation | Thread-specific presentation of breakpoints |
US7725881B2 (en) * | 2006-06-09 | 2010-05-25 | Microsoft Corporation | Automatically extracting coupling metrics from compiled code |
US8276126B2 (en) * | 2006-11-08 | 2012-09-25 | Oracle America, Inc. | Determining causes of software regressions based on regression and delta information |
US8219980B2 (en) * | 2007-01-10 | 2012-07-10 | International Business Machines Corporation | Identifying a potential breakpoint location in a code path in a computer program based upon the frequency of execution of the code path as identified in collected profile data |
US7958400B2 (en) * | 2007-04-16 | 2011-06-07 | International Business Machines Corporation | Detecting unexpected impact of software changes using coverage analysis |
US8473907B1 (en) * | 2007-07-31 | 2013-06-25 | Coverity, Inc. | Computer programming adaptive analysis |
US8191074B2 (en) * | 2007-11-15 | 2012-05-29 | Ericsson Ab | Method and apparatus for automatic debugging technique |
US8627287B2 (en) * | 2007-11-29 | 2014-01-07 | Microsoft Corporation | Prioritizing quality improvements to source code |
US8141055B2 (en) * | 2007-12-31 | 2012-03-20 | International Business Machines Corporation | Method for dynamic discovery of code segments in instrumented binary modules |
US8423960B2 (en) * | 2008-03-31 | 2013-04-16 | International Business Machines Corporation | Evaluation of software based on review history |
US20090254888A1 (en) * | 2008-04-07 | 2009-10-08 | International Business Machines Corporation | Debug tours for software debugging |
US8266592B2 (en) * | 2008-04-21 | 2012-09-11 | Microsoft Corporation | Ranking and optimizing automated test scripts |
US8607198B2 (en) * | 2008-06-24 | 2013-12-10 | International Business Machines Corporation | Cross-concern code coverage assessment |
JP2010020494A (ja) | 2008-07-09 | 2010-01-28 | Mitsubishi Electric Corp | 保護制御装置 |
US8291384B2 (en) * | 2009-01-15 | 2012-10-16 | International Business Machines Corporation | Weighted code coverage tool |
US20110047531A1 (en) * | 2009-08-19 | 2011-02-24 | Wenguang Wang | Methods and apparatuses for selective code coverage |
US10152403B2 (en) * | 2009-09-01 | 2018-12-11 | Accenture Global Services Limited | Assessment of software code quality based on coding violation indications |
US8561021B2 (en) * | 2010-02-08 | 2013-10-15 | Microsoft Corporation | Test code qualitative evaluation |
US8429622B2 (en) * | 2010-04-15 | 2013-04-23 | Oracle International Corporation | Business process debugger with parallel-step debug operation |
US8443340B2 (en) * | 2010-06-15 | 2013-05-14 | Microsoft Corporation | Execution capture and replay based debugging |
US8601441B2 (en) * | 2010-07-17 | 2013-12-03 | Accenture Global Services Limited | Method and system for evaluating the testing of a software system having a plurality of components |
US8769497B2 (en) * | 2010-07-20 | 2014-07-01 | General Electric Company | System and method for use in indicating execution of application code |
US8434057B2 (en) * | 2010-08-17 | 2013-04-30 | Oracle International Corporation | Optimized implementation of breakpoint in java debugger agent |
EP2612206A1 (en) * | 2010-08-31 | 2013-07-10 | ABB Technology AG | Method for debugging of process or manufacturing plant solutions comprising multiple sub-systems |
US8850399B2 (en) * | 2010-11-15 | 2014-09-30 | Microsoft Corporation | Software development using code retraction and background warm up |
US8453106B2 (en) * | 2010-12-17 | 2013-05-28 | Microsoft Corporation | Graphical user interface for exploring source code execution behavior |
EP2477116A1 (en) * | 2011-01-13 | 2012-07-18 | Software AG | Method and system for debugging a job running on a legacy system |
US8893090B2 (en) * | 2011-04-15 | 2014-11-18 | Microsoft Corporation | Stepping out of an asynchronous method into its continuation in a debugger |
US20120272220A1 (en) * | 2011-04-19 | 2012-10-25 | Calcagno Cristiano | System and method for display of software quality |
US8789014B2 (en) * | 2011-05-13 | 2014-07-22 | Microsoft Corporation | Managing a working set in an integrated development environment |
US8839203B2 (en) * | 2011-05-25 | 2014-09-16 | Microsoft Corporation | Code coverage-based taint perimeter detection |
US8776025B2 (en) * | 2011-11-04 | 2014-07-08 | International Business Machines Corporation | Integrated debugger and code coverage tool |
-
2011
- 2011-10-27 JP JP2011235534A patent/JP5785474B2/ja not_active Expired - Fee Related
-
2012
- 2012-08-24 US US13/593,523 patent/US9740592B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09212387A (ja) * | 1996-01-31 | 1997-08-15 | Matsushita Electric Works Ltd | プログラム開発支援装置 |
JP2005316685A (ja) * | 2004-04-28 | 2005-11-10 | Mitsubishi Electric Corp | プログラム管理装置 |
Also Published As
Publication number | Publication date |
---|---|
US20130111447A1 (en) | 2013-05-02 |
US9740592B2 (en) | 2017-08-22 |
JP5785474B2 (ja) | 2015-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8762871B2 (en) | Dynamic preview of diagram elements to be inserted into a diagram | |
US9389872B2 (en) | Software wizard implementation framework | |
US20190079757A1 (en) | Associating a visualization of user interface with source code | |
TW200907778A (en) | An interactive progress bar | |
US20150301806A1 (en) | Tentative program code in an editor | |
US8079014B2 (en) | Software development apparatus and method | |
JP2015043198A (ja) | 解析システム、解析方法および解析プログラム | |
US9785416B2 (en) | Presenting a custom view in an integrated development environment based on a variable selection | |
US11042466B2 (en) | Exception prediction before an actual exception during debugging | |
JP2016511497A (ja) | ジャストマイコードを使用したジャバスクリプトデバッギング | |
JP5785474B2 (ja) | プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui | |
JP2005300324A (ja) | 被試験対象デバイスの測定データ解析方法、プログラム、および測定データ解析システム | |
US20140258991A1 (en) | Trace coverage analysis | |
JP4675639B2 (ja) | データ処理システム、アプリケーションプログラムのカスタマイズパラメータを表示する方法およびコンピュータプログラム製品 | |
EP3640794A1 (en) | Program development support device, program development support method, and program development support program | |
JP2009230420A (ja) | ソースコード品質管理装置 | |
JP4941674B2 (ja) | シミュレーション・システム | |
JP5743663B2 (ja) | テスト支援システム、テスト支援方法、及びプログラム | |
US11609772B2 (en) | Dynamically generating guided tours for software | |
US20140074803A1 (en) | Log message optimization to ignore or identify redundant log messages | |
WO2004107087A2 (en) | Generating test cases | |
JP2013137716A (ja) | マクロ展開装置及びプログラム | |
JP2023053720A (ja) | ユーザプログラムの開発を支援するためのシステム、方法およびプログラム | |
JP2008286670A (ja) | テスト条件パラメータ抽出方法 | |
CN110569025A (zh) | 变量处理方法、装置、可读存储介质及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140528 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150129 |
|
TRDD | Decision of grant or rejection written | ||
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20150709 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150709 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150724 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5785474 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |