Mining temporal rules for software maintenance
Software evolution incurs difficulties in program comprehension and software verification, and hence it increases the cost of software maintenance. In this study, we propose a novel technique to mine from program execution traces a sound and complete set of statistically significant temporal rules o...
محفوظ في:
المؤلفون الرئيسيون: | , , |
---|---|
التنسيق: | text |
اللغة: | English |
منشور في: |
Institutional Knowledge at Singapore Management University
2008
|
الموضوعات: | |
الوصول للمادة أونلاين: | https://ink.library.smu.edu.sg/sis_research/742 https://ink.library.smu.edu.sg/context/sis_research/article/1741/viewcontent/jsme08.pdf |
الوسوم: |
إضافة وسم
لا توجد وسوم, كن أول من يضع وسما على هذه التسجيلة!
|
المؤسسة: | Singapore Management University |
اللغة: | English |
id |
sg-smu-ink.sis_research-1741 |
---|---|
record_format |
dspace |
spelling |
sg-smu-ink.sis_research-17412011-11-02T08:51:43Z Mining temporal rules for software maintenance LO, David Khoo, Siau-Cheng LIU, Chao Software evolution incurs difficulties in program comprehension and software verification, and hence it increases the cost of software maintenance. In this study, we propose a novel technique to mine from program execution traces a sound and complete set of statistically significant temporal rules of arbitrary lengths. The extracted temporal rules reveal invariants that the program observes, and will consequently guide developers to understand the program behaviors, and facilitate all downstream applications such as verification and debugging. Different from previous studies that were restricted to mining two-event rules (e.g., (lock) →(unlock)), our algorithm discovers rules of arbitrary lengths. In order to facilitate downstream applications, we represent the mined rules as temporal logic expressions, so that existing model checkers or other formal analysis toolkit can readily consume our mining results. Performance studies on benchmark data sets and a case study on an industrial system have been performed to show the scalability and utility of our approach. We performed case studies on JBoss application server and a buggy concurrent versions system application, and the result clearly demonstrates the usefulness of our technique in recovering underlying program designs and detecting bugs. Copyright © 2008 John Wiley & Sons, Ltd. 2008-07-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/742 info:doi/10.1002/smr.375 https://ink.library.smu.edu.sg/context/sis_research/article/1741/viewcontent/jsme08.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Software Engineering |
institution |
Singapore Management University |
building |
SMU Libraries |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
SMU Libraries |
collection |
InK@SMU |
language |
English |
topic |
Software Engineering |
spellingShingle |
Software Engineering LO, David Khoo, Siau-Cheng LIU, Chao Mining temporal rules for software maintenance |
description |
Software evolution incurs difficulties in program comprehension and software verification, and hence it increases the cost of software maintenance. In this study, we propose a novel technique to mine from program execution traces a sound and complete set of statistically significant temporal rules of arbitrary lengths. The extracted temporal rules reveal invariants that the program observes, and will consequently guide developers to understand the program behaviors, and facilitate all downstream applications such as verification and debugging. Different from previous studies that were restricted to mining two-event rules (e.g., (lock) →(unlock)), our algorithm discovers rules of arbitrary lengths. In order to facilitate downstream applications, we represent the mined rules as temporal logic expressions, so that existing model checkers or other formal analysis toolkit can readily consume our mining results. Performance studies on benchmark data sets and a case study on an industrial system have been performed to show the scalability and utility of our approach. We performed case studies on JBoss application server and a buggy concurrent versions system application, and the result clearly demonstrates the usefulness of our technique in recovering underlying program designs and detecting bugs. Copyright © 2008 John Wiley & Sons, Ltd. |
format |
text |
author |
LO, David Khoo, Siau-Cheng LIU, Chao |
author_facet |
LO, David Khoo, Siau-Cheng LIU, Chao |
author_sort |
LO, David |
title |
Mining temporal rules for software maintenance |
title_short |
Mining temporal rules for software maintenance |
title_full |
Mining temporal rules for software maintenance |
title_fullStr |
Mining temporal rules for software maintenance |
title_full_unstemmed |
Mining temporal rules for software maintenance |
title_sort |
mining temporal rules for software maintenance |
publisher |
Institutional Knowledge at Singapore Management University |
publishDate |
2008 |
url |
https://ink.library.smu.edu.sg/sis_research/742 https://ink.library.smu.edu.sg/context/sis_research/article/1741/viewcontent/jsme08.pdf |
_version_ |
1770570696962867200 |