DocumentCode :
2769580
Title :
Using Decision Trees to Predict the Certification Result of a Build
Author :
Hassan, Ahmed E. ; Zhang, Ken
Author_Institution :
Dept. of Electr. & Comput. Eng., Victoria Univ., BC
fYear :
2006
fDate :
18-22 Sept. 2006
Firstpage :
189
Lastpage :
198
Abstract :
Large teams of practitioners (developers, testers, etc.) usually work in parallel on the same code base. A major concern when working in parallel is the introduction of integration bugs in the latest shared code. These latent bugs are likely to slow down the project unless they are discovered as soon as possible. Many companies have adopted daily or weekly processes which build the latest source code and certify it by executing simple manual smoke/sanity tests or extensive automated integration test suites. Other members of a team can then use the certified build to develop new features or to perform additional analysis, such as performance or usability testing. For large projects the certification process may take a few days. This long certification process forces team members to either use outdated or uncertified (possibly buggy) versions of the code. In this paper, we create decision trees to predict ahead of time the certification result of a build. By accurately predicting the outcome of the certification process, members of large software teams can work more effectively in parallel. Members can start using the latest code without waiting for the certification process to be completed. To perform our study, we mine historical information (code changes and certification results) for a large software project which is being developed at the IBM Toronto Labs. Our study shows that using a combination of project attributes (such as the number of modified subsystems in a build and certification results of previous builds), we can correctly predict 69% of the time that a build will fail certification. We can as well correctly predict 95% of the time if a build will pass certification
Keywords :
certification; configuration management; decision trees; program debugging; program diagnostics; program testing; code changes; decision trees; integration bugs; latent bugs; performance testing; software build; software certification; source code; usability testing; Automatic testing; Certification; Computer bugs; Control systems; Decision trees; Merging; Performance analysis; Performance evaluation; Software testing; Usability;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Automated Software Engineering, 2006. ASE '06. 21st IEEE/ACM International Conference on
Conference_Location :
Tokyo
ISSN :
1938-4300
Print_ISBN :
0-7695-2579-2
Type :
conf
DOI :
10.1109/ASE.2006.72
Filename :
4019574
Link To Document :
بازگشت