透過您的圖書館登入
IP:18.223.32.230
  • 學位論文

Providing Component-Based Software Crash Diagnostic Information for JAVA using Program Slicing

Providing Component-Based Software Crash Diagnostic Information for JAVA using Program Slicing

指導教授 : 鄭永斌
若您是本文的作者,可授權文章由華藝線上圖書館中協助推廣。

摘要


The software nowadays is a black box to end user. It can allow users to configure which components to install, such as plug-in, and etc. But, after such initial configurations, the software remains as an abstract black box to end user. End users have no clues in the component inside a software. When software crash, end users can only accept the fact but can do nothing else. Unlike software, some daily used hardware, or consumer appliance may allow some extent of user configurations. For example, we can replace a malfunctioned part of a desktop computer by ourselves through some simple inspection and diagnosis. In this thesis, we propose a solution to address such issue. We use Java Class loader to execute a Java application and catch the exception when it occurs. Then, we use a Java parser to construct the component map of a Java application to show the architecture of the software to end-user. Program slicing technique is used to collect slices of each statement in the Java application. These slices are stored in XML format. When the Java application crashes and emits an exception, our monitor system catch the exception and conjecture the cause of exception via the slicing information stored in those XML. We compute a probability of each component in the component map. The probability shows the likelihood of the component to cause the crash of the application.

關鍵字

Java parser

並列摘要


The software nowadays is a black box to end user. It can allow users to configure which components to install, such as plug-in, and etc. But, after such initial configurations, the software remains as an abstract black box to end user. End users have no clues in the component inside a software. When software crash, end users can only accept the fact but can do nothing else. Unlike software, some daily used hardware, or consumer appliance may allow some extent of user configurations. For example, we can replace a malfunctioned part of a desktop computer by ourselves through some simple inspection and diagnosis. In this thesis, we propose a solution to address such issue. We use Java Class loader to execute a Java application and catch the exception when it occurs. Then, we use a Java parser to construct the component map of a Java application to show the architecture of the software to end-user. Program slicing technique is used to collect slices of each statement in the Java application. These slices are stored in XML format. When the Java application crashes and emits an exception, our monitor system catch the exception and conjecture the cause of exception via the slicing information stored in those XML. We compute a probability of each component in the component map. The probability shows the likelihood of the component to cause the crash of the application.

並列關鍵字

Program slicing

參考文獻


Yung-Pin Cheng, "Crafting a Promela front-end with Abstract Data Types to Mitigate the Sensitivity of (Compositional) Analysis to Implementation Choices." to appear in Lecture Notes in Computer Sciences 2005 (SPIN 2005) PDF
Yung-Pin Cheng, Michal Young, Che-Ling Huang, and Chia-Yi Pan, "Towards Scalable Compositional Analysis by Refactoring Design Models" Proceedings of the ACM SIGSOFT 2003 Symposium on the Foundations of Software Engineering (FSE2003) , Helsinki, Finland, Sep. 2003. (also appear in ACM Software Engineering Notes, pp. 247-256, Vol 28 ,Issue 5, 2003.) PDF PS
Yung-Pin Cheng, “Refactoring Design Models for Inductive Verification,” Proceedings of the ACM SIGSOFT 2002 International Symposium on Software Testing and Analysis. (ISSTA2002) Rome, Italy, July 22-24, 2002. (also appear in ACM Software Engineering Notes , pp 164-168, Vol. 27, No. 4 2002.) PDF PS
Yung-Pin Cheng and Keh-Ren Wu “Reasoning about Many Data Values without Data Independence Constraints”, In Proceedings of 1st International Conference on Automated Technology for Verification and Analysis, 2003, Taipei, Taiwan. (ATVA 2003).
Yung-Pin Cheng, Chia-Yi Pan, Che-Ling Huang, and Keh-Ren Wu “CoCoV- Compositional Concurrency Verifier with Design Model Refactoring,” In Proceedings of 14th Workshop on Object-Oriented Technology and Applications, ChungLi, Taiwan, Sep. 2003.