Skip to main content
Erschienen in: Empirical Software Engineering 1/2013

01.02.2013

Effort estimation of FLOSS projects: a study of the Linux kernel

verfasst von: Andrea Capiluppi, Daniel Izquierdo-Cortázar

Erschienen in: Empirical Software Engineering | Ausgabe 1/2013

Einloggen

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Empirical research on Free/Libre/Open Source Software (FLOSS) has shown that developers tend to cluster around two main roles: “core” contributors differ from “peripheral” developers in terms of a larger number of responsibilities and a higher productivity pattern. A further, cross-cutting characterization of developers could be achieved by associating developers with “time slots”, and different patterns of activity and effort could be associated to such slots. Such analysis, if replicated, could be used not only to compare different FLOSS communities, and to evaluate their stability and maturity, but also to determine within projects, how the effort is distributed in a given period, and to estimate future needs with respect to key points in the software life-cycle (e.g., major releases). This study analyses the activity patterns within the Linux kernel project, at first focusing on the overall distribution of effort and activity within weeks and days; then, dividing each day into three 8-hour time slots, and focusing on effort and activity around major releases. Such analyses have the objective of evaluating effort, productivity and types of activity globally and around major releases. They enable a comparison of these releases and patterns of effort and activities with traditional software products and processes, and in turn, the identification of company-driven projects (i.e., working mainly during office hours) among FLOSS endeavors. The results of this research show that, overall, the effort within the Linux kernel community is constant (albeit at different levels) throughout the week, signalling the need of updated estimation models, different from those used in traditional 9am–5pm, Monday to Friday commercial companies. It also becomes evident that the activity before a release is vastly different from after a release, and that the changes show an increase in code complexity in specific time slots (notably in the late night hours), which will later require additional maintenance efforts.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Fußnoten
1
All the developers are co-located, so no further adjustments are needed in terms of the time of the day of each commit.
 
4
FLOSSMetrics project, www.flossmetrics.org/
 
5
In a SQL statement, where date ‘2005-06-09 00:00:00’ and date ‘2005-06-15 23:59:59’.
 
6
A partial explanation for the low values of activity on April 15th could be that the Federal Income Taxes are due in the United States on that day.
 
7
We provide the results for the office time during the weekends just to observe if there is a continuous activity during the mornings. However, it has not happened since most of the activity, for instance, during the Saturday, is developed during the afternoon and in the following.
 
8
This was done to properly evaluate the McCabe cyclomatic complexity for source files developed in the C “procedural” language.
 
9
Number of source files where complexity increases, during the week before a release: 13, 33, 28, 1, 48, 33, 30, 48, 54, 87, 36, 37, 72, 56, 190, 149, 129, 128, 237, 216, 177, 146, 314.
 
10
Number of source files where complexity increases, during the week after a release: 100, 102, 256, 343, 245, 172, 409, 255, 254, 273, 346, 712, 771, 360, 271, 349, 324, 428, 523, 349, 471, 399, 493.
 
18
Given a commit c, the SQL statement is: select files.file_name, actions.file_id, actions.commit_id, actions.type from scmlog,actions,files where scmlog. rev = c and scmlog.id = actions.commit_id and files.id=actions.file_id.
 
19
Given a commit c on file f, the SQL statement is: select scmlog.rev, scmlog.id from scmlog,actions where actions.file_id = f and actions.commit_id < c and actions.commit_id=scmlog.id order by actions.commit_id desc limit 1.
 
21
Version 2.6.
 
23
Using the option –pretty=fuller.
 
Literatur
Zurück zum Zitat Abdel-Hamid TK (1993) Adapting, correcting, and perfecting software estimates: a maintenance metaphor. Computer 26(3):20–29CrossRef Abdel-Hamid TK (1993) Adapting, correcting, and perfecting software estimates: a maintenance metaphor. Computer 26(3):20–29CrossRef
Zurück zum Zitat Abdel-Hamid T, Madnick SE (1991) Software project dynamics: an integrated approach. Prentice-Hall, Inc., Upper Saddle River, NJ, USA Abdel-Hamid T, Madnick SE (1991) Software project dynamics: an integrated approach. Prentice-Hall, Inc., Upper Saddle River, NJ, USA
Zurück zum Zitat Abran A, Robillard PN (1993) Reliability of function points productivity model for enhancement projects (a field study). In: ICSM ’93: proceedings of the conference on software maintenance. IEEE Computer Society, Washington, DC, USA, pp 80–87 Abran A, Robillard PN (1993) Reliability of function points productivity model for enhancement projects (a field study). In: ICSM ’93: proceedings of the conference on software maintenance. IEEE Computer Society, Washington, DC, USA, pp 80–87
Zurück zum Zitat Adams PJ, Capiluppi A, Boldyreff C (2009) Coordination and productivity issues in free software: the role of brooks law. In: ICSM. IEEE, pp 319–328 Adams PJ, Capiluppi A, Boldyreff C (2009) Coordination and productivity issues in free software: the role of brooks law. In: ICSM. IEEE, pp 319–328
Zurück zum Zitat Albrecht AJ, Gaffney JE (1983) Software function, source lines of code, and development effort prediction: a software science validation. IEEE Trans Softw Eng 9(6):639–648CrossRef Albrecht AJ, Gaffney JE (1983) Software function, source lines of code, and development effort prediction: a software science validation. IEEE Trans Softw Eng 9(6):639–648CrossRef
Zurück zum Zitat Amor JJ, Robles G, Gonzalez-Barahona JM (2006) Effort estimation by characterizing developer activity. In: Proceedings of the 2006 international workshop on economics driven software engineering research, ser. EDSER ’06. ACM, New York, NY, USA, pp 3–6. doi: 10.1145/1139113.1139116 CrossRef Amor JJ, Robles G, Gonzalez-Barahona JM (2006) Effort estimation by characterizing developer activity. In: Proceedings of the 2006 international workshop on economics driven software engineering research, ser. EDSER ’06. ACM, New York, NY, USA, pp 3–6. doi: 10.​1145/​1139113.​1139116 CrossRef
Zurück zum Zitat Antoniol G, Villano U, Merlo E, Di Penta M (2002) Analyzing cloning evolution in the Linux kernel. Inf Softw Technol 44(13):755–765CrossRef Antoniol G, Villano U, Merlo E, Di Penta M (2002) Analyzing cloning evolution in the Linux kernel. Inf Softw Technol 44(13):755–765CrossRef
Zurück zum Zitat Bandi RK, Vaishnavi VK, Turk DE (2003) Predicting maintenance performance using object-oriented design complexity metrics. IEEE Trans Softw Eng 29(1):77–87CrossRef Bandi RK, Vaishnavi VK, Turk DE (2003) Predicting maintenance performance using object-oriented design complexity metrics. IEEE Trans Softw Eng 29(1):77–87CrossRef
Zurück zum Zitat Basili VR, Shull F, Lanubile F (1999) Building knowledge through families of experiments. IEEE Trans Softw Eng 25:456–473CrossRef Basili VR, Shull F, Lanubile F (1999) Building knowledge through families of experiments. IEEE Trans Softw Eng 25:456–473CrossRef
Zurück zum Zitat Bird C, Rigby P, Barr E, Hamilton D, German D, Devanbu P (2009) The promises and perils of mining git. In: Proceedings of the 2009 6th IEEE international working conference on mining software repositories. Citeseer, pp 1–10 Bird C, Rigby P, Barr E, Hamilton D, German D, Devanbu P (2009) The promises and perils of mining git. In: Proceedings of the 2009 6th IEEE international working conference on mining software repositories. Citeseer, pp 1–10
Zurück zum Zitat Boehm BW (1981) Software engineering economics, 1st edn. Prentice Hall PTR, Upper Saddle River, NJ, USAMATH Boehm BW (1981) Software engineering economics, 1st edn. Prentice Hall PTR, Upper Saddle River, NJ, USAMATH
Zurück zum Zitat Boehm BW, Sullivan KJ (2000) Software economics: a roadmap. In: ICSE ’00: proceedings of the conference on the future of software engineering. ACM, New York, NY, USA, pp 319–343CrossRef Boehm BW, Sullivan KJ (2000) Software economics: a roadmap. In: ICSE ’00: proceedings of the conference on the future of software engineering. ACM, New York, NY, USA, pp 319–343CrossRef
Zurück zum Zitat Boehm BW, Clark B, Horowitz E, Brown AW, Reifer D, Chulani S, Madachy R, Steece B (2000) Software cost estimation with Cocomo II with Cdrom. Prentice Hall PTR, Upper Saddle River, NJ, USA Boehm BW, Clark B, Horowitz E, Brown AW, Reifer D, Chulani S, Madachy R, Steece B (2000) Software cost estimation with Cocomo II with Cdrom. Prentice Hall PTR, Upper Saddle River, NJ, USA
Zurück zum Zitat Briand LC, Basili V (1992) A classification procedure for an effective management of changes during the software maintenance process. In: ICSM ’92: IEEE international conference on software maintenance Briand LC, Basili V (1992) A classification procedure for an effective management of changes during the software maintenance process. In: ICSM ’92: IEEE international conference on software maintenance
Zurück zum Zitat Brooks Jr FP (1975) The mythical man-month. In: Proceedings of the international conference on reliable software. ACM, New York, NY, USA, p 193CrossRef Brooks Jr FP (1975) The mythical man-month. In: Proceedings of the international conference on reliable software. ACM, New York, NY, USA, p 193CrossRef
Zurück zum Zitat Capiluppi A, Fernandez-Ramil J, Higman J, Sharp HC, Smith N (2007) An empirical study of the evolution of an agile-developed software system. In: ICSE ’07: Proceedings of the 29th international conference on software engineering. IEEE computer society, Washington, DC, USA, pp 511–518 Capiluppi A, Fernandez-Ramil J, Higman J, Sharp HC, Smith N (2007) An empirical study of the evolution of an agile-developed software system. In: ICSE ’07: Proceedings of the 29th international conference on software engineering. IEEE computer society, Washington, DC, USA, pp 511–518
Zurück zum Zitat Crowston K, Scozzi B, Buonocore S (2003) An explorative study of open source software development structure. In: Proceedings of the ECIS, Naples, Italy Crowston K, Scozzi B, Buonocore S (2003) An explorative study of open source software development structure. In: Proceedings of the ECIS, Naples, Italy
Zurück zum Zitat Curtis B (1992) Keynote address: i’m mad as hell and i’m not going to maintain this anymore. In: ICSM ’92: IEEE international conference on software maintenance Curtis B (1992) Keynote address: i’m mad as hell and i’m not going to maintain this anymore. In: ICSM ’92: IEEE international conference on software maintenance
Zurück zum Zitat DeMarco T (1986) Controlling software projects: management, measurement, and estimates. Prentice Hall PTR, Upper Saddle River, NJ, USA DeMarco T (1986) Controlling software projects: management, measurement, and estimates. Prentice Hall PTR, Upper Saddle River, NJ, USA
Zurück zum Zitat Farr L, Zagorski H (1964) Factors that affect the cost of computer programming: a quantitative analysis, pp 59–86 Farr L, Zagorski H (1964) Factors that affect the cost of computer programming: a quantitative analysis, pp 59–86
Zurück zum Zitat Godfrey M, Tu Q (2000) Evolution in open source software: a case study. In: Proceedings of the international conference on software maintenance. Citeseer, pp 131–142 Godfrey M, Tu Q (2000) Evolution in open source software: a case study. In: Proceedings of the international conference on software maintenance. Citeseer, pp 131–142
Zurück zum Zitat Godfrey M, Tu Q (2001) Growth, evolution, and structural change in open source software. In: Proceedings of the 4th international workshop on principles of software evolution, ser. IWPSE ‘01. ACM, New York, NY, USA, pp 103–106. doi:10.1145/602461.602482 Godfrey M, Tu Q (2001) Growth, evolution, and structural change in open source software. In: Proceedings of the 4th international workshop on principles of software evolution, ser. IWPSE ‘01. ACM, New York, NY, USA, pp 103–106. doi:10.​1145/​602461.​602482
Zurück zum Zitat Granja-Alvarez JC, Barranco-García MJ (1997) A method for estimating maintenance cost in a software project: a case study. J Softw Maint 9(3):161–175CrossRef Granja-Alvarez JC, Barranco-García MJ (1997) A method for estimating maintenance cost in a software project: a case study. J Softw Maint 9(3):161–175CrossRef
Zurück zum Zitat Herraiz I, Cortazar DI, Hernández FR (2009) FLOSSMetrics: free/libre/open source software metrics. In: European conference on software maintenance and reengineering, vol 0, pp 281–284. doi:10.1109/CSMR.2009.43 Herraiz I, Cortazar DI, Hernández FR (2009) FLOSSMetrics: free/libre/open source software metrics. In: European conference on software maintenance and reengineering, vol 0, pp 281–284. doi:10.​1109/​CSMR.​2009.​43
Zurück zum Zitat Izurieta C, Bieman J (2006) The evolution of freebsd and Linux. In: Proceedings of the 2006 ACM/IEEE international symposium on empirical software engineering. ACM, p 211 Izurieta C, Bieman J (2006) The evolution of freebsd and Linux. In: Proceedings of the 2006 ACM/IEEE international symposium on empirical software engineering. ACM, p 211
Zurück zum Zitat Jørgensen M (1995) Experience with the accuracy of software maintenance task effort prediction models. IEEE Trans Softw Eng 21(8):674–681CrossRef Jørgensen M (1995) Experience with the accuracy of software maintenance task effort prediction models. IEEE Trans Softw Eng 21(8):674–681CrossRef
Zurück zum Zitat Jørgensen M, Shepperd M (2007) A systematic review of software development cost estimation studies. IEEE Trans Softw Eng 33(1):33–53CrossRef Jørgensen M, Shepperd M (2007) A systematic review of software development cost estimation studies. IEEE Trans Softw Eng 33(1):33–53CrossRef
Zurück zum Zitat Kemerer CF (1987) An empirical validation of software cost estimation models. Commun ACM 30(5):416–429CrossRef Kemerer CF (1987) An empirical validation of software cost estimation models. Commun ACM 30(5):416–429CrossRef
Zurück zum Zitat Li W, Henry S (1993) Object-oriented metrics that predict maintainability. J Syst Softw 23(2):111–122CrossRef Li W, Henry S (1993) Object-oriented metrics that predict maintainability. J Syst Softw 23(2):111–122CrossRef
Zurück zum Zitat Mockus A, Fielding RT, Herbsleb JD (2002) Two case studies of open source software development: apache and mozilla. ACM Trans Softw Eng Methodol 11(3):309–346CrossRef Mockus A, Fielding RT, Herbsleb JD (2002) Two case studies of open source software development: apache and mozilla. ACM Trans Softw Eng Methodol 11(3):309–346CrossRef
Zurück zum Zitat McCabe TJ, Butler CW (1989) Design complexity measurement and testing. Commun ACM 32(12):1415–1425CrossRef McCabe TJ, Butler CW (1989) Design complexity measurement and testing. Commun ACM 32(12):1415–1425CrossRef
Zurück zum Zitat Pfleeger SL (2001) Software engineering: theory and practice. Prentice Hall PTR, Upper Saddle River, NJ, USA Pfleeger SL (2001) Software engineering: theory and practice. Prentice Hall PTR, Upper Saddle River, NJ, USA
Zurück zum Zitat Putnam LH, Myers W (1991) Measures for excellence: reliable software on time, within budget. Prentice Hall Professional Technical Reference Putnam LH, Myers W (1991) Measures for excellence: reliable software on time, within budget. Prentice Hall Professional Technical Reference
Zurück zum Zitat Robles G (2010) Replicating msr: a study of the potential replicability of papers published in the mining software repositories proceedings. In: MSR, pp 171–180 Robles G (2010) Replicating msr: a study of the potential replicability of papers published in the mining software repositories proceedings. In: MSR, pp 171–180
Zurück zum Zitat Shull FJ, Carver JC, Vegas S, Juristo N (2008) The role of replications in empirical software engineering. Empir Softw Eng 13:211–218CrossRef Shull FJ, Carver JC, Vegas S, Juristo N (2008) The role of replications in empirical software engineering. Empir Softw Eng 13:211–218CrossRef
Zurück zum Zitat Sneed HM (1995) Estimating the costs of software maintenance tasks. In: ICSM ’95: proceedings of the international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, p 168CrossRef Sneed HM (1995) Estimating the costs of software maintenance tasks. In: ICSM ’95: proceedings of the international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, p 168CrossRef
Zurück zum Zitat Sneed HM (1997) Measuring the performance of a software maintenance department. In: CSMR ’97: proceedings of the 1st Euromicro working conference on software maintenance and reengineering (CSMR ’97). IEEE Computer Society, Washington, DC, USA, p 119CrossRef Sneed HM (1997) Measuring the performance of a software maintenance department. In: CSMR ’97: proceedings of the 1st Euromicro working conference on software maintenance and reengineering (CSMR ’97). IEEE Computer Society, Washington, DC, USA, p 119CrossRef
Zurück zum Zitat Sneed HM (2004) A cost model for software maintenance & evolution. In: ICSM ’04: proceedings of the 20th IEEE international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, pp 264–273 Sneed HM (2004) A cost model for software maintenance & evolution. In: ICSM ’04: proceedings of the 20th IEEE international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, pp 264–273
Zurück zum Zitat Sneed HM, Brössler P (2003) Critical success factors in software maintenance—a case study. In: ICSM ’03: proceedings of the international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, p 190CrossRef Sneed HM, Brössler P (2003) Critical success factors in software maintenance—a case study. In: ICSM ’03: proceedings of the international conference on software maintenance. IEEE Computer Society, Washington, DC, USA, p 190CrossRef
Zurück zum Zitat Sommerville I (2004) Software engineering, 7th edn. International computer science series, Addison Wesley Sommerville I (2004) Software engineering, 7th edn. International computer science series, Addison Wesley
Metadaten
Titel
Effort estimation of FLOSS projects: a study of the Linux kernel
verfasst von
Andrea Capiluppi
Daniel Izquierdo-Cortázar
Publikationsdatum
01.02.2013
Verlag
Springer US
Erschienen in
Empirical Software Engineering / Ausgabe 1/2013
Print ISSN: 1382-3256
Elektronische ISSN: 1573-7616
DOI
https://doi.org/10.1007/s10664-011-9191-7

Weitere Artikel der Ausgabe 1/2013

Empirical Software Engineering 1/2013 Zur Ausgabe

Premium Partner