Students’ Assessments in Learning Programming based on Bloom’s Taxonomy


  • Rozita Kadar Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA Pulau Pinang Branch, Pulau Pinang
  • Syarifah Adilah Mohamed Yusoff Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA Pulau Pinang Branch, Pulau Pinang
  • Saiful Nizam Warris Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA Pulau Pinang Branch, Pulau Pinang
  • Mohd Saifulnizam Abu Bakar Faculty of Computer and Mathematical Sciences, Universiti Teknologi MARA, Pulau Pinang Branch, Pulau Pinang



programming assessment, bloom taxonomy, computer education, programming structure


Learning a program is important for all students, not only students from the field of computer science but all fields. Programming languages are different from human communication languages as they have different structural forms. This makes it difficult for beginners especially for non-computer science students to understand the structure of programming languages. Therefore, to learn and understand the programming language more effectively, this article focuses on the important structure in learning a program from the initial stage to the advanced level suitable for non-computer science students. The objective of this article is to suggest important elements that can be assessed on these students which are to measure their understanding as they learn programming languages. The questions proposed to measure students' understanding were based on Bloom's Taxonomy, which covers six levels of understanding. It is hoped that this assessment proposal can act as a guideline for educators in fully focusing on important matters during the teaching and learning process.


Download data is not yet available.


Aljunid, S. A., Zin, A. M., & Shukur, Z. (2012). A Study on the Program Comprehension and Debugging Processes of Novice Programmers. Journal of Software Engineering, 6(1).

Bjarne, S, Programming: Principles and Practice Using C++, 2nd, Amazon Ltd, 2014, ISBN: 13: 978-03219 3.

Bosse, Y., & Gerosa, M. A. (2017). Why is programming so difficult to learn? ACM SIGSOFT Software Engineering Notes, 41(6), 1–6.

Bloom, B. S. (1956). Taxonomy of educational objectives. Vol. 1: Cognitive domain. New York: McKay, 20-24.

Cay S. H. ,Timothy A. Budd, Big C++ paperback, 3nd, Wiley, 2013, ISBN: 9781118674291 1.

Chan Mow, I. T. (2008). Issues and difficulties in teaching novice computer programming. Innovative Techniques in Instruction Technology, E-Learning, E-Assessment, and Education, 199–204.

Costa, C. J., Aparicio, M., & Cordeiro, C. (2012). A solution to support student learning of programming. ACM International Conference Proceeding Series, 25–29.

Deimel, L. E., & Naveda, J. F. (1990). Reading Computer Programs: Instructor’s Guide to Exercises. In Educational Materials CMU/SEI-90-EM-3 (Issue August). DTIC Document.

Feigenspan, J., & Siegmund, N. (2012). Supporting comprehension experiments with human subjects. 2012 20th IEEE International Conference on Program Comprehension (ICPC), 6, 244–246.

Hu, X., Li, G., Xia, X., Lo, D., & Jin, Z. (2018). Deep code comment generation. Proceedings of the 26th Conference on Program Comprehension, 200–210.

Lahtinen, E., Ala-Mutka, K., & Järvinen, H. M. (2005). A study of the difficulties of novice programmers. Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, 14–18.

Maalej, W., Tiarks, R., Roehm, T., & Koschke, R. (2014). On the Comprehension of Program Comprehension. ACM Transactions on Software Engineering and Methodology, 23(4), 1–37.

Malik, D.S, C++ Programming: From problem Analysis to program Design, 8th Edition, Cengage Learning. 2011, ISBN: 1337102083

Niccolai M. J. , The C++ Standard Library: A Tutorial and Reference, 2nd, Addison Wesley, 2012, ISBN: 13: 978-03216

Pears, A., Seidman, S., Malmi, L., Mannila, L., Adams, E., Bennedsen, J., Devlin, M., & Paterson, J. (2007). A survey of literature on the teaching of introductory programming. ACM SIGCSE Bulletin, 39(4), 204–223.

Qian, Y., & Lehman, J. (2017). Students’ misconceptions and other difficulties in introductory programming: A literature review. ACM Transactions on Computing Education, 18(1), 1–24.

Resnick, M.(2019, Jan 3). The Next Generation of Scratch Teaches More Than Coding. EdSurge. Retrieved from

Sasirekha, N., & Hemalatha, M. (2011). Program Slicing Techniques and its Applications. International Journal of Software Engineering & Applications, 2(3), 50–64.

Siti Rosminah, M. D., & Ahmad Zamzuri, M. A. (2012). Difficulties in learning Programming: Views of students. 1st International Conference on Current Issues in Education (ICCIE2012), October 2014, 74–78.

Swidan, A., Hermans, F., & Smit, M. (2018). Programming misconceptions for school students. ICER 2018 - Proceedings of the 2018 ACM Conference on International Computing Education Research, 151–159.

Thompson, E., Luxton-Reilly, A., Whalley, J. L., Hu, M., & Robbins, P. (2008, January). Bloom's taxonomy for CS assessment. In Proceedings of the tenth conference on Australasian computing education-Volume 78 (pp. 155-161).

Wittie, L., Kurdia, A., & Huggard, M. (2017). Developing a concept inventory for computer science 2. Proceedings - Frontiers in Education Conference, FIE, 2017-Octob, 1–4.

Xia, X., Bao, L., Lo, D., Xing, Z., Hassan, A. E., & Li, S. (2017). Measuring program comprehension: A large-scale field study with professionals. IEEE Transactions on Software Engineering, 44(10), 951–976.

Xinogalos, S. (2016). Designing and deploying programming courses: Strategies, tools, difficulties and pedagogy. Education and Information Technologies, 21(3), 559–588.




How to Cite

Kadar, R., Mohamed Yusoff, S. A. ., Warris, S. N. ., & Abu Bakar, M. S. (2021). Students’ Assessments in Learning Programming based on Bloom’s Taxonomy . Journal of Computing Research and Innovation, 6(3), 13–21.

Most read articles by the same author(s)