CHI '92 Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Splitting the organization and integrating the code: Conway's law revisited
Proceedings of the 21st international conference on Software engineering
Data mining: practical machine learning tools and techniques with Java implementations
Data mining: practical machine learning tools and techniques with Java implementations
Distance, dependencies, and delay in a global collaboration
CSCW '00 Proceedings of the 2000 ACM conference on Computer supported cooperative work
How does radical collocation help a team succeed?
CSCW '00 Proceedings of the 2000 ACM conference on Computer supported cooperative work
The costs and benefits of pair programming
Extreme programming examined
Work rhythms: analyzing visualizations of awareness histories of distributed groups
CSCW '02 Proceedings of the 2002 ACM conference on Computer supported cooperative work
Building Pair Programming Knowledge through a Family of Experiments
ISESE '03 Proceedings of the 2003 International Symposium on Empirical Software Engineering
Examining task engagement in sensor-based statistical models of human interruptibility
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Maintaining mental models: a study of developer work habits
Proceedings of the 28th international conference on Software engineering
CSCW '06 Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work
Automatic prediction of frustration
International Journal of Human-Computer Studies
Novice software developers, all over again
ICER '08 Proceedings of the Fourth international Workshop on Computing Education Research
SMOTE: synthetic minority over-sampling technique
Journal of Artificial Intelligence Research
Connecting Programming Environments to Support Ad-Hoc Collaboration
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Proceedings of the 2010 ACM conference on Computer supported cooperative work
Sources of errors in distributed development projects: implications for collaborative tools
Proceedings of the 2010 ACM conference on Computer supported cooperative work
Pair programming vs. side-by-side programming
EuroSPI'05 Proceedings of the 12th European conference on Software Process Improvement
Hi-index | 0.00 |
Previous research has motivated the idea of automatically determining when programmers are having difficulty, provided an initial algorithm (unimplemented in an actual system), and performed a small student-based evaluation to justify the viability of this concept. We have taken the next step in this line of research by designing and developing two-different systems that incorporate variations of the algorithm, implementing a tool that allows independent observers to code recorded sessions, and performing studies involving both student and industrial programmers. Our work shows that (a) it is possible to develop an efficient and reusable architecture for predicting programmer status, (b) the previous technique can be improved through aggregation of predicted status, (c) the improved technique correlates more with programmers' perception of whether they are stuck than that of observers manually watching the programmers, (d) the observers are quicker than the developers to conclude that programmers are stuck, (e) with appropriate training, the tool can be used to predict even the observers' perceptions, and (f) a group training model offers more accuracy than an individual one when the training and test exercises are the same and carried over a small time frame.