Automatic Assignment of Work Items

  • Jonas Helming
  • Holger Arndt
  • Zardosht Hodaie
  • Maximilian Koegel
  • Nitesh Narayan
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 230)


Many software development projects use work items such as tasks or bug reports to describe the work to be done. Some projects allow end-users or clients to enter new work items. New work items have to be triaged. The most important step is to assign new work items to a responsible developer. There are existing approaches to automatically assign bug reports based on the experience of certain developers based on machine learning. We propose a novel model-based approach, which considers relations from work items to the system specification for the assignment. We compare this new approach to existing techniques mining textual content as well as structural information. All techniques are applied to different types of work items, including bug reports and tasks. For our evaluation, we mine the model repository of three different projects. We also included history data to determine how well they work in different states.


Machine learning Task assignment Bug report UNICASE Unified model UJP 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
  3. 3.
    Jazz Community Site,
  4. 4.
    Team Foundation Server,
  5. 5.
    Anvik, J.: Automating bug report assignment. In: Proceedings of the 28th International Conference on Software Engineering, p. S.940 (2006)Google Scholar
  6. 6.
    Raymond, E.: The cathedral and the bazaar. Knowledge, Technology & Policy 12, S.23–S.49 (1999)MathSciNetCrossRefGoogle Scholar
  7. 7.
    Anvik, J., Hiew, L., Murphy, G.C.: Who should fix this bug? In: Proceedings of the 28th International Conference on Software Engineering, pp. S.361–S.370. ACM, Shanghai (2006)Google Scholar
  8. 8.
    Bruegge, B., Creighton, O., Helming, J., Koegel, M.: Unicase – an Ecosystem for Unified Software Engineering Research Tools. In: Workshop Distributed Software Development - Methods and Tools for Risk Management, Bangalore, India, pp. S.12–S.17 (2008)Google Scholar
  9. 9.
    Helming, J., David, J., Koegel, M., Naughton, H.: Integrating System Modeling with Project Management–a Case Study. In: International Computer Software and Applications Conference, COMPSAC 2009 (2009)Google Scholar
  10. 10.
    Mockus, A., Herbsleb, J.D.: Expertise browser: a quantitative approach to identifying expertise. In: Proceedings of the 24th International Conference on Software Engineering, pp. S.503–S.512 (2002)Google Scholar
  11. 11.
    Schuler, D., Zimmermann, T.: Mining usage expertise from version archives. In: Proceedings of the 2008 International Working Conference on Mining Software Repositories, pp. S.121–S.124 (2008)Google Scholar
  12. 12.
    Fritz, T., Murphy, G.C., Hill, E.: Does a programmer’s activity indicate knowledge of code? In: Proceedings of the the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering, p. S.350 (2007)Google Scholar
  13. 13.
    Sindhgatta, R.: Identifying domain expertise of developers from source code. In: Proceeding of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. S.981–S.989 (2008)Google Scholar
  14. 14.
    Canfora, G., Cerulo, L.: How software repositories can help in resolving a new change request. In: STEP 2005, p. S.99 (2005)Google Scholar
  15. 15.
    Čubranić, D.: Automatic bug triage using text categorization. In: SEKE 2004: Proceedings of the Sixteenth International Conference on Software Engineering & Knowledge Engineering, pp. S.92–S.97 (2004)Google Scholar
  16. 16.
    Yingbo, L., Jianmin, W., Jiaguang, S.: A machine learning approach to semi-automating workflow staff assignment. In: Proceedings of the 2007 ACM symposium on Applied computing, p. S.345 (2007)Google Scholar
  17. 17.
    Bruegge, B., David, J., Helming, J., Koegel, M.: Classification of tasks using machine learning. In: Proceedings of the 5th International Conference on Predictor Models in Software Engineering (2009)Google Scholar
  18. 18.
  19. 19.
    Koegel, M.: Towards software configuration management for unified models. In: Proceedings of the 2008 International Workshop on Comparison and Versioning of Software Models, pp. S.19–S.24 (2008)Google Scholar
  20. 20.
    Arndt, H., Bundschus, M., Naegele, A.: Towards a next-generation matrix library for Java. In: COMPSAC: International Computer Software and Applications Conference (2009)Google Scholar
  21. 21.
    Sebastiani, F.: Machine learning in automated text categorization. ACM Computing Surveys (CSUR) 34, S.1–S.47 (2002)MathSciNetCrossRefGoogle Scholar
  22. 22.
    Holger Arndt, I.I.: The Java Data Mining Package–A Data Processing Library for JavaGoogle Scholar
  23. 23.
    Witten, I.H., Frank, E.: Data mining: practical machine learning tools and techniques with Java implementations. ACM SIGMOD Record 31, S.76–S.77 (2002)CrossRefGoogle Scholar
  24. 24.
    Freund, Y., Schapire, R.E.: A decision-theoretic generalization of on-line learning and an application to boosting. Journal of Computer and System Sciences 55, 119–139 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  25. 25.
    Fan, R.E., Chang, K.W., Hsieh, C.J., Wang, X.R., Lin, C.J.: LIBLINEAR: A library for large linear classification. The Journal of Machine Learning Research 9, S.1871–S.1874 (2008)zbMATHGoogle Scholar
  26. 26.
    MALLET homepage,
  27. 27.
    Haykin, S.: Neural networks: a comprehensive foundation. Prentice Hall, Englewood Cliffs (2008)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Jonas Helming
    • 1
  • Holger Arndt
    • 1
  • Zardosht Hodaie
    • 1
  • Maximilian Koegel
    • 1
  • Nitesh Narayan
    • 1
  1. 1.Institut für InformatikTechnische Universität MünchenGarchingGermany

Personalised recommendations