PENGARUH PERALIHAN BAHASA KOMPUTER PADA REPLIKASI EYE TRACKING

  • Yosep Aditya Wicaksono Universitas Sains dan Teknologi Komputer
  • Bagus Sudirman Universitas Sains dan Teknologi Komputer
  • Edy Siswanto Universitas Sains dan Teknologi Komputer
Keywords: Eye Tracking, Programming Language, Polyglot Programming, Computer Language

Abstract

Penggunaan beberapa bahasa pemrograman selama perangkat lunak berkembang adalah praktik umum dalam pengembangan perangkat lunak modern. Akan tetapi, penggunaan bahasa yang berbeda yang dapat memengaruhi pengembang produktifitas justru belum banyak diketahui. Studi yang disajikan dalam penelitian ini mereplikasi kontrol acak percobaan yang menyelidiki penggunaan beberapa bahasa dalam konteks pemrograman basis data tugas. Partisipan dalam penelitian ini diberi tugas pengkodean yang ditulis dalam Java dan salah satu dari tiga bahasa tertanam mirip SQL: SQL biasa dalam string, hanya metode Java, bahasa tertanam hibrid yang lebih mirip dengan Java. Selain merekam tanggapan kuesioner online dan solusi peserta terhadap tugas, gerakan mata peserta juga direkam menggunakan eye tracker. Eye Tracker sebagai metode untuk studi pengembangan perangkat lunak telah berkembang dalam beberapa tahun terakhir dan memungkinkan untuk mendapatkan informasi yang lebih mendalam tentang bagaimana pengembang menyelesaikan tugas pemrograman. Metode Eye tracking ini digunakan sebagai metode pengumpulan data dalam penlitian ini. Data pelacakan mata dikumpulkan dari 31 peserta (dari akademisi dan industri) untuk masing-masing dari enam tugas pemrograman yang berbeda. Untuk membandingkan efek variabel antar kelompok kelompok dan pengalaman profesional dan variabel tugas dalam kelompok pada variabel terikat Waktu dala peneyelesaiinya, penelitian ini menggunakan ANOVA model campuran. Hasil penelitian ini menunjukkan bahwa, efek signifikan pada produktivitas tidak ditemukan, ini berbeda dengan penlitian awal karena bahasa yang digunakan. Namun, efek yang sama ditemukan dari pengalaman peserta terhadap produktivitas pemrograman menunjukkan bahwa programmer yang lebih berpengalaman mampu menyelesaikan tugas pemrograman poliglot dengan cara yang lebih efisien. Selain itu ditemukan bahwa semua peserta melihat kode sampel dengan persentase waktu yang sama untuk tugas yang diberikan terlepas dari pengalaman atau varian bahasa yang diberikan. Perilaku navigasi tingkat atas juga sebagian besar tetap tidak berubah di seluruh pengalaman atau varian bahasa. Secara keseluruhan, dapat disimpulkan bahwa tingkat pemrograman poliglot tidak memiliki efek yang signifikan seperti tugas itu sendiri. Tingkat tinggi strategi yang digunakan peserta tampak serupa terlepas dari varian bahasa yang diberikan kepada mereka. Sebagai saran untuk penelitian dimasa depan, efek dari berbagai jenis pemrograman polyglot bahasa harus dipelajari secara mendalam untuk kesimpulan yang dicapai tetap benar di berbagai konteks pemrograman poliglot.

References

A. Stefik and S. Siebert. An empirical investigation into programming language syntax. Trans. Comput. Educ., 13(4):19:1{19:40, Nov. 2013.
A. Van Deursen, P. Klint, and J. Visser. Domain-specific languages: An annotated bibliography. ACM Sigplan Notices, 35(6):26-36, 2000.
A. Vetro, F. Tomassetti, M. Torchiano, and M. Morisio. Language interaction and quality issues: an exploratory study. In Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement, pages 319-322. ACM, 2012.
B. A. Becker. A new metric to quantify repeated compiler errors for novice programmers. In Proceedings of the 2016 ACM Conference on Innovation and Technology in Computer Science Education, pages 296{301. ACM, 2016.
B. Sharif, M. Falcone, and J. I. Maletic. An eye-tracking study on the role of scan time in finding source code defects. In Proceedings of the Symposium on Eye Tracking Research and Applications, ETRA '12, pages 381{384, New York, NY, USA, 2012. ACM.
F. Tomassetti and M. Torchiano. An empirical assessment of polyglot-ism in github. In Proceedings of the 18th International Conference on Evaluation and Assessment in Software Engineering, page 17. ACM, 2014.
H. Uwano, M. Nakamura, A. Monden, and K. ichi Matsumoto. Analyzing individual performance of source code review using reviewers' eye movement. In Proceedings of the 2006 Symposium on Eye Tracking Research &Amp; Applica- tions, ETRA '06, pages 133{140, New York, NY, USA, 2006. ACM.
H.-C. Fjeldberg. Polyglot programming. a business perspective. PhD thesis, Master thesis, Norwegian University of Science and Technology, 2008.
J. Siegmund, N. Peitek, C. Parnin, S. Apel, J. Hofmeister, C. Kastner, A. Begel, A. Bethmann, and A. Brechmann. Measuring neural efficiency of program comprehension. In Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, pages 140{150. ACM, 2017.
J. Stylos and B. A. Myers. The implications of method placement on api learnability. In Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering, pages 105{112. ACM, 2008.
K. Kevic, B. M. Walters, T. R. Sha er, B. Sharif, D. C. Shepherd, and T. Fritz. Tracing software developers' eyes and interactions for change tasks. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, pages 202{213. ACM, 2015.
L. A. Meyerovich and A. S. Rabkin. Empirical analysis of programming language adoption. SIGPLAN Not., 48(10):1{18, Oct. 2013.
M. E. Crosby and J. Stelovsky. How do we read algorithms? a case study. Computer, 23(1):25{35, 1990.
M. Hoppe and S. Hanenberg. Do developers benefit from generic types?: an empirical comparison of generic and raw types in java. In Proceedings of the 2013 ACM SIGPLAN International Conference on Object Oriented Programming Systems Languages & Applications, OOPSLA 2013, part of SPLASH 2013, Indianapolis, IN, USA, October 26-31, 2013, pages 457{474. ACM, 2013.
M. Konopka. Combining eye tracking with navigation paths for identi cation of cross-language code dependencies. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2015, page 1057{1059, New York, NY, USA, 2015. Association for Computing Machinery.
P. Mayer and A. Bauer. An empirical analysis of the utilization of multiple programming languages in open source projects. In Proceedings of the 19th In- ternational Conference on Evaluation and Assessment in Software Engineering, page 4. ACM, 2015.
P. Mayer, M. Kirsch, and M. A. Le. On multi-language software development, cross-language links and accompanying tools: a survey of professional software developers. Journal of Software Engineering Research and Development, 5(1):1, 2017.
P. Rodeghero and C. McMillan. An empirical study on the patterns of eye movement during summarization tasks. In 2015 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM), volume 00, pages 1{10, Oct. 2015.
P. Rodeghero, C. McMillan, P. W. McBurney, N. Bosch, and S. D'Mello. Improving automated source code summarization via an eye-tracking study of programmers. In Proceedings of the 36th international conference on Software en- gineering, pages 390{401, 2014.
R. E. Brooks. Towards a theory of the comprehension of computer programs. Intl J. of Man-Machine Studies, 18(6):543{554, 1983.
T. Busjahn, R. Bednarik, A. Begel, M. Crosby, J. H. Paterson, C. Schulte, B. Sharif, and S. Tamm. Eye movements in code reading: Relaxing the linear order. In 2015 IEEE 23rd International Conference on Program Comprehension, pages 255{265, May 2015
Published
2023-05-19