-
Notifications
You must be signed in to change notification settings - Fork 0
/
mousetap.bib
712 lines (663 loc) · 50.4 KB
/
mousetap.bib
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
@inproceedings{V:Johnson2007Automated,
abstract = {{Zorro is a system designed to automatically determine whether a developer is complying with an operational definition of test-driven development (TDD) practices. Automated recognition of TDD can benefit the software development community in a variety of ways, from inquiry into the "true nature" of TDD, to pedagogical aids to support the practice of test-driven development, to support for more rigorous empirical studies on the effectiveness of TDD in both laboratory and real world settings. This paper introduces the Zorro system, its operational definition of TDD, the analyses made possible by Zorro, and our ongoing efforts to validate the system.}},
author = {Johnson, P. M. and Kou, Hongbing},
booktitle = {Agile Conference (AGILE)},
citeulike-article-id = {11538873},
doi = {10.1109/AGILE.2007.16},
institution = {Univ. of Hawaii, Honolulu},
isbn = {0-7695-2872-4},
keywords = {gamification, sw\_engineering},
month = aug,
pages = {15--25},
posted-at = {2012-10-24 17:51:39},
priority = {2},
publisher = {IEEE},
title = {{Automated Recognition of Test-Driven Development with Zorro}},
year = {2007}
}
@article{Kou2010Operational,
abstract = {{Test-driven development (TDD) is a style of development named for its most visible characteristic: the design and implementation of test cases prior to the implementation of the code required to make them pass. Many claims have been made for TDD: that it can improve implementation as well as design quality, that it can improve productivity, that it results in 100\% coverage, and so forth. However, research to validate these claims has yielded mixed and sometimes contradictory results. We believe that at least part of the reason for these results stems from differing interpretations of the TDD development style, along with an inability to determine whether programmers actually follow whatever definition of TDD is in use.
Zorro is a system designed to automatically determine whether a developer is complying with an operational definition of Test-Driven Development (TDD) practices. Automated recognition of TDD can benefit the software development community in a variety of ways, from inquiry into the ” true nature” of TDD, to pedagogical aids to support the practice of test-driven development, to support for more rigorous empirical studies on the effectiveness of TDD in both laboratory and real world settings.
This paper describes the Zorro system, its operational definition of TDD, the analyses made possible by Zorro, two empirical evaluations of the system, and an attempted case study. Our research shows that it is possible to define an operational definition of TDD that is amenable to automated recognition, and illustrates the architectural and design issues that must be addressed in order to do so. Zorro has implications not only for the practice of TDD, but also for software engineering ” micro-process” definition and recognition through its parent framework, Software Development Stream Analysis.}},
author = {Kou, Hongbing and Johnson, PhilipM and Erdogmus, Hakan},
booktitle = {Automated Software Engineering},
doi = {10.1007/s10515-009-0058-8},
journal = {Automated Software Engineering},
keywords = {hackystat, tdd},
number = {1},
pages = {57--85},
posted-at = {2013-09-02 14:22:59},
priority = {4},
publisher = {Springer US},
title = {{Operational Definition and Automated Inference of Test-driven Development with Zorro}},
url = {http://dx.doi.org/10.1007/s10515-009-0058-8},
volume = {17},
year = {2010}
}
@article{V:Wasserman1996Toward,
abstract = {{Despite rapid changes in computing and software development, some fundamental ideas have remained constant. This article describes eight such concepts that together constitute a viable foundation for a software engineering discipline: abstraction, analysis and design methods and notations, user interface prototyping, modularity and architecture, software life cycle and process, reuse, metrics, and automated support}},
author = {Wasserman, A. I.},
doi = {10.1109/52.542291},
issn = {0740-7459},
journal = {IEEE Software},
keywords = {gamification, sw\_engineering},
month = nov,
number = {6},
pages = {23--31},
posted-at = {2012-10-24 16:08:10},
priority = {2},
publisher = {IEEE},
title = {{Toward a Discipline of Software Engineering}},
volume = {13},
year = {1996}
}
@inproceedings{V:Sillitti2003Collecting,
abstract = {{Measures represent important data in all engineering disciplines. This data allows engineers to understand how things work and how to make changes to produce desired results. In software engineering, it is difficult to collect useful measures because developers do not consider it an important activity, compared to coding. Moreover, manual collected data is often affected by errors, making it unusable. The shortage of automated tools for collecting and analyzing measures does not contribute to the evolution of software engineering. We present PROM (PRO Metrics), an automated tool for collecting and analyzing software metrics as well as personal software process (PSP) data. The tool uses an architecture based on plug-ins that automatically collects data from development tools.}},
author = {Sillitti, A. and Janes, A. and Succi, G. and Vernazza, T.},
booktitle = {29th Euromicro Conference},
comment = {Presents a system PROM (or PRO Metrics) for automatically collecting "personal software process" data in order to improve the software development process for organizations. It does not present analysis of data and focuses on the collection process. The authors compare it to Hackystat.},
doi = {10.1109/EURMIC.2003.1231611},
institution = {DIST, Genova Univ., Italy},
isbn = {0-7695-1996-2},
issn = {1089-6503},
keywords = {gamification, sw\_engineering},
pages = {336--342},
posted-at = {2012-10-24 16:04:25},
priority = {2},
publisher = {IEEE},
title = {{Collecting, Integrating and Analyzing Software Metrics and Personal Software Process Data}},
year = {2003}
}
@inproceedings{V:banerjee2001clickstream,
author = {Banerjee, A. and Ghosh, J.},
booktitle = {Web Mining Workshop at the 1st SIAM Conference on Data Mining},
citeulike-article-id = {11538033},
keywords = {gamification, sw\_engineering},
posted-at = {2012-10-24 15:57:19},
priority = {2},
title = {{Clickstream Clustering Using Weighted Longest Common Subsequences}},
year = {2001}
}
@inproceedings{V:Tan2008Elearning,
abstract = {{E-learning recommendation system helps learners to make choices without sufficient personal experience of the alternatives, and it is considerably requisite in this information explosion age. In our study, the user-based collaborative filtering method is chosen as the primary recommendation algorithm, combined with online education. We analyze the requirement of a web-based e-learning recommendation system, and divide the system workflow into five sections: data collection, data ETL, model generation, strategy configuration, and service supply. Moreover, an architecture is proposed, based on which further development can be accomplished. In this architecture, there are seven modules, and four of them are core modules: recommendation models database, recommendation system database, recommendation management, data/model management.}},
author = {Tan, Huiyi and Guo, Junfei and Li, Yong},
booktitle = {International Conference on Computer Science and Software Engineering},
citeulike-article-id = {11537878},
citeulike-linkout-0 = {http://dx.doi.org/10.1109/CSSE.2008.305},
citeulike-linkout-1 = {http://ieeexplore.ieee.org/xpls/abs\_all.jsp?arnumber=4722931},
doi = {10.1109/CSSE.2008.305},
institution = {Int. Sch. of Software, Wuhan Univ., Wuhan, China},
isbn = {978-0-7695-3336-0},
keywords = {gamification, sw\_engineering},
month = dec,
pages = {430--433},
posted-at = {2012-10-24 15:39:35},
priority = {2},
publisher = {IEEE},
title = {{E-learning Recommendation System}},
volume = {5},
year = {2008}
}
@inproceedings{V:Atterer2007Tracking,
abstract = {{In this paper, we introduce an implementation for detailed monitoring of user actions on web pages. It addresses the problem that the log data recorded by standard web servers is not sufficient for the tracking of users on AJAX websites, e.g. to conduct a usability test. Using standard web technologies, our HTTP proxy can record very detailed usage information, such as mouse movements, clicks, key presses and scrolling, together with the exact HTML DOM tree objects involved. As we show in several case studies, the tracking also works across multiple websites, none of which needs to be under our control. This approach is much less invasive than previous efforts: The test person does not need to install software on her computer, and in certain operation modes, no configuration changes at all are required on her computer. Our research indicates that if the technology described in this paper is employed, arbitrary visitors of a website are more likely to take part in a usability test offered by that site -- this facilitates recruiting test participants over the Internet.}},
author = {Atterer, Richard and Schmidt, Albrecht},
booktitle = {SIGCHI Conference on Human Factors in Computing Systems},
citeulike-article-id = {2272265},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=1240624.1240828},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/1240624.1240828},
doi = {10.1145/1240624.1240828},
isbn = {978-1-59593-593-9},
keywords = {gamification, sw\_engineering, user\_patterns},
pages = {1347--1350},
posted-at = {2012-10-23 18:51:11},
priority = {2},
publisher = {ACM},
series = {CHI '07},
title = {{Tracking the Interaction of Users with AJAX Applications for Usability Testing}},
year = {2007}
}
@article{wbsnipes:Robillard2004How,
abstract = {{Prior to performing a software change task, developers must discover and understand the subset of the system relevant to the task. Since the behavior exhibited by individual developers when investigating a software system is influenced by intuition, experience, and skill, there is often significant variability in developer effectiveness. To understand the factors that contribute to effective program investigation behavior, we conducted a study of five developers performing a change task on a medium-size open source system. We isolated the factors related to effective program investigation behavior by performing a detailed qualitative analysis of the program investigation behavior of successful and unsuccessful developers. We report on these factors as a set of detailed observations, such as evidence of the phenomenon of inattention blindness by developers skimming source code. In general, our results support the intuitive notion that a methodical and structured approach to program investigation is the most effective.}},
author = {Robillard, M. P. and Coelho, W. and Murphy, G. C.},
doi = {10.1109/TSE.2004.101},
institution = {Sch. of Comput. Sci., McGill Univ., Montreal, Que., Canada},
issn = {0098-5589},
journal = {IEEE Transactions on Software Engineering},
keywords = {gameification},
month = Dec,
pages = {889--903},
posted-at = {2012-10-22 18:19:43},
priority = {5},
publisher = {IEEE},
title = {{How Effective Developers Investigate Source Code: an Exploratory Study}},
volume = {30},
year = {2004}
}
@inproceedings{wbsnipes:Hill2011Peer,
abstract = {{Computer users rely on software tools to work effectively and efficiently, but it is difficult for users to be aware of all the tools that might be useful to them. While there are several potential technical solutions to this difficulty, we know little about social solutions, such as one user telling a peer about a tool. To explore these social solutions in one particular domain, we describe a series of interviews with 18 programmers in industry that explore how tool discovery takes place. These interviews provide a rich set of qualitative data that give us detailed insights into how programmers discover tools. One finding was that, while programmers believe that discovery from peers is effective, they actually discover tools from peers relatively infrequently. Another finding was that programmers can effectively discover tools from their peers both in a co-located and remote settings. We describe several implications of our findings, such as that discovery from peers can be enhanced by improving programmers' ability to communicate openly and concisely about tools.}},
author = {Murphy-Hill, Emerson and Murphy, Gail C.},
booktitle = {ACM Conference on Computer supported cooperative work},
citeulike-article-id = {10925814},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=1958888},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/1958824.1958888},
doi = {10.1145/1958824.1958888},
isbn = {978-1-4503-0556-3},
keywords = {devcoach},
posted-at = {2012-07-24 18:46:58},
priority = {4},
publisher = {ACM},
series = {CSCW},
title = {{Peer Interaction Effectively, Yet Infrequently, Enables Programmers to Discover New Tools}},
year = {2011}
}
@article{wbsnipes:MaehrCulture,
author = {Maehr, M.},
citeulike-article-id = {11328991},
howpublished = {PsycARTICLES, Ipswich, MA.},
journal = {American Psychologist},
keywords = {motivation},
number = {29},
pages = {887--896},
posted-at = {2012-09-26 20:38:04},
priority = {0},
title = {{Culture and Achievement Motivation.}},
volume = {1974},
year = {1974}
}
@inproceedings{wbsnipes:Hamari2011Framework,
author = {Hamari, Juho and Eranti, Veikko},
booktitle = {Digra Conference},
citeulike-article-id = {11424566},
day = {14-17},
journal = {Digra Conference: Think Design Play},
month = sep,
posted-at = {2012-10-09 20:18:16},
priority = {0},
title = {{Framework for Designing and Evaluating Game Achievements}},
year = {2011}
}
@inproceedings{V:johnson2003beyond,
author = {Johnson, P. M. and Kou, H. and Agustin, J. and Chan, C. and Moore, C. and Miglani, J. and Zhen, S. and Doane, W. E. J.},
booktitle = {International Conference on Software Engineering},
citeulike-article-id = {11539967},
keywords = {gamification, sw\_engineering},
publisher = {IEEE},
organization = {IEEE Computer Society},
posted-at = {2012-10-24 20:31:02},
priority = {2},
title = {{Beyond the Personal Software Process: Metrics Collection and Analysis for the Differently Disciplined}},
year = {2003}
}
@article{V:MurphyHill2012How,
abstract = {{Refactoring is widely practiced by developers, and considerable research and development effort has been invested in refactoring tools. However, little has been reported about the adoption of refactoring tools, and many assumptions about refactoring practice have little empirical support. In this paper, we examine refactoring tool usage and evaluate some of the assumptions made by other researchers. To measure tool usage, we randomly sampled code changes from four Eclipse and eight Mylyn developers and ascertained, for each refactoring, if it was performed manually or with tool support. We found that refactoring tools are seldom used: 11 percent by Eclipse developers and 9 percent by Mylyn developers. To understand refactoring practice at large, we drew from a variety of data sets spanning more than 39,000 developers, 240,000 tool-assisted refactorings, 2,500 developer hours, and 12,000 version control commits. Using these data, we cast doubt on several previously stated assumptions about how programmers refactor, while validating others. Finally, we interviewed the Eclipse and Mylyn developers to help us understand why they did not use refactoring tools and to gather ideas for future research.}},
author = {Murphy-Hill, E. and Parnin, C. and Black, A. P.},
citeulike-article-id = {11237043},
doi = {10.1109/TSE.2011.41},
institution = {Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC, USA},
issn = {0098-5589},
journal = {IEEE Transactions on Software Engineering},
keywords = {gamification, sw\_engineering},
month = Jan,
pages = {5--18},
posted-at = {2012-10-25 14:46:52},
priority = {2},
publisher = {IEEE},
title = {{How We Refactor, and How We Know It}},
volume = {38},
year = {2012}
}
@article{V:Murphy2006How,
abstract = {{The Eclipse integrated development environment continues to gain popularity among Java developers. Our usage monitoring approach allows tool builders to sample how developers are using their tools in the wild. The data gathered about tool use can be used to prevent feature bloat and to evolve the environments according to user needs. Information about how developers work in a development environment can also provide a baseline for assessing new software development tools. We hope this report provides a start in defining which in formation to collect and distribute on an on going basis to help improve Eclipse and other similar platforms and tools}},
author = {Murphy, G. C. and Kersten, M. and Findlater, L.},
citeulike-article-id = {5403310},
doi = {10.1109/MS.2006.105},
institution = {Dept. of Comput. Sci., British Columbia Univ., Vancouver, BC},
issn = {0740-7459},
journal = {IEEE Software},
keywords = {gamification, sw\_engineering},
month = jul,
number = {4},
pages = {76--83},
posted-at = {2012-10-25 15:11:23},
priority = {2},
publisher = {IEEE},
title = {{How are Java software Developers Using the Elipse IDE?}},
volume = {23},
year = {2006}
}
@article{V:Nasraoui2008Web,
abstract = {{In this paper, we present a complete framework and findings in mining Web usage patterns from Web log files of a real Web site that has all the challenging aspects of real-life Web usage mining, including evolving user profiles and external data describing an ontology of the Web content. Even though the Web site under study is part of a nonprofit organization that does not "sell" any products, it was crucial to understand "who" the users were, "what" they looked at, and "how their interests changed with time," all of which are important questions in Customer Relationship Management (CRM). Hence, we present an approach for discovering and tracking evolving user profiles. We also describe how the discovered user profiles can be enriched with explicit information need that is inferred from search queries extracted from Web log data. Profiles are also enriched with other domain-specific information facets that give a panoramic view of the discovered mass usage modes. An objective validation strategy is also used to assess the quality of the mined profiles, in particular their adaptability in the face of evolving user behavior.}},
author = {Nasraoui, O. and Soliman, M. and Saka, E. and Badia, A. and Germain, R.},
booktitle = { IEEE Transactions on Knowledge and Data Engineering},
citeulike-article-id = {2487252},
day = {26},
doi = {10.1109/TKDE.2007.190667},
institution = {Univ. of Louisville, Louisville},
issn = {1041-4347},
journal = {IEEE Transactions on Knowledge and Data Engineering},
keywords = {sw\_engineering, user\_patterns},
month = Feb,
pages = {202--215},
posted-at = {2012-10-23 19:01:00},
priority = {2},
publisher = {IEEE},
title = {{A Web Usage Mining Framework for Mining Evolving User Profiles in Dynamic Web Sites}},
volume = {20},
year = {2008}
}
@inproceedings{wbsnipes:Prowell2003JUMBL,
abstract = {{Statistical testing of software based on a usage model is a cost-effective and efficient means to make inferences about software quality. In order to apply this method, a usage model is developed and analyzed to validate its fitness for use in testing. The model may then be used to generate test cases representing expected usage, and to reason about system reliability given the performance on the set of tests. The J Usage Model Builder Library (JUMBL) is a Java class library and set of command-line tools for working with usage models. The JUMBL supports construction and analysis of models, generation of test cases, automated-execution of tests, and analysis of testing results.}},
author = {Prowell, S. J.},
booktitle = {Proceedings of the 36th Annual Hawaii International Conference on System Sciences, 2003. },
citeulike-article-id = {11548355},
doi = {10.1109/HICSS.2003.1174916},
institution = {Tennessee Univ., Knoxville, TN, USA},
isbn = {0-7695-1874-5},
keywords = {gameification},
volume = {9},
month = jan,
pages = {6-9},
posted-at = {2012-10-26 00:01:14},
priority = {3},
publisher = {IEEE},
title = {{JUMBL: A Tool for Model-based Statistical Testing}},
year = {2003}
}
@inproceedings{wbsnipes:Robbes2007Characterizing,
abstract = {{The understanding of development sessions, the phases during which a developer actively modifies a software system, is a valuable asset for program comprehension, since the sessions directly impact the current state and future evolution of a software system. Such information is usually lost by state-of-the-art versioning systems, because of the checkin/checkout model they rely on: a developer must explicitly commit his changes to the repository. Since this happens in arbitrary and sometimes long intervals, recovering the changes between two commits is difficult and inaccurate, and recovering the order of the changes is impossible. We have implemented an evolution monitoring prototype which records every semantic change performed on a system, and is able to completely reconstruct development sessions. In this paper we use this fine-grained information to understand and characterize the development sessions as they were carried out on two object-oriented systems.}},
author = {Robbes, R. and Lanza, M.},
booktitle = {15th IEEE International Conference on Program Comprehension},
citeulike-article-id = {11342587},
doi = {10.1109/ICPC.2007.12},
institution = {Fac. of Inf., Univ. of Lugano, Lugano},
isbn = {0-7695-2860-0},
issn = {1092-8138},
keywords = {gameification},
month = jun,
pages = {155--166},
posted-at = {2012-10-26 00:39:45},
priority = {5},
publisher = {IEEE},
series = {ICPC '07},
title = {{Characterizing and Understanding Development Sessions}},
year = {2007}
}
@book{prowell1999cse,
title={Cleanroom Software Engineering: Technology and Process},
author={Prowell, S.J.},
year={1999},
address={Reading, Mass},
publisher={Addison-Wesley Professional}
}
@electronic{wbsnipes:SaatchiGameification,
author = "{Saatchi and Saatchi S}",
citeulike-article-id = {11469041},
year = {2011},
month = Jun,
comment = {(private-note)A positive indicator is that 55\% would be interested in working for a company that offers games as a way to increase productivity. A work setting could ramp up the competitive motivation that is fairly low 31\% compared with the findings that 57\% use social games for 'passing time when bored'.
It is also interesting that 85\% of people would spend a half hour or more playing a game for a chance at a monetary award. This counters some of the motivation literature I've studied who say that monetary awards are much lower on the motivation scale than recognition.
},
journal = {http://www.slideshare.net/Saatchi\_S/gamification-study},
keywords = {gameification},
posted-at = {2012-10-15 17:48:20},
priority = {0},
title = {Gameification for Business Brands and Loyalty},
url = {http://www.slideshare.net/Saatchi\_S/gamification-study}
}
@techreport{techReport,
title={Supporting Search and Navigation through Code Context},
author={Shepherd, D. and Fritz, T. and B{\"a}unlich, C.},
address={Zurich, Switzerland},
booktitle={Rep.},
year={2012},
organization={University of Zurich}
}
@inproceedings{sando,
title={Sando: An Extensible Local Code Search Framework},
author={Shepherd, D. and Damevski, K. and Ropski, B. and Fritz, T.},
booktitle={Proceedings of Foundations of Software Engineering, Tool Demo},
year={2012},
organization={ACM}
}
@book{gamification2011,
itle={Gamification by Design : Implementing Game Mechanics in Web and Mobile Apps}
author={Gabe Zichermann}
year={2011}
address={Sebastopol, Calif}
publisher={O'Reilly Media}
}
%Singer paper and thesis
@inproceedings{Singer2012It,
abstract = {{The adoption of software engineering practices cannot always be achieved by education or processes. However, social software has the potential for supporting deliberate behavior change. We present preliminary results of an experiment in which we encouraged computer science students to make more frequent commits to version control by using a social software application. We provided a web-based newsfeed of commits that also displayed a leaderboard. While we have yet to analyze the data, interviews we conducted with the participants allow for first qualitative insights.}},
author = {Singer, Leif and Schneider, Kurt},
booktitle = {Second International Workshop on Games and Software Engineering: Realizing User Engagement with Game Engineering Techniques (GAS)},
citeulike-article-id = {12249369},
comment = {(private-note)Thesis includes workshop paper results. Proposes a set of interventions or methods to promote adoption of practices for software engineering. Demonstrates in a study the use of leader board and points for tweaking commit frequency and commit comments. Results showed statistical significance in improvement for both categories. Overall good source for innovative ways to promote software engineering practices. Proposes a process based on different sources for implementing improvements, however, we could look towards process improvement literature for this as well. Ties together improvement methods with motivation ideas or at least puts them in the same chart. Interesting discussion of how developers in a social context agree to accept pulls for a repository based on their familiarity or trust of the commit developer. Another interesting set of results from interviews of developers who interact on a social game system for their open source projects. The most valued aspects were communication/collaboration and endorsement of their work followed by helping others. Competition was not valued by few people which is interesting when the sites are voluntary and contain competitive aspects. },
doi = {10.1109/gas.2012.6225927},
institution = {Software Eng. Group, Leibniz Univ., Hannover, Germany},
isbn = {978-1-4673-1768-9},
keywords = {gamification},
location = {Zurich, Switzerland},
month = jun,
posted-at = {2013-06-10 20:53:31},
priority = {0},
publisher = {IEEE},
title = {{It was a Bit of a Race: Gamification of Version Control}},
url = {http://dx.doi.org/10.1109/gas.2012.6225927},
year = {2012}
}
@PHDTHESIS{Singer2013a,
author = {Leif Singer},
title = {{I}mproving the {A}doption of {S}oftware {E}ngineering {P}ractices
{T}hrough {P}ersuasive {I}nterventions},
school = {Gottfried Wilhelm Leibniz Universität Hannover},
year = {2013},
url = {http://leif.me/papers/Singer2013a.pdf}
}
%PROM papers
@incollection{Moser2006Does,
abstract = {{The improvement of the software development process through the development and utilization of high quality and reusable software components has been advocated for a long time. Agile Methods promote some interesting practices, in particular the practice of refactoring, which are supposed to improve understandability and maintainability of source code. In this research we analyze if refactoring promotes ad-hoc reuse of object-oriented classes by improving internal quality metrics. We conduct a case study in a close-to industrial, agile environment in order to analyze the impact of refactoring on internal quality metrics of source code. Our findings sustain the hypothesis that refactoring enhances quality and reusability of – otherwise hard to reuse – classes in an agile development environment. Given such promising results, additional experimentation is required to validate and generalize the results of this work.}},
author = {Moser, Raimund and Sillitti, Alberto and Abrahamsson, Pekka and Succi, Giancarlo},
booktitle = {Reuse of Off-the-Shelf Components},
citeulike-article-id = {12602627},
doi = {10.1007/11763864\_21},
editor = {Morisio, Maurizio},
keywords = {prom, refactoring},
pages = {287--297},
posted-at = {2013-08-30 21:47:40},
priority = {2},
publisher = {Springer Berlin Heidelberg},
series = {Lecture Notes in Comp. Sci.},
title = {{Does Refactoring Improve Reusability?}},
url = {http://dx.doi.org/10.1007/11763864\_21},
volume = {4039},
year = {2006}
}
@inproceedings{Abrahamsson2007Effort,
author = {Abrahamsson, P. and Moser, R. and Pedrycz, W. and Sillitti, A. and Succi, G.},
booktitle = {Empirical Software Engineering and Measurement, ESEM},
citeulike-article-id = {12602626},
doi = {10.1109/esem.2007.16},
institution = {VTT Electron., Oulu},
isbn = {978-0-7695-2886-1},
issn = {1938-6451},
keywords = {prediction, productivity, prom},
pages = {344--353},
posted-at = {2013-08-30 21:45:16},
priority = {4},
publisher = {IEEE},
title = {{Effort Prediction in Iterative Software Development Processes -- Incremental Versus Global Prediction Models}},
url = {http://dx.doi.org/10.1109/esem.2007.16},
year = {2007}
}
@incollection{Moser2008Case,
abstract = {{Refactoring is a hot and controversial issue. Supporters claim that it helps increasing the quality of the code, making it easier to understand, modify and maintain. Moreover, there are also claims that refactoring yields higher development productivity – however, there is only limited empirical evidence of such assumption. A case study has been conducted to assess the impact of refactoring in a close-to industrial environment. Results indicate that refactoring not only increases aspects of software quality, but also improves productivity. Our findings are applicable to small teams working in similar, highly volatile domains (ours is application development for mobile devices). However, additional research is needed to ensure that this is indeed true and to generalize it to other contexts.}},
author = {Moser, Raimund and Abrahamsson, Pekka and Pedrycz, Witold and Sillitti, Alberto and Succi, Giancarlo},
booktitle = {Balancing Agility and Formalism in Software Engineering},
citeulike-article-id = {4326222},
doi = {10.1007/978-3-540-85279-7\_20},
editor = {Meyer, Bertrand and et al.},
journal = {Balancing Agility and Formalism in Software Engineering},
keywords = {metrics, prom},
pages = {252--266},
posted-at = {2013-08-30 21:42:29},
priority = {4},
publisher = {Springer]},
series = {Lecture Notes in Comp. Sci.},
title = {{A Case Study on the Impact of Refactoring on Quality and Productivity in an Agile Team}},
url = {http://dx.doi.org/10.1007/978-3-540-85279-7\_20},
volume = {5082},
year = {2008}
}
@incollection{Coman2008Investigating,
abstract = {{Pair-programming (PP) is one of the key practices of Agile Methods and there are various claims regarding its benefits. However, the empirical evidence to sustain these claims is insufficient, often coming from studies with students as participants. Moreover, the results are sometimes contradictory. Nevertheless, there are already mature agile teams that currently use PP, pairing on an ” as needed” basis. We investigate the dynamics of the pairing process in a mature Agile team to understand when practitioners consider PP useful and to compare this with the claimed benefits of PP. In this paper we present the results of a 3 months study of PP in an Agile team of 16 developers.}},
author = {Coman, IrinaDiana and Sillitti, Alberto and Succi, Giancarlo},
booktitle = {Agile Processes in Software Engineering and Extreme Programming},
chapter = {13},
citeulike-article-id = {9338275},
doi = {10.1007/978-3-540-68255-4\_13},
editor = {Abrahamsson, and et al.},
isbn = {978-3-540-68254-7},
keywords = {gamification, hackystat, metrics, prom},
pages = {127--136},
posted-at = {2013-08-30 21:28:56},
priority = {2},
publisher = {Springer},
series = {Lecture Notes in Bus. Info. Processing},
title = {{Investigating the Usefulness of Pair-Programming in a Mature Agile Team}},
url = {http://dx.doi.org/10.1007/978-3-540-68255-4\_13},
volume = {9},
year = {2008}
}
@inproceedings{Coman2009Casestudy,
author = {Coman, I. D. and Sillitti, A. and Succi, G.},
booktitle = {International Conference on Software Engineering, ICSE},
citeulike-article-id = {12602596},
comment = {(private-note)Case study reports the experiences of the team deploying PROM to an industrial software development organization. They discuss the challenges such as overcoming developer concerns about the data being shared and what data are shared with the tool. Since the system provides reports on time there were some accuracy issues with reports such as when Pair Programming is practiced or other scenarios where developers are using non-standard editors, virtual machines, or working remotely. At each stage of deployment additional features were requested some dealing with developer data audits prior to uploading the data. The paper doesn't discuss metrics that were reported or empirical findings of the deployment.},
doi = {10.1109/icse.2009.5070511},
institution = {Free Univ. of Bozen-Bolzano, Bozen},
isbn = {978-1-4244-3453-4},
issn = {0270-5257},
keywords = {gamification, hackystat, metrics, productivity, prom},
month = may,
pages = {89--99},
posted-at = {2013-08-30 20:49:12},
priority = {5},
publisher = {IEEE},
title = {{A Case-study on Using an Automated In-process Software Engineering Measurement and Analysis System in an Industrial Environment}},
url = {http://dx.doi.org/10.1109/icse.2009.5070511},
year = {2009}
}
@inproceedings{MurphyHill2012Improving,
abstract = {{Software developers interact with the development environ-
ments they use by issuing commands that execute various
programming tools, from source code formatters to build
tools. However, developers often only use a small subset
of the commands offered by modern development environ-
ments, reducing their overall development fluency. In this
paper, we use several existing command recommender al-
gorithms to suggest new commands to developers based on
their existing command usage history, and also introduce
several new algorithms. By running these algorithms on
data submitted by several thousand Eclipse users, we de-
scribe two studies that explore the feasibility of automati-
cally recommending commands to software developers. The
results suggest that, while recommendation is more diffi-
cult in development environments than in other domains,
it is still feasible to automatically recommend commands
to developers based on their usage history, and that using
patterns of past discovery is a useful way to do so.}},
author = {Murphy-Hill, Emerson and Jiresal, Rahul and Murphy, Gail C.},
booktitle = {Foundations of Software Engineering},
citeulike-article-id = {11630871},
journal = {Foundations of Software Engineering},
keywords = {gameification, ide, recommending},
month = nov,
posted-at = {2012-11-07 21:14:41},
priority = {0},
location = {New York, NY},
publisher = {ACM},
title = {{Improving Software Developers' Fluency by Recommending Development Environment Commands}},
year = {2012}
}
@book{longitudinalbook,
author = {Newsom, Jason T. and Jones, Richard N. and Hofer, Scott M.},
booktitle = {Longitudinal Data Analysis},
citeulike-article-id = {12606757},
isbn = {9780415874151},
keywords = {gameification, thesis-ms},
posted-at = {2013-09-04 19:53:57},
priority = {2},
publisher = {Routledge},
title = {{Longitudinal Data Analysis}},
year = {2012}
}
@inproceedings{Dubois2013Understanding,
abstract = {{In this paper we outline the idea to adopt gamification techniques to engage, train, monitor, and motivate all the players involved in the development of complex software artifacts, from the inception to the deployment and maintenance. The paper introduces the concept of gamification and proposes a research approach to understand how its principles may be successfully applied to the process of software development. Applying gamification to software engineering is not as straightforward as it may appear since it has to be casted to the peculiarities of this domain. Existing literature in the area has already recognized the possible use of such technology in the context of software development, however how to design and use gamification in this context is still an open question. This leads to several research challenges which are organized in a fascinating research agenda that is part of the contribution of this paper. Finally, to support the proposed ideas we present a preliminary experiment that shows the effect of gamification on the performance of students involved in a software engineering project.}},
author = {Dubois, Daniel J. and Tamburrelli, Giordano},
booktitle = {Foundations of Software Engineering},
citeulike-article-id = {12606816},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=2494589},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/2491411.2494589},
doi = {10.1145/2491411.2494589},
isbn = {978-1-4503-2237-9},
keywords = {gamification},
location = {Saint Petersburg, Russia},
posted-at = {2013-09-04 21:10:50},
priority = {0},
publisher = {ACM},
title = {{Understanding Gamification Mechanisms for Software Development}},
url = {http://dx.doi.org/10.1145/2491411.2494589},
year = {2013}
}
@inproceedings{Snipes2013Towards,
abstract = {{Software engineering researchers develop great tech- niques consisting of practices and tools that improve efciency and quality of software development. Prior work evaluates developers use of techniques such as Test-Driven-Development and refactoring by measuring actions in the development environ- ment. What we still lack is a method to communicate effectively and motivate developers to adopt best practices and tools. This work proposes a game-like system to motivate adoption while continuously measuring developers use of more efcient development techniques.}},
author = {Snipes, Will and Augustine, Vinay and Nair, Anil R. and Hill, Emerson M.},
booktitle = {International Conference on Software Engineering},
citeulike-article-id = {12613681},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=2486983},
isbn = {978-1-4673-3076-3},
keywords = {gamification, motivation},
location = {San Francisco, CA, USA},
posted-at = {2013-09-09 23:41:55},
priority = {0},
publisher = {IEEE},
series = {ICSE},
title = {{Towards Recognizing and Rewarding Efficient Developer Work Patterns}},
url = {http://portal.acm.org/citation.cfm?id=2486983},
year = {2013}
}
@inproceedings{Carter2010Are,
abstract = {{It would be useful if software engineers/instructors could be aware that remote team members/students are having difficulty with their programming tasks. We have developed an approach that tries to automatically create this semantic awareness based on developers' interactions with the programming environment, which is extended to log these interactions and allow the developers to train or supervise the algorithm by explicitly indicating they are having difficulty. Based on the logs of six programmers, we have found that our approach has high accuracy.}},
author = {Carter, Jason and Dewan, Prasun},
booktitle = {ACM conference on Computer supported cooperative work},
citeulike-article-id = {12275132},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=1718958},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/1718918.1718958},
doi = {10.1145/1718918.1718958},
isbn = {978-1-60558-795-0},
keywords = {recommending},
location = {Savannah, Georgia, USA},
pages = {211--214},
posted-at = {2013-04-16 21:52:43},
priority = {0},
publisher = {ACM},
series = {CSCW '10},
title = {{Are you Having Difficulty?}},
url = {http://dx.doi.org/10.1145/1718918.1718958},
year = {2010}
}
@Manual{Rcitation,
title = {R: A Language and Environment for Statistical
Computing},
author = {{R Core Team}},
organization = {R Foundation for Statistical Computing},
address = {Vienna, Austria},
year = 2013,
url = {http://www.R-project.org}
}
@article{Hall2009WEKA,
abstract = {{More than twelve years have elapsed since the first public release of WEKA. In that time, the software has been rewritten entirely from scratch, evolved substantially and now accompanies a text on data mining [35]. These days, WEKA enjoys widespread acceptance in both academia and business, has an active community, and has been downloaded more than 1.4 million times since being placed on Source-Forge in April 2000. This paper provides an introduction to the WEKA workbench, reviews the history of the project, and, in light of the recent 3.6 stable release, briefly discusses what has been added since the last stable version (Weka 3.4) released in 2003. 1.}},
author = {Hall, Mark and Frank, Eibe and Holmes, Geoffrey and Pfahringer, Bernhard and Reutemann, Peter and Witten, Ian H.},
citeulike-article-id = {8219039},
citeulike-linkout-0 = {http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.163.817},
journal = {SIGKDD Explorations},
keywords = {thesis-ms},
number = {1},
posted-at = {2013-10-03 18:33:40},
priority = {0},
title = {{The WEKA Data Mining Software: An Update}},
url = {http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.163.817},
volume = {11},
year = {2009}
}
@book{Witten2005Data,
abstract = {{As with any burgeoning technology that enjoys commercial attention, the use of data mining is surrounded by a great deal of hype. Exaggerated reports tell of secrets that can be uncovered by setting algorithms loose on oceans of data. But there is no magic in machine learning, no hidden power, no alchemy. Instead there is an identifiable body of practical techniques that can extract useful information from raw data. This book describes these techniques and shows how they work. <br><br>The book is a major revision of the first edition that appeared in 1999. While the basic core remains the same, it has been updated to reflect the changes that have taken place over five years, and now has nearly double the references. The highlights for the new edition include thirty new technique sections; an enhanced Weka machine learning workbench, which now features an interactive interface; comprehensive information on neural networks; a new section on Bayesian networks; plus much more.<br><br>+ Authors, Ian Witten and Eibe Frank, recipients of the 2005 ACM SIGKDD Service Award.<br>+ Algorithmic methods at the heart of successful data miningincluding tried and true techniques as well as leading edge methods; <br>+ Performance improvement techniques that work by transforming the input or output; <br>+ Downloadable Weka, a collection of machine learning algorithms for data mining tasks, including tools for data pre-processing, classification, regression, clustering, association rules, and visualizationin a new, interactive interface.}},
author = {Witten, Ian H. and Frank, Eibe},
citeulike-article-id = {340715},
day = {22},
edition = {Second},
howpublished = {Paperback},
isbn = {0120884070},
keywords = {thesis-ms},
month = jun,
posted-at = {2013-10-03 18:32:52},
priority = {0},
publisher = {Morgan Kaufmann},
series = {Morgan Kaufmann Series in Data Management Systems},
title = {{Data Mining: Practical Machine Learning Tools and Techniques}},
url = {http://www.worldcat.org/isbn/0120884070},
year = {2005}
}
@book{longitudinalbook,
author = {Newsom, Jason T. and Jones, Richard N. and Hofer, Scott M.},
booktitle = {Longitudinal Data Analysis},
citeulike-article-id = {12606757},
isbn = {9780415874151},
keywords = {gameification, thesis-ms},
posted-at = {2013-09-04 19:53:57},
priority = {2},
publisher = {Routledge},
title = {{Longitudinal Data Analysis}},
year = {2012}
}
@inproceedings{Shepherd2012Sando,
abstract = {{Developers heavily rely on Local Code Search (LCS)---the execution of a text-based search on a single code base---to find starting points in software maintenance tasks. While LCS approaches commonly used by developers are based on lexical matching and often result in failed searches or irrelevant results, developers have not yet migrated to the various research approaches that have made significant advancements in LCS. We hypothesize that two of the major reasons for this lack of migration are as follows. First, developers do not know which approach is the best, due to a lack of comparative field studies and the discrepancies in the underlying LCS process that these research approaches address. Second, developers lack access to a stable implementation of most of the research approaches. To address these issues, we studied a number of LCS approaches, distilled the general component structure underlying these approaches and, based on this structure, developed a LCS tool and framework, called Sando. Currently used by developers at ABB, Inc. and elsewhere, Sando also supports the flexible extension of its components to rapidly disseminate research advancements, and allows for user-based evaluation of competing approaches.}},
author = {Shepherd, David and Damevski, Kostadin and Ropski, Bartosz and Fritz, Thomas},
booktitle = {Foundations of Software Engineering},
citeulike-article-id = {12688769},
citeulike-linkout-0 = {http://portal.acm.org/citation.cfm?id=2393612},
citeulike-linkout-1 = {http://dx.doi.org/10.1145/2393596.2393612},
doi = {10.1145/2393596.2393612},
isbn = {978-1-4503-1614-9},
keywords = {productivity, thesis-ms},
location = {Cary, North Carolina},
posted-at = {2013-10-03 21:32:51},
priority = {4},
publisher = {ACM},
title = {{Sando: an Extensible Local Code Search Framework}},
url = {http://dx.doi.org/10.1145/2393596.2393612},
year = {2012}
}
@book{2013Oxford,
citeulike-article-id = {12717157},
citeulike-linkout-0 = {http://oxforddictionaries.com/us/definition/american\_english/gamification},
keywords = {gamification},
posted-at = {2013-10-11 19:52:31},
priority = {2},
publisher = {Oxford University Press},
title = {{Oxford Dictionaries Online - American English (US)}},
url = {http://oxforddictionaries.com/us/definition/american\_english/gamification},
year = {2013}
}
@book{RefWorks:118,
author = {Hill, Thomas and Lewicki, Paul},
citeulike-article-id = {7398614},
citeulike-linkout-0 = {http://www.amazon.com/exec/obidos/redirect?tag=citeulike07-20\&\#38;path=ASIN/1884233597},
keywords = {prediction},
posted-at = {2010-09-22 13:40:46},
priority = {0},
publisher = {StatSoft, Inc},
title = {{Statistics: Methods and Applications}},
url = {http://www.amazon.com/exec/obidos/redirect?tag=citeulike07-20\&path=ASIN/1884233597},
year = {2007}
}
@article{Beecham2008Motivation,
abstract = {{Objective: In this paper, we present a systematic literature review of motivation in Software Engineering. The objective of this review is to plot the landscape of current reported knowledge in terms of what motivates developers, what de-motivates them and how existing models address motivation. Methods: We perform a systematic literature review of peer reviewed published studies that focus on motivation in Software Engineering. Systematic reviews are well established in medical research and are used to systematically analyse the literature addressing specific research questions. Results: We found 92 papers related to motivation in Software Engineering. Fifty-six percent of the studies reported that Software Engineers are distinguishable from other occupational groups. Our findings suggest that Software Engineers are likely to be motivated according to three related factors: their 'characteristics' (for example, their need for variety); internal 'controls' (for example, their personality) and external 'moderators' (for example, their career stage). The literature indicates that de-motivated engineers may leave the organisation or take more sick-leave, while motivated engineers will increase their productivity and remain longer in the organisation. Aspects of the job that motivate Software Engineers include problem solving, working to benefit others and technical challenge. Our key finding is that the published models of motivation in Software Engineering are disparate and do not reflect the complex needs of Software Engineers in their career stages, cultural and environmental settings. Conclusions: The literature on motivation in Software Engineering presents a conflicting and partial picture of the area. It is clear that motivation is context dependent and varies from one engineer to another. The most commonly cited motivator is the job itself, yet we found very little work on what it is about that job that Software Engineers find motivating. Furthermore, surveys are often aimed at how Software Engineers feel about 'the organisation', rather than 'the profession'. Although models of motivation in Software Engineering are reported in the literature, they do not account for the changing roles and environment in which Software Engineers operate. Overall, our findings indicate that there is no clear understanding of the Software Engineers' job, what motivates Software Engineers, how they are motivated, or the outcome and benefits of motivating Software Engineers.}},
author = {Beecham, Sarah and Baddoo, Nathan and Hall, Tracy and Robinson, Hugh and Sharp, Helen},
citeulike-article-id = {8184295},
doi = {10.1016/j.infsof.2007.09.004},
issn = {0950-5849},
journal = {Inf. Softw. Technol.},
keywords = {motivation},
month = aug,
number = {9-10},
pages = {860--878},
posted-at = {2012-11-29 16:00:35},
priority = {4},
publisher = {Butterworth-Heinemann},
title = {{Motivation in Software Engineering: A Systematic Literature Review}},
url = {http://dx.doi.org/10.1016/j.infsof.2007.09.004},
volume = {50},
year = {2008}
}