A Study of Pair Configuration in a Computer Networks Virtualization-
based Lab and Its Effect on Learning
Abstract: Previous studies have demonstrated that pair programming has beneficial effects
on students’ learning. Based on pair programming, this study proposes pair configuration for
learning computer networks and designs a virtualization-based lab that allows pair input
commands to be entered simultaneously from two computers to one terminal. In the
experiment, university students were divided into two groups: In the experimental group, a
pair configuration was used for lab assignments, whereas in the control group, students
completed lab assignments individually. The experimental group significantly outperformed
the control group in learning achievement and also had more confidence in their work,
thereby reducing the instructor’s workload. Finally, the findings of the interviews and
questionnaires reveal that the experimental group considerably enjoyed the pair configuration
in the virtualization-based lab and had high motivation to use the proposed system.
Therefore, pair configuration in a virtualization-based lab is suitable and helpful to facilitate
learning in a computer networks lab.
Keywords: pair programming, pair configuration, collaborative learning, teaching computer
networks
Introduction
Pair programming has been introduced in industry and forms part of the larger concept of
Extreme Programming (XP) (Beck, 2000). The concept of pair programming consists of two
programmers working collaboratively to develop software. One programmer (the driver)
plays the role of generating code, while the other programmer (the navigator) monitors the
driver’s work in order to prevent defects and offers suggestions regarding the overall
software design and development. The driver and the navigator regularly swap roles.
Although pair programming was not originally intended for use in educational settings, it has
quickly adapted for these educational purposes, and there is now a significant body of
research on educational usages of pair programming (Williams, Kessler, Cunningham, &
Jeffries, 2000).
Based on previous pair programming research that was originally conducted in a
programming lab, this study tries to propose a new mechanism called “pair configuration,”
through which pairs of users can input commands simultaneously from two computers to one
terminal, and applies this mechanism in a computer networks lab (Boyer, Phillips, Wallis,
Vouk, & Lester, 2009). The pair configuration technique enables pairs of students to work
collaboratively and share knowledge with each other. Moreover, the virtualization technique
is implemented in a computer networks lab where students can complete their assignments.
The purpose of this study is to assess how beneficial the pair configuration is for students’
behavior, perception, and learning achievement.
Several studies have compared pair and solo programming (Braught, Wahls, & Eby,
2011; Gómez, Batún, & Aguilar, 2013; Williams, Wiebe, Yang, Ferzli, & Miller, 2002).
Therefore, the students in this study were divided into the solo students of the control group
and the pair students of the experimental group; lab experiments were conducted for each
group. The experimental group did the lab assignments using pair configuration, whereas the
control group did them individually. Furthermore, a virtualization technique was
implemented in a computer networks lab (hereafter called the “virtualization-based lab”),
which allowed the running of labs on virtual machines (VMs). Both groups did their
assignments using the virtualization-based lab. However, the experimental group shared and
synchronized their input commands for configuring networks collaboratively in the web
terminal. Moreover, both groups used the online synchronous discussion (OSD) feature,
which enabled them to communicate with others as well as their instructors, who were the
teacher and teaching assistant (TA). The lab material consisted of Basic Labs (comprising
Linux concepts and basic practices) and Advanced Labs (comprising Linux networking and
advanced practices). The students completed the assignments individually in Basic Labs and
in groups in Advanced Labs.
Related work
This experiment was undertaken with three well-known techniques: pair programming,
synchronous collaborative programming, and virtualization for designing collaborative
learning and deploying virtual lab facilities. Details regarding the theory and technique are
described as follows:
Pair programming in programming labs
Williams, Kessler, Cunningham, and Jeffries (2000) and Canfora, Cimitile, Garcia, Piattini,
and Visaggio, (2007) originally introduced pair programming in industry. The concept of pair
programming consists of two programmers working collaboratively to develop software. One
programmer (the driver) has the responsibility to generate code, while the other programmer
(the navigator) monitors the driver’s work in order to safeguard against defects and offers
suggestions to the driver regarding the various components of the overall software process,
such as design, coding, and testing. The driver and navigator can swap their roles, thus
balancing the workload. Various studies applied pair programming in programming labs and
reported that it has more beneficial effects on performance than solo programming: Firstly,
paired students are more self-sufficient when they perform assignments and have a high level
of learning activities and interactions with each other in class (Wiebe et al., 2003). Secondly,
Williams, Wiebe, Yang, Ferzli, and Miller (2002) highlighted that pair programming reduced
students’ reliance on instructors during lab classes. Finally, the pairing mechanism can be
beneficial for students’ happiness when the pair has at least one high achieving student
because he/she will lead the pair to complete assignments with the correct output (Braught,
Eby, & Wahls, 2008). These findings support the proposal of this study. Furthermore, a new
synchronized and shared input mechanism is designed to facilitate the collaboration of pair
programming in this study, allowing the pair to input commands simultaneously from two
computers to one terminal.
Synchronous collaborative programming
Synchronous collaborative programming (SCP) has been used in computer science labs to
enable students to code together at the same time in both distance and face-to-face classroom
settings (Boyer, Dwight, Fondren, Vouk, & Lester, 2008; Schuemmer & Lukosch, 2009).
SCP uses plug-in with an IDE editor (Vandeventer & Barbour, 2012) to facilitate the program
development pane for coding and compiling and the chat pane for online chatting. The SCP
system is a synchronized tasks system. When one user creates a task, that task generates an
action that is transmitted to the other user. Synchronized actions consist of file operations
(e.g., creating, saving, and removing files), editor operations (e.g., coding, code checking,
and code integrating) and program running (execution and debugging).
Virtualization-based lab
Past research has suggested using on-campus, remote-access lab facilities; in this manner,
learners can access work on real devices and monitor the results achieved anywhere (Lahoud
& Tang, 2006; Summers, Bhagyavati, & Martin, 2005). Recently, this type of remote-access
lab has been adopted in various computer science courses. However, one disadvantage it has
is that it requires a properly installed lab facility and additional resources to handle such
remote access. Moreover, reconfiguring this type of lab requires significant effort from
numerous staff members (Abler, Contis, Grizzard, & Owen, 2006).
Therefore, Anisetti et al. (2007), Border (2007), and Wannous and Nakano (2010)
introduced virtualization-based technology as a new way of installing a group of VMs on one
server and running OSs on these VMs. Moreover, labs that implement virtualization-based
technology allow learners to conduct experiments like real lab devices with flexible and
portable features that have been successfully tested and verified for learning purposes.
Recently, this virtualization-based technique has even been utilized in many online services,
especially in cloud computing (Chengjun, Quanhong, & Heng, 2012). Hence, this study tries
to implement a virtualization-based lab with VMs and build virtual devices like hubs, switches,
and routers for computer networks lab classes.
Method
Participants and procedures
The experiment was conducted during the summer semester (March to May 2014) at a
university in Thailand. The participants consisted of 62 undergraduate students enrolled in
two sections of a computer networks course. One section, with 33 students, was assigned to
be the control group, while the other section, with 29 students, was assigned to be the
experimental group.
The procedures of the experiment were based on four overall steps, as shown in Figure 1:
1) Pre-test 1 and lab orientation; 2) experimental treatment for the Basic Labs and Post-test 1;
3) Pre-test 2 and experimental treatment for the Advanced Labs; and 4) Post-test 2 and a
questionnaire. The experiment was administered twice a week in three-hour increments. The
same teacher lectured both groups with the same lab topics (see Appendix 2), which
consisted of two parts: Basic Labs (Linux concept and basic practices: Labs 1-3) and
Advanced Labs (Linux networking and advanced practices: Labs 4-6). In the lab class, both
groups did their lab assignments using the virtualization-based lab. The experimental group
did their lab assignments using a pair configuration technique, whereas the control group
worked individually. The instructors informed the students about how to use the
virtualization-based lab.
Learning activity designs
In this experiment, the learning activities consisted of individual and group assignments,
which were designed on the basis of lab topics and network equipment. The Basic Labs were
assigned as individual assignments and the Advanced Labs as group assignments. Before the
lab started, the experimental and control students were further divided into groups of four
pairs and groups of four students, respectively. Details regarding the designed lab class and
the homework assignments are described as follows.
Basic Labs assignments
The Basic Labs assignments were individual assignments and consisted of Labs 1 to 3. The
instructors prepared the lab materials and assignments for both student groups. At the
beginning of class, the teacher briefed the students on the objective and contents of the
experiment and gave them the assignments, which were completed by the end of the three-
hour class period. The completed assignments were then presented to the instructors for
evaluation. In addition, the students had both face-to-face discussions and OSDs with group
members and instructors; moreover, their classmates used the virtualization-based lab’s chat
feature.
Figure 1: Flowchart for the experiment
Advanced Labs assignments
The Advanced Labs were group assignments and consisted of Labs 4 to 6. Students in both
the experimental and control groups were asked to collaborate with their fellow group
members to complete the lab assignments within the class period. Again, the students had
both face-to-face discussions and OSDs with other group members and the instructors; and
classmates also used the virtualization-based lab’s chat feature. In Lab 4 (see Appendix 3),
each student and each pair configured a file server, web server, database server, and FTP
server. At the beginning of the assignment, one student or one pair configured one type of
server and then explained how to do so to the other group members. In Labs 5 and 6 (see
Appendix 4), each student and each pair managed and configured one of four routers.
Homework
The teacher prepared the same homework assignments for the control group and the
experimental group, which consisted of a post-lab question aimed at improving the students’
understanding of the experiment. The students were allowed to use the virtualization-based
lab to determine the answers from the command manual window and to redo the assignments
to confirm their answers.
Research variables
In this experiment, the following variables were defined: command count, the ratio of
incorrect to total commands, chat message count, homework scores, pre-test, post-test, and
number of face-to-face help. In addition, these variables were compared to each other as well
as with overall learning achievement.
1. Command count: The total number of Linux commands coded by a student using the
virtualization-based lab for Labs 2-3 and 4-6.
2. The ratio of incorrect to total commands: The ratio of incorrect to total Linux
commands coded by a student using the virtualization-based lab for Labs 2-3 and 4-6.
3. Chat message count: The total number of chat messages typed by a student using the
virtualization-based lab for Labs 2-3 and 4-6 that were relevant to the lab assignment.
4. Homework scores: The homework scores for Labs 1-6.
5. Pre-test and post-test: Pre-tests 1 and 2 are the students’ exam scores before the Basic
Labs and Advanced Labs, respectively. Post-test 1 is the students’ midterm exam
scores, while Post-test 2 is the students’ final exam scores.
6. The number of face-to-face help: The total number of face-to- face help meetings
when students had face-to-face help from instructors.
Research questions
1. When pair configuration is applied, do the students do their assignments (homework
and post-test objectives) better than those working without pair configuration? Dose
pair configuration reduce the instructor’s effort in helping students?
2. What are the students’ perceptions and behavioral intentions when using the proposed
system in the two groups?
3. Is pair configuration beneficial to students’ learning, and what are the reasons for this,
as deduced from interviews?
Figure 2: Virtualization-based Lab Web GUI: 1) Web terminal; 2) Command search window; 3) Lab materials; and 4) Group chat windows
The virtualization-based lab
Figure 2 shows the GUI of the virtualization-based lab. This is a web GUI with a simple
server-side script with an interface that includes the following: 1) a web Linux terminal that
allows students to open a command line window on the guest OS; 2) a command search box
that enables students to find the command manual; 3) lab materials for Labs 1-6; and 4) a
chat feature that allows students to have OSDs for sharing Linux and configuration
commands with their classmates.
Results and discussion
The results of this research and the pedagogical implications are presented in relation to each
of the research questions above. The answers to the three research questions are shown in the
following sections, respectively.
Analysis of pre-test, post-test results and homework scores
The pre-test aimed to ensure that both groups of students had the equivalent basic knowledge
required for learning the course. According to Table 1, the mean and standard deviation of
pre-test 1 for the experimental group were 1.69 and 0.71, respectively, while those of pre-test
2 were 2.17 and 0.97; for the control group, these measures were 2.13 and 0.19 for pre-test 1,
and 2.69 and 0.93 for pre-test 2. Since the pre-test 1 and 2 scores for both groups were less
than 3 (out of a total of 10), it is evident that the two groups of students had equivalent
abilities prior to taking the course. There are significant differences in pre-test 1 (t = −2.095,
p = 0.041) and pre-test 2 (t = −2.119, p = 0.038) for the two groups.
Analysis of covariance (pre-test as covariate) was also used to investigate whether
students in the two groups differed in their post-test performance when pair configuration
was used or not during a lab (see Tables 2 and 3). These analyses reveal a significant
difference between the students in the experimental and control groups: Basic Labs: F (1, 58)
= 7.421, p < 0.05; Advanced Labs: F (1, 58) = 36.403, p < 0.001.
Moreover, the t-test results of the homework scores (see Table 4) show that the
experimental group has a significantly higher difference than the control group in Homework
1 (t = 7.283; p = 0.0), Homework 4 (t = 2.485; p = 0.016), and Homework 5 (t = 9.742; p =
0.0), and the averages score of Homework 2, 3, and 6 for the experimental group are higher
than for the control group. The primary reason for this difference is that the experimental
students usually discussed and answered the homework questions with their partner and
therefore attained higher homework scores.
Based on the findings, it can be concluded that in both Basic and Advanced Labs, paired
students in the experimental group performed better than solo students in the control group.
We believe that this is because they worked and synchronized with their partners in numerous
discussions and engaged in knowledge sharing to impart and receive more knowledge than
might be gained through individual work (Lee, 2011).
Table 1: Results of the pre-test and post-test analysis
Assessment Experimental Group Control Group t p(n = 29) (n = 33)
Mean SD SE Mean SD SEPre-test 1 1.69 0.71 0.13 2.13 0.91 0.16 −2.095 0.041*Pre-test 2 2.17 0.97 0.18 2.69 0.93 0.16 −2.119 0.038*Post-test 1 9.62 0.93 0.16 7.59 3.18 0.56Post-test 2 10.00 3.70 0.69 5.47 2.38 0.42
*p < 0.05, **p < 0.01, ***p < 0.001
Table 2: Analysis of covariance of the post-test 1 performance with pre-test 1 as a covariate (Basic Labs)
Source of Variance SS df MS F Sig.Between groups 73.822 1 73.822 7.4210.009**Within group (errors) 576.978 58 9.948
Total 5120.000 61*p < 0.05, **p < 0.01, ***p < 0.001
Table 3: Analysis of covariance of the post-test 2 performance with pre-test 2 as a covariate (Advanced Labs)
Source of Variance SS df MS F Sig.Between groups 336.383 1 336.383 36.4030.000***Within group (errors) 535.944 58 9.240
Total 4417.000 61*p < 0.05, **p < 0.01, ***p < 0.001
Table 4: T-test results of the homework
Assignment Experimental Group Control Group t p(n = 29) (n = 33)
Mean SD SE Mean SD SEHomework 1 4.48 0.91 0.17 2.66 1.04 0.18 7.283 0.0***Homework 2 3.50 0.82 0.15 3.19 0.68 0.12 1.621 0.11Homework 3 4.21 0.73 0.13 4.16 0.99 0.17 0.226 0.822Homework 4 2.93 0.65 0.12 2.56 0.50 0.09 2.485 0.016*Homework 5 4.46 0.87 0.16 2.79 0.35 0.06 9.742 0.0***Homework 6 3.72 0.80 0.15 3.69 0.78 0.14 0.181 0.857*p < 0.05, **p < 0.01, ***p < 0.001
Table 5: T-test results of command count and the ratio of incorrect to total commands
Assignment Experimental Group Control Group t p(n = 14) (n = 33)
Mean SD SE Mean SD SELab 2 Command Count 103.79 40.25 10.7
653.84 20.51 3.63 4.399 0.0***
Lab 3 Command Count 49.14 28.10 7.51 41.34 21.30 3.76 1.035 0.306Lab 4 Command Count 57.29 23.84 6.37 39.34 23.22 4.11 2.392 0.021*Lab 5 Command Count 78.93 34.60 9.25 54.13 21.54 3.81 2.967 0.005**Lab 6 Command Count 38.36 14.01 3.75 24.81 16.82 2.97 2.634 0.012*Lab 2 Ratio of incorrect to total commands
0.06 0.03 0.01 0.14 0.10 0.02 −4.142 0.0***
Lab 3 Ratio of incorrect to total commands
0.07 0.04 0.01 0.16 0.15 0.03 −2.221 0.032*
Lab 4 Ratio of incorrect to total commands
0.07 0.04 0.01 0.12 0.07 0.01 −2.823 0.007**
Lab 5 Ratio of incorrect to total commands
0.05 0.03 0.01 0.08 0.04 0.01 −2.345 0.024*
Lab 6 Ratio of incorrect to total commands
0.06 0.05 0.01 0.14 0.10 0.02 −3.148 0.003**
*p < 0.05, **p < 0.01, ***p < 0.001
T-test results of command count and the ratio of incorrect to total commands
There are statistically significant differences regarding command count in Lab 2 (t = 4.339, p
= 0.00), Lab 4 (t = 2.392, p = 0.021), Lab 5 (t = 2.967, p = 0.005), and Lab 6 (t = 2.634, p =
0.012) between the experimental group and the control group. Although it was found the
command count is not direct related to learning achievement, this finding shows command
count is possibly an indicator affecting students’ learning. As Table 5 shows, the mean of the
lab command count of the experimental group was higher than the mean of the control group.
This implies that the experimental group created more activities in command practices than
the control group. Moreover, the significant differences in command count in Labs 2, 4, 5,
and 6 show that the paired students synchronized commands and helped each other to
perform assignments collaboratively in the virtualization-based lab, which led the
experimental group to generate more commands than the control group (Braught, Eby, &
Wahls, 2008).
Furthermore, according to Table 5, the ratios of incorrect to total commands show
statistically significant differences between the experimental group and the control group in
all six labs: (t = −4.142, p = 0.0), (t = −2.221, p = 0.032), (t = −2.823, p = 0.007), (t = −2.345,
p = 0.024), and (t = −3.148, p = 0.003), respectively. The results demonstrate that students in
the experimental group improved their typing capability more than their counterparts in the
control group because paired synchronization can facilitate careful and correct work;
therefore, the students in the experimental group could reduce syntax and type errors (Lui &
Chan, 2006).
T-test results of chat message count and number of face-to-face help
Regarding the t-test results of the chat message count as shown in Table 6, there are
statistically significant differences in the command count in Lab 4 (t = −2.404, p = 0.019),
Lab 5 (t = −2.501, p = 0.015), and Lab 6 (t = 2.737, p = 0.008) between the experimental
group and the control group. Besides, almost all average values of the chat message count of
the experimental group are lower than those of the control group, excluding that of Lab 1.
Moreover, as regards the numbers of face-to-face help in Table 6, there are no significant
differences between the experimental group and the control group. However, the average
number of face-to-face help of the experimental group is lower than that of the control group
across all laboratories.
The main reasons for this situation is that the students in the experimental group could
communicate directly with their partners to solve problems and lab assignments; as such, they
could understand and solve problems better than the students who worked alone, without help
from instructors (Williams & Kessler, 2002). Furthermore, Asian students are generally shy
in asking for help from instructors (Liu, 2001). For this reason, the numbers of face-to-face
help of the two groups were small, and there were no significant differences between the two
groups.
Table 6: T-test results of the chat message count and number of face-to-face help
Assessment Experimental Group
Control Group t p
(n = 29) (n = 33) Mean SD SE Mean SD SELab 2 Chat Message Count 7.00 5.56 1.03 6.93 5.91 1.05 0.042 0.996Lab 3 Chat Message Count 2.34 2.09 0.39 3.72 3.70 0.66 −1.757 0.084Lab 4 Chat Message Count 4.14 3.82 0.71 6.53 3.93 0.70 −2.404 0.019*Lab 5 Chat Message Count 2.24 2.54 0.47 4.31 3.84 0.68 −2.501 0.015*Lab 6 Chat Message Count 0.72 0.88 0.16 1.28 0.68 0.12 −2.737 0.008**Lab 1 Number of face-to- face help
1.07 1.58 0.29 1.44 2.14 0.38 −0.759 0.451
Lab 2 Number of face-to- face help
1.00 1.10 0.20 1.78 2.85 0.50 −1.437 0.158
Lab 3 Number of face-to- face help
1.34 1.63 0.30 1.59 2.20 0.39 −0.498 0.620
Lab 4 Number of face-to- face help
1.59 1.70 0.32 2.09 2.01 0.35 −1.060 0.293
Lab 5 Number of face-to- face help
1.72 1.87 0.35 1.75 1.87 0.35 −0.056 0.955
Lab 6 Number of face-to- face help
1.28 1.87 0.35 1.31 1.38 0.24 −0.088 0.930
*p < 0.05, **p < 0.01, ***p < 0.001
In conclusion, although the two groups did the same assignments, the experimental group
spent less effort than the control group in terms of chatting and asking other students or
instructors questions.
Students’ perceptions and behavioral intentions
A questionnaire survey was conducted in order to investigate the students’ perceptions and
behavioral intentions when using the proposed system. The questionnaire was designed
following the technology acceptance model (TAM) (Davis, 1986) and based on the following
four dimensions: 1) perceived ease of the proposed system use; 2) perceived usefulness of the
proposed system; 3) attitude toward using the proposed system; and 4) behavioral intentions
when using the proposed system. Furthermore, it included five external dimensions (e.g.,
system characteristics) that affect intention to use and actual use (Davis, Bagozzi, &
Warshaw, 1989): 1) system characteristics of the proposed system; 2) system accessibility of
the proposed system; 3) perceived readiness based on using the proposed system; 4)
perceived usefulness of the proposed system for collaborative group work; and 5) perceived
subjective norm from classmates to use the proposed system. The responses obtained from
the two groups were ranked using a five-point Likert scale (ranging from strongly disagree
(1) to strongly agree (5)). The statistical results of the questionnaire survey are presented in
Table A-1 in Appendix 1. According to the t-test results, the average mean scores of all the
dimensions for the experimental group were higher than those for the control group. In
addition, there was statistically significant difference regarding the perceived subjective norm
from classmates to use the proposed system (t = 2.036, p = 0.046). This finding demonstrates
three aspects of the experiment. First, the significant result highlights that subjective norm
among the students in the experimental group can enhance the use and continued use of the
proposed system in their future studies, as pairing helps them have more confidence and
motivation to complete lab assignments. Second, the students in the experimental group felt
that they were better prepared for performing laboratory assignments when using the
proposed system and that it had helpful characteristics. Third, they perceived that the
proposed system provided a Linux OS environment that was more user-friendly than a real
network device. Fourth, they confirmed that the proposed system was easy to access and that
it offered quick and stable remote access.
Moreover, all questionnaire dimensions were rated “agree” by the experimental group,
and all of the questionnaire ratings of this group were higher than those of the control group.
This indicates that the proposed system was ready to be utilized for the particular scope of
teaching computer networks; moreover, the proposed system was uncomplicated and useful
for conducting experiments and collaborative group work. Furthermore, the highest rating
given by the experimental group for system characteristics of the proposed system dimension
was 3.80. This result strongly implies that the characteristics of the proposed system allow
students to have real experiences of laboratory practice through this virtual device (Anisetti et
al., 2007; Border, 2007; Wannous & Nakano, 2010).
Interview and in-depth investigation
During the one-on-one semi-structured interviews, the students mentioned that they could
benefit from using pair configuration for labs in class. Regarding the use of pair configuration
for experiments, the students in the experimental group pointed out that pair configuration
influenced their behavior to have more discussions and share more, which related to the
Linux commands and networks configuration (Williams, Wiebe, Yang, Ferzli, & Miller,
2002). The following content was extracted from two different interviews:
In lab class, I often discussed with my partner how to use Linux commands in the
first three labs and how to configure networks in the last three labs. My partner
helped me complete the assignments in a short time because he have a lot of
experience in Linux OS.
During the lab class, I had online and face-to-face communication with other
group members, the TA, and the teacher. However, it was not as helpful in
comparison to communications with my partner, which saved me time spent in
discussions with others about the assignments. Besides, the direct communications
with my partner make us had more understanding about the assignment problems.
In addition, the paired configuration students were typically able to find the solutions to
reduced level problems such as syntax and type errors without assistance, and the instances of
them asking instructors for help were much less frequent (Braught, Wahls, & Eby, 2011). The
following content is derived from two different interviews:
My web terminal was synchronized with my partner’s web terminal. This
technique allowed us to type configuration commands at the same time. Therefore, we
could check our typing before we submitted the inputs.
In Labs 2 and 3, we completed our assignments by ourselves, and all assignments
were correct as checked by the instructors. When I worked with my partner, I was
very confident in finishing assignments without any help from others.
However, the use of paired configuration in our study was also intended to give students
an opportunity to experience two different roles (driver and navigator) while doing the
experiment. In either case, if one student in the pair is struggling or absent, the partner can
swap roles to be the driver for the lab (Wiebe et al., 2003). The following content is extracted
from two different interviews:
In every lab class, my partner and I worked together when we did assignments.
Both of us typed concurrently commands into the virtualization-based lab. Moreover,
we agreed to change roles so each of us was the driver for three laboratories and the
navigator for three laboratories.
Some students had to attend department activities before Lab 3 started. Therefore,
the teacher allowed one member of each pair to joint this event. My partner did the
assignment for me, and we received the lab score as a pair.
On the other hand, the solo students in the control group frequently asked for help and had
questions for the instructors and other students in both face-to-face and online discussions of
the assignments (Wiebe et al., 2003). Moreover, the students in the control group waited for
help from the instructors when they ran into problems (Williams, Wiebe, Yang, Ferzli, &
Miller, 2002). Furthermore, some students in the solo class had no self-confidence to do
assignments by themselves, and they did not ask others for help; thus, they did not finish the
assignments on time (Williams & Kessler, 2002). The following content is extracted from
two different interviews:
I often used the virtualization-based lab to chat with other group members and
instructors. Moreover, during lab class, when I could not solve the problems, I
requested face-to-face help from the instructor, and then I could complete my
assignments.
The network configuration part of the lab was too difficult for me. I should have
finished the assignments in 3 hours; however, the instructors could not advise all the
students because there were 33 students in the class. Thus, I could not finish the
assignments on time. Then, the teacher gave me an extra time to complete the
assignments.
Implications regarding education and technology
Based on the findings, this study presents the following implications and recommendations
for instructors who plan to teach computer networks. Firstly, it is recommended to use pair
configuration in virtualization-based labs for enhancing students’ understanding of the lab
contents. Secondly, pair configuration is a collaborative learning environment in which the
paired students can work and share knowledge together for completing assignments; in
addition, the paired students and instructors can have direct conversations via a chat feature,
and instructors can simultaneously monitor paired students in class and help them correct
certain configurations by sending messages. Therefore, the pair configuration can increase
students’ attention when performing assignments during lab class. Thirdly, it was observed
that paired students had many discussions with their partners during both Basic and
Advanced Labs. Thus, instructors should chat directly into class windows (not individual
windows), discussing the assignments with all the pairs, especially when it comes to giving
guideline commands. Fourthly, this experiment recommends that instructors should assign
pairs based on students’ ability levels. Each pair should have at least one high achieving
student, because he/she will help his/her partner to have a better understanding of the lab
contents (Dawande, Johar, Kumar, & Mookerjee, 2008). Finally, this experiment shows that
virtualization-based labs can be a cost-efficient lab solution, when the alternative is to buy
expensive high-profile network equipment directly from the manufacturers. Furthermore, if
instructors apply the Linux OS to teach computer networks, then students will gain
experience in both computer networks and Linux, i.e., business enterprise OS.
Conclusion
This study applied the pair configuration mechanism for a computer networks lab in order to
determine its effectiveness in students’ learning performance. In addition, the study
investigated students’ perceptions and behavioral intentions when implementing pair
configuration in labs. First of all, this study successfully proposed pair configuration for
learning in computer networks labs. Second, the experimental group in the pair configuration
class was more productive in command count; moreover, there was a decreased effort from
the instructor in terms of chat message count and face-to-face help. Thus, the experimental
group significantly outperformed the control group in both post-tests. Third, this study
successfully deployed a virtualization-based lab into a computer networks lab, a technique
that allowed the instructors to create a variety of virtual network topologies to be deployed as
the lab facilities. Therefore, the students learned with real experience and accepted the
virtualization-based labs for performing the assignments during lab class.
There are several limitations that need to be acknowledged regarding this experiment. The
first limitation is the relatively small sample, which limits the broad generalization of the
results. Therefore, in the future, this study will increase the number of participants to include
one control groups and two experimental groups, thus producing more, alternative data.
Finally, future efforts should compare performance of students working in pairs with
synchronized and non-synchronized configurations.
References
Abler, R. T., Contis, D., Grizzard, J. B., & Owen, H. L. (2006). Georgia tech information
security center hands-on network security laboratory. Ieee Transactions on Education,
49(1), 82-87. doi: Doi 10.1109/Te.2005.858403
Anisetti, M., Bellandi, V., Colombo, A., Cremonini, M., Damiani, E., Frati, F., . . .
Rebeccani, D. (2007). Learning computer networking on open paravirtual laboratories.
Ieee Transactions on Education, 50(4), 302-311. doi: Doi 10.1109/Te.2007.904584
Beck, K. (2000). Extreme programming explained: embrace change: Addison-Wesley
Professional.
Border, C. (2007). The development and deployment of a multi-user, remote access
virtualization system for networking, security, and system administration classes. ACM
SIGCSE Bulletin, 39(1), 576. doi: 10.1145/1227504.1227501
Boyer, K. E., Dwight, A. A., Fondren, R. T., Vouk, M. A., & Lester, J. C. (2008). A
development environment for distributed synchronous collaborative programming. ACM
SIGCSE Bulletin, 40(3), 158-162.
Boyer, K. E., Phillips, R., Wallis, M. D., Vouk, M. A., & Lester, J. C. (2009). Investigating
the role of student motivation in computer science education through one-on-one tutoring.
Computer Science Education, 19(2), 111-135.
Braught, G., Eby, L. M., & Wahls, T. (2008). The effects of pair-programming on individual
programming skill. ACM SIGCSE Bulletin, 40(1), 200-204.
Braught, G., Wahls, T., & Eby, L. M. (2011). The case for pair programming in the computer
science classroom. ACM Transactions on Computing Education (TOCE), 11(1), 2.
Canfora, G., Cimitile, A., Garcia, F., Piattini, M., & Visaggio, C. A. (2007). Evaluating
performances of pair designing in industry. Journal of Systems and Software, 80(8),
1317-1327. doi: DOI 10.1016/j.jss.2006.11.004
Chengjun, X., Quanhong, T., & Heng, Z. (2012, 14-17 July 2012). A research of safety
mechanism in cloud computing platform based on virtualization. Paper presented at the
Computer Science & Education (ICCSE), 2012 7th International Conference on,
Melbourne, Australia.
Davis, F. D. (1986). A technology acceptance model for empirically testing new end-user
information systems: Theory and results. Massachusetts Institute of Technology.
Davis, F. D., Bagozzi, R. P., & Warshaw, P. R. (1989). User acceptance of computer
technology: a comparison of two theoretical models. Management science, 35(8), 982-
1003. doi: 10.1287/mnsc.35.8.982
Dawande, M., Johar, M., Kumar, S., & Mookerjee, V. S. (2008). A comparison of pair versus
solo programming under different objectives: An analytical approach. Information
Systems Research, 19(1), 71-92. doi: 10.1287/isre.1070.0147
Gómez, O. S., Batún, J. L., & Aguilar, R. A. (2013). Pair versus Solo Programming--An
Experience Report from a Course on Design of Experiments in Software Engineering.
International Journal of Computer Science Issues, 10(1), 734-742.
Hilmi A. Lahoud, P., & Xin Tang, P. (2006). Information security labs in IDS/IPS for
distance education. Paper presented at the The 7th conference on Information technology
education, Minneapolis, Minnesota, USA.
Lee, Y. J. (2011). Empowering teachers to create educational software: A constructivist
approach utilizing Etoys, pair programming and cognitive apprenticeship. Computers &
Education, 56(2), 527-538. doi: DOI 10.1016/j.compedu.2010.09.018
Liu, J. (2001). Asian students' classroom communication patterns in US universities: An emic
perspective: Greenwood Publishing Group.
Lui, K. M., & Chan, K. C. C. (2006). Pair programming productivity: Novice-novice vs.
expert-expert. International Journal of Human-Computer Studies, 64(9), 915-925. doi:
10.1016/j.ijhcs.2006.04.010
Schuemmer, T., & Lukosch, S. (2009). Understanding Tools and Practices for Distributed
Pair Programming. Journal of Universal Computer Science, 15(16), 3101-3125.
Summers, W. C., Bhagyavati, & Martin, C. (2005). Using a virtual lab to teach an online
information assurance program. Paper presented at the The 2nd annual conference on
Information security curriculum development, Kennesaw, Georgia.
Vandeventer, J., & Barbour, B. (2012). CodeWave: a real-time, collaborative IDE for
enhanced learning in computer science. Paper presented at the The 43rd ACM technical
symposium on Computer Science Education.
Wannous, M., & Nakano, H. (2010). NVLab, a Networking Virtual Web-Based Laboratory
that Implements Virtualization and Virtual Network Computing Technologies. Ieee
Transactions on Learning Technologies, 3(2), 129-138. doi: Doi 10.1109/Tlt.2009.31
Wiebe, E., Williams, L., Petlick, J., Nagappan, N., Balik, S., Miller, C., & Ferzli, M. (2003).
Pair programming in introductory programming labs. Paper presented at the American
Society for Engineering Education Annual Conference and Exposition.
Williams, L., & Kessler, R. (2002). Pair programming illuminated: Addison-Wesley
Longman Publishing Co., Inc.
Williams, L., Kessler, R. R., Cunningham, W., & Jeffries, R. (2000). Strengthening the case
for pair programming. Ieee Software, 17(4), 19-25. doi: 10.1109/52.854064
Williams, L., Wiebe, E., Yang, K., Ferzli, M., & Miller, C. (2002). In support of pair
programming in the introductory computer science course. Computer Science Education,
12(3), 197-212.
Appendix 1. Questionnaire survey
Table A-1: T-test of questionnaire survey.
# Item Group Item Mean
Dimension Mean
SD t Sig. (2-tailed)
1. System characteristics of the proposed system. 1-1 I think that the proposed system can provide a real
Linux networking environment as a working in real machine.
Experimental 3.93 3.80 0.49 0.223 0.824Control 3.85 3.77 0.52
1-2 I think that the Virtual Box can provide a real Linux networking environment as a working in real machine.
Experimental 3.66Control 3.73
1-3 I think that the proposed system have good facilitates.
Experimental 3.66Control 3.70
1-4 I think that the proposed system have helpful peer and tutor support.
Experimental 3.97Control 3.82
2. System accessibility of the proposed system.2-1 I have no difficulty accessing and using Virtual
Box.Experimental 3.83 3.57 0.88 0.533 0.596Control 3.82 3.46 0.70
2-2 I have no difficulty accessing and using this system.
Experimental 3.69Control 3.52
2-3 I think that I can remote to this system is stable in every place.
Experimental 3.31Control 3.30
2-4 I think that I can access to this system faster and smoothly.
Experimental 3.45Control 3.21
3. Perceived readiness from using the proposed system.3-1 I always peer review laboratory contents on the
proposed system before class.Experimental 3.10 3.43 0.60 1.746 0.086Control 2.88 3.16 0.58
3-1 I think that our educational (style) culture in class is ready for the proposed system.
Experimental 3.55Control 3.30
3-3 I think that the proposed system make student ready to do lab assignments.
Experimental 3.62Control 3.30
4. Perceived usefulness of the proposed system for collaborative group work.4-1 I would like to collaborate with class mates in the
same group for doing lab assignments.Experimental 3.76 3.72 0.75 0.563 0.575Control 3.67 3.62 0.69
4-2 I would like to collaborate with class mates in another group for doing lab assignments.
Experimental 3.66Control 3.64
4-3 I would like to share networks configuration and topology with group members for doing lab assignments.
Experimental 3.69Control 3.55
4-4 From my experience, “collaboration” among classmates usually succeeds to finish assignment faster.
Experimental 3.79Control 3.64
5. Perceived subjective norm from classmates to use the proposed system.5-1 I think other students in my group would be aware
to use this system.Experimental 3.90 0.71 0.13 2.036 0.046*Control 3.48 0.63 0.11
5-2 I think other students in my group would be willing to use this system.
Experimental 3.76Control 3.45
5-3 I think other students in my classes would be willing to use this system.
Experimental 3.69Control 3.36
5-4 Most people who are important to me think that it would be fine to use this system to do lab assignments.
Experimental 3.79Control 3.45
*p < 0.05, **p < 0.01, ***p < 0.001
Table A-1: T-test of questionnaire survey.
6. Perceived ease of the proposed system use.6-1 I think that the proposed system is very convenient to
do lab assignments.Experimental 3.83 3.68 0.53 0.960 0.341Control 3.67 3.53 0.67
6-2 I think that the operation of the proposed system does not require too much time.
Experimental 3.90Control 3.55
6-3 I think that the proposed system is very easy to do practical lessons and exercises after class.
Experimental 3.38Control 3.36
6-4 I feel that learning to use this system is quite easy. Experimental 3.62Control 3.15
6-5 I think that the proposed system is very easy for communication with instructor and other students.
Experimental 3.66Control 3.91
7. Perceived usefulness of the proposed system.7-1 I think that the chat windows can communicate
with other group members to have suggestions for accomplishing lab assignments.
Experimental 4.10 3.73 0.54 0.266 0.791Control 4.03 3.69 0.67
7-2 I think that the sharing of virtual network devices is helpful for doing lab assignments.
Experimental 3.76Control 3.91
7-3 I think that the sharing of chat window is useful for doing lab assignments.
Experimental 3.69Control 3.76
7-4 I think that the proposed system increase collaborative work with other group members when do lab assignments.
Experimental 3.72Control 3.67
7-5 I think that the proposed system enhance my attention.
Experimental 3.76Control 3.36
7-6 I think that I can decrease my workload when work with the proposed system.
Experimental 3.66Control 3.67
7-7 I think that I can have a good memory when work with the proposed system.
Experimental 3.45Control 3.45
8. Attitude toward using the proposed system.8-1 I like using this system to learn computer
networks.Experimental 3.79 3.78 0.69 1.367 0.177Control 3.67 3.56 0.61
8-2 I have a positive attitude toward using this system. Experimental 3.79Control 3.52
8.3 I feel that using this system to do lab assignments is a good method.
Experimental 3.76Control 3.48
9. Behavioral intentions when using the proposed system.9-1 If I have access to this system, I will use it to learn
computer networks.Experimental 3.59 3.56 0.68 1.204 0.233Control 3.52 3.36 0.63
9-2 If I do lab assignments, I will enjoy doing with this system.
Experimental 3.69Control 3.45
9-3 I think that I will use this system to help me when I do my homework.
Experimental 3.41Control 3.12
*p < 0.05, **p < 0.01, ***p < 0.001
Appendix 2. Topic of Laboratory assignment
Basic Labs: Linux concepts and basic practices Lab1 Introduction to Linux and Linux command
Lab2 Linux ScriptLab3 Install LinuxAdvanced Labs: Linux networking and advance practices Lab4 Linux Networking, ConfigurationLab5 Linux Networking, Static Routing Lab6 Linux Networking, Dynamic Routing
Appendix 3. Network topology of Linux Networking, Configuration: Lab4
Appendix 4. Network topology of Networking, Static Routing and Dynamic Routing: Lab5 and Lab6