Automated Unit Testing of Large Industrial Embedded Software using Concolic Testing

Speaker:        Professor Moonzoo Kim
                Korea Advanced Institute of Science & Technology (KAIST)
                South Korea

Title:          "Automated Unit Testing of Large Industrial Embedded
                 Software using Concolic Testing"

Date:           Monday, 4 November 2013

Time:           4:00pm - 5:00pm

Venue:          Lecture Theatre F (near lifts 25/26), HKUST

Abstract:

Current testing practice in industry is often ineffective and slow to
detect bugs, since most projects utilize manually generated test cases.
Concolic testing alleviates this problem by automatically generating test
cases that achieve high coverage. However, specialized execution platforms
and resource constraints of embedded software hinder application of
concolic testing to embedded software. To overcome these limitations, we
have developed CONcrete and symBOLic (CONBOL) testing framework to unit
test large size industrial embedded software automatically. To address the
aforementioned limitations, CONBOL tests target units on a host PC
platform by generating symbolic unit testing drivers/stubs automatically
and applying heuristics to reduce false alarms caused by the imprecise
drivers/stubs. We have applied CONBOL to four million lines long
industrial embedded software and detected 24 new crash bugs. Furthermore,
the development team of the target software adopted CONBOL to their
development process to apply CONBOL to the revised target software
regularly.

*******************
Biography:

Moonzoo Kim is an associate professor at KAIST, South Korea. He received
his Ph.D. degree at Univ. of Pennsylvania in 2001. After working as a
researcher at Samsung SECUi.COM and POSTECH, he joined the faculty of
KAIST in 2006. He focuses on automated software testing and debugging
techniques through model checking, symbolic execution, and concurrent
program analysis. In addition, he has closely collaborated with Samsung
Electronics to apply advanced testing techniques to flash memory software
and smartphone platforms.