Grouping Similar Bug Reports from Crash Dumps with Unsupervised Learning

University essay from KTH/Skolan för elektroteknik och datavetenskap (EECS)

Abstract: Quality software usually means high reliability, which in turn has two main components; the software should provide correctness, which means it should perform the specified task, and robustness in the sense that it should be able to manage unexpected situations. In other words, reliable systems are systems without bugs. Because of this, testing and debugging are recurrent and resource expensive tasks in software development, notably in large software systems. This thesis investigate the potential of using unsupervised machine learning on Ericsson bug reports to avoid unnecessary debugging by identifying duplicate bug reports. The bug report data that is considered are crash dumps from software crashes. The data is clustered using the clustering algorithms k-modes, k-prototypes and expectation maximization where-after the generated clusters are used to assign new incoming bug reports to the previously generated clusters, thus indicating whether an old bug report is similar to the newly submitted one. Due to the dataset only being partially labeled both internal and external validity indices are applied to evaluate the clustering. The results indicate that many, small clusters can be identified using the applied method. However, for the results to have high validity the methods could be applied on a larger data set. 

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)