Improving Productivity for Projects with High Turnover. Anandi Hira University of Southern California Software Technology Conference October 13, 2015

Size: px
Start display at page:

Download "Improving Productivity for Projects with High Turnover. Anandi Hira University of Southern California Software Technology Conference October 13, 2015"

Transcription

1 Improving Productivity for Projects with High Turnover Anandi Hira University of Southern California Software Technology Conference October 13, 2015

2 Introduction IDPD UCC Metrics Outline Hypotheses Data Analysis Results Hypothesis 1 Hypothesis 2 Conclusion 2

3 IDPD Incremental Development Productivity Decline Decrease in productivity(percentage) due to Increasing Integration and Testing Efforts Software Evolution Defects Resolution 3

4 UCC Unified Code Count Source Line of Code (SLOC) metrics Logical SLOC, Cyclomatic Complexity 10% personnel continuity over 4 months Data collected from: Developed code Weekly Timesheets Test Case Documentation 4

5 Metrics 5

6 Introduction IDPD UCC Metrics Outline Hypotheses Data Analysis Results Hypothesis 1 Hypothesis 2 Conclusion 6

7 IDPD Improvement Hypothesis IDPD greater between consecutive Production increments IDPD lower between Production increments with Evaluation increment in middle 7

8 Documentation and Test Improvement Hypothesis More documentation during Evaluation increment More Test Cases during Evaluation increment More Bugs Found during Evaluation increment Development begins earlier after Evaluation increment 8

9 Normalized Productivity 1/2 Normalized Productivity Increments GUI Cyclomatic Matlab 9

10 Normalized Productivity 2/2 Normalized Productivity Increments MIPS Objective C Makefile Visual Diff CC4 10

11 Introduction IDPD UCC Metrics Outline Hypotheses Data Analysis Results Hypothesis 1 Hypothesis 2 Conclusion 11

12 IDPD Comparison 50 IDPD (Productivity Decrease Percentage) Without Evaluation With Evaluation p-value

13 Similarity to C++ Counter Project % Similar to C++ IDPD Makefile Pearson Correlation Results Correlation Coefficient Matlab R Standard Error MIPS t Objective C p-value

14 Cyclomatic Complexity Total Cyclomatic Complexity of New Modules p-value Without Evaluation With Evaluation 14

15 Introduction IDPD UCC Metrics Outline Hypotheses Data Analysis Results Hypothesis 1 Hypothesis 2 Conclusion 15

16 Documentation and Test Improvement Hypothesis More documentation during Evaluation increment More Test Cases during Evaluation increment More Bugs Found during Evaluation increment Development begins earlier after Evaluation increment 16

17 Documentation # of Pages of Documentation Produced p-value Without Evaluation With Evaluation 17

18 Test Cases # of Test Cases Ran During Increments Without Evaluation With Evaluation p-value

19 Bugs Found # of Bugs Found During Increments p-value Without Evaluation With Evaluation 19

20 Week Development Began 8 Week # Development Began Without Evaluation With Evaluation p-value

21 Introduction IDPD UCC Metrics Outline Hypotheses Data Analysis Results Hypothesis 1 Hypothesis 2 Conclusion 21

22 Applicable Situations Contractors Interns New Hires Conclusion Analyses confirm having personnel focus testing and evaluating completeness reduces productivity decline Planned next step: Concurrent teams work on same projects and compare results 22

23 References 1/4 1. Boehm, B., Clark, B., Tan, T., Madachy, R., & Rosa, W. (2011). Future Software Sizing Metrics and Estimation Challenges. NAVAL POSTGRADUATE SCHOOL MONTEREY CA DEPT OF SYSTEMS ENGINEERING. 2. Moazeni, R., Link, D., & Boehm, B. (2013, December). Lehman's Laws and the Productivity of Increments: Implications for Productivity. In Software Engineering Conference (APSEC, th Asia-Pacific (Vol. 1, pp ). IEEE. 3. Lehman, M. M. (1980). Programs, life cycles, and laws of software evolution. Proceedings of the IEEE, 68(9), Lehman, M. M., Ramil, J. F., Wernick, P. D., Perry, D. E., & Turski, W. M. (1997, November). Metrics and laws of software evolution-the nineties view. In Software Metrics Symposium, Proceedings., Fourth International (pp ). IEEE. 23

24 References 2/4 5. Elssamadisy, A., & Schalliol, G. (2002, May). Recognizing and responding to bad smells in extreme programming. In Proceedings of the 24th International conference on Software Engineering (pp ). ACM. 6. Iansiti, M. (1993). Microsoft Corporation: Office Business Unit (TN). Harvard Business School Teaching Note Tan, T., Li, Q., Boehm, B., Yang, Y., He, M., & Moazeni, R. (2009, October). Productivity trends in incremental and iterative software development. In Proceedings of the rd International Symposium on Empirical Software Engineering and Measurement (pp. 1-10). IEEE Computer Society. 8. Moazeni, R., Link, D., & Boehm, B. (2013, October). Incremental development productivity decline. In Proceedings of the 9th International Conference on Predictive Models in Software Engineering (p. 7). ACM. 24

25 References 3/4 9. Moazeni, R., Link, D., & Boehm, B. (2014, May). COCOMO II parameters and IDPD: bilateral relevances. In Proceedings of the 2014 International Conference on Software and System Process (pp ). ACM. 10.Moazeni, R., Link, D., Chen, C., & Boehm, B. (2014, May). Software domains in incremental development productivity decline. In Proceedings of the 2014 International Conference on Software and System Process (pp ). ACM. 11.Park, R. E. (1992). Software size measurement: A framework for counting source statements (No. CMU/SEI/92-TR-20). CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST. 12.McCabe, T. J. (1976). A complexity measure. Software Engineering, IEEE Transactions on, (4), Nguyen, V. (2010). Improved size and effort estimation models for software maintenance (Doctoral dissertation, University of Southern California). 25

26 References 4/4 14.Boehm, B. W., Abts, C., Brown, A. W., Chulani, S., Clark, B. K., Horowitz, E.,... & Steece, B. (2009). Software Cost Estimation with COCOMO II. 15.Kenyon, D. (1985, April). Implementing a Software Metrics Program. HP Software Productivity Conference Proceedings, (1), Leath, C. (1987, April). A Software Defect Analysis. HP Software Productivity Conference Proceedings, (4), Grady, R. B. (1992). Practical software metrics for project management and process improvement. Prentice-Hall, Inc.. 26

27 Acronyms IDPD UCC SLOC Incremental Development Productivity Development Unified Code Count Source Lines of Code ESLOC Equivalent Source Lines of Code GUI Graphical User Interface CC4 Cyclomatic Complexity Ring 4 27