Are We More Productive Now? Analyzing Change Tasks to Assess Productivity Trends during Software Evolution

Hans Christian Benestad, Bente Anda, Erik Arisholm

2009

Abstract

Organizations that maintain and evolve software would benefit from being able to measure productivity in an easy and reliable way. This could allow them to determine if new or improved practices are needed, and to evaluate improvement efforts. We propose and evaluate indicators of productivity trends that are based on the premise that productivity during software evolution is closely related to the effort required to complete change tasks. Three indicators use data about change tasks from change management systems, while a fourth compares effort estimates of benchmarking tasks. We evaluated the indicators using data from 18 months of evolution in two commercial software projects. The productivity trend in the two projects had opposite directions according to the indicators. The evaluation showed that productivity trends can be quantified with little measurement overhead. We expect the methodology to be a step towards making quantitative self-assessment practices feasible even in low ceremony projects.

References

  1. Eick, S.G., Graves, T.L., Karr, A.F., Marron, J.S., and Mockus, A.: Does Code Decay? Assessing the Evidence from Change Management Data. IEEE Transactions on Software Engineering, 27(1) (2001) 1-12
  2. DeMarco, T. and Lister, T.: Human Capital in Peopleware. Productive Projects and Teams. Dorset House Publishing, (1999) 202-208
  3. Mens, T. and Tourwé, T.: A Survey of Software Refactoring. IEEE Transactions on Software Engineering, 30(2) (2004) 126-139
  4. Dybå, T., Arisholm, E., Sjøberg, D.I.K., Hannay, J.E., and Shull, F.: Are Two Heads Better Than One? On the Effectiveness of Pair Programming. IEEE Software, 24(6) (2007) 12-15
  5. Tonkay, G.L.: Productivity in Encyclopedia of Science & Technology. McGraw-Hill, (2008)
  6. Fenton, N.E. and Pfleeger, S.L.: Measuring Productivity in Software Metrics, a Rigorous & Practical Approach. (1997) 412-425
  7. Ramil, J.F. and Lehman, M.M.: Cost Estimation and Evolvability Monitoring for Software Evolution Processes. Proceedings of the Workshop on Empirical Studies of Software Maintenance (2000)
  8. Abran, A. and Maya, M.: A Sizing Measure for Adaptive Maintenance Work Products. Proceedings of the International Conference on Software Maintenance (1995) 286-294
  9. Albrecht, A.J. and Gaffney Jr, J.E.: Software Function, Source Lines of Code, and Development Effort Prediction: A Software Science Validation. IEEE Transactions on Software Engineering, 9(6) (1983) 639-648
  10. Maya, M., Abran, A., and Bourque, P.: Measuring the Size of Small Functional Enhancements to Software. Proceedings of the 6th International Workshop on Software Metrics (1996)
  11. DeMarco, T.: An Algorithm for Sizing Software Products. ACM SIGMETRICS Performance Evaluation Review, 12(2) (1984) 13-22
  12. Ramil, J.F. and Lehman, M.M.: Defining and Applying Metrics in the Context of Continuing Software Evolution. Proceedings of the Software Metrics Symposium (2001) 199-209
  13. Abran, A. and Hguyenkim, H.: Measurement of the Maintenance Process from a DemandBased Perspective. Journal of Software Maintenance: Research and Practice, 5(2) (1993) 63-90
  14. Rombach, H.D., Ulery, B.T., and Valett, J.D.: Toward Full Life Cycle Control: Adding Maintenance Measurement to the SEL. Journal of Systems and Software, 18(2) (1992) 125- 138
  15. Stark, G.E.: Measurements for Managing Software Maintenance. Proceedings of the 1996 International Conference on Software Maintenance (1996) 152-161
  16. Arisholm, E. and Sjøberg, D.I.K.: Towards a Framework for Empirical Assessment of Changeability Decay. Journal of Systems and Software, 53(1) (2000) 3-14
  17. Graves, T.L. and Mockus, A.: Inferring Change Effort from Configuration Management Databases. Proceedings of the 5th International Symposium on Software Metrics (1998) 267-273
  18. Kitchenham, B. and Mendes, E.: Software Productivity Measurement Using Multiple Size Measures. IEEE Transactions on Software Engineering, 30(12) (2004) 1023-1035
  19. Schwaber, K.: Scrum Development Process. Proceedings of the 10th Annual ACM Conference on Object Oriented Programming Systems, Languages, and Applications (1995) 117-134
  20. Benestad, H.C., Anda, B., and Arisholm, E.: An Investigation of Change Effort in Two Evolving Software Systems. Technical report 01/2009 (2009) Simula Research Laboratory
  21. Grimstad, S. and Jørgensen, M.: Inconsistency of Expert Judgment-Based Estimates of Software Development Effort. Journal of Systems and Software, 80(11) (2007) 1770-1777
Download


Paper Citation


in Harvard Style

Benestad H., Anda B. and Arisholm E. (2009). Are We More Productive Now? Analyzing Change Tasks to Assess Productivity Trends during Software Evolution . In Proceedings of the 4th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-811-98-2, pages 161-176. DOI: 10.5220/0001949901610176


in Bibtex Style

@conference{enase09,
author={Hans Christian Benestad and Bente Anda and Erik Arisholm},
title={Are We More Productive Now? Analyzing Change Tasks to Assess Productivity Trends during Software Evolution},
booktitle={Proceedings of the 4th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2009},
pages={161-176},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0001949901610176},
isbn={978-989-811-98-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 4th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - Are We More Productive Now? Analyzing Change Tasks to Assess Productivity Trends during Software Evolution
SN - 978-989-811-98-2
AU - Benestad H.
AU - Anda B.
AU - Arisholm E.
PY - 2009
SP - 161
EP - 176
DO - 10.5220/0001949901610176