You are on page 1of 6

Using Programming Process Data to Detect Differences in

Students' Patterns of Programming


Adam S. Carter Christopher D. Hundhausen
Humboldt State University School of Electrical Engineering and Computer Science
Department of Computer Science Washington State University
1 Harpst ST, Arcata, CA 95521 USA Pullman, WA 99164 USA
Adam.Carter@Humboldt.edu hundhaus@wsu.edu

ABSTRACT state was found to correlate moderately well with student


Analyzing the process data of students as they complete achievement. This paper continues our investigation into the PSM's
programming assignments has the potential to provide computing usefulness by considering the ways in which students transition
educators with insights into their students and the processes by between PSM states. To this end, we pose the following research
which they learn to program. In prior work, we developed a question:
statistical model that accurately predicts students' homework RQ: What is the relationship between a student's sequence of
grades. In this paper, we investigate the relationship between the transitions through the PSM and his or her classroom
paths that students take through the programming states on which performance?
our statistical model is based, and their overall course achievement.
Examining the frequency of the most common transition paths To address this research question, we present two analyses of
revealed significant differences between students who earned A's, students' programming data collected in a CS 2 course. We identify
B's, and C's in a CS 2 course. Our results indicate that a) students the seventeen most common PSM transition sequences and relate
of differing achievement levels approach programming tasks them to course performance. We find that, on average, lower
differently, and b) these differences can be automatically detected, performing students compile their code less often and spend more
opening up the possibility that they could be leveraged for time editing syntactically incorrect code. Furthermore, when
pedagogical gain. examining transition sequences on a day-to-day basis for the four
days leading up to an assignment's due date, we find significant
CCS Concepts differences in PSM transition sequences between A, B, and C-level
students. These findings provide further evidence that students of
• Social and professional topics➝Professional topics➝
differing levels of achievement do indeed engage in different
Computing education➝Computer science education programming activities as they complete their programming
• General and reference➝Cross-computing tools and assignments, and that these differences can be automatically
techniques➝Metrics. detected.

Keywords 2. BACKGROUND AND RELATED WORK


Programming State Model; Predictive measures; Learning Given the perceived difficulty of the computing discipline and its
analytics; Educational data mining notorious reputation for low retention rates, computing education
researchers are understandably keen to better identify connections
1. INTRODUCTION between learner characteristics, learning outcomes, and learning
Given the relative ease of automatically collecting learning process behaviors. Past researchers have considered a learner's background
data, it is no surprise that computing education researchers are (e.g. [5, 11]), prior knowledge (e.g [5, 13]), cognitive abilities (e.g.
exploring new ways of gaining insights into students' programming [15]), time-on-task (e.g. [16]) and learning attitudes (e.g. [4]) as
behaviors and course achievement through IDE log data. To date, possible correlates to learning outcomes and behaviors. While this
researchers have focused mainly on describing general line of research shares our interest in identifying associations
programming behaviors (e.g. [2, 10]) and developing predictive between students and course outcomes, it differs from our work in
models (e.g. [9, 18]). In prior work (see [6]), we contributed to this that it is typically based on periodic assessment, rather than on a
research by developing the Programming State Model (PSM), continuous stream of learning process data automatically collected
which characterizes students' programming in terms one of eleven as students complete their coursework.
programming states. For a dataset consisting of CS2 students, a
A more recent line of research has focused on leveraging a
statistical model based on the normalized time spent in each PSM
continuous stream of data for the purpose of identifying positive
Permission to make digital or hard copies of all or part of this work for learning patterns [3, 17]. In computing education research, these
personal or classroom use is granted without fee provided that copies are data have been used to describe compilation behavior (e.g. [2, 10])
not made or distributed for profit or commercial advantage and that and to identify behaviors associated with eventual success or failure
copies bear this notice and the full citation on the first page. Copyrights in a course (e.g. [1, 6, 9, 18]). Contrary to most of the work
for components of this work owned by others than ACM must be chronicled by Ihantola et a. [8], the method presented in this paper
honored. Abstracting with credit is permitted. To copy otherwise, or does not require an entire semester's worth of data in order to
republish, to post on servers or to redistribute to lists, requires prior achieve predictive accuracy. Indeed, the results presented in
specific permission and/or a fee. Request permissions
Section 4 require only a single day's worth of data to achieve a
from Permissions@acm.org.
SIGCSE '17, March 08-11, 2017, Seattle, WA, USA statistically significant level of predictive accuracy.
© 2017 ACM. ISBN 978-1-4503-4698-6/17/03…$15.00
DOI: http://dx.doi.org/10.1145/3017680.3017785
Table 1: PSM States Table 2: Activity Sequences
State Description Chain Description
Idle The student is not currently programming (default state YU-RU-YU Running a semantically unknown program
after 3 minutes of inactivity) outside of debug mode
UU The student has yet to compile his or her project YU-DU-YU Running a semantically unknown correct
program in debug mode
YN Editing syntactically correct project, last debug
unsuccessful YN-RN-YN Running a semantically incorrect program
outside of debug mode
YU Editing syntactically correct project, last debug
successful YN-DN-YN Running a semantically incorrect program in
debug mode
NU Editing syntactically incorrect project, last debug
successful NU- R/-NU Attempting to execute a syntactically incorrect
program
NN Editing syntactically incorrect project, last debug
unsuccessful NN- R/-NN Attempting to execute a syntactically incorrect
program
DU Debugging project when last debug did not result in a
runtime exception
DN Debugging project when last debug resulted in a Table 3: Correctness Sequences
runtime exception
Chain Description
RU Running a project outside of debug mode when last
debug attempt did not result in a runtime exception YU-NU Failed compilation attempt

RN Running a project outside of debug mode when last YU-DU-YN A runtime exception in debug mode occurred
debug attempt resulted in a runtime exception YN-DN-YU A runtime exception in debug mode did not occur
R/ Running a project that does not compile; current run
represents last successful compilation
Data Collection
Data was collected through the OSBIDE social programming
In Carter et al. [6], we introduced the Programming State Model. environment (see [7]), a plug-in to the Visual Studio IDE. In total,
Rather than describe students' behaviors in terms of keystrokes (e.g. 2,781,061 events over seven programming assignments were
[12]) or compilation attempts (e.g. [9, 10, 18]), the PSM
categorizes students programming within a two-dimensional space analyzed for this study. In analyzing our dataset, we identified
that captures both a student's current activity (e.g. editing, 21,215 unique PSM sequences generated by students as they
debugging) and the correctness of the student's most recently completed programming tasks.
compiled programing solution. Table 1 lists all possible PSM
states. In prior work, we explored the effectiveness of a statistical
3.2 Identifying Common PSM Transitions
We begin by identifying commonly-occurring chains of transitions
model derived from the normalized time spent in each PSM state.
within the PSM. While the PSM contains ten states (see Table 1),
Our model correlates moderately well with course achievement (r
there are few edges that connect states, owing to the logical
= .67). However, rather than focusing on time spent in each PSM
constraints of the programming process. For example, it is
state, this paper takes a different approach by examining the paths
impossible for a student to perform runtime debugging on a
that students take within the PSM. In particular, we investigate the
syntactically incorrect program. These constraints give rise to
relationship between paths and course outcomes.
several characteristic transition sequences, which we break into two
3. CONNECTING PATHS TO COURSE categories:
PERFORMANCE Activity Sequences are those that indicate that a student is
Our first analysis focuses on the transitions between PSM states. switching between editing and running their application, with no
To this end, we identify common PSM sequences, attempt to place change in the underlying correctness of their project. Table 2 lists
them temporally within the context of a given programming activity sequences.
assignment, and examine how they might relate to a student's Correctness Sequences are those that give rise to a change in either
programming performance within a given course. the syntactic or semantic correctness of a student's solution. Table
3 lists the correctness sequences.
3.1 Participants
This study is based on student programming activity during the In addition to the activity and correctness sequences listed in Tables
spring 2014 offering of CptS 122, the CS2 course at Washington 2 and 3, we mined our dataset for commonly occurring sequences.
State University. Taught in the C++ programming language, this Excluding the previously identified sequences, which were found
course enrolled 140 students, 129 of whom finished the course and to be the most common patterns, we identified an additional eight
received a grade. Of those who received a grade, 108 students (100 sequences that occurred at least 1,000 times throughout the
men, 8 women) consented to release their data for this study. semester. These sequences are listed in Table 4.
Transition sequences were then compared to students' final grades, It is important to note that because sequences were identified using
which were based on the grades received on programming post-hoc analysis, we are unable to assign a meaning to any specific
assignments (35%), labs (10%), participation (5%), in-class quizzes sequence. It is entirely possible, and indeed likely, that a single
(10%), midterm exams (20%), and a final exam (20%). sequence (e.g. Idle-YN-Idle) occurs in differing circumstances and
therefore is associated with multiple high-level problem solving
activities. We plan to address this limitation in future research.
Table 4: Other Frequently Occurring Sequences 3.3 Associating Transitions with Performance
Chain Description In order to tie PSM transition sequences to learning outcomes, we
captured the number of times that a sequence occurred for students
Idle-YN- A programming session a) that contains only in each grade band (Table 5). An analysis of variance on the data
Idle editing activities and b) whose last debug attempt
detects significant differences in the frequencies of several of the
resulted in a runtime exception.
sequences experienced by students who achieved different final
Idle-YU- A programming session a) that contains only grades in the course. However, notice that the number of sequences
Idle editing activities and b) whose last compilation (Table 5, last row) also differs significantly between grade levels.
attempt was successful.
This indicates that any observed significant differences may be the
Idle-NU- A programming session a) that contains only result of merely spending more time programming, and not an
Idle editing activities and b) whose last compilation actual difference in programming behavior as indicated by a given
attempt was unsuccessful. programming sequence. To test for this possibility, we normalized
Idle-UU- A programming session a) that contains only our data set by the number of transitions generated. Performing a
Idle editing activities and b) has never been second ANOVA on the normalized data tells a much different story.
compiled. Table 6 lists the transitions that remain significant after the
NU-R/-YU Attempting to run a syntactically incorrect normalization process.
project, then making the project syntactically
correct. 4. EXPLORING TRANSITION
YN-RN-DN Attempting to run a project whose last debug SEQUENCES OVER TIME
attempt was unsuccessful, followed by a The results presented in the prior section indicate a weak
debugging session. relationship between the total number of transitions generated and
YU-RU- Attempting to run a project whose last debug course achievement. In this section, we explore whether differences
DU-YU attempt was successful, followed by a debugging might exist when we also factor in a sequence’s proximity to an
session. assignment's due date. For example, it seems plausible that F-level
DN-YU-DU Performing a debug session that did not result in students might encounter "troublesome" transition sequences closer
a runtime exception, followed by another debug to an assignment's due date, whereas A-level students might spend
session. the same time testing their program. To investigate this possibility,
we use the same data set as was used in the prior analysis to
examine the transition sequences generated on a particular day. As
Table 5: Frequency of Sequence by Final Course Grade assignment periods were of differing lengths, we recorded the
(* = sig at p < 0.05) frequency relative to each assignment's due date. In total, we
Sequence Count examined the 18 transition sequences identified in Section 3 for
F D C B A every student for the 21 days leading up to each of the seven
YU-RU-YU* 48 66 122 127 173 programming assignments.
YN-RN-YN* 20 41 69 59 108 For each transition sequence considered (see Tables 2-4), we
NU-R/-NU* 95 123 227 169 201 constructed 17 graphs that track the frequency of a given transition
NN-R/-NN* 4 9 15 10 17
chain as a programming assignment's date approaches. From these
YU-DU-YU* 19 60 51 60 64
YN-DN-YN* 19 37 65 60 68 graphs, we identified eight sequences whose graphs appear to be
YU-NU-YU 11 15 21 28 18 influenced by student achievement: YU-RU (Running a
YU-DU-YU-YN 1 2 3 3 3 semantically unknown program outside of debug mode), NU-R/
YN-DN-YU 5 8 20 10 13 (Attempting to execute a syntactically incorrect program), NN-R/
Idle-YN-Idle* 13 22 33 39 61 (Attempting to execute a syntactically incorrect program), YU-DU
Idle-YU-Idle* 32 51 72 86 110 (Running a semantically unknown correct program in debug
NU-R/-YU* 9 14 25 23 28 mode), NU-R/-YU (Attempting to run a syntactically incorrect
Idle-NU-Idle* 7 10 13 10 14
project, then making the project syntactically correct), Idle-NU (A
Idle-UU-Idle* 4 6 6 6 6
RN-DN-YN* 4 11 19 17 25 programming session on a syntactically incorrect project that
YU-RU-DU* 6 10 15 15 21 contains only editing activities), YN-DN-YU (A runtime exception
DN-YU-DU* 3 10 9 12 11 in debug mode did not occur), and YU-RU-DU (Attempting to run
YN-DN-YU- 1 2 4 2 4 a project whose last debug attempt was successful, followed by a
DU* debugging session). Furthermore, we noticed that the majority of
Number of 23 409 616 610 812 students' activity occurred during the four days leading up to an
Transitions* 1 assignment's due date. For the sake of brevity, we therefore limit
our statistical analysis to the four days leading up to each
Table 6: Significant Normalized Transitions by Final homework's due date.
Course Grade (p < 0.05). Subscript a Indicate Focusing on the data on the four days preceding an assignment due
Significantly Higher Rate than Subscript b Using Post-Hoc date, we next performed a three-way analysis of variance
Bonferroni Analysis (ANOVA), inputting letter grade, day, and transition as predictor
Sequence F D C B A variables and frequency as the outcome variable. Statistical
analysis reveals significant main effects on letter grade (F(4,199) =
Idle-YN 4.0% b 5.2% 4.9% 6.6% 7.1% a
9.23, p < 0.01, partial 𝜂2 =0.01), day (F(4,199) = 19.17, p < 0.01,
Idle-NU 5.1%a 2.5% 2.8% 2.1%b 1.8% b partial 𝜂2 =0.02), and transition (F(7,199) = 21.29, p < 0.04, partial
Idle-UU 3.7% a 1.7% 1.6% b 1.6% b 1.0% b 𝜂2 =0.04). In addition, statistical analysis detects a significant two-
way interaction between letter grade and transition ((F(28,199) =
16.85, p < 0.01, partial 𝜂2 = 0.12) and a statistically significant and C-level students generated the most Idle-NU and YU-RU-DU
interaction between all three predictor variables ((F(140,199) = transitions. However, the overall increase of activity for all students
1.29, p = 0.01, partial 𝜂2 = 0.05). makes it more difficult for statistical tests to detect significant (p <
In the following subsections, we consider the significant 0.05) differences between certain groups:
differences in the three-way interaction by performing post hoc  YU-RU transitions continue to be significantly more likely to
pairwise analysis for the four days leading up to an assignment due be generated by A students.
date.  B students are more likely to generate YU-DU transitions
when compared to A, D, and F students.
4.1 Patterns of Behavior Four Days Before  B students are more likely to generate NU-R/-YU transitions
Due Date when compared to A, C, and F students.
We first consider the interaction between letter grade and transition  C students are more likely to generate Idle-NU transitions
sequences generated four days prior to the due date (see Figure 1). when compared to A, B, and F students.
Statistical analysis identifies the following significant differences  C students are more likely to generate YU-RU-DU transitions
(p < 0.05) between the groups: when compared to A, B, and F students.
 YU-RU sequences were most common among A students.
 YU-DU sequences were most common among B students. Again, we see well-defined patterns of behavior among A-, B-, and
 Idle-NU sequences were most common among C students. C-level students. In contrast, while D- and F-level students'
 YU-RU-DU sequences were most common among C students. transition frequencies increased, they lack a common pattern,
which prevents us from identifying transitions unique to their
Recall that sequences containing the letters "R" and "D" involve problem-solving behaviors.
program execution. Therefore, these findings would seem to 4.4 Patterns of Behavior on Day Before Due
indicate that four days before the due date, A-, B-, and C-level
students are in the testing phase of software development. Date
However, unlike A- and B-level students, we also see that C-level Once again, we witness the three peaks of activity characteristic of
students are spending more time working on an error-riddled A-, B-, and C-level students (see Figure 4). Statistical analysis
project, as indicated by the number of Idle-NU sequences reveals the following significant (p < 0.05) findings:
generated. Interestingly, we see that B-level students are apparently  A and F students were more likely to generate YU-RU
using the debugger on a much more frequent basis than A-level transitions than B and C students.
students. Investigating the cause of this difference would be a  B students continued to produce more YU-DU transitions than
worthwhile activity for future research. any other grade level.
4.2 Patterns of Behavior Three Days Before  Additionally, B students produced more NU-R/-YU
transitions than A and C students.
Due Date  Likewise, C students continued to produce more Idle-NU
We next consider the interaction between letter grade and transitions than any other grade. D students produced more
transitions sequences generated three days prior to the due date (see than A students.
Figure 2). On this day, we begin to see increased activity from F  Again, C students produced the most YU-RU-DU transitions.
students, who generated the second most YU- RU sequences.
Statistical analysis finds the following differences (p < 0.05)
While we continue to see the same pattern of sequence generation
between the groups:
from A-, B-, and C-level students, we also witness a slight
 For YU-RU, A students again generated more transitions than reduction in B-level students' generation of NU-R/-YU sequences.
all other grade levels. Two days prior to the due date, B-level students generated an
 F students generated significantly more YU-RU transitions average of 67 of these transitions whereas on the day before the due
than B and D students. date, B-level students generated 44. This might indicate that B-
 For YU-DU, B students again generated more transitions than level students have transitioned from working through compiler
all other grade levels. and runtime issues, and are focusing more attention on runtime
 For both Idle-NU and YU-RU-DU, C students generated more behavior.
transitions than all other grade levels.
5. DISCUSSION
In Section 3, we explored the relationship between the total number
It would seem as though the patterns of sequence generation of PSM transitions and course outcomes. In particular, we
identified in the prior section continue. Again, we see A-level considered the relationship between specific sequences of
students adopting a strategy consisting mainly of YU-RU transitions and course outcomes. While the frequency of individual
sequences, B-level students with YU-DU, and C-level students sequences differed significantly between grade level, such
with Idle-NU and YU-RU-DU. Unlike the previous day, we see an differences coincided with an overall increase in student effort.
increase in YU-RU sequences generated by F-level students. This suggests that individual sequence differences may merely be
However, other sequence activity remains minimal. a proxy for overall effort. However, even when accounting for time
4.3 Patterns of Behavior Two Days Before on task, statistical analysis revealed significant differences between
students for three sequences: Idle-YN, Idle-NU, and Idle-UU.
Due Date
As illustrated in Figure 3, the behavioral trends of A-, B-, and C- It is interesting to note that the three significant transitions represent
level students remained steady two days before assignment due programming sessions focused on editing activities. Based on these
dates. That is, A-level students generated the most YU-RU results, the key difference between the programming behaviors of
transitions, B-level students generated the most YU-DU transitions, students of differing levels of course achievement can be
Figure 1: Interaction between Letter Grade and Transition Figure 2: Interaction between Letter Grade and Transition
Four Days Before Due Date Three Days Before Due Date

Figure 3: Interaction between Letter Grade and Transition Figure 4: Interaction between Letter Grade and Transition
Two Days Before Due Date One Day before Due Date
characterized as follows: A- and B-level students tend to expend syntactically incorrect project, attempting to run the project, and
more of their effort editing programs that have had recent runtime then addressing the syntax error; and C-level students tend to
exceptions, whereas F-level students tend to expend more of their transition between (a) editing a syntactically incorrect project and
effort editing programs that either have syntax errors, or that have (b) editing a syntactically incorrect project, running the project
never been compiled. As C- and D-level students' behaviors do not outside of debug mode, then immediately running the project in
differ significantly from either extreme (F or A/B), we might debug mode. Other than the fact that D- and F-level students
conclude that C- and D-level students exhibit behavior somewhere generated significantly fewer transitions than the other groups, no
between the groups. In all cases, our analysis shows that editing a distinctive behavior for these groups could be identified. Given
project without periodically exploring its compilation and runtime this, it would appear that a simple time on task measure would be
behavior appears to be a suboptimal solution strategy. sufficient to distinguish A/B/C students from D/F students.
In Section 4, we examined the weak but significant interaction It is also notable that frequent debugging, a behavior widely
between the eight most common PSM transitions for the four days considered to be a beneficial practice, is most commonly associated
leading up to a programming assignment due date. For each day with B-level students. Interestingly, the frequency of debugging
observed, we see clear differences in behavior between A, B, and behavior for A-level students does not differ significantly from that
C students: A-level students appear to favor a strategy that involves of C-, D-, and F-level students. Instead, A-level students often run
transitioning between editing and running outside of debug mode; without debug mode, presumably making it more difficult to
B-level students favor an approach that involves transitioning diagnose issues that occur during runtime. In future work, we
between (a) editing and running in debug mode and (b) editing a would like to further investigate this finding.
Like A- and B-level students, we find that C-level students also of the Learning Sciences. Cambridge University Press.
frequently run their code. However, in contrast to higher achievers, 253–274.
we find that C-level students spend more time working on code that [4] Bergin, S. et al. 2005. Examining the role of self-regulated
does not compile. This might suggest that C-level students learning on introductory programming performance. Proc.
encounter more compiler errors than A- or B-level students, 2005 ACM International Computing Education Research
perhaps due to possessing less knowledge of programming Workshop. ACM Press. 81–86.
constructs. We leave this as an open question for future work. [5] Bransford, J. et al. eds. 1999. How people learn: Brain,
Lastly, we underscore that one must exercise caution in interpreting mind, experience, and school. National Academy Press.
these results. First, it is possible that these results are specific to [6] Carter, A.S. et al. 2015. The Normalized Programming
the course considered in this paper and do not generalize across State Model: Predicting Student Performance in
populations. Second, it is probable that a given transition sequence Computing Courses Based on Programming Behavior.
(e.g. YU-RU) represents several disparate problem-solving Proceedings of the Eleventh Annual International
activities. This observation provides motivation for performing Conference on International Computing Education
follow-up lab observations of students as they complete their Research. ACM. 141–150.
programming assignments. Such observations, common in Human [7] Carter, A.S. and Hundhausen, C.D. 2015. The Design of a
Activity Recognition (e.g. [14]), would allow us to ascribe Programming Environment to Support Greater Social
intentionality to the various transition sequences. We believe that Awareness and Participation in Early Computing Courses.
making such a connection will pave the way for a rich descriptive J. Comput. Sci. Coll. 31, 1 (Oct. 2015), 143–153.
analysis of students' programming processes—one that can gain [8] Ihantola, P. et al. 2015. Educational Data Mining and
deeper insights into the differences identified in this study. Learning Analytics in Programming: Literature Review
and Case Studies. Proceedings of the 2015 ITiCSE on
6. CONCLUSION Working Group Reports (New York, NY, USA, 2015), 41–
In this paper, we considered the relationship between trajectories 63.
through the PSM and their achievement in a CS2 course. Statistical [9] Jadud, M.C. 2006. Methods and Tools for Exploring
analyses revealed significant associations between PSM sequences Novice Compilation Behaviour. Proceedings of the Second
and student achievement. The research presented in this paper International Workshop on Computing Education
makes the following research contributions: Research. ACM. 73–84.
[10] Jadud, M.C. and Dorn, B. 2015. Aggregate Compilation
First, this research contributes a new method for detecting a
Behavior: Findings and Implications from 27,698 Users.
student's programming ability. This method, based on tracing PSM
Proceedings of the Eleventh Annual International
programming sequences, can be used as a basis for dynamically
Conference on International Computing Education
tailoring learning interventions that better serve students as they
Research (Omaha, NE, USA, 2015).
learn to program.
[11] Jeske, D. et al. 2014. Learner characteristics predict
Second, we provide further empirical evidence that students of performance and confidence in e-Learning: An analysis of
differing levels of achievement approach the process of solving user behavior and self-evaluation. Journal of Interactive
programming assignments differently. In future work, we plan to Learning Research. 25, 4 (2014), 509–529.
qualitatively investigate how these different problem solving [12] Leinonen, J. et al. 2016. Automatic Inference of
strategies manifest themselves in students' code. Programming Performance and Experience from Typing
Lastly, while we were able to identify differences between students, Patterns. Proceedings of the 47th ACM Technical
our research highlights a key deficiency of using automatically Symposium on Computing Science Education (Memphis,
generated log data--namely, that such a methodology is incapable TN, USA, 2016).
of connecting a student's underlying intent to his or her [13] Ma, W. et al. 2014. Intelligent tutoring systems and
programming processes. For this reason, future researchers would learning outcomes: A meta-analytic survey. Journal of
do well to augment automatic data collection with alternate sources Educational Psychology. 106, 2007 (2014), 901–918.
of data that can get at learners' intent, such as lab observations [14] Minor, B. et al. 2015. Data-Driven Activity Prediction:
and/or retrospective interviews. Algorithms, Evaluation Methodology, and Applications.
Proceedings of the 21th ACM SIGKDD International
7. ACKNOWLEDGMENTS Conference on Knowledge Discovery and Data Mining
This project is funded by the National Science Foundation under (2015).
grant no. IIS-1321045. [15] Schunk, D.H. 2012. Learning theories: An educational
perspective. Merrill Prentice Hall.
8. REFERENCES [16] Slavin, R.E. 2011. Educational psychology: Theory and
[1] Ahadi, A. et al. 2015. Exploring Machine Learning practice. Pearson Education.
Methods to Automatically Identify Students in Need of [17] U.S. Department of Education, Office of Educational
Assistance. Proceedings of the Eleventh Annual Technology 2012. Enhancing Teaching and Learning
International Conference on International Computing through Educational Data Mining and Learning Analytics:
Education Research (Omaha, NE, USA, 2015). An Issue Brief.
[2] Altadmri, A. and Brown, N.C.C. 2015. 37 Million [18] Watson, C. et al. 2013. Predicting Performance in an
Compilations: Investigating Novice Programming Introductory Programming Course by Logging and
Mistakes in Large-Scale Student Data. Proceedings of the Analyzing Student Programming Behavior. Proceedings of
46th ACM Technical Symposium on Computer Science the 2013 IEEE 13th International Conference on Advanced
Education (Kansas City, MO, USA, 2015), 522–527. Learning Technologies (2013), 319–323.
[3] Baker, R.S.J. and Siemens, G. 2014. Educational data
mining and learning analytics. The Cambridge Handbook

You might also like