Enhancing Learning Outcomes and Student Engagement in Object-Oriented Programming: A Comparative Analysis of Teaching Methods .
Enhancing Learning Outcomes and Student Engagement in Object-Oriented Programming: A Comparative Analysis of Teaching Methods .
ABSTRACT:
The course on Object Oriented Programming language (OOPS) plays a significant
role in foundational and professional development of students learning towards
programming and it is graduating from various programs such as (Computer science
and engineering, Information Technology and masters of various computer
applications).and The knowledge of OOPS is often tested in many of entrance
examinations , placements and interview. This paper presents the detailed impact
analysis of different teaching methods in improving the attainment of learning
outcomes, student engagement and satisfaction. The experimental study was
conducted with students of 80 members from Data science department at Thiagarajar
college of Engineering in ,Madurai. The various methods including(Learning by
doing, Teaching By doing , conducting Quizess etc..)and programming assignments
based on the course outcome(video presentation, mini projects) for both batches
independently based on CO .By comparing their academic records and collecting
feedbacks from both of them , we determined which methods were most effective in
students performance of both batches .
RELATED WORKS:
Significant amount of research has been carried out on the pedagogy for
Object oriented programming . Suhni Abbasi have carried out in the studies
dedicated to identifying the learning of Object Oriented Programming
through Serious Games(SGs) and applying different programming
approached applied were investigated. They gather all evidence that helps
answer three specific research questions: identification of SGs developed or
incorporated for learning OOP, OOP concepts covered in those games, and
programming approaches applied. Three different ways were found as result
of the learning through SGs learning by playing games, learning by creating
games and learning by using game related tools. Majority of studies covered
all basic OOP concepts and the result indicates learning by playing games
is most frequently used and effective strategy followed by learning by using
game related tools. The most common programming approach applied is
Game as first approach.
Effectiveness of the use of Visual analogies in teaching learning has
been evaluated (Victor Lian, 2022) .This Study have shown that students
often face difficulties and develop misconceptions in multiple aspects when
learning OOP. The article presents a systematic way of developing a teaching
tool that uses a combination of visualization and analogies to help students
overcome these barriers and understand the OOP concepts better. A set of
activities in the form of code snippets were then designed to target these
misconceptions and difficulties, along with a set of analogies and their
interaction mechanisms that mapped to the OOP concepts. A teaching tool
was then developed based on those designs and evaluated with engineering
students in a CS2 course ( n = 253). The results and our analysis show that
a statistically significant improvement was achieved in student
understanding and confidence through interaction with visualization of OOP
concepts with analogies (VOOPA) exercises.
Stelios Xinogalos has carried out various types of educational
programming environments, such as microworlds and educational games,
have been devised for supporting novices mainly in comprehending OOP
concepts. However, such environments do not usually support students in
the conceptual design of object-oriented programs of a considerable length
and complexity. In this paper focus on a systematic mapping study (SMS) of
educational programming environments for enhancing the conceptual
design in OOP, which relies on modularity, abstraction and encapsulation.
The research questions investigate the intended learning outcomes, the
empirical evidence on the effectiveness, and the teaching / learning
technologies used by educational programming environments for enhancing
the conceptual design in OOP.
Pasquale Ardimento in 2020 proposes and evaluates an approach allowing
to analyze student’s source code and to automatically generate feedback
about the more common violations of the produced code. The approach is
implemented through a cloud-based tool allowing to monitor how students
use language constructs based on the analysis of the most common
violations of the Object-Oriented paradigm in the student source code.
Moreover, the tool supports the generation of reports about student’s
mistakes and misconceptions that can be used to improve the students’
education. The paper reports the results of a quasi-experiment performed in
a class of a CS1 course to investigate the effects of the provided reports in
terms of coding ability (concerning the correctness and the quality of the
produced source code). Results show that after the course the treatment
group obtained higher scores and produced better source code than the
control group following the feedback provided by the teachers.
Flipped classroom mode for the practical exercises has been
experimented.( Michele Scalera, 2021) proposes and evaluates a teaching
strategy based on a flipped classroom approach for one selected topic in a
second-year programming university course, Programming II, held at the
University of Bari and focused on the OOP paradigm. This approach lets the
students learn and train on their own before coming to class. Here, they will
apply the knowledge during face-to-face lessons to elaborate, reflect
and compare on what has been learned. We provided a preliminary
evaluation ofthe approach through a quasi-experiment aiming at comparing
two groups of students: one instructed by a flipped classroom approach
and the other
one by the traditional approach. Results show that the flipped group
understands better concepts and produces better source code than the
traditional group.
From the literature survey carried out, the following issues were identified
pertaining to teaching Oops course :
● The Oops course is inherently multifaceted as it requires learners to learn
basic concepts about the fundamentals and syntax of C++, Java, Python or
any other relevant programming language.
● Lack of visualization often face difficulties and develop misconceptions in
multiple aspects when learning OOP.
● Extensive and expensive lab set up to facilitate effective conduct of
experiments
● Practical exercises that more often require students to follow the detailed
manual provided by the instructor step-by-step which does not require in-
depth thinking.
● Less scope for exploring domain related problems offline/out-of-lab
The above mentioned issues have been addressed in number of studies
made on evolving teaching learning methods in particular for the Object
oriented programming course. However, a customized Instructional model
that focus on blend of instructor led and inquiry based approaches aligned
with the use of simulation tools and rubric based open ended assessments
especially for teaching OOP is still an uninvaded arena.
Research Question:
The motivation for research is supported by the following research
questions:
A. What is the impact of instructional design with active learning and
collaborative strategies in enhancing the attainment of learning outcomes in
the course on oops?
B. What is the impact of inquiry based teaching with simulation tools in
promoting student engagement and satisfaction?
MATERIALS AND METHODS:
I. COURSE DETAILS:
The course on Object oriented programming language enables the students not only to
strengthen their knowledge on oops concepts and programming , but also promotes
their skill development to build the basic applications such as (library management
system, employee management system etc…. ) The detailed content of the course, the
syllabus, patterns and the assessment details of the course can be accessed in the table
TABLE 1
CO2 Identify the classes and objects from given problem Apply
and create class and objects
Based on the above given course outcome table the assignments , examination and
mark allocation for the each question is determined , This course table is also helpful
for the students to prepare for their internal and terminal examination Based on the
CO levels . The course outcome listed in the Table 1are mapped in accordance with
blooms cognitive levels. It has been used as learning management system for both
theory and practical courses.
II. TEACHING THE CONCEPTS VISUALLY FOR BETTER
UNDERSTANDING:
In general teaching of programming language is one of the complicated part for every
teachers ,Then one of the main important job of the teacher to create interest at a
particular subject as every students will need to understand the concepts behind it and
only if they understands the basic concepts only then they can work for the advanced
concepts and problem efficiently, So by teaching every programs and compiling
them in Turbo c compiler the students can understand the syntax and concepts step-
by-step and also we can analyse and where the errors can occurs and if the error
occurs and how we can debug it . then the students can also ask and solve their doubts
on the class itself , and which it also improvise the interaction between teacher and
students in classroom and also by teaching the real life examples visually they can
interpret with their daily life circumstance and learn better at the concept, then it’s all
done by just teaching visually on smart board in the classroom.
Fig-a
From the above (figure-a) we can analyse that the teacher is taking programming visually
and debugging the errors ,which is very helpful for the students to understand the concepts
better and they can able to solve their doubts immediately in the class. As well as teacher
also need to prepare well to take class visually so that he/she can able to solve the students
doubts immediately and make them more interesting in the topics. Finally this method is
one of the helpful method for the students to understand the concepts better.
III. LEARNING BY DOING:
In every classroom activities the involvement of students plays a major role and also
creating the interests of the students by visual classes they can understand better the
concepts behind the subject. After teaching visually in class the teacher assigns the
same program which taught at the class to work by themselves at home so that the
students strong at particular concepts and even they understand well in the class and
doing by themselves at home may arises some doubts and problems , and asking
doubts to the teachers and clarifying their doubts and after clarifying the doubts
,students may get clear idea about their concepts , so by working the problems at
their own they get clear ideas about the problem and even they were assigned by any
other problems they have idea to solve it and it was just happen only by doing or
solving the problems at their own and trying the programs related to the concepts
taught by the teacher at classroom .Consider if teacher is assigning a task to the
students from batch A that execute the program to swap two numbers using call by
referance and after learning the concept of call by reference students are start to
execute the program , while executing the program the may arise some doubts and
some errors then If the error occurs then students are start to solve the errors , while
solving this they may know how to clear the errors and where the error is occurring
and finally execute the program and if they have doubts in the concept they ask to
the teachers and clear their doubts or they may refer some youtube videos to clear
their doubts .By using this method students will be strong in the concept and they
know where to apply the concept in the real world scenarios. And the outcome the
this teaching method is clearly attain at the end results of the students in both batches
of this course.
Then in every practicals the faculty took different questions from different
applications such as (Electricity bill calculation, employees payroll, library
management etc…) to enhance the students thinking process to solve the problems
using the OOPS concepts. And this method improvises the students thought process
and understanding of concepts well and which it reflects at the final examinations
result and other competitions , hackathons etc…
and It is tested in various entrance and placement examinations to recruit employees
for the job, Then OOPS certification course was offered by various institutions to
make the younger generation to build stronger in basics of development, And Here our
paper presents a detailed analysis of design in improving the attainment of learning
outcomes ,students engagement and satisfaction.. A various teaching and learning
methods, programming assignments and Exclusive rubrics and criteria are included in
the design to hand on experience and it used for promoting the students personal,
technical and interpersonal skills . And also by collecting the feedbacks from each set
of students , the blend of teacher led and inquiry based teaching learning practices
have shown significant improvement in grades of continuos assessment test and
terminal examinations. A positive impact in promoting engagement of students has
realized from course and end surveys.
JIG-SAW METHOD:
Jig-saw method is one of the most common and modern methods used in the active learning
process. With the jig-saw strategy, activities are planned in a way that makes pupils rely on
one another to succeed. It divides classes into groups that individually put together a portion
of an assignment and, after done, synthesise their work. The Jig-saw approach is a
cooperative learning strategy that encourages both individual responsibility and team goal
attainment.
The class is divided into the same number of groups as the assignment's components, and
the assignment is separated into parts. Each of these groups is assigned a unique subject to
study and is permitted to do so. To create new groups made up of individuals from each
group, these groups are shuffled.
The method divides courses into mixed-gender groups to focus on minor issues that the
group then combines into a final result. An in-class assignment, for instance, is broken up
into themes. After that, the class is divided into groups with a member allocated to each
subject. Each student researches their subject independently before presenting it to the class.
Students then assemble into topic-specific groups. Each participant addresses the subject
group once more. Students in topic-related groups balance opposing viewpoints and
compile data. They produce a summary report. The original groups then get back together
and hear everyone's speeches.
For example : the students of the class are divided into certain groups and assigned them
with particular topics of each group such as (Polymorphism, Encapsulation, construction,
etc..)
In a particular period od of time they need to revise the particular topic and provide the class
summary and it produced by the person from each team , by doing this the students can able
to prepare and thorough each topics better and by summarizing it the other students
listening them can able to get the content better.
The final presentations enable each group member to comprehend both their own content
and the conclusions from topic-specific group discussions.
These are the methods and materials followed for Both Batch 1 and Batch2 to understand
the every concepts of the course well and clearly and as the outcome these methods are
shown in the experimental results
EXPERIMENTAL RESULT:
A. Impact on Attainment of Learning Outcomes
The attainment of course outcomes has been evaluated through the following components:
• Continuous Assessment Tests (40%)
Continuous assessment include written test, hands on exercises and online assignments .
The actual attainment value of these course outcomes of batch 1 and batch 2 are presented
below
In the result the expected attainment is fixed based on the history of the academic
performance of the last two batches in this course. Figure a and Figure b represents the
expected and actual attainment of the six course outcomes. The expected proficiency of
CO1 and CO3 is 75% (Understand), CO2 , CO4 ,CO5,CO6 is 65% (Analyze) .The expected
level varies in accordance with the cognitive level of the respective course outcome. And it
is finely defines in the following figures.
COURSE TERMINAL INTERNAL
OUTCOME
Fig a
BATCH-1
It could be inferred from Fig a we that the expected and actual attainment
of marks percentage in both Internal and Terminal examinations of
BATCH 1 , For Batch 1 the Actual attainment is greater than expected
attainment for every CO and it is due to the methods such as (Learning
By Doing,Mini Projects, quizess) are very helpful for the students to
solve the CO6 level questions and result of that was clearly seen in the
above displayed figure in both internals and terminal exams of Batch 1.
Fig b
The same as well for Batch 2 Results The actual marks is greater than the expected marks in
both internals and the external examinatons , which it is the best outcomes of the teaching
methods such as (Learning by doing, Attending quizzes, jigsaw methods…) . these
methods impact are highly shown in the result define above in Fig-b.
The actual attainment of all the course outcomes is greater than the expected attainment in
both batches and BATCH-1 has better actual outcome compared to BATCH-2 in all CO’s
and it also showed in below given graphs such that the Method like Video presentation
and mini projects are plays one of the major role for best outcome of BATCH-1 compared
to BATCH-2. Then difference between both batches outcome are displayed in the following
graph
80 100
80
60
60
40
40
20 20
0 0
CO1 CO2 CO3 CO4 CO5 CO6 CO1 C02 C03 C04 C05 CO6
Fig A. c Fig A. d
A. HYPOTHETICAL TEST RESULTS:
F test is a statistical test that is used in hypothesis testing to check whether the
variances of two populations or two samples are equal or not. In an f test, the data follows
an f distribution. This test uses the f statistic to compare two variances of internal marks of
batch 1 and batch 2
+ by dividing them.
The F-test is mainly used to check variance between two variables as
As well as in T-test which is mainly used to check the mean between two variables we
assign
H0= “There is no difference between Two batches”
H1= “There is difference between Two batches”
Since the null value get rejected where ( p-value >0.05 ) There exist the difference between
With the help of the F-test we analyze the variance and mean difference between Both
Batches Internal scores , From that BATCH-1 has better variance and mean Difference
compare to BATCH-2 in internals-1 and internals-2 such that (78.09 and 82.30)variance
occured for Batch1, then about(46.29 and 49.36) variance occurred for Batch-2 in the Both
Internal examinations, then such this better outcome is the result of activities like making
video presentation, Doing and practicing the real life application problems, solving quizzes
etc… and these are the evident for better performance of the students in Batch-1 with
effective teaching methods.
Z-test is a statistical test that is used to determine whether the distribution of the test
statistics can be approximated using the normal distribution or not. It is the method to
determine whether two sample means are approximately the same or different when their
variance is known and the sample size is large (should be >= 30). Here Z test is used to
check whether the means of two internal marks are approximately the same or different.
The Z-test is mainly used to check mean between two variables as
SAs well as in Z-test which is mainly used to check the variance between two variables
we assign
H0= “There is no difference between Two batches”
By Z-test We analyze the both Fig (B.c and B.d) we infer that from 39 observations from
both Batches , The BATCH-1 shows the better result in mean value , as we see in the above
table The mean value of the Batch-1 is about 48.59 but for Batch-2 it is only about 46.29 in
XInternals-1 and 51.17 by Batch-1then 49.36 by Batch-2 in Internals 2 , with the help of
these mean value we easily define the z-test p-value which is about 0.323 in Internal-1 and
0.367 in Internals -2 which greater than default P-value(0.05) and condition fails then there
exist the difference between two batches scores. From that the teaching methods used for
batch-1 shows the best result in terminal examination scores compare to the Batch-2.
For both the external lab and external theory exams, the Z-tests indicate that there is
statistically significant difference in the means between Batch 1 and Batch 2 by comparing
their external results in both Lab and terminal examination.
By comparing the internal and external results of both Batches ,we get Batch1 got
better result than Batch 2 by comparing their mean values in both internals , The
mean value ofBatch 1 is constantly higher than Batch 2 in both Hypothetical testing
(Z-test and F-test),Then by practising the teaching methods the students of Batch1
score better than Batch 2 Which it also shows the enormous result in final Lab and
Terminal results as we see in above Tables.
CONCLUSION:
The research work is carried out with an objective of enhancing the
learning outcomes and engagement of students in OOPS by analyzing the
different teaching methods and comparing the marks of 2 batch students in
data science by hypothesis testing (F test and Z test) and getting the result as
batch 1 students getting good marks then batch 2 ,by using some unique
teaching methods like mini projects and video presentation for batch1 students
which helps them to understand concepts clearly and apply in their practical life
and which also make them to score good marks in their terminal exams then
compare to batch 2.The authors believe that this article will serve a better
guidelines of teaching methods which make make students to score and
understand the concepts better and easy to apply in realtime applications.
REFERENCES:
[1] Fülöp, Melinda Timea, et al. "Development of Computational Thinking Using Microcontrollers Integrated
into OOP (Object-Oriented Programming)." Sustainability 14.12 (2022): 7218.
[2] Oliveira, Gregory Acacio Seibert, and Rodrigo Bonacin. "A method for teaching object-oriented
programming with digital modeling." 2018 IEEE 18th International Conference on Advanced Learning
Technologies (ICALT). IEEE, 2018.
[3] Abidin, Zulhafiza Zainal, and Muhammad Asyraf Abdullah Zawawi. "Oop-ar: Learn object oriented
programming using augmented reality." International Journal of Multimedia and Recent Innovation
(IJMARI) 2.1 (2020): 60-75.
[4] Muyan-Özçelik, Pinar. "A hands-on cross-platform mobile programming approach to teaching OOP
concepts and design patterns." 2017 IEEE/ACM 1st International Workshop on Software Engineering
Curricula for Millennials (SECM). IEEE, 2017.
[5] Nguyen, Dung, and Stephen Wong. "OOP in introductory CS: Better students through
abstraction." Proceedings of the Fifth Workshop on Pedagogies and Tools for Assimilating Object-Oriented
Concepts. 2001.
[6] Al-Linjawi, Arwa A., and Hana A. Al-Nuaim. "Using Alice to teach novice programmers OOP
concepts." Journal of King Abdulaziz University: Science 22.1 (2010): 59-68.
[7] Idris, Nur Idil Fitri, and Yasser Abdul Djawad. "Development of Project Based Learning Model in Object
Oriented Programming (OOP) Learning in Polytechnic." Asian Journal of Education and Social Studies 50.3
(2024): 1-12.
[8] Tsichouridis, Alexandros, Stelios Xinogalos, and Apostolos Ampatzoglou. "Educational Programming
Environments for Enhancing Conceptual Design in the Object-Oriented Paradigm: A Systematic Mapping
Study." Journal of Educational Computing Research (2024): 07356331231203251.