![]() |
||||||||||
"Mining Software Specifications from Traces of Its Execution"
Abstract Difficulties in managing legacy systems and presence of bugs have cost billions of dollars annually. It is estimated that 45% of software cost is due to the difficulties in understanding existing/legacy systems especially during maintenance tasks, i.e. when new feature updates, bug fix, etc. are performed. Also, US National Institute of Standards and Technology (NIST) estimated that software bugs have caused US economy to lose $59.5 billion dollars annually. One of the root causes associated with high cost of software maintenance and presence of bugs is the fact that documented software specification is often missing, incomplete and outdated in the industry. This talk will describe a step forward to reduce maintenance cost and detect bugs via new methodologies in automatic extraction of software specifications from traces of its execution. In particular, the talk describes several new data mining and machine learning techniques to automatically mine candidate specifications. Four different techniques to mine expressive specifications in the formats of: finite state machine, frequent patterns of software behavior, temporal logic rules and live sequence charts, are presented. Mined finite state machine captures global detailed behavior of a system. Mined frequent patterns capture common software behaviors. Mined temporal logic rules capture constraints or implicit rules that a piece of software under analysis should adhere to. Mined live sequence charts capture statistically significant formal variant of UML sequence diagrams a system obeys. Several case studies to show the utility of mined specifications in various software engineering tasks including: program comprehension, testing & monitoring, verification & bug detection, will also be presented. About the speaker David LO is a Ph.D. Candidate at School of Computing, National University of Singapore under the supervision of A/P Khoo Siau Cheng. He graduated with a Bachelor of Engineering (Hons I) from School of Computer Engineering, Nanyang Technological University in 2004. His research interests include software engineering and data mining. His work has been presented in major conferences of software engineering & data mining including: FSE'06, WCRE'06, ASE'07, OOPSLA'07, KDD'07, DASFAA'08 and SDM'08. One of his works has been awarded second position in ACM SIGPLAN PLDI student research competition 2007. Another has been categorized as a candidate for best papers of DASFAA'08. He has also written a book chapter on mining software specifications. He has been doing active research collaborations with members of: Microsoft Research-Redmond, The Weizmann Institute of Science - Israel, Nanyang Technological University - Singapore, University of Illinois Urbana-Champaign and Microsoft Research - India (Internship). These collaborations have resulted in several joint papers and new specification mining systems. |
||||||||||
| © Copyright 2008 by Singapore Management University. All Rights Reserved. | ||||||||||