Вы находитесь на странице: 1из 25

J. Comput. Educ.

DOI 10.1007/s40692-016-0073-2

An effective learning and teaching model for


programming languages

Golam Md. Muradul Bashir1 • Abu Sayed Md. Latiful Hoque1

Received: 20 April 2016 / Revised: 16 July 2016 / Accepted: 18 July 2016


Ó Beijing Normal University 2016

Abstract Teaching and learning of programming languages is difficult as it


involves the comprehension of theoretical background, practical usage of semantics
and syntactic coding and algorithmic skills. Both teachers and students are unani-
mous about the programming fear of students, whereas programming skill is one of
the core competences of computer science students. As a result, it is now a vital and
an unavoidable issue to develop effective learning/teaching pedagogy for pro-
gramming languages. Problem-based learning (PBL) is a well-established learning
pedagogy where students engage themselves to self-learn, self-practice, and mainly
focus on ill-structured problems. Traditional PBL is not fully suitable for the
teaching and learning of programming languages to develop the required problem-
solving skill. On the other hand, e-learning has been used in synchronous and
asynchronous learning for the past few decades but not sufficient for developing
programming skill. In this research, the authors have proposed a problem-based
e-learning model which integrates traditional PBL with e-learning knowledge
transfer. A problem model has also been proposed supporting structured,
semistructured, and ill-structured problems. An architecture has been developed
where a problem-bank is used to support the learning and teaching of multiple
programming languages. An initial survey in the perspective of students has been
performed to test the mannerism of the students about the model and found very
positive result which accelerates further improvement of the system.

& Golam Md. Muradul Bashir


murad98csekuet@yahoo.com
Abu Sayed Md. Latiful Hoque
asmlatifulhoque@cse.buet.ac.bd
1
Dept. of Computer Science and Engineering, Bangladesh University of Engineering and
Technology, Dhaka, Bangladesh

123
J. Comput. Educ.

Keywords Problem  Problem-based e-learning (PBeL) model  Problem model 


Problem-bank

Introduction

Learning programming languages for solving real-life problems is not easy because
it involves the fascination of multifaceted new knowledge, skills, and strategies
(Robins et al. 2003). Drop-out rates of programming language learners are
tremendous. According to Bennedsen and Caspersen (2007), this rate is 30 %,
and sometimes it becomes 50 % for some programming courses. In traditional
teaching, it was found that students have a fear to learn programming (Rogerson and
Scott 2010). Sometimes students lose interest to study computer science and
engineering because of this fear.
According to Shinde and Inamdar (2013), only 25 % of engineering students are
fit for multinational company to be employed after graduation. Most employers
claim that this situation emanates from the deficiencies of the traditional education
system. Traditional way of teaching/learning cannot engage students for self-
learning; life-long learning as well as is not able to attract attention in classroom
environment (Akili 2011). Teaching by lectures is unable to engage most students
for sustained attention. Note-taking of the contents during lecture inversely varies
with time duration (Penner 1984). From research, it was also found that
effectiveness of a lecture varies on the educational level diversity of the students
(Verner and Dickinson 1967).
Problem-based learning (PBL) is a blended learning environment based on
student-centered learning. It is a combination of self-directed learning and
collaborative learning gaining momentum worldwide. Learners need to know
methods, techniques, and standard practices which help to develop skill, positive
learning aptitudes, and get valuable experience. From literature it is found that PBL
pedagogy has been applied to different courses (Mantri et al. 2008; Qiu and Chen
2010; Bhatti and McClellan 2011; Kim 2012; Santos-Martin et al. 2012). In all
these cases, PBL has been applied for a specific time duration on the respective
course and at the end, a comparison between traditional and PBL group has been
performed. They conclude that PBL group performed better than traditional group.
PBL being a constructivist learning pedagogy established itself mainly for complex
and ill-structured domains such as medical education and increasingly has been
exercised from kindergarten to professional institutes (Fessakis et al. 2013; Scherer
and Tiemann 2012; Spector 2006). The problems of programming language domain
may be well-defined structured, ill-structured, or even unstructured. Thus they are
different in nature. To remove the fear of learning of programming languages and
create an environment of life-long learning, PBL-only pedagogy is not sufficient.
The integration of e-learning with conventional PBL is necessary. E-learning which
offers expediency and elasticity with the ease of anytime and anywhere access,
allows users to avail the latest knowledge, and get solutions for their problems
(Violante and Vezzetti 2015). A lot of advantages of e-learning have been found in

123
J. Comput. Educ.

literature (Bouhnik and Marcus 2006; Liaw 2007; Raab et al. 2001; Shotsberger
2000).
The authors have developed a problem-based e-learning (PBeL) model integrat-
ing the concept of PBL pedagogy and e-learning to take the advantages of both for
learning and teaching of programming languages in both synchronous and
asynchronous mode. A problem model has also been developed to support the
PBeL model. A problem-bank has been developed based on the PBeL problem
model which can be used for multipurpose programming languages learning,
teaching, evaluation, and future reference.

Literature review

The advantages and effectiveness of PBL pedagogy have been shown in many
articles (Mantri et al. 2008; Qiu and Chen 2010; Bhatti and McClellan 2011; Kim
2012; Santos-Martin et al. 2012). In 1968, McMasters University, Canada used PBL
for medical education first. In 1974, PBL was implemented in Aalborg University,
Denmark for engineering education (Kolmos et al. 2004). Hamid et al. (2005) have
described how to craft effective engineering problems for PBL. They have given
some guidelines to design effective PBL problems (Hamid et al. 2005). The
potential difficulties that could arise during PBL implementation in engineering
education have been focused by Akili (2011). He argues that implementation of
PBL needs to be placed in a context and developed with careful consideration of the
social, economic, ethnic diversity of the student-population, institutional academic
culture, and prevailing norms (Akili 2011). To detect and correct inherent problems
like out-of-context conversation in PBL, three types of agents (software entities that
perform actions according to perceive environment) have been proposed by Fontes
et al. (2011).
PBL enhanced by e-learning scaffolding tool titled ‘Challenge FRAP’ has been
designed by Stewart et al. (2007) which provides progressive learner-feedback,
promotes student-reflection at key decision-making points, supports self-directed,
and group-based learning. This system is unable to track which learners have
changed what aspects of the template that are needed to assess individual
contributions. Electronic PBL has been proposed by King et al. (2010) for health
science education. Here a virtual classroom learning environment has been used as
online communication delivery platform for the PBL scenarios. The disadvantages
of traditional learning like distance, time, availability of resources, have been
overcome by cloud technology with PBL pedagogy. A cloud infrastructure is used
to achieve multitenancy, to provide large amount specialized content for targeted
group people, and to achieve global communication (Selvi et al. 2012).
In the literature, PBL pedagogy has been found to be applied on different
structured and object-oriented programming languages. They have performed the
performance evaluation of PBL pedagogy for different courses and found PBL
significantly better than traditional learning (Nuutila et al. 2005; Sierra et al. 2013;
Looi and Seyal 2014; Soares et al. 2015). According to Veletsianos et al. (2016),
PBL and technology integration for CS courses may complicate each other under

123
J. Comput. Educ.

less favorable circumstances specially when teachers are simultaneously responding


to new pedagogies, curriculum, or technologies. In literature, it is found that the
academicians have been using PBL for complex and ill-structured problems from
decades. PBL pedagogy has been applied to different courses of different domains
including programming language courses. None of the existing researches are found
to develop problem model covering the content of the course.
E-learning uses Internet technologies to create, improve, distribute, and facilitate
learning without the bounding of time and place. The advantages of e-learning have been
viewed in many literature (Shotsberger 2000; Raab et al. 2001; Bouhnik and Marcus
2006; Liaw 2007). Research works have been done on effectiveness, satisfaction,
attitudes, behavioral intention, and evaluation toward e-learning by Liaw et al. (2007),
Liaw (2008), and Shee and Wang (2008). To support students’ cognitive development in
programming, a Web environment has been developed by Hwang et al. (2008). Yang
et al. proposed two-tier test-based approach to develop students’ skills to do program in
Web environment (Yang et al. 2015). E-learning based on problem-solutions for PHP
programming has been focused by Bashir et al. (2015). Many Web-based programming
learning systems/tutorials are found in the literature (Government of Ontario 2006;
Refsnes Data and consulting company 1998; java2s Developers 2013; Inc. 1997; Suman
2011; Ullah 2012; Khan 2006; Alam 2010). E-learning through which knowledge can be
acquired at any time, and any place, is not sufficient for developing problem-solving
skill, engaging students for self-learning or life-long learning.
According to our survey, integrating e-learning knowledge transfer with PBL has
been given less attention for learning of programming languages. To create an
appropriate problem for learning programming language that meets up the
properties of PBL strategy is a difficult task. Guidelines to design PBL problems
are found in the literature but the problem-bank covering the content, reusing the
problems to reduce the teachers’ workload, and using the problem-bank for learning
are not found in the literature.

Problem-based e-learning (PBeL) system architecture

PBeL system has been implemented in a Web-based environment. The system


contains the following modules: problem design and management module, student
learning module, teaching by instructor module, students’ performance evaluation
module, and user management and administrative module. PBeL system architec-
ture is shown in Fig. 1.

Problem design and management module

The main component of PBeL architecture is the problem design and management
module. The purpose of this module is to create problems as per the model
described in the following sections. After defining a problem, a standard solution is
done by the teachers and both the problem and the solution are saved in the PBeL
database. The details of the problem creation and solution development have been
enumerated in the following sections.

123
J. Comput. Educ.

Fig. 1 PBeL system architecture

Student learning module

Students are the main beneficiaries of the PBeL system. They use the student
learning module through Web interface. This module serves the student to select a
problem of choice, supporting materials to solve the problem, submit the solution of
the problem, and appear in online examination for self-evaluation or evaluation by
the teachers.

Teaching by instructor module

One of the objectives of the PBeL system is to reduce the teacher workload. This is
achieved by careful design of the problem-bank and reusing the problems. Teacher
can select some problem for teaching and make their access open for the students
for practice and some problems can be used for evaluation purpose. In PBL
teaching, usually an ill-structured problem is assigned to a group of students and
teacher acts as facilitator. In PBeL, instructor has a number of options for teaching.
The structured part of the problem-bank can be used as a blended learning in a
interactive mode. This option is closer to conventional teaching and learning in
terms of content coverage. The semistructured or ill-structured part of the problem-
bank can be used for experienced learner-group to develop the real-life problem-
solving skill of the students.

Students’ performance evaluation module

Using the students’ performance evaluation module, teachers can create online
assignments or tests, and allocate the assignments to the students. Students have to
solve the assignment in a specified time and submit the solution. All submissions of

123
J. Comput. Educ.

the students are saved in PBeL database for evaluation and future reference purpose.
The evaluation of programming problems are done automatically and the design
problems are done by using the evaluation support system. To reduce the teacher
workload in this system, a standard solution of the problem is saved in the system
and the students’ submissions are compared with standard solution usually in two
windows side by side.

User management and administrative module

User management module is used to create users and assign privileges to the users.
These are some administrative jobs to maintain the systems like database
administration, problem-bank management, and administration and similar other
tasks. These are maintained in this module.

Problem-bank

Multipurpose usage of problem-bank

PBeL problem-bank architecture has been divided into three layers (Fig. 2): the
application layer, the interfacing layer, and the database layer.

Application layer

In this layer, several structured, object-oriented, and scripting languages have been
provided with separate module for learning and teaching of the respective
programming language. Each module is connected with the common problem-bank
and the respective solution bank.

Fig. 2 Multipurpose usage of problem-bank

123
J. Comput. Educ.

Interfacing layer

This layer ensures the multipurpose usage of problem-bank. Problems are different
in nature and all problems are not appropriate for all languages. As for example,
some arithmetic operation-related problems may not be suitable for scripting
programming languages, whereas some design-related problems are not suitable for
other languages. This layer determines which problems are appropriate for which
programming languages.

Database layer

This layer contains PBeL problem-bank and solution banks for different program-
ming languages. Each solution bank contains a set of solutions for a set of problems
of the respective programming language.

Structured, semistructured, and ill-structured problems

A problem can be structured, semistructured, or ill-structured as follows.

Structured problems

A problem which has appeared before and the initial state, goal, and constraints are
clearly identified is referred to as a structured problem or a well-structured problem.
In a well-structured problem, correct answer can be found by applying completely
defined and step-by-step procedure. The problems that are given in most textbooks
in engineering, mathematics, science, or business domain are well-structured (King
and Kitchener 1994).

Ill-structured problems

A problem which has not been faced before, and the initial state, goal, and
constraints are unidentified is referred to as ill-structured problem. In an ill-
structured problem, experts often disagree about the best solution. Ill-structured
problems do not have a particular and firm answer. These problems reflect real-
world problems where data are conflicting or comprehensive. Different solutions
may be proposed by different disputants to specific problem with separate strengths
and weaknesses (King and Kitchener 1994).

Semistructured problems

Some problems that fall somewhere between well-structured and unstructured


problems. These problems share aspects of both well-structured and ill-structured
problems.

123
J. Comput. Educ.

Comparison between PBL and PBeL

PBeL enriched with the advantages of established PBL pedagogy by integrating the
most recent evolution of distance learning is referred to as e-learning. According to
Fessakis et al. (2013), Scherer and Tiemann (2012), and Spector (2006), PBL deals
with complex and ill-structured problems where as PBeL system has been designed
to teach students in a group or individual by using structured, ill-structured, and
semistructured problem. PBL may be tutor-centered and from experience it was
suggested that if the tutor becomes too active, the PBL session launches to
assimilate a lecture, and the students start to perceive the tutor as responsible for
their learning (Nuutila et al. 2005). PBeL is always student-centered, and learning
environment is controlled by the system. In PBeL, everything is online and students
interact with the system throughout the learning process. So PBeL is always system-
dependent, whereas PBL is tutor-dependent. In PBL, students may be involved in
unproductive or unbalanced activities (Nuutila et al. 2005). Fontes et al. (2011)
focuses on detecting and correcting the out-of-context conversation problem which
is inherent with PBL pedagogy and proposes a multiagent system. In PBeL, the
preferred group size for teaching/learning is two by sharing one workstation or a
laptop, whereas in PBL it is five or six. This group size of two has been taken from
the experience of pairwise programming for rapid system development where one
(driver) performs coding and another (observer or navigator) checks each line of
codes for correctness. These two frequently change their role. As a result, the
possibility to be unproductive or unbalanced activities for PBeL is very low.

Problem model for PBeL

The problem model on the basis of Woods (2003) which is mainly formed for
Chemical Engineering education is given in Fig. 3.

Fig. 3 Problem model based on Donald R. Woods

123
J. Comput. Educ.

In this model, a problem should have a learning goal that is achievable, consistent
with the stage of development, and builds on prior knowledge. Problem is described
by a scenario or a sequence of scenarios. The scenario has the following properties.

Motivational and relevant

The scenario should be similar to one we might encounter in professional practice.

Openness

This challenges the students’ thinking and expects the students to integrate the new
knowledge with the old.

Professional practice

The scenario describes a real-life problem. The scenario includes an appropriate


level of complexity.
A scenario has following sub-attributes.

Cues

Scenario must contain cues that will direct the students to select the learning
objectives for the problem. The cues that trigger the search for learning objectives
and the learning outcomes expected by the teacher are identified correctly by the
students.

Data

In this model, any data given should be raw data (as like encounter in practice).

Context

The scenario identifies the context, and clearly describes the expected task without
spelling out specifics.

Activities

Activities mean actions to be done by the students during learning process. The
problem has to be designed such that it promotes the students activities.
We have extended the Woods’ model for the design of PBeL problem as shown in
Fig. 4. PBeL supports structured, semistructured, and ill-structured problems. At
present, we have designed PBeL for programming languages considering the
structured problems. These types of problems have a standard solution and a standard
output. PBL is student-centric learning pedagogy, whereas e-learning may be self-
paced asynchronous learning or instructor-led synchronous learning. PBeL is the
combination of PBL and e-learning. So PBeL system can be used both as student-

123
J. Comput. Educ.

Fig. 4 Problem model for PBeL

centric learning purpose and teacher-centric teaching purpose. To support these


features, we have associated three more attributes along with the problem model of
Woods (the new attributes have been shadow marked in Fig. 4). These attributes are as
follows: a standard solution of the problem, a standard output of the problem, and a
time parameter with minimum and maximum value. Standard solution of each
problem has been set by teacher and it is used to form a standard output and to evaluate
students’ submitted codes for the problem. Standard solution with students’
submission can be seen only by teachers in two windows side by side. Standard
output is shown to the students to make understand what is the target solution of the
problem. Students can write codes and see outputs in real-time. They can compare
their outputs with the system outputs side by side. The difference between the two
outputs directs them to learn more contents related to the problem. Related contents
have been provided to the system and students can also search related topics from the
Web. The standard output and the given contents save students’ random search time
from the Web. Time parameter with minimum and maximum value accelerates the
students to solve the problem as well as learn specific contents.

Bottom-up (level-wise) approach of problem construction

Books are organized as chapters, sections, subsections, and topics/concepts. The lowest
level is the topic or concept. If a problem is designed covering a single topic/concept, it
can be called an atomic problem. The lowest level of problem construction is level 1. Let
P1 be an atomic problem in level 1. All problems in level 1 are atomic problems. After
solving any problem in level 1, a student learns a single concept of the course. The
construction of problem starts from developing all atomic problems. Let a course C
have m topics/concepts. So in PBeL, the course can be defined as
[
m
C¼ P1i :
i¼1

123
J. Comput. Educ.

Problem synthesis

The problems of level 1 can be synthesized to form the upper level 2 problems as in
Fig. 5.
Let the number of problems in different levels be nð1Þ; nð2Þ; . . .; nðm  1Þ; 1 to
levels 1; 2; . . .; m; respectively. Each of the level 2 problems is a combination of
more than one level 1 problems.
[
k
8 Level 2 problem P2j ¼ P1i where 2  k  kthreshold :
i¼1

kthreshold is the maximum number of level 1 problems that can be synthesized to form
a level 2 problem. This value depends on the level and it decreases as we move to
higher levels.
In PBeL model, the following rules are defined:

Rule 1 the union of all problems in any level covers the total content of the course
under PBeL.
Rule 2 by bottom-up synthesization, the lower level problems form a tree
structure and each parent problem must be the integration of more than one child
problems.
Rule 3 a child problem can be included in one or more than one parent problem
(multiple inheritance).
Rule 4 the construction of the tree stops at the root problem.
Rule 5 every leaf problem carries one and only one concept which can be referred
as an atomic problem.
Rule 6 the complexity of the problems increases with the increase of level from
bottom to up.

Considering rule 1, we can infer the following:


[ [ [ [ [ [ [ [
P11 P12 P13    P1m  P21 P22 P23    P2n      Pm : :

Fig. 5 Level-wise synthesis of problems

123
J. Comput. Educ.

Problem design as per book

Problem coverage

Coverage of a problem can be defined that after solving the problem, the student
will learn the content. A problem can cover a single concept, multiple concepts
belonging to a section, a section, a chapter, and a book.
Let, Pc be an atomic problem that covers a single concept in the lowest level 1.
Pmc be a problem that covers multiple concepts in level 2. Psec be a problem that
covers a section. Pchap be a problem that covers a chapter. Pbook be a problem that
covers a book.
By using the above definitions of the problems, we can derive the following:
[
m
Pmc ¼ Pci ;
i¼1
!
[
n [
n [
m
Psec ¼ Pmcj ¼ Pci ;
j¼1 j¼1 i¼1 j
0 !1
[
o [
o [
n [
m
Pchap ¼ Pseck ¼ @ Pci A ;
k¼1 k¼1 j¼1 i¼1 j
k
0 0 !1 1
[
p [ [ [ [
p o n m
Pbook ¼ Pchapl ¼ @ @ Pci A A :
l¼1 l¼1 k¼1 j¼1 i¼1 j k l

Now the research on the design of problem in PBeL is to design the atomic problem
as per the PBeL model such that the combination of these problems covers the
section, section to chapter, chapter to the whole content of the book.

PBeL in database programming

A system titled SQL learning and evaluation system (SQL-LES) that consists of five
interrelated modules as per PBeL architecture for database programming has been
implemented using the proposed PBeL model. The interface for problem-bank
creation and management module is given in Fig. 6. SQL stands for structured query
language for database. Here, the problem-bank contains all structured problems.
Each SQL query problem has to be defined based on some schema. In the interface,
the top part defines the schema (title of the schema, ERD design, list of tables,
details of data types). After schema definition, SQL problems are defined as per the
schema. The problem is defined in a structured form so that the solution is unique.
Each problem is associated with a complexity value. For simplicity, we have
considered the complexity values from levels 1 to 5 as given in part 3 of Fig. 6. Part
4 of Fig. 6 shows the standard answer of the SQL problem as prepared by database

123
J. Comput. Educ.

Fig. 6 Adding a new question in SQL-LES

teachers. Different buttons to test the standard SQL expression, prepared by the
teacher, are shown in part 5.
Editing the existing answers of any SQL problems from the problem-bank,
verifying the result of any SQL expression, and saving any solution of the problems
are also given in part 5. Part 6 shows the statistics of the problem-bank.

Reuse of problem-bank for learning/teaching and evaluation

Figure 7 shows the interface for reusing the problem-bank for PBeL learning/
teaching as a blended approach by generating test sets with different options.
Initially, the size of the problem-bank is small and teacher can set some problems
for learning and teaching purpose by defining the test set as open for the students
and the students can practice at any time by logging into the system. For evaluation
of students’ performance of learning, teacher can set some problems based on the
same schema or a new schema. Before starting of the evaluation session, teacher can
create a test set using the problems set for evaluation purpose and allocate the test
set to the students and the students have to appear at the evaluation session for a
period set by the teacher. In the interface (Fig. 7), part 1 is the statistics of problem-
bank showing how many problems of different complexity levels are there, how
many problems of different levels are available to create the test set, etc. Part 2 is
used to set different parameters of the test set, e.g., duration of the test set, type of
the test set, number of sets to allocate alternatively in a round-robin fashion to
students of same class, and at the valid date and time of the session. Part 3 is used to

123
J. Comput. Educ.

Fig. 7 Test set generation

reset the problem-bank to reuse the problems. Our intuition is that when the
problem-bank becomes large, based on a number of schemas, it is no harm to open
the problem-bank for life-long learning. In traditional learning system, students are
not encouraged on life-long learning. But in PBeL, when students will find that even
after regular course work there are still many problems in the bank remaining
unsolved and these are related to real-life problem-domain, they will be interested in
future learning.

Use of test set for learning and evaluation

A test set is a combination of level 1 problems or a combination of multilevel


problems. In this system, we have considered five levels and learning was a depth-
first bottom-up approach. A test set can be allocated to both teacher and the
students, and both teacher and the students can log in the system as learner-mode.
Teacher let the students to solve the problems by themselves and the teachers can
support them to solve the problem and learn. If the students totally fail to solve the
problem, then the teacher can do it partially to support the students learning. If some
students can solve the first problem they can proceed by their own. Those are not
able to solve at all, the teacher can solve the problem and show the students about
the solution and explain the solution. Learning about the solution, student will do it
again by himself and develop the confidence about the problem-solving.
During students’ performance evaluation phase, the test set are allocated to the
students and students solve the allocated problems individually and submit the

123
J. Comput. Educ.

solution in predetermined time. For every SQL problem, a standard solution has
been given by the problem setter. Students’ submission is evaluated automatically
as follows:

(1) The standard solution given by the teacher is evaluated by the DBMS and the
result is found from the database as a relation r1 :
(2) The student’s submissions are evaluated by the DBMS and the result is
obtained as a relation r2 :
(3) Both r1 and r2 are compared and if they are same in terms of structure and
data, the students’ submissions are considered correct.
(4) If any dissimilarity in terms of structure or data or both is found, the student’s
submissions are considered incorrect.

The limitation of this system is that it does not consider any partial correctness.
Figure 8 shows the interface to use the test set as self-learning or self-evaluation
or instructor-led-blended teaching/learning by the students. Part 1 shows the details
of schema for the corresponding problem of the test set. Problems and schema are
always linked up. Part 2 is the description of the problem. Part 3 is the user space to

Fig. 8 Student examination

123
J. Comput. Educ.

submit the solution of the problem, test the solutions, and submit the solution. Part 4
is self-monitoring of the progress. For every problem, student will be able to know
instantly whether his submission is correct or not and the total score obtained.

Progress monitoring by the teacher

Teacher can monitor the progress of all students by the interface given in Fig. 9. In
this interface, part 1 shows the students’ test history. Part 2 shows the performance
details of a particular test that has already been completed or is under progress. Part
3 shows the details of schema for a problem that is selected in part 2 for checking
the details of the student’s submissions. Part 4 shows the standard solution of the
problem and the students’ submissions. Both submissions can be seen here to see the
results and verify the correctness of students’ submissions.

Performance study of PBeL model and pedagogy in database


programming

Several sessions were organized to introduce and practice the PBeL system for
database programming by the students of undergraduate level of Department of
Computer Science and Engineering, Bangladesh University of Engineering and
Technology. The system was demonstrated first. The students were not well aware
of PBL or PBeL pedagogy. They were cognized both PBeL and PBL by the

Fig. 9 Student’s performance monitor page

123
J. Comput. Educ.

presentation theoretically and by the demonstration of the system practically. Forty-


four students participated in the online-learning and practice. The number of male
students was 36 and female students was 8. About 60 % of the students had studied
their higher secondary level from different colleges of Capital City Dhaka and the
rest of the students had studied in the colleges of different districts of the country.
There were no students who did their higher secondary level from the colleges in the
villages of the country. The demographic information of the program is outlined in
Table 1.
All students were assigned PBeL problems individually by the system. These
problems triggered them for self-learning. They practiced until they became
confident in themselves about the answers of the specific problem. Then they
submitted the answer codes for evaluation purpose. They practiced different levels
of problems as we have described above. Primarily, the answers were evaluated by
the system automatically. The final evaluation was done by the teacher in
semiautomated manner. The students were in the third year (level 3, term 1) and had
already completed their undergraduate database programming course in traditional
way. At last, a set of survey questions were served to the students for performance
study of PBeL model and pedagogy in different perspectives. The survey
questionnaires were designed in seven-point Likert scale (ranging from 7 which
means ‘Agree Strongly’ to 1 which means ‘Disagree Strongly’). The students were
ensured to retain confidentiality, and identifying information to trace any of the
student’s opinion was not recorded. As a result, they gave their opinion
independently.
The sets of questionnaires that were given for the performance study of PBeL
model had the following perspectives:

(1) Perceived satisfaction of the system,


(2) The system usefulness,
(3) Perceived evaluation methodology of the system.

The details of the served questionnaires for the performance study of PBeL
model are given in Table 2, and the meaning of the acronym used in the survey
tables is illustrated in Table 3. We have found the weighted mean and standard
deviation of all individual questions. The mean and standard deviation have been
calculated by statistical operations. Averages of the mean and the standard deviation

Table 1 Demographic
Frequency Percentage
information of the program
Gender
Female 8 18.2
Male 36 81.8
Place of HSC study college
Dhaka (Capital City) 26 59.1
Town 18 40.9
Village 0 0

123
J. Comput. Educ.

Table 2 Details of the questionnaires served for the performance study of PBeL model
Q. IDs Questions

Perceived satisfaction of the system


Q1 I am satisfied to use the system as learning-assisted tool
Q2 I am satisfied to use the functions of the system
Q3 I am satisfied to use the learning contents of the system
Q4 I am satisfied with multimedia instruction of the system
Q5 I am satisfied with interactive facilities of the system
The system usefulness
Q6 I believe the contents of the system are sufficiently informative
Q7 I believe the system is a useful learning tool
Q8 I believe the contents of the system are useful
Perceived evaluation methodology of the system
Q9 The semiautomatic evaluation method of the system is better than that of traditional method
Q10 You are more satisfied with the semiautomatic evaluation method than that of traditional method
Q11 You are more confident with the semiautomatic evaluation method than that of traditional
method
Q12 You have belief on the semiautomatic evaluation method than that of traditional method
Q13 You intend to evaluate the database programming course using the system
Q14 You intend same type of evaluation method may be used for other programming courses

for perceived satisfaction of the system are 5.33 and 1.51, respectively (Table 4).
The high average value of perceived satisfaction represents that the proposed PBeL
model is highly satisfactory in users perspective. The maximum values of the mean
and standard deviation are correspondingly 5.48 and 1.30, respectively, regarding
the learning content, marked bold in Table 4. For this perspective, the minimum
values of the mean and standard deviation are 5.20 and 1.49, respectively, about the
functions of the system. The both minimum and maximum values are greater than 5,
and diversity is very low. About more than 80 % of the students gave their opinion

Table 3 Details of the used


Acronyms Meaning Values
acronym in the survey tables
AS Agree strongly 7
AM Agree moderately 6
ASL Agree slightly 5
NAND Neither agree nor disagree 4
DSL Disagree slightly 3
DM Disagree moderately 2
DS Disagree strongly 1
M Mean
SD Standard deviation

123
J. Comput. Educ.

Table 4 Survey result for perceived satisfaction of the system


Q. IDs Survey result

AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD

Q1 18.18 40.91 22.73 4.55 2.27 2.27 9.09 5.25 1.71


Q2 15.91 34.09 29.55 6.82 4.55 6.82 2.27 5.2 1.49
Q3 18.18 43.18 20.45 9.09 6.82 0.00 2.27 5.48 1.3
Q4 13.64 52.27 15.91 9.09 0.00 2.27 6.82 5.36 1.54
Q5 11.36 52.27 22.73 2.27 2.27 2.27 6.82 5.34 1.52

For clarify the maximum values of the mean and standard deviation, the row of raw data have been
marked in bold
Average of the mean for the questions 5.33, average standard deviation 1.51

on the scale of strongly to slightly ‘Agree’ level about the satisfaction of the system.
This implies the positive impact of the PBeL model.
The students practiced the system for several sessions. The maximum values of
the mean and standard deviation for system usefulness are 5.84 and 1.24,
respectively, regarding the system as a learning tool (marked bold in Table 5). For
this perspective, the minimum values of the mean and standard deviation are 5.02
and 1.50, respectively, regarding the sufficient informative contents of the system.
The averages of the mean and the standard deviation for system usefulness are 5.51
and 1.36, respectively. About 85 % students gave their opinion on the scale of
strongly to slightly ‘Agree’ level concerning the information sufficiency and
content-usefulness of the system. The findings mean that the model is very useful to
the students. The survey results for the system usefulness are given in Table 5.
The average mean of the perceived evaluation methodology of the system is 4.95
which is less than that of the mean of other perspectives. The standard deviation is
1.90 which is also more than other values of the standard deviation. The maximum
values of the mean and standard deviation in comparison with traditional evaluation
are 5.50 and 1.69, respectively, which are marked bold in Table 6. For this
perspective, the minimum values of the mean and standard deviation are 5.07 and
1.87, respectively, concerning the satisfaction and confidence level on the
evaluation process of the system. The automatic evaluation of the system has

Table 5 Survey result for the system usefulness


Q. IDs Survey result

AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD

Q6 13.64 34.09 20.45 11.36 15.91 2.27 2.27 5.02 1.5


Q7 34.09 34.09 22.73 4.55 2.27 0.00 2.27 5.84 1.24
Q8 25.00 43.18 18.18 6.82 2.27 2.27 2.27 5.66 1.33

For clarify the maximum values of the mean and standard deviation, the row of raw data have been
marked in bold
Average of the mean for the questions 5.51, average standard deviation 1.36

123
J. Comput. Educ.

Table 6 Survey result for perceived evaluation methodology of the system


Q. IDs Survey result

AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD

Q9 36.36 22.73 20.45 9.09 4.55 0.00 6.82 5.50 1.69


Q10 22.73 29.55 22.73 4.55 9.09 0.00 11.36 5.07 1.87
Q11 27.27 25.00 15.91 11.36 9.09 2.27 9.09 5.07 1.89
Q12 20.45 25.00 25.00 9.09 9.09 2.27 9.09 4.95 1.80
Q13 20.45 29.55 20.45 2.27 4.55 9.09 13.64 4.77 2.09
Q14 13.64 18.18 29.55 6.82 9.09 2.27 20.45 4.32 2.07

Average of the mean for the questions 4.95, average standard deviation 1.90

limitation of providing partial markings for partial correct answers though final
evaluation was performed in semiautomated manner by the teachers. This limitation
may be one of the reasons for which average mean and standard deviation of
evaluation methodology of the system vary a little different from others. Another
reason might be that the students could see their results of submission instantly. As a
result, the students who failed to submit correct answers in time, they were negative
about the evaluation process of the system. The survey results for the perceived
evaluation methodology of the system are given in Table 6.
For the performance study of PBeL pedagogy in database programming, a set of
questionnaire was served. Questionnaires of the following perspectives were given
to the students to find out the effectiveness of the pedagogy:

(1) Behavioral intention of the students,


(2) Perceived problem-solving skills of the students.

The details of the questionnaires for PBeL pedagogy in database programming are
given in Table 7.
From the survey result (Table 8), it is found that about 90 % students agree to
intend PBeL pedagogy as their learning strategy since they found themselves as
self-learners with enjoyment and freedom. In this case, averages of the mean and
standard deviation are 5.87 and 1.31, respectively. The maximum values of the
mean and standard deviation are correspondingly 5.91 and 1.27, respectively,
regarding the intention to use the system to assist learning. For this perspective, the

Table 7 Details of the questionnaires served for the performance study of PBeL pedagogy
Q. IDs Questions
Behavioral intention

Q15 I intend to use the given PBeL system to assist my learning


Q16 I intend to use the given PBeL system as a self-learning tool
Perceived problem-solving skills
Q17 The PBeL environment of the given system enhances my problem-solving skills
Q18 The PBeL environment of the given system provides various aspects to solve problems

123
J. Comput. Educ.

Table 8 Survey result of behavioral intention


Q. IDs Survey result

AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD

Q15 38.64 34.09 15.91 6.82 2.27 0.00 2.27 5.91 1.27
Q16 36.36 34.09 15.91 9.09 0.00 2.27 2.27 5.82 1.35

Average of the mean for the questions 5.87, average standard deviation 1.31

Table 9 Survey result of perceived problem-solving skills


Q. IDs Survey result

AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD

Q17 27.27 36.36 25.00 4.55 0.00 0.00 6.82 5.59 1.51
Q18 13.64 45.45 20.45 9.09 4.55 0.00 6.82 5.27 1.53

Average of the mean for the questions 5.43, average standard deviation 1.52

minimum values of the mean and standard deviation are 5.82 and 1.35, respectively,
about the intention to use the system as self-learning tool.
For perceived problem-solving skills, averages of the mean and standard
deviation are 5.43 and 1.52, respectively (Table 9). The maximum values of the
mean and standard deviation for this perspective are 5.59 and 1.51, respectively, on
the subject of enhancing problem-solving skill. The minimum values of the mean
and standard deviation are 5.27 and 1.53, respectively, concerning acquiring
features of PBeL. About 85 % students agreed that the PBeL pedagogy enhanced
their problem-solving skills to solve real-life problems, and they found themselves
confident to adapt with professional environment.

Conclusion

Learning or teaching of programming languages is involved with the comprehen-


sion of theoretical background, practical usage of semantics and syntactic, coding,
and algorithmic skills. As a result, learning and teaching of programming languages
is a difficult task. Both teachers and students are unanimous about the programming
fear of students though programming skill is considered as one of the main abilities
of computer science students. To develop effective learning/teaching pedagogy for
programming languages is now an imperative and inescapable issue. PBL is an
established learning pedagogy based on student-centered learning, a combination of
self-directed learning and collaborative learning availing momentum worldwide. In
PBL environment, students are engaged to self-learn, self-practice, and are mainly
focused on ill-structured problems. Conventional PBL is not fully suitable for the
teaching and learning of programming languages to develop the required problem-
solving skill as programming problems are structured, semistructured, and even may
be ill-structured in nature. An update of PBL is necessary to be compatible with the
types of programming problems.

123
J. Comput. Educ.

E-learning uses Internet technologies to create, improve, distribute, and facilitate


learning without the bounding of time and place. E-learning has been used in
synchronous and asynchronous learning forthe past few decades and the advantages
of e-learning have been viewed in many literature. But the conventional mode of
e-learning is not sufficient for developing problem-solving skill and engaging
students for self-learning or life-long learning.
In this research, we have developed a PBeL model integrating the concept of well-
known PBL pedagogy and e-learning knowledge transfer to take the advantages of both
for learning and teaching of programming languages in both synchronous and
asynchronous mode. A problem model with appropriate additional attributes has also
been developed for the PBeL model supporting programming problems which may be
structured, semistructured, or ill-structured in nature. An architecture has been
developed where a problem-bank is used to support the learning and teaching of
multiple programming languages. An interfacing layer has been introduced to the
architecture to ensure the multipurpose usage of problem-bank as problems of different
languages are different in nature and all problems are not appropriate for all languages.
An initial performance study has been performed to test the mannerism of the students
about the developed system based on the proposed PBeL model for database
programming. From the survey result, it was found that more than 80 % students
were satisfied with the functions, contents, multimedia instruction, and interactive
facilities as a learning-assisted tool. About 85 % students believe that the contents of the
system are sufficiently informative, and useful for learning. Most of the students agreed
to use the evaluation process of the system. The students did not have any experience of
using this type of learning system before but they were found very positive about the
PBeL pedagogy. About 90 % students agreed to choose PBeL pedagogy as their
learning strategy since they perceived themselves as self-learner with high motivation
and freedom. Most of the students agreed that the PBeL pedagogy enhances their
problem-solving skills to solve real-life problems than that of traditional learning and
they found themselves confident to adapt with professional environment.
At present, the performance study of the model was performed in the perspective
of students. The future work of the research is to study the performance of the
system in the perspective of both faculties and staffs who are related as supporting
personnel of programming courses. Currently, the PBeL model has been applied to
database programming and the result found is very encouraging. So in future work,
this model could be applied and tested for different structured and object-oriented
programming languages.

Acknowledgments This research was performed in the Department of Computer Science and
Engineering (CSE), Bangladesh University of Engineering and Technology (BUET) supported by
Information and Communication Technology Division, Ministry of Posts, Telecommunications and
Information Technology, Government of the People’s Republic of Bangladesh.

References
Akili, W. (2011). On implementation of problem-based learning in engineering education: Thoughts,
strategies and working models. In Frontiers in education conference (FIE), 2011 (p. S3B-1). Rapid
City, South Dakota: IEEE.

123
J. Comput. Educ.

Alam, M. R. (2010). HTML document—DOC type tutorial in Bangla. Retrieved November 9, 2015, from
http://www.webcoachbd.com/about-us.
Bashir, G. M. M., Hoque, A. S. M. L., & Nath, B. C. D. (2015). E-learning of PHP based on the solutions
of real-life problems. Journal of Computers in Education, 3(1), 1–25.
Bennedsen, J., & Caspersen, M. E. (2007). Failure rates in introductory programming. ACM SIGCSE
Bulletin, 39(2), 32–36.
Bhatti, P. T., & McClellan, J. H. (2011). A cochlear implant signal processing lab: Exploration of a
problem-based learning exercise. IEEE Transactions on Education, 54(4), 628–636.
Blackboard, Inc. (1997). Blackboard. http://www.blackboard.com/.
Bouhnik, D., & Marcus, T. (2006). Interaction in distance-learning courses. Journal of the American
Society for Information Science and Technology, 57(3), 299–305.
Fessakis, G., Gouli, E., & Mavroudi, E. (2013). Problem solving by 5–6 years old kindergarten children in
a computer programming environment: A case study. Computers and Education, 63, 87–97.
Fontes, L. M. d O., Neto, F. M. M., Pontes, A. A., et al. (2011). A multiagent system to support problem-
based learning. Creative Education, 2(5), 452.
Government of Ontario Canada. (2006). e-Learning Ontario. Retrieved May 24, 2015, from https://www.
courses.elearningontario.ca/.
Hamid, M. K. A., Hassan, M. A. A., Yusof, K. M., & Hassan, S. A. H. S. (2005). Crafting effective
engineering problems for problem based learning: Universiti teknologi malaysia experiences. In
Proceedings of regional conference of engineering education, Johor (pp. 12–13).
Hwang, W.-Y., Wang, C.-Y., Hwang, G.-J., Huang, Y.-M., & Huang, S. (2008). A web-based
programming learning environment to support cognitive development. Interacting with Computers,
20(6), 524–534.
java2s Developers. (2013). Programming tutorials and source code examples. Retrieved May 24, 2015,
from http://www.java2s.com/.
Khan, S. (2006). Khan Academy. https://www.khanacademy.org/computing/computer-programming/
html-css/int.
Kim, J. (2012). An ill-structured PBL-based microprocessor course without formal laboratory. IEEE
Transactions on Education, 55(1), 145–153.
King, P. M., & Kitchener, K. S. (1994). Developing reflective judgment: Understanding and promoting
intellectual growth and critical thinking in adolescents and adults. Jossey–Bass higher and adult
education series and Jossey–Bass social and behavioral science series. ERIC.
King, S., Greidanus, E., Carbonaro, M., Drummond, J., Boechler, P., & Kahlke, R. (2010). Synchronous
problem-based e-learning (ePBL) in interprofessional health science education. Journal of
Interactive Online Learning, 9(2), 133–150.
Kolmos, A., Fink, F. K., & Krogh, L. (2004). The Aalborg model-problem-based and project-organized
learning. In The Aalborg PBL model—Progress, diversity and challenges (pp. 9–18). Aalborg:
Aalborg University Press.
Liaw, S.-S. (2007). Computers and the internet as a job assisted tool: Based on the three-tier use model
approach. Computers in Human Behavior, 23(1), 399–414.
Liaw, S.-S. (2008). Investigating students perceived satisfaction, behavioral intention, and effectiveness
of e-learning: A case study of the blackboard system. Computers and Education, 51(2), 864–873.
Liaw, S.-S., Huang, H.-M., & Chen, G.-D. (2007). Surveying instructor and learner attitudes toward
e-learning. Computers and Education, 49(4), 1066–1080.
Looi, H. C., & Seyal, A. H. (2014). Problem-based learning: An analysis of its application to the teaching
of programming. International Proceedings of Economics Development and Research, 70, 68.
Mantri, A., Dutt, S., Gupta, J., & Chitkara, M. (2008). Design and evaluation of a PBL-based course in
analog electronics. IEEE Transactions on Education, 51(4), 432–438.
Nuutila, E., Törmä, S., & Malmi, L. (2005). PBL and computer programming the seven steps method with
adaptations. Computer Science Education, 15(2), 123–142.
Penner, J. G. (1984). Why many college teachers cannot lecture: How to avoid communication
breakdown in the classroom. ERIC.
Qiu, M., & Chen, L. (2010). A problem-based learning approach to teaching an advanced software
engineering course. In 2010 Second international workshop on education technology and computer
science (ETCS) (Vol. 3, pp. 252–255). Wuhan: IEEE.
Raab, R. T., Ellis, W. W., & Abdon, B. R. (2001). Multisectoral partnerships in e-learning: A potential
force for improved human capital development in the Asia Pacific. The Internet and Higher
Education, 4(3), 217–229.

123
J. Comput. Educ.

Refsnes Data, a Norwegian software development and consulting company (1998). W3Schools online web
tutorial. Retrieved May 24, 2015, from http://www.w3schools.com/.
Robins, A., Rountree, J., & Rountree, N. (2003). Learning and teaching programming: A review and
discussion. Computer Science Education, 13(2), 137–172.
Rogerson, C., & Scott, E. (2010). The fear factor: How it affects students learning to program in a tertiary
environment. Journal of Information Technology Education, 9(1), 147–171.
Santos-Martin, D., Alonso-Martı́nez, J., Carrasco, J. E.-G., & Arnaltes, S. (2012). Problem-based learning
in wind energy using virtual and real setups. IEEE Transactions on Education, 55(1), 126–134.
Scherer, R., & Tiemann, R. (2012). Factors of problem-solving competency in a virtual chemistry
environment: The role of metacognitive knowledge about strategies. Computers and Education,
59(4), 1199–1214.
Selvi, S. T., Kaleel, D., & Chinnaiah, V. (2012). Applying problem based learning approach on e-learning
system in cloud. In 2012 International conference on recent trends in information technology
(ICRTIT) (pp. 244–249). Chennai: IEEE.
Shee, D. Y., & Wang, Y.-S. (2008). Multi-criteria evaluation of the web-based e-learning system: A
methodology based on learner satisfaction and its applications. Computers and Education, 50(3),
894–905.
Shinde, V. V., & Inamdar, S. (2013). Problem based learning (PBL) for engineering education in India:
Need and recommendations. Wireless Personal Communications, 69(3), 1097–1105.
Shotsberger, P. G. (2000). The human touch: Synchronous communication in web-based learning.
Educational Technology, 40(1), 53–56.
Sierra, A., Ariza, T., & Fernandez, F. (2013). PBL in programming subjects at engineering. Bulletin of the
IEEE Technical Committee on Learning Technology, 15(2), 1–4.
Soares, A., Fonseca, F., & Martin, N. L. (2015). Teaching introductory programming with game design
and problem-based learning. Issues in Information Systems, 16(3), 128–137.
Spector, J. M. (2006). A methodology for assessing learning in complex and ill-structured task domains.
Innovations in Education and Teaching International, 43(2), 109–120.
Stewart, T. M., MacIntyre, W. R., Galea, V. J., & Steel, C. H. (2007). Enhancing problem-based learning
designs with a single e-learning scaffolding tool: Two case studies using challenge FRAP.
Interactive Learning Environments, 15(1), 77–91.
Suman (2011). HTML Bangla tutorial using notepad. Retrieved November 9, 2015, from https://www.
youtube.com/watch?v=QP2aoKLFYG4&list=PLF5F7A55C54E1655C.
Ullah, A. (2012). HTML Bangla tutorial by Atique Ullah. Retrieved November 9, 2015, from https://
www.youtube.com/watch?v=kVbW4156A24.
Veletsianos, G., Beth, B., & Lin, C. (2016). CS teacher experiences with educational technology,
problem-based learning, and a CS principles curriculum. In Proceedings of the 47th ACM technical
symposium on computing science education (pp. 651–656). New York.
Verner, C., & Dickinson, G. (1967). The lecture, an analysis and review of research. Adult Education
Quarterly, 17(2), 85–100.
Violante, M. G., & Vezzetti, E. (2015). Virtual interactive e-learning application: An evaluation of the
student satisfaction. Computer Applications in Engineering Education, 23(1), 72–91.
Woods, D. R. (2003). Preparing for PBL. Hamilton, ON: McMaster University.
Yang, T.-C., Hwang, G.-J., Yang, S. J., & Hwang, G.-H. (2015). A two-tier test-based approach to
improving students’ computer-programming skills in a web-based learning environment. Journal of
Educational Technology and Society, 18(1), 198–210.

Golam Md. Muradul Bashir obtained his MSc in Information and Communication Technology from
Bangladesh University of Engineering and Technology (BUET) in 2009 following his BSc in Computer
Science and Engineering from Khulna University of Engineering and Technology (KUET) in 2003. He
has been working as a Faculty Member in the Department of Computer and Communication Engineering
at Patuakhali Science and Technology University (PSTU) since 2006, and currently he is an Associate
Professor, PSTU. His research interest includes e-learning, problem-based learning, data warehouse, data
mining, and information retrieval.

123
J. Comput. Educ.

Abu Sayed Md. Latiful Hoque received his PhD in the field of Computer and Information Science from
the University of Strathclyde, Glasgow, UK in 2003 with Commonwealth Academic Staff Award. He
obtained his MSc in Computer Science and Engineering and BSc in Electrical and Electronic Engineering
from Bangladesh University of Engineering and Technology (BUET) in 1997 and 1986, respectively. He
has been working as a Faculty Member in the Department of Computer Science and Engineering in
BUET since 1990, where currently he is working as a Professor. He is a Fellow of the Institute of
Engineers Bangladesh (IEB) and Bangladesh Computer Society. His research interest includes e-learning,
problem-based learning, data warehouse, data mining, information retrieval, and compression in database
systems. He has been working as the Chief Investigator of the Design and Development of Problem Bank
for Problem-Based e-Learning (PBeL) System of Programming Languages and the ICT Education Project
under the ICT Division, the Ministry of Posts, Telecommunications, and Information Technology,
Government of the People’s Republic of Bangladesh.

123

Вам также может понравиться