skip to main content
10.1145/3387904.3389287acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
short-paper

Program Comprehension in Virtual Reality

Published: 12 September 2020 Publication History

Abstract

Virtual reality is an emerging technology for various domains such as medicine, psychotherapy, architecture, and gaming. Recently, software engineering researchers have started to explore virtual reality as a tool for programmers. However, few studies examine source code comprehension in a virtual reality (VR) environment. In this paper, we explore the human experience of comprehending source code in VR. We conducted a study with 26 graduate students. We found that the programmers experienced more challenges when reading and comprehending code in VR. We found no statistically significant difference in the programmers' perceived productivity between our VR and traditional comprehension studies.

References

[1]
Akhan Akbulut, Cagatay Catal, and Burak Yıldız. 2018. On the effectiveness of virtual reality in the education of software engineering. Computer Applications in Engineering Education 26, 4 (2018), 918--927.
[2]
Nedhal A Al-Saiyd. 2017. Source code comprehension analysis in software maintenance. In 2017 2nd International Conference on Computer and Communication Systems (ICCCS). IEEE, 1--5.
[3]
Jacopo Aleotti, Stefano Caselli, and Monica Reggiani. 2004. Leveraging on a virtual environment for robot programming by demonstration. Robotics and Autonomous Systems 47, 2-3 (2004), 153--161.
[4]
Ernesto Arias, Hal Eden, Gerhard Fischer, Andrew Gorman, and Eric Scharff. 2000. Transcending the individual human mind-creating shared understanding through collaborative design. ACM Transactions on Computer-Human Interaction (TOCHI) 7, 1 (2000), 84--113.
[5]
Erik Arisholm, Hans Gallis, Tore Dyba, and Dag IK Sjoberg. 2007. Evaluating pair programming with respect to system complexity and programmer expertise. IEEE Transactions on Software Engineering 33, 2 (2007), 65--86.
[6]
Ivan Bacher, Brian Mac Namee, and John D Kelleher. 2017. Scoped: Visualising the Scope Chain Within Source Code. In EuroVis (Short Papers). 115--119.
[7]
Louis-Philippe Beland and Richard Murphy. 2016. Ill communication: technology, distraction & student performance. Labour Economics 41 (2016), 61--76.
[8]
Allen Bierbaum, Christopher Just, Patrick Hartling, Kevin Meinert, Albert Baker, and Carolina Cruz-Neira. 2001. VR Juggler: A virtual platform for virtual reality application development. In Proceedings IEEE Virtual Reality 2001. IEEE, 89--96.
[9]
M Blok, EM De Korte, L Groenesteijn, M Formanoy, and P Vink. 2009. The effects of a task facilitating working environment on office space use, communication, concentration, collaboration, privacy and distraction. In Proceedings of the 17th World Congress on Ergonomics (IEA 2009), 9-14 August 2009, Beijing, China. International Ergonomics Association.
[10]
Monica Bordegoni and Francesco Ferrise. 2013. Designing interaction with consumer products in a multisensory virtual reality environment. Virtual and Physical Prototyping 8, 1 (2013), 51--64. https://doi.org/10.1080/17452759.2012.762612 arXiv:https://doi.org/10.1080/17452759.2012.762612
[11]
Joao Castelhano, Isabel C Duarte, Carlos Ferreira, Joao Duraes, Henrique Madeira, and Miguel Castelo-Branco. 2019. The role of the insula in intuitive expert bug detection in computer code: an fMRI study. Brain imaging and behavior 13, 3 (2019), 623--637.
[12]
Robert DeLine, Mary Czerwinski, and George Robertson. 2005. Easing program comprehension by sharing navigation data. In 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05). IEEE, 241--248.
[13]
A. Elliott, B. Peiris, and C. Parnin. 2015. Virtual Reality in Software Engineering: Affordances, Applications, and Challenges. In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, Vol. 2. 547--550. https://doi.org/10.1109/ICSE.2015.191
[14]
Anthony Elliott, Brian Peiris, and Chris Parnin. 2015. Virtual reality in software engineering: Affordances, applications, and challenges. In Proceedings of the 37th International Conference on Software Engineering-Volume 2. IEEE Press, 547--550.
[15]
Florian Fittkau, Alexander Krause, and Wilhelm Hasselbring. 2015. Exploring software cities in virtual reality. In 2015 ieee 3rd working conference on software visualization (vissoft). IEEE, 130--134.
[16]
Benjamin Floyd, Tyler Santander, and Westley Weimer. 2017. Decoding the representation of code in the brain: An fMRI study of code review and expertise. In 2017 IEEE/ACM 39th International Conference on Software Engineering (ICSE). IEEE, 175--186.
[17]
Thomas Fritz, Andrew Begel, Sebastian C Müller, Serap Yigit-Elliott, and Manuela Züger. 2014. Using psycho-physiological measures to assess task difficulty in software development. In Proceedings of the 36th international conference on software engineering. 402--413.
[18]
Tsuneo Furuyama, Yoshio Arai, and Kazuhiko Iio. 1996. Analysis of fault generation caused by stress during software development. In Achieving Quality in Software. Springer, 14--28.
[19]
Judith Good and Paul Brna. 2004. Program comprehension and authentic measurement:: a scheme for analysing descriptions of programs. International Journal of Human-Computer Studies 61, 2 (2004), 169--185.
[20]
Kelleher Guerin and Gregory D Hager. 2017. Robot control, training and collaboration in an immersive virtual reality environment. US Patent 9,643,314.
[21]
Ulas Gulec, Murat Yilmaz, Veysi Isler, Rory V O'Connor, and Paul Clarke. 2018. Adopting virtual reality as a medium for software development process education. In Proceedings of the 2018 International Conference on Software and System Process. 71--75.
[22]
Aleshia Hayes and Karen Johnson. 2019. Cultural Embodiment in Virtual Reality Education and Training: A Reflection on Representation of Diversity. In Foundations and Trends in Smart Learning. Springer, 93--96.
[23]
Brian Hayes, Yusun Chang, and George Riley. 2018. Controlled unfair adaptive 360 VR video delivery over an MPTCP/QUIC architecture. In 2018 IEEE International Conference on Communications (ICC). IEEE, 1--6.
[24]
M. Hollander, D.A. Wolfe, and E.Chicken. 2013. Nonparametric Statistical Methods. Wiley.
[25]
Adrian H Hoppe, Kai Westerkamp, Sebastian Maier, Florian van de Camp, and Rainer Stiefelhagen. 2018. Multi-user Collaboration on Complex Data in Virtual and Augmented Reality. In International Conference on Human-Computer Interaction. Springer, 258--265.
[26]
Pakiso J Khomokhoana and Liezel Nel. 2019. Decoding source code comprehension: bottlenecks experienced by senior computer science students. In Annual Conference of the Southern African Computer Lecturers' Association. Springer, 17--32.
[27]
Michael Kircher, Prashant Jain, Angelo Corsaro, and David Levine. 2001. Distributed extreme programming. Extreme Programming and Flexible Processes in Software Engineering, Italy (2001), 66--71.
[28]
Way Kuo, Wei-Ting Kary Chien, and Taeho Kim. 2013. Reliability, yield, and stress burn-in: a unified approach for microelectronics systems manufacturing & software development. Springer Science & Business Media.
[29]
Masaru KOMORIb Yoshimasa KURUMI and Shigehiro MORIKAWA. 2016. Active and Passive Haptic Training Approaches in VR Laparoscopic Surgery Training. Medicine Meets Virtual Reality 22: NextMed/MMVR22 220 (2016), 215.
[30]
Lange B George S Deutsch JE Saposnik G Laver, KE and M Crotty. 2017. Virtual reality for stroke rehabilitation. Cochrane Database of Systematic Reviews 11 (2017). https://doi.org/10.1002/14651858.CD008349.pub4
[31]
Keith R. Lohse, Courtney G. E. Hilderman, Katharine L. Cheung, Sandy Tatla, and H. F. Machiel Van der Loos. 2014. Virtual Reality Therapy for Adults Post-Stroke: A Systematic Review and Meta-Analysis Exploring Virtual Environments and Commercial Games in Therapy. PLOS ONE 9, 3 (03 2014), 1--13. https://doi.org/10.1371/journal.pone.0093318
[32]
Jorge Martin-Gutierrez, Jorge Martín-Gutiérrez, Carlos Efrén Mora, Beatriz Añorbe-Díaz, and Antonio González-Marrero. 2017. Learning Strategies in Engineering Education Using Virtual and Augmented Reality Technologies. Eurasia Journal of Mathematics Science and Technology Education 13, 2 (2017), 297--300.
[33]
Leonel Merino, Alexandre Bergel, and Oscar Nierstrasz. 2018. Overcoming issues of 3D software visualization through immersive augmented reality. In 2018 IEEE Working Conference on Software Visualization (VISSOFT). IEEE, 54--64.
[34]
Merve Denizci Nazligul, Murat Yilmaz, Ulas Gulec, Mert Ali Gozcu, Rory V O'Connor, and Paul M Clarke. 2017. Overcoming public speaking anxiety of software engineers using virtual reality exposure therapy. In European Conference on Software Process Improvement. Springer, 191--202.
[35]
Kristine L Nowak and Frank Biocca. 2003. The effect of the agency and anthropomorphism on users' sense of telepresence, copresence, and social presence in virtual environments. Presence: Teleoperators & Virtual Environments 12, 5 (2003), 481--494.
[36]
Roy Oberhauser and Carsten Lecon. 2017. Gamified Virtual Reality for Program Code Structure Comprehension. International Journal of Virtual Reality 17, 2 (2017).
[37]
Gary M Olson and Judith S Olson. 2000. Distance matters. Human-computer interaction 15, 2-3 (2000), 139--178.
[38]
Guillaume Pourchera, Daphné Micheletb, Thomas Recanzonec, Sabrina Stitic, Erwan Jolivetc, and Jessy Barréb. 2018. INTEREST OF VIRTUAL REALITY (VR) SIMULATION FOR SURGICAL LEARNING: VR SINGLE PORT SLEEVE GASTRECTOMY. In OBESITY SURGERY, Vol. 28. SPRINGER 233 SPRING ST, NEW YORK, NY 10013 USA, 531--531.
[39]
Anett Racz and Gergo Zilizi. 2018. VR aided architecture and interior design. In 2018 International Conference on Advances in Computing and Communication Engineering (ICACCE). IEEE, 11--16.
[40]
Ayushi Rastogi, Suresh Thummalapenta, Thomas Zimmermann, Nachiappan Nagappan, and Jacek Czerwonka. 2017. Ramp-up Journey of New Hires: Do strategic practices of software companies influence productivity?. In Proceedings of the 10th Innovations in Software Engineering Conference. 107--111.
[41]
Paige Rodeghero, Collin McMillan, Paul W. McBurney, Nigel Bosch, and Sidney D'Mello. 2014. Improving Automated Source Code Summarization via an Eye-Tracking Study of Programmers. In Proceedings of the 36th International Conference on Software Engineering (ICSE 2014). Association for Computing Machinery, New York, NY, USA, 390--401. https://doi.org/10.1145/2568225.2568247
[42]
Anastasia Ruvimova, Junhyeok Kim, Thomas Fritz, Mark Hancock, and David C Shepherd. 2020. "Transport Me Away": Fostering Flow in Open Offices through Virtual Reality. In Proceedings of the ACM Conference on Human Factors in Computing Systems. ACM.
[43]
Mian Usman Sattar, Sellappan Palaniappan, Asiah Lokman, Nauman Shah, Usman Khalid, and Raza Hasan. 2020. Motivating Medical Students Using Virtual Reality Based Education. International Journal of Emerging Technologies in Learning (iJET) 15, 02 (2020), 160--174.
[44]
Vibhu Saujanya Sharma, Rohit Mehra, Vikrant Kaulgud, and Sanjay Podder. 2018. An immersive future for software engineering: Avenues and approaches. In Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results. 105--108.
[45]
Janet Siegmund, Christian Kästner, Sven Apel, Chris Parnin, Anja Bethmann, Thomas Leich, Gunter Saake, and André Brechmann. 2014. Understanding understanding source code with functional magnetic resonance imaging. In Proceedings of the 36th International Conference on Software Engineering. 378--389.
[46]
Igor Steinmacher, Tayana Uchoa Conte, Christoph Treude, and Marco Aurélio Gerosa. 2016. Overcoming open source project entry barriers with a portal for newcomers. In Proceedings of the 38th International Conference on Software Engineering. 273--284.
[47]
Tuukka M Takala. 2014. RUIS: A toolkit for developing virtual reality applications with spatial interaction. In Proceedings of the 2nd ACM symposium on Spatial user interaction. ACM, 94--103.
[48]
Gustav Taxén and Ambjörn Naeve. 2002. A system for exploring open issues in VR-based education. Computers & Graphics 26, 4 (2002), 593--598.
[49]
Jozef Tvarozek, Martin Konopka, Pavol Navrat, and Maria Bielikova. 2016. Studying various source code comprehension strategies in programming education. Eye Movements in Programming: Models to Data 23 (2016), 25--26.
[50]
Juraj Vincur, Martin Konopka, Jozef Tvarozek, Martin Hoang, and Pavol Navrat. 2017. Cubely: virtual reality block-based programming environment. In Proceedings of the 23rd ACM Symposium on Virtual Reality Software and Technology. 1--2.
[51]
Peng Wang, Peng Wu, Jun Wang, Hung-Lin Chi, and Xiangyu Wang. 2018. A critical review of the use of virtual reality in construction engineering education and training. International journal of environmental research and public health 15, 6 (2018), 1204.
[52]
Eliane Wiese, Anna Rafferty, and Armando Fox. 2019. Linking code readability, structure, and comprehension among novices: it's complicated. In 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET). IEEE, 84--94.
[53]
Laurie Williams, Robert R Kessler, Ward Cunningham, and Ron Jeffries. 2000. Strengthening the case for pair programming. IEEE software 17, 4 (2000), 19--25.
[54]
Christine Wolfgramm, Nicole Suter, and Eva Göksel. 2016. Examining the Role of Concentration, Vocabulary and Self-concept in Listening and Reading Comprehension. International Journal of Listening 30, 1-2 (2016), 25--46.
[55]
Christian Zirkelbach, Alexander Krause, and Wilhelm Hasselbring. 2019. Handson: experiencing software architecture in virtual reality. (2019).

Cited By

View all
  • (2024)CollaVRation: An Immersive Virtual Environment for Collaborative Software DevelopmentIntelligent Computing10.1007/978-3-031-62273-1_19(280-298)Online publication date: 15-Jun-2024
  • (2023)BlocklyVR: Exploring Block-based Programming in Virtual RealityProceedings of the 22nd International Conference on Mobile and Ubiquitous Multimedia10.1145/3626705.3627779(257-269)Online publication date: 3-Dec-2023
  • (2023)Azimuth Calculation and Telecommunication between VR Headset and Smartphones for Nearby InteractionProceedings of the Seventeenth International Conference on Tangible, Embedded, and Embodied Interaction10.1145/3569009.3573107(1-5)Online publication date: 26-Feb-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPC '20: Proceedings of the 28th International Conference on Program Comprehension
July 2020
481 pages
ISBN:9781450379588
DOI:10.1145/3387904
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 September 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. collaboration
  2. pair programming
  3. virtual reality

Qualifiers

  • Short-paper
  • Research
  • Refereed limited

Conference

ICPC '20
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)30
  • Downloads (Last 6 weeks)1
Reflects downloads up to 13 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)CollaVRation: An Immersive Virtual Environment for Collaborative Software DevelopmentIntelligent Computing10.1007/978-3-031-62273-1_19(280-298)Online publication date: 15-Jun-2024
  • (2023)BlocklyVR: Exploring Block-based Programming in Virtual RealityProceedings of the 22nd International Conference on Mobile and Ubiquitous Multimedia10.1145/3626705.3627779(257-269)Online publication date: 3-Dec-2023
  • (2023)Azimuth Calculation and Telecommunication between VR Headset and Smartphones for Nearby InteractionProceedings of the Seventeenth International Conference on Tangible, Embedded, and Embodied Interaction10.1145/3569009.3573107(1-5)Online publication date: 26-Feb-2023
  • (2022)On Comprehension of Genetic Programming Solutions: A Controlled Experiment on Semantic InferenceMathematics10.3390/math1018338610:18(3386)Online publication date: 18-Sep-2022
  • (2022)Collaborative Software Visualization for Program Comprehension2022 Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT55257.2022.00016(75-86)Online publication date: Oct-2022
  • (2022)Scalable Collaborative Software Visualization as a Service: Short Industry and Experience Paper2022 IEEE International Conference on Cloud Engineering (IC2E)10.1109/IC2E55432.2022.00026(182-187)Online publication date: Sep-2022
  • (2022)Collaborative program comprehension via software visualization in extended realityInformation and Software Technology10.1016/j.infsof.2022.107007151:COnline publication date: 1-Nov-2022
  • (2022)The human experience of comprehending source code in virtual realityEmpirical Software Engineering10.1007/s10664-022-10196-527:7Online publication date: 20-Sep-2022
  • (2022)Creating a Post-sedentary Work Context for Software EngineeringSense, Feel, Design10.1007/978-3-030-98388-8_12(123-138)Online publication date: 20-Mar-2022
  • (2020)Remote Pair Programming in Virtual Reality2020 IEEE International Conference on Software Maintenance and Evolution (ICSME)10.1109/ICSME46990.2020.00046(406-417)Online publication date: Sep-2020

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media