研究生: |
鐘淳文 |
---|---|
論文名稱: |
Providing Component-Based Software Crash Diagnostic Information for JAVA using Program Slicing Providing Component-Based Software Crash Diagnostic Information for JAVA using Program Slicing |
指導教授: | 鄭永斌 |
學位類別: |
碩士 Master |
系所名稱: |
資訊工程學系 Department of Computer Science and Information Engineering |
論文出版年: | 2005 |
畢業學年度: | 93 |
語文別: | 英文 |
論文頁數: | 66 |
中文關鍵詞: | Java parser |
英文關鍵詞: | Program slicing |
論文種類: | 學術論文 |
相關次數: | 點閱:166 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
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.
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.
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.
Yung-Pin Cheng, “Awk-Linux: An Educational Operating System by Program Instrumentation.” in Proceedings of IASTED International Conference on
Computers and Advanced Technology in Education, Rhodes, Greece, June 30-July 2, 2003. PDF
Yung-Pin Cheng and Michal Young, “Semi-Automated Refactoring of Design Models for Compositional Analysis.” Working Conference on Complex and Dynamic Systems Architecture, pp. 137-139 Brisbane, Australia, December, 2001.
Yung-Pin Cheng and W. H. Tsai, “New Feature Extraction Scheme for Neocognitron,” Proceedings of 1993 Third National Workshop on Character Recognition, pp. 31-50, Taiwan.