An Environment for Conducting Families of Software Engineering Experiments

Abstract The classroom is a valuable resource for conducting software engineering experiments. However, coordinating a family of experiments in classroom environments presents a number of challenges to researchers. Understanding how to run such experiments, developing procedures to collect accurate data, and collecting data that is consistent across multiple studies are major problems. This paper describes an environment, the Experiment Manager that simplifies the process of collecting, managing, and sanitizing data from classroom experiments, while minimizing disruption to natural subject behavior. We have successfully used this environment to study the impact of parallel programming languages in the high‐performance computing domain on programmer productivity at multiple universities across the United States.

[1]  James Miller,et al.  Applying meta-analytical procedures to software engineering experiments , 2000, J. Syst. Softw..

[2]  Jeffrey C. Carver,et al.  Combining self-reported and automatic data to improve programming effort measurement , 2005, ESEC/FSE-13.

[3]  C MurphyGail,et al.  How Are Java Software Developers Using the Eclipse IDE , 2006 .

[4]  I K SjobergDag,et al.  A Survey of Controlled Experiments in Software Engineering , 2005 .

[5]  Dewayne E. Perry,et al.  Understanding and Improving Time Usage in Software Development , 1995 .

[6]  Victor R. Basili,et al.  Metric Analysis and Data Validation Across Fortran Projects , 1983, IEEE Transactions on Software Engineering.

[7]  Marvin V. Zelkowitz Automatic program analysis and evaluation , 1976, ICSE '76.

[8]  L. Dagum,et al.  OpenMP: an industry standard API for shared-memory programming , 1998 .

[9]  D. Campbell,et al.  EXPERIMENTAL AND QUASI-EXPERIMENT Al DESIGNS FOR RESEARCH , 2012 .

[10]  Marvin V. Zelkowitz,et al.  EXPERIMENTAL MODELS FOR VALIDATING COMPUTER TECHNOLOGY , 2001 .

[11]  Jeffrey C. Carver,et al.  Issues in using students in empirical studies in software engineering education , 2003, Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717).

[12]  Yngve Lindsjørn,et al.  A Web-Based Support Environment for Software Engineering Experiments , 2002, Nord. J. Comput..

[13]  Forrest Shull,et al.  Building Knowledge through Families of Experiments , 1999, IEEE Trans. Software Eng..

[14]  Jeffrey C. Carver,et al.  Empirical study design in the area of high-performance computing (HPC) , 2005, 2005 International Symposium on Empirical Software Engineering, 2005..

[15]  Conclusions , 1989 .

[16]  Ken-ichi Matsumoto,et al.  Ginger2: An Environment for Computer-Aided Empirical Software Engineering , 1999, IEEE Trans. Software Eng..

[17]  Joel Waldfogel,et al.  Introduction , 2010, Inf. Econ. Policy.

[18]  Marvin V. Zelkowitz,et al.  Lessons learned from 25 years of process improvement: the rise and fall of the NASA software engineering laboratory , 2002, Proceedings of the 24th International Conference on Software Engineering. ICSE 2002.

[19]  Mik Kersten,et al.  How are Java software developers using the Elipse IDE? , 2006, IEEE Software.

[20]  David Hovemeyer,et al.  Software repository mining with Marmoset , 2005, MSR.

[21]  Amela Karahasanovic,et al.  A survey of controlled experiments in software engineering , 2005, IEEE Transactions on Software Engineering.

[22]  Alan Edelman,et al.  MATLAB*P 2.0: A unified parallel MATLAB , 2003 .

[23]  Katherine Yelick,et al.  Introduction to UPC and Language Specification , 2000 .

[24]  Victor R. Basili,et al.  Software process evolution at the SEL , 1994, IEEE Software.

[25]  Jack J. Dongarra,et al.  A message passing standard for MPP and workstations , 1996, CACM.

[26]  Qin Zhang,et al.  Practical automated process and product metric collection and analysis in a classroom setting: lessons learned from Hackystat-UH , 2004, Proceedings. 2004 International Symposium on Empirical Software Engineering, 2004. ISESE '04..

[27]  Victor R. Basili,et al.  Evolving and packaging reading technologies , 1997, J. Syst. Softw..

[28]  Marvin V. Zelkowitz,et al.  Measuring Productivity on High Performance Computers , 2005, IEEE METRICS.

[29]  Marvin V. Zelkowitz,et al.  Experimental Models for Validating Technology , 1998, Computer.