An Effective Learning and Teaching Model For Programming Languages
An Effective Learning and Teaching Model For Programming Languages
DOI 10.1007/s40692-016-0073-2
123
J. Comput. Educ.
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.
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.
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.
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.
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 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
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.
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 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
123
J. Comput. Educ.
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.
The problem model on the basis of Woods (2003) which is mainly formed for
Chemical Engineering education is given in Fig. 3.
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.
Openness
This challenges the students’ thinking and expects the students to integrate the new
knowledge with the old.
Professional practice
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.
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.
123
J. Comput. Educ.
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.
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.
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.
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.
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.
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
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.
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.
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
123
J. Comput. Educ.
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
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
123
J. Comput. Educ.
AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD
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
AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD
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.
AS (%) AM (%) ASL (%) NAND (%) DSL (%) DM (%) DS (%) M SD
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:
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
123
J. Comput. Educ.
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
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
123
J. Comput. Educ.
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