Advertisement

MAESTROS: Multi-Agent Simulation of Rework in Open Source Software

  • Thiago R. P. M. RúbioEmail author
  • Henrique Lopes Cardoso
  • Eugénio da Costa Oliveira
Conference paper
Part of the Studies in Computational Intelligence book series (SCI, volume 616)

Abstract

Rework Management in software development is a challenging and complex issue. Defined as the effort spent to re-do some work, rework implies big costs given the fact that the time spent on rework does not count to the improvement of the project. Predicting and controlling rework causes is a valuable asset for companies, which maintain closed policies on choosing team members and assigning activities to developers. However, a trending growth in development consists in Open Source Software (OSS) projects. This is a totally new and diverse environment, in the sense that not only the projects but also their resources, e.g., developers change dynamically. There is no guarantee that developers will follow the same methodologies and quality policies as in a traditional and closed project. In such world, identifying rework causes is a necessary step to reduce project costs and to help project managers to better define their strategies. We observed that in real OSS projects there are no fixed team, but instead, developers assume some kind of auction in which the activities are assigned to the most interested and less-cost developer. This lead us to think that a more complex auctioning mechanism should not only model the task allocation problem, but also consider some other factors related to rework causes. By doing this, we could optimise the task allocation, improving the development of the project and reducing rework. In this paper we presented MAESTROS, a Multi-Agent System that implements an auction mechanism for simulating task allocation in OSS. Experiments were conducted to measure costs and rework with different project characteristics. We analysed the impact of introducing a Q-learning reinforcement algorithm on reducing costs and rework. Our findings correspond to a reduction of 31 % in costs and 11 % in rework when compared with the simple approach. Improvements to MAESTROS include real projects data analysis and a real-time mechanism to support Project Management decisions.

Keywords

Project Manager Open Source Software Final Cost Task Allocation Real Project 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Notes

Acknowledgments

This work has been funded through a IBRASIL Grant. IBRASIL is a Full Doctorate programme selected under Erasmus Mundus, Action 2 STRAND 1, Lot 16 and coordinated by University of Lille.

References

  1. 1.
    Gaff, B.M., Ploussios, G.J.: Open source software. Computer 45(6), 9–11 (2012)CrossRefGoogle Scholar
  2. 2.
    Software risk management. Springer, Berlin (1989)Google Scholar
  3. 3.
    Chua, B.B., Verner, J.: Examining requirements change rework effort: a study. arXiv preprint arXiv:1007.5126 (2010)
  4. 4.
    Sen, R., Singh, S.S., Borle, S.: Open source software success: measures and analysis. Decis. Support Syst. 52(2), 364–372 (2012)CrossRefGoogle Scholar
  5. 5.
    Raymond, E.: The cathedral and the bazaar. Knowl. Technol. Policy 12(3), 23–49 (1999)CrossRefGoogle Scholar
  6. 6.
    Raja, U., Tretter, M.J.: Defining and evaluating a measure of open source project survivability. IEEE Trans. Softw. Eng. 38(1), 163–174 (2012)CrossRefGoogle Scholar
  7. 7.
    Zahra, S., Nazir, A., Khalid, A., Raana, A., Majeed, M.N.: Performing inquisitive study of pm traits desirable for project progress. Int. J. Mod. Educ. Comput. Sci. (IJMECS) 6(2) 41 (2014)Google Scholar
  8. 8.
    Rúbio, T.R., Gulo, C.A.: Characterizing developers rework on github open source projects. In: Proceedings of the 10th Doctoral Symposium in Informatics Engineering, FEUP Edicoes - Faculty of Engineering, University of PortoGoogle Scholar
  9. 9.
    Robles, G., González-Barahona, J.M., Cervigón, C., Capiluppi, A., Izquierdo-Cortázar, D.: Estimating development effort in free/open source software projects by mining software repositories: a case study of openstack. In: Proceedings of the 11th Working Conference on Mining Software Repositories, pp. 222–231. ACM (2014)Google Scholar
  10. 10.
    Crowston, K., Li, Q., Wei, K., Eseryel, U.Y., Howison, J.: Self-organization of teams for free/libre open source software development. Inf. Softw. Technol. 49(6), 564–575 (2007)CrossRefGoogle Scholar
  11. 11.
    Larman, C.: Agile and iterative development: a manager’s guide. Addison-Wesley Professional, Boston (2004)Google Scholar
  12. 12.
    Warsta, J., Abrahamsson, P.: Is open source software development essentially an agile method. In: Proceedings of the 3rd Workshop on Open Source Software Engineering, Citeseer, pp. 143–147 (2003)Google Scholar
  13. 13.
    Wooldridge, M., Jennings, N.R.: Intelligent agents: theory and practice. Knowl. Eng. Rev. 10(02), 115–152 (1995)CrossRefGoogle Scholar
  14. 14.
    Feller, J., Fitzgerald, B.: A framework analysis of the open source software development paradigm. In: Proceedings of the twenty first international conference on Information systems, Association for Information Systems, pp. 58–69 (2000)Google Scholar
  15. 15.
    Koch, S.: Free/open source software development. IGI Global, Hershey (2005)CrossRefGoogle Scholar
  16. 16.
    Madey, G., Freeh, V., Tynan, R.: Agent-based modeling of open source using swarm. In: Proceedings of the AMCIS 2002, p. 201 (2002)Google Scholar
  17. 17.
    Bellifemine, F., Bergenti, F., Caire, G., Poggi, A.: Jadea java agent development framework. In: Multi-Agent Programming, pp. 125–147. Springer, New York (2005)Google Scholar
  18. 18.
    Fipa, A.: Fipa acl message structure specification. Foundation for Intelligent Physical Agents. http://www.fipa.org/specs/fipa00061/SC00061G.html (2002). Accessed 30 Jun 2004
  19. 19.
    Smith, R.: The contract net protocol: Highlevel communication and control in a distributed problem solver. IEEE Trans. Comput. C 29, 12 (1980)Google Scholar
  20. 20.
    Watkins, C.J., Dayan, P.: Q-learning. Mach. Learn. 8(3–4), 279–292 (1992)zbMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Thiago R. P. M. Rúbio
    • 1
    Email author
  • Henrique Lopes Cardoso
    • 1
  • Eugénio da Costa Oliveira
    • 1
  1. 1.LIACC / DEI, Faculdade de EngenhariaUniversidade Do Porto, Rua Dr. Roberto FriasPortoPortugal

Personalised recommendations