Dissertation > Excellent graduate degree dissertation topics show
Software Fault Localization Research Based on Program Semantics
Author: HeGuoQin
Tutor: ZhangDaFang
School: Hunan University
Course: Computer Science and Technology
Keywords: Fault localization Aspect-oriented programming Program spectrum Program dynamic behavior graph
CLC: TP311.53
Type: Master's thesis
Year: 2011
Downloads: 28
Quote: 0
Read: Download Dissertation
Abstract
|
With the development of computer technology and the expansion of software application, the scale and complexity of software systems rises and the rate of system failure caused by software faults continues to increase, and software reliability cannot be assured much more. It is a significant study to make the debugging automated and locate the fault in case of software failure.Spectra-based fault localization technology analyzes program runtime information, which is known as program spectra, from passing runs and failing runs, to compute the likelihood of each program entity being faulty. This lightweight fault localization takes as its only input dynamic information collected at run-time, due to its low computational complexity and no modeling cost, has been widely studied and applied.On the basis of analyzing several common program spectra, the thesis proposes a novel program spectrum-dynamic method call graph, which conveys program semantics information-call relationship between methods while program executing. Traditional way to collect program spectra is instrumentation, but it introduces too much overhead. This thesis introduces a new way, that is using aspect-oriented programming to collect program spectra. It can monitor program execution by adding a new module-aspect to the tested program. As aspect can trace the translation of method call stack while program executing, the program spectra collected can record call hierarchy between methods.With the program spectra collected, the thesis proposes a fault localization approach based on program semantics. We define a new program model-program dynamic behavior graph. In the behavior graph, edge weight represents call frequency, and the differences in successful behavior graph and failing behavior graph pinpoint suspicious fault places. Because of the big difference in the number of passing and failing test cases, it isn’t reasonable to represent behavior graph difference as call frequency difference. So we assume that the greater the edge call probability difference in the two behavior graphs is, the higher it’s suspiciousness is, compute edge’s suspiciousness as the call probability difference in the successful behavior graph and failing behavior graph, and rank method call edges according to their suspiciousness.In the end, we design and implement a prototype system, named fault localization based on program semantics. Experimental results show that, compared with traditional instrumenting way to collect program spectra, aspect-oriented programming way can reduce more than tens of times of overhead. Empirical studies prove that the fault localization technology based on program semantics can improve the accuracy of pointing bugs, and relax programmers from the burden of debugging.
|
Related Dissertations
- A Study on Fault Diagnosis and Location of Partial Discharge Fault of Oil-immersed Transformer,TM407
- Design and Implementation of a Testing Based Program Fault Localization System,TP311.52
- Research and Application in Distance Education Management System Key Technology,TP311.52
- Apply Composed Statistical Model in Program Fault Localization,TP311.53
- Based on J2EE technology and AOP Digital Library Research,TP311.52
- Research and Application of J2EE and AOP in E-learning Management Platform,TP311.52
- Business Intelligence based client / sales analysis system,TP319
- Research and Application of Piloting Management Information System Based on J2EE,U665.26
- Based on enterprise-class development model Xing steel merchants System Design and Implementation,TP311.52
- Web services transaction management mechanism and design,TP311.52
- Resource acquisition system research and application security access control,TP393.08
- Spring-based lightweight Web Application Framework,TP393.09
- Research on Program Spectra of Fault Localization Based on Embedded Software,TP311.52
- Data Validation Component Based on AOP/IoC,TP311.52
- Design and Implementation of Intelligent Network Management System,TP393.07
- Concern Space Model Based Separation of Concern: A Theory and Applications,TP311.52
- The Development of CommonTools of C# Upgrade System,TP311.52
- Research on Method of Aspect Mining Based on Identifier Analysis,TP311.13
- Based the AOP insurance business acceptance system design,TP311.52
- Spring Framework - based communication enterprises Invoicing System build,TP311.52
- Study and Design of Dynamic Role and Rule-Based Access Control,TP393.08
CLC: > Industrial Technology > Automation technology,computer technology > Computing technology,computer technology > Computer software > Program design,software engineering > Software Engineering > Software Maintenance
© 2012 www.DissertationTopic.Net Mobile
|