[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ Skip to main content
Log in

Design of Programmer’s Skill Evaluation Metrics for Effective Team Selection

  • Published:
Wireless Personal Communications Aims and scope Submit manuscript

Abstract

Software projects are now developed in critical environments with hard restrictions and contesting limitations. For developing a product under deadline, cost, and quality constraints, extraordinary efforts are required. The team selection is the part of software planning to avoid the time, cost, and maintenance overheads. This paper has provided five metrics to measure the aspects of the programmer’s capabilities. The metrics are provided to measure the technical capability, experience, bug resistivity, coding capability, and learning interests of programmers. Each measure of programmer capability is based on multiple sub-features. These features and sub-features are evaluated based on the rating collected from the programmer, group members, and the team leader. Each team member submits his view to rate the programmer’s adaptation to specific features. The rating of each co-programmer is evaluated under the light of precise distinctive weight. The weights are assigned based on the feature and its dependency and knowledge of the team members. The evaluated feature weights are finally applied under high-level capability metrics to measure the programmer’s strength for that feature. After generating the individual capability measure, the aggregate operators are applied to conclude the capability of the programmer. At the final stage, the rule-based decision criteria are defined to distinguish the expert, skilled, and low-performance programmers. The experimental data are collected by conducting a survey on five teams of programmers with overall 30 programmers. The proposed metrics adaptive model can improve the decision criteria for the selection of team members for specific projects.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
£29.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price includes VAT (United Kingdom)

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

Similar content being viewed by others

References

  1. Gulati, J., Bhardwaj, P., Suri, B., & Lather, A. S. (2016). A study of relationship between performance, temperament and personality of a software programmer. SIGSOFT Software Engineering Notes, 41, 1–5.

    Article  Google Scholar 

  2. Magnaudet, M., Chatty, S. (2014). What should adaptivity mean to interactive software programmers?. In SIGCHI symposium on Engineering interactive computing systems, pp. 13–22.

  3. Khan, I. A., Hierons, R. M., Brinkman, W.-P. (2006). Programmer’s mood and their performance. In 13th Eurpoean conference on Cognitive ergonomics: trust and control in complex socio-technical systems, pp. 123–124.

  4. Douce, C., Livingstone, D., & Orwell, J. (2005). Automatic test-based assessment of programming: A review. Journal on Educational Resources in Computing, 5(3), 4.

    Article  Google Scholar 

  5. DeMarco, T., Lister, T. (1985). Programmer performance and the effects of the workplace. In 8th international conference on Software engineering, pp. 268–272.

  6. Joseph, H. R. (2014). Software programmer management: a machine learning and human computer interaction framework for optimal task assignment. In SIGSOFT International Symposium on Foundations of Software Engineering, pp. 826–828.

  7. Cheney, P. H. (1984). Effects of individual characteristics, organizational factors and task characteristics on computer programmer productivity and job satisfaction. Information & Management, 7(4), 209–214.

    Article  Google Scholar 

  8. Paunonen, S. V., & Jackson, D. N. (1987). Accuracy of interviewers and students in identifying the personality characteristics of personnel managers and computer programmers. Journal of Vocational Behavior, 31(1), 26–36.

    Article  Google Scholar 

  9. Baehr, M. E., & Orban, J. A. (1989). The role of intellectual abilities and personality characteristics in determining success in higher-level positions. Journal of Vocational Behavior, 35(3), 270–287.

    Article  Google Scholar 

  10. Capretz, L. F. (2003). Personality types in software engineering. International Journal of Human-Computer Studies, 58(2), 207–214.

    Article  Google Scholar 

  11. Ahmed, F., Campbell, P., Jaffar, A., & Alkobaisi, S. (2010). Learning & personality types: A case study of a software design course. Journal of Information Technology Eduction: Innovations in Practice, 9, 237–252.

    Google Scholar 

  12. Feldt, R., Torkar, R., Angelis, L., & Samuelsson, M. (2008). Towards individualized software engineering: Empirical studies should collect psychometrics. In International workshop on Cooperative and human aspects of software engineering, pp. 49–52.

  13. Tejaswini, et al. (2017). Programmer Productivity Analyzer Tool. In IEEE International Conference on Computational Intelligence and Computing Research (ICCIC), pp. 1–8.

  14. Li, X., Shih, P.-C., & David, E. (2018). The effect of software programmers’ personality on programming performance. In International Conference on Artificial Intelligence and Big Data (ICAIBD), pp. 209–213.

  15. Feldt, R., Angelis, L., Torkar, R., & Samuelsson, M. (2010). Links between the personalities, views and attitudes of software engineers. Information and Software Technology, 52(6), 611–624.

    Article  Google Scholar 

  16. Goldberg, L. R., et al. (2006). The international personality item pool and the future of public-domain personality measures. Journal of Research in Personality, 40(1), 84–96.

    Article  Google Scholar 

  17. Wang, Y. (2009). Building the linkage between project managers’ personality and success of software projects. In 3rd International Symposium on Empirical Software Engineering and Measurement, pp. 410–413.

  18. Kosti, M. V., Feldt, R., & Angelis, L. (2014). Personality, emotional intelligence and work preferences in software engineering: An empirical study. Information and Software Technology, 56(8), 973–990.

    Article  Google Scholar 

  19. Cruz, S., da Silva, F. Q. B., & Capretz, L. F. (2015). Forty years of research on personality in software engineering: A mapping study. Computers in Human Behavior, 46, 94–113.

    Article  Google Scholar 

  20. Yilmaz, M., O’Connor, R. V., Colomo-Palacios, R., & Clarke, P. (2017). An examination of personality traits and how they impact on software development teams. Information and Software Technology, 86, 101–122.

    Article  Google Scholar 

  21. Fitria, & Nugraha, I. G. B. B. (2018). Formation of software programmer team based on skill interdependency. In International Conference on Information Technology Systems and Innovation (ICITSI), pp. 77–81.

  22. Dieste, O., et al. (2018). Empirical evaluation of the effects of experience on code quality and programmer productivity: An exploratory study. In International Conference on Software and System Process, pp. 111–112.

  23. Ajibade, S.-S. M., Ahmad, N. B., Shamsuddin, S. M. (2019). An heuristic feature selection algorithm to evaluate academic performance of students. In 10th Control and System Graduate Research Colloquium (ICSGRC), pp. 110–114.

  24. Zulfahri, A. F., Widodo, C. E., & Gernowo, R. (2019). Implementing Importance-Performance Analysis (IPA) for measuring students satisfaction levels. In International Seminar on Research of Information Technology and Intelligent Systems (ISRITI), pp. 363–367.

  25. Denny, J., Rubeena, M. M., & Denny, J. K. (2019). A noval approach for predicting the academic performance of student. In IEEE International Conference on Electrical, Computer and Communication Technologies (ICECCT), pp. 1–5.

  26. Korukonda, A. R. (2005). Personality, individual characteristics, and predisposition to technophobia: Some answers, questions, and points to ponder about. Information Sciences, 170(2), 309–328.

    Article  Google Scholar 

  27. Tett, R. P., Freund, K. A., Christiansen, N. D., Fox, K. E., & Coaster, J. (2012). Faking on self-report emotional intelligence and personality tests: Effects of faking opportunity, cognitive ability, and job type. Personality and Individual Differences, 52(2), 195–201.

    Article  Google Scholar 

  28. Gilal, A. R., Jaafar, J., Omar, M., Basri, S., & Aziz, I. D. A. (2019). A set of rules for constructing gender-based personality types’ composition for software programmer. In International Conference on Data Engineering, pp. 363–374.

  29. Ortin, F., Rodriguez-Prieto, O., Pascual, N., & Garcia, M. (2020). Heterogeneous tree structure classification to label Java programmers according to their expertise level. Future Generation Computer Systems, 105, 380–394.

    Article  Google Scholar 

  30. Lather, A. S., Kumar, S., & Singh, Y. (2000). Suitability assessment of software developers: A fuzzy approach. SIGSOFT Software Engineering Notes, 25(3), 30–31.

    Article  Google Scholar 

  31. Mazni, O., Syed-Abdullah, S. L., & Hussin, N. M. (2010). Analyzing personality types to predict team performance. In International Conference on Science and Social Research, pp. 624–628.

  32. Varona, D., Capretz, L. F., Pinero, Y., & Raza, A. (2012). Evolution of software engineers’ personality profile. SIGSOFT Software Engineering Notes, 37(1), 1–5.

    Article  Google Scholar 

  33. Varona, D., Lizama-Mue, Y., & Capretz, L. F. (2014). A comparison of junior and senior software engineering students’ personalities. In 7th International Workshop on Cooperative and Human Aspects of Software Engineering, pp. 131–132.

  34. Gilal, A. R., Jaafar, J., Omar, M., Basri, S., & Waqas, A. (2016). A rule-based model for software development team composition: Team leader role with personality types and gender classification. Information and Software Technology, 74, 105–113.

    Article  Google Scholar 

  35. Sfetsos, P., Adamidis, P., Angelis, L., Stamelos, I., & Deligiannis, I. (2012). Investigating the impact of personality and temperament traits on pair programming: A controlled experiment replication. In Eighth International Conference on the Quality of Information and Communications Technology, pp. 57–65.

  36. Salleh, N., Mendes, E., & Grundy, J. (2014). Investigating the effects of personality traits on pair programming in a higher education setting through a family of experiments. Empirical Software Engineering, 19(3), 714–752.

    Article  Google Scholar 

  37. Acuña, S. T., Gómez, M., & Juristo, N. (2009). How do personality, team processes and task characteristics relate to job satisfaction and software quality? Information and Software Technology, 51(3), 627–639.

    Article  Google Scholar 

  38. Schaefer, R. (2006). A critical programmer searches for professionalism. SIGSOFT Software Engineering Notes, 31(4), 1–17.

    Article  MathSciNet  Google Scholar 

  39. Shepherd, D. C., & Murphy, G. C. (2008). A sketch of the programmer’s coach: Making programmers more effective. In International workshop on Cooperative and human aspects of software engineering, pp. 97–100.

  40. Whalley, J. L., & Philpott, A. (2011). A unit testing approach to building novice programmers’ skills and confidence. In Thirteenth Australasian Computing Education Conference, pp. 113–118.

  41. Rodrigo, M. M. T., et al. (2009). Affective and behavioral predictors of novice programmer achievement. SIGCSE Bulletin, 41(3), 156–160.

    Article  Google Scholar 

  42. Shuhidan, S. M., Hamilton, M., & D’Souza, D. (2011). Understanding novice programmer difficulties via guided learning. In 16th annual joint conference on Innovation and technology in computer science education, pp. 213–217.

  43. Gilal, A. R., Jaafar, J., Basri, S., Omar, M., & Tunio, M. Z. (2015). Making programmer suitable for team-leader: Software team composition based on personality types. In International symposium on mathematical sciences and computing research, pp. 78–82.

  44. Amin, A., Rehman, M., Basri, S., & Hassan, M. F. (2015). A proposed conceptual framework of programmer’s creativity. In International symposium on technology management and emerging technologies, pp. 108–113.

  45. Somasundaram, T. S., Kiruthika, U., Gowsalya, M., Hemalatha, A., & Philips, A. (2015). Determination of competency of programmers by classification and ranking using AHP. In International conference on electro/information technology, pp. 194–200.

  46. Reinstedt, R. N. (1967). Results of a programmer performance prediction study. Transactions on Engineering Management, 14(4), 183–187.

    Article  Google Scholar 

  47. Katzmarski, B., & Koschke, R. (2012). Program complexity metrics and programmer opinions. In International Conference on Program Comprehension, pp. 17–26.

  48. Solla, M., Patel, A., & Wills, C. (2011). New metric for measuring programmer productivity. In Symposium on Computers & Informatics, pp. 177–182.

  49. Harrison, W. (1989). PDSS: A programmer’s decision support system. Data & Knowledge Engineering, 4(2), 115–123.

    Article  Google Scholar 

  50. Kemayel, L., Mili, A., & Ouederni, I. (1991). Controllable factors for programmer productivity: A statistical study. Journal of Systems and Software, 16(2), 151–163.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kapil Juneja.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Juneja, K. Design of Programmer’s Skill Evaluation Metrics for Effective Team Selection. Wireless Pers Commun 114, 3049–3080 (2020). https://doi.org/10.1007/s11277-020-07517-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11277-020-07517-6

Keywords

Navigation