Skip to main content

A Survey on the Effects of Working Conditions on Programming Efficiency in an Educational Environment

  • Conference paper
  • First Online:
  • 2031 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 12254))

Abstract

A recurrent concern of instructors and managers in learning and industrial sectors is how to organise the working environment to increase the productivity in tasks such as programming and software testing. Evidence of the increasing interest from different domains in this topic is the growing amount of research that has been published on physical factors (e.g., product, personnel, project and process), programming tasks (e.g., tests, questionnaires, programming, testing and debugging), and assessment methods (e.g., time, software metrics and academic grading). The objective of this paper is to survey the literature and to enable one to gain valuable insights into the relevance of physical factors to improve programming efficiency, especially in a learning environment. This study also makes recommendations on the techniques that can provide further experience for learners before joining the industrial sector. Finally, this survey suggests research directions, including an analysis of the correlation between physical factors and measurable productivity.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Trendowicz, A., Münch, J.: Factors influencing software development productivity - state-of-the-art and industrial experiences. Adv. Comput. 77, 185–241 (2009)

    Article  Google Scholar 

  2. Maxwell, K.D., Forselius, P.: Benchmarking software development productivity. IEEE Softw. 17(1), 80–88 (2000)

    Article  Google Scholar 

  3. Delorey, D.P., Knutson, C.D., Chun, S.: Do programming languages affect productivity? A case study using data from open source projects. In: First International Workshop on Emerging Trends in FLOSS Research and Development, FLOSS 2007, p. 4 (2007)

    Google Scholar 

  4. Mohapatra, S., Sreejesh, S.: Model for improving productivity without impacting quality of deliverables in it projects. Int. J. Inf. Technol. Project Manage. (IJITPM) 5(2), 14–29 (2014)

    Article  Google Scholar 

  5. Sullivan, A., Bers, M.U.: Girls, boys, and bots: gender differences in young children’s performance on robotics and programming tasks. J. Inf. Technol. Educ. Innov. Pract. 15, 145–165 (2017)

    Google Scholar 

  6. Chaparro, E.A., Yuksel, A., Romero, P., Bryant, S.: Factors affecting the perceived effectiveness of pair programming in higher education. In: 17th Workshop of the Psychology of Programming Interest Group, June 2005, pp. 5–18 (2005)

    Google Scholar 

  7. Nanz, S., Furia, C.A.: A comparative study of programming languages in rosetta code. In: Proceedings - International Conference on Software Engineering, vol. 1, pp. 778–788 (2015)

    Google Scholar 

  8. Fernández-Sanz, L., Villalba, M.T., Medina, J.A., Misra, S.: A study on the key soft skills for successful participation of students in multinational engineering education. Int. J. Eng. Educ. 33(6), 2061–2070 (2017)

    Google Scholar 

  9. Raziq, A., Maulabakhsh, R.: Impact of working environment on job satisfaction. Procedia Econ. Financ. 23, 717–725 (2015)

    Article  Google Scholar 

  10. Sudhakar, P., Farooq, A., Patnaik, S.: Measuring productivity of software development teams. Serb. J. Manage. 7(1), 65–75 (2012)

    Article  Google Scholar 

  11. Hu, S., Kuh, G.D.: Maximizing what students get out of college: testing a learning productivity model. J. Coll. Student Dev. 44(2), 185–203 (2003)

    Article  Google Scholar 

  12. Rasch, R.H., Tosi, H.L.: Factors affecting software developers’ performance: an integrated approach. MIS Q. 16, 395–413 (1992)

    Article  Google Scholar 

  13. Wiedenbeck, S., Labelle, D., Kain, V.N.: Factors affecting course outcomes in introductory programming. In: 16th Workshop of the Psychology of Programming Interest Group, pp. 97–110 (2004)

    Google Scholar 

  14. Bergersen, G.R., Hannay, J.E., Sjoberg, D.I., Dyba, T., Karahasanovic, A.: Inferring skill from tests of programming performance: combining time and quality. In: 2011 International Symposium on Empirical Software Engineering and Measurement, April 2014, pp. 305–314 (2011)

    Google Scholar 

  15. Darcy, D.P., Ma, M.: Exploring individual characteristics and programming performance: implications for programmer selection. In: Proceedings of the 38th Annual Hawaii International Conference on System Sciences, p. 314a. IEEE (2005)

    Google Scholar 

  16. Sprigle, J.E., Schaefer, L.: Age, gender, and spatial knowledge influences on preschoolers’ computer programming ability. Early Child Dev. Care 14(3–4), 243–250 (1984)

    Article  Google Scholar 

  17. Khan, I.A., Hierons, R.M., Brinkman, W.P.: Moods and programmers’ performance. In: PPIG, p. 2 (2007)

    Google Scholar 

  18. Kamma, D., Jalote, P.: Effect of task processes on programmer productivity in model-based testing. In Proceedings of the 6th India Software Engineering Conference, pp. 23–28. ACM (2013)

    Google Scholar 

  19. Khan, I.A., Brinkman, W., Hierons, R.M.: Do moods affect programmers’ debug performance? Cogn. Technol. Work 13(4), 245–258 (2011). https://doi.org/10.1007/s10111-010-0164-1

    Article  Google Scholar 

  20. Thadhani, A.J.: Factors affecting programmer productivity during application development. IBM Syst. J. 23(1), 19–35 (1984)

    Article  Google Scholar 

  21. Watson, C., Li, F.W.B., Godwin, J.L.: Predicting performance in an introductory programming course by logging and analyzing student programming behavior. In: 2013 IEEE 13th International Conference on Advanced Learning Technologies, pp. 319–323. IEEE (2013)

    Google Scholar 

  22. Mohapatra, S.: Maximising productivity by controlling influencing factors in commercial software development. Int. J. Inf. Commun. Technol. 3(2), 160–179 (2011)

    MathSciNet  Google Scholar 

  23. Vihavainen, A.: Predicting students’ performance in an introductory programming course using data from students’ own programming process. In: 2013 IEEE 13th International Conference on Advanced Learning Technologies, pp. 498–499. IEEE (2013)

    Google Scholar 

  24. Malik, M.I., Ahmad, A., Gomez, S.F., Ali, M.: A study of work environment and employees’ performance in Pakistan. Afr. J. Bus. Manage. 5(34), 13227 (2011)

    Google Scholar 

  25. Srivastava, A.K.: Effect of perceived work environment on employees’ job behaviour and organizational effectiveness. J. Indian Acad. Appl. Psychol. 34(1), 47–55 (2008)

    Google Scholar 

  26. Robone, S., Jones, A.M., Rice, N.: Contractual conditions, working conditions and their impact on health and well-being. Eur. J. Health Econ. 12(5), 429–444 (2011). https://doi.org/10.1007/s10198-010-0256-0

    Article  Google Scholar 

  27. McCraty, R., Atkinson, M., Tomasino, D.: Impact of a workplace stress reduction program on blood pressure and emotional health in hypertensive employees. J. Altern. Complement. Med. 9(3), 355–369 (2003)

    Article  Google Scholar 

  28. Arnold, K.A., Dupré, K.E.: Perceived organizational support, employee health and emotions. Int. J. Workplace Health Manage. 5(2), 139–152 (2012)

    Article  Google Scholar 

  29. Danielsson, C.B., Bodin, L.: Office type in relation to health, well-being, and job satisfaction among employees. Environ. Behav. 40(5), 636–668 (2008)

    Article  Google Scholar 

  30. Estácio, B., et al.: Evaluating collaborative practices in acquiring programming skills: findings of a controlled experiment. In: 2015 29th Brazilian Symposium on Software Engineering, pp. 150–159. IEEE (2015)

    Google Scholar 

  31. Nagappan, N., et al.: Improving the cs1 experience with pair programming. ACM SIGCSE Bull. 35(1), 359–362 (2003)

    Article  Google Scholar 

  32. Oyesiku, D., Adewumi, A., Misra, S., Ahuja, R., Damasevicius, R., Maskeliunas, R.: An educational math game for high school students in Sub-Saharan Africa. In: Florez, H., Diaz, C., Chavarriaga, J. (eds.) ICAI 2018. CCIS, vol. 942, pp. 228–238. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-01535-0_17

    Chapter  Google Scholar 

  33. Flor, N.V., Hutchins, E.L.: A case study of team programming during perfective software maintenance. In: Empirical Studies of Programmers: Fourth Workshop, p. 36. Intellect Books (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Luiz Jonatã Pires de Araújo .

Editor information

Editors and Affiliations

Appendix

Appendix

References

Physical factors

Programming tasks

Performance measure

Thadhani (1984)

Programming experience, task complexity, a fraction of time spent directly working on the task

Industrial project

Time (constraint) and lines of code

Rasch and Tosi (1992)

Goal difficulty and clarity, high-achievement needs, self-esteem

Job-specific tasks

Self-evaluation, relative performance

Maxwell and Forselius (2000)

Application type, programming language, database management system, development model, hardware platform

Regular development work

Customers’ participation, development environment adequacy, staff availability, standards use, methods use, tools use, software’s logical complexity, requirements volatility

Hu and Kuh (2003)

College environment, the estimated effort put into study

Usual tests and exams in university

System of points of the university

Wiedenbeck et al. (2004)

Programming experience, self-efficacy, ability to construct mental models

Time specific simple and complex tasks

Course grading system

Chaparro et al. (2005)

Pair Programming

Debugging, refactoring and program comprehension

Amount of finished exercises

Darcy and Ma (2005)

GPA and age

Individual coding task (Simple payroll system)

Specification conformance, code structure complexity

Del (2007)

Programming language

Job specific tasks (working on project)

Speed

Khan et al. (2007)

Programmers’ mood and emotions

Various debugging exercises

Completion of the debugging test

Trendowicz and Mnch (2009)

Product, process, personnel and project factors

Industrial level tasks

Overall development productivity

Paiva et al. (2010)

Commitment, communication, benefits, consistent requirements, experience, motivation, location, project and team size

Job specific tasks

Questionnaire with developers

Bergersen et al. (2011)

Individual expertise and skills

Simple programming tasks

Time and quality

Khan (2011)

Programmer’s current mood and emotions

Actual test, which consisted of two cycles of the movie and debugging test

Completion of the debugging test

Mohapatra (2011)

Application complexity, client support, availability of modules and testing tools, document management system and computational performance

Software project development

Following systematic steps as laid down in the project management plan

Mohapatra (2011)

Effective training, availability of skilled manpower in the technology domain, well-documented procedure

Software development, maintenance and testing industrial projects

Function points, number of defects

Sudhakar et al. (2012)

Size of the team, computing infrastructure and software engineering tools

Software project

Lines of code

Watson et al. (2013)

Logs of compilation errors and code snapshots across the semester

Coding tasks in an introductory programming course

Overall coursework mark

Kamma and Jalote (2013)

Techniques used by programmers to organise their work

Set of modules for testing in model-based development

Actual effort spent by the programmer in a task and the software size of that task

Vihavainen (2013)

Students’ programming behaviour (eagerness to start new exercises, the time required to complete an exercise)

Regular assignments in an introductory programming course

Course grade

Dagiene et al. (2014)

Prior coding experience

Algorithmic thinking contest tasks

Grades

Mohapatra and Sreejesh (2014)

Application complexity, training, client support, reusing existing code and quality of document management system

Software projects

Cost estimation model

Nanz and Furia (2015)

Roles of participants

Algorithm Implementation and other 745 simple tasks

Lines of code, memory usage

Raziq and Maulabakhsh (2015)

Relationship with team members

Job specific tasks

Job satisfaction

Sullivan and Umashi Bers (2017)

Age and Gender

IT and Robotic tasks

Function points, object points, use case points and feature points

Busechian et al. (2018)

Pair Programming

Job specific tasks

Topological brain maps

Wagner and Ruhe (2018)

Organisational cultural factors, Team Culture factors, experience and work environment factors

Industrial level tasks

Effort per SLOC (source lines of code), function points

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Charikova, M. et al. (2020). A Survey on the Effects of Working Conditions on Programming Efficiency in an Educational Environment. In: Gervasi, O., et al. Computational Science and Its Applications – ICCSA 2020. ICCSA 2020. Lecture Notes in Computer Science(), vol 12254. Springer, Cham. https://doi.org/10.1007/978-3-030-58817-5_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-58817-5_22

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-58816-8

  • Online ISBN: 978-3-030-58817-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics