DroidSense: A Mobile Tool to Analyze Software Development Processes by Measuring Team Proximity

Understanding the dynamics of a software development process is of paramount importance for managers to identify the most important patterns, to predict potential quality and productivity issues, and to plan and implement corrective actions. Currently, major techniques and tools in this area specialize on acquiring and analyzing data using software metrics, leaving unaddressed the issue of modeling the "physical" activities that developers do. In this paper, we present DroidSense, a non-invasive tool that runs on Android-based mobile phones and collects data about developers involvement in Agile software development activities, e.g. Pair Programming, daily stand-ups, or planning game, by measuring their proximity to computers and also other developers. DroidSense collects data automatically via Bluetooth signal created by other phones, personal computers, and other devices. We explain detailed design and implementation of the tool. Eventually, to show a possible application of DroidSense we present the results of a case study.

[1]  M. Laskowski,et al.  A Network-Enabled Platform for Reducing Hospital Emergency Department Waiting Times Using an RFID Proximity Location System , 2008, 2008 19th International Conference on Systems Engineering.

[2]  Watts S. Humphrey,et al.  Characterizing the software process: a maturity framework , 1988, IEEE Software.

[3]  Michele Marchesi,et al.  Extreme Programming and Agile Processes in Software Engineering , 2003, Lecture Notes in Computer Science.

[4]  Alberto Sillitti,et al.  Managing non-invasive measurement tools , 2006, J. Syst. Archit..

[5]  Giancarlo Succi,et al.  Extreme Programming Examined , 2001 .

[6]  H. Hulkko,et al.  A multiple case study on the impact of pair programming on product quality , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[7]  Shari Lawrence Pfleeger,et al.  Software metrics (2nd ed.): a rigorous and practical approach , 1997 .

[8]  Watts S. Humphrey,et al.  Introduction to the Personal Software Process , 1996 .

[9]  Tim Wahls,et al.  The effects of pair-programming on individual programming skill , 2008, SIGCSE '08.

[10]  Alberto Sillitti,et al.  Collecting, integrating and analyzing software metrics and personal software process data , 2003, 2003 Proceedings 29th Euromicro Conference.

[11]  H. D. Rombach,et al.  The Goal Question Metric Approach , 1994 .

[12]  Sven Heiberg,et al.  Pair-Programming Effect on Developers Productivity , 2003, XP.

[13]  Philip M. Johnson,et al.  Beyond the Personal Software Process: Metrics collection and analysis for the differently disciplined , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[14]  Witold Pedrycz,et al.  Preliminary Analysis of the Effects of Pair Programming on Job Satisfaction , 2001 .

[15]  Richard Sharp,et al.  Using visual tags to bypass Bluetooth device discovery , 2005, MOCO.

[16]  Watts S. Humphrey The Personal Software Process , 1997, Proceedings Frontiers in Education 1997 27th Annual Conference. Teaching and Learning in an Era of Change.

[17]  Mario Piattini,et al.  Evaluating performances of pair designing in industry , 2007, J. Syst. Softw..

[18]  Alberto Sillitti,et al.  Measures for mobile users: an architecture , 2004, J. Syst. Archit..

[19]  Laurie Williams,et al.  The costs and benefits of pair programming , 2001 .

[20]  Jari Vanhanen,et al.  Experiences of Using Pair Programming in an Agile Project , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[21]  Keith C. C. Chan,et al.  Pair programming productivity: Novice-novice vs. expert-expert , 2006, Int. J. Hum. Comput. Stud..