Skip to main content

Software Developer Activity as a Source for Identifying Hidden Source Code Dependencies

  • Conference paper
Book cover SOFSEM 2015: Theory and Practice of Computer Science (SOFSEM 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8939))

Abstract

Connections between source code components are important to know in the whole software life. Traditionally, we use syntactic analysis to identify source code dependencies which may not be sufficient in cases of dynamically typed programming languages, loosely coupled components or when multiple programming languages are combined. We aim at using developer activity as a source for identifying implicit source code dependencies, to enrich or supplement explicitly stated dependencies in the source code. We propose a method for identification of implicit dependencies from activity logs in IDE, mainly of switching between source code files in addition to usually used logs of copy-pasting code fragments and commits. We experimentally evaluated our method using data of students’ activity working on five projects. We compared implicit dependencies with explicit ones including manual evaluation of their significance. Our results show that implicit dependencies based on developer activity partially reflect explicit dependencies and so may supplement them in cases of their unavailability. In addition, implicit dependencies extend existing dependency graph with new significant connections applicable in software development and maintenance.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Antunes, B., Cordeiro, J., Gomez, P.: An Approach to Context-based Recommendation in Software Development. In: Proc. of the 6th ACM Conf. on Recommendation Systems, pp. 171–178. ACM (2012)

    Google Scholar 

  2. Bieliková, M., Návrat, P., Chudá, D., Polášek, I., Barla, M., Tvarožek, J., Tvarožek, M.: Webification of Software Development: General Outline and the Case of Enterprise Application Development. In: AWERProcedia Information Technology and Computer Science: 3rd World Conf. on Information Technology, vol. 3, pp. 1157–1162 (2013)

    Google Scholar 

  3. Bieliková, M., Polášek, I., Barla, M., Kuric, E., Rástočný, K., Tvarožek, J., Lacko, P.: Platform Independent Software Development Monitoring: Design of an Architecture. In: Geffert, V., Preneel, B., Rovan, B., Štuller, J., Tjoa, A.M. (eds.) SOFSEM 2014. LNCS, vol. 8327, pp. 126–137. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  4. Bird, C., Nagappan, N., Gall, H., et al.: Putting It All Together: Using Socio-technical Networks to Predict Failures. In: 20th Int. Symposium on Software Reliability Engineering, pp. 109–119. IEEE CS Press (2009)

    Google Scholar 

  5. Boehm, B.W., Brown, J.R., Lipow, M.: Quantitative Evaluation of Software Quality. In: Proc. of the 2nd Int. Conf. on Program Comprehension, pp. 592–605. IEEE CS Press (1976)

    Google Scholar 

  6. Coman, I.D., Sillitti, A.: Automated Identification of Tasks in Development Sessions. In: Proc. of 16th IEEE Int. Conf. on Program Comprehension, pp. 212–217. IEEE CS Press (2008)

    Google Scholar 

  7. Counsell, S., Hassoun, Y., Loizou, G., et al.: Common Refactorings, a Dependency Graph and Some Code Smells: An Empirical Study of Java OSS. In: Proc. of the ACM/IEEE Int. Symp. on Empirical Software Engineering, pp. 288–296. ACM (2006)

    Google Scholar 

  8. DeLine, R., Czerwinski, M., Robertson, G.: Easing Program Comprehension by Sharing Navigation Data. In: Proc. of the 2005 IEEE Symp. on Visual Languages and Human-Centric Computing, pp. 241–248. IEEE CS Press (2005)

    Google Scholar 

  9. Ebbinghaus, H.: Memory: A Contribution to Experimental Psychology. Ruger, H.A., Bussenius, C.E. (trans.) Teachers College, New York (1885/1913)

    Google Scholar 

  10. Fenton, N.E., Pfleeger, S.L.: Software Metrics: A Rigorous and Practical Approach, 2nd edn. PWS Pub. Co., Boston (1998)

    Google Scholar 

  11. Fritz, T., Murphy, G.C., Hill, E.: Does a Programmer’s Activity Indicate Knowledge of Code? In: Proc. of 6th Joint Meeting of the European Software Eng. Conf. and the ACM SIGSOFT Symp. on The Foundations of Software Eng., pp. 341–350. ACM (2007)

    Google Scholar 

  12. Kalliamvakou, E., Gousios, G., Spinellis, D., et al.: Measuring Developer Contribution from Software Repository Data. In: Proc. of the 4th Mediterranean Conf. on Information Systems, pp. 600–611 (2008)

    Google Scholar 

  13. Kersten, M., Murphy, G.C.: Using Task Context to Improve Programmer Productivity. In: Proc. of 14th ACM SIGSOFT Int. Symp. on Foundations of Software Eng., pp. 1–11. ACM (2006)

    Google Scholar 

  14. Polášek, I., Ruttkay-Nedecký, I., Ruttkay-Nedecký, P., Tóth, T., Černík, A., Dušek, P.: Information and Knowledge within Software Projects and Their Graphical Representation for Collaborative Programming. Acta Polytechnica Hungarica 10(2), 173–192 (2013) ISSN: 1785-8860

    Google Scholar 

  15. Robillard, M.P., Murphy, G.C.: Automatically Inferring Concern Code from Program Investigation Activities. In: Proc. of 18th IEEE Int. Conf. on Automated Software Engineering, pp. 225–234. IEEE CS Press (2003)

    Google Scholar 

  16. White, K.G.: Forgetting Functions. Animal Learning & Behavior 29(3), 193–207 (2001)

    Article  Google Scholar 

  17. Zimmermann, T., Nagappan, N.: Predicting Defects Using Network Analysis on Dependency Graphs. In: Proc. of 30th Int. Conf. on Software Engineering, pp. 531–540. ACM (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Konôpka, M., Bieliková, M. (2015). Software Developer Activity as a Source for Identifying Hidden Source Code Dependencies. In: Italiano, G.F., Margaria-Steffen, T., Pokorný, J., Quisquater, JJ., Wattenhofer, R. (eds) SOFSEM 2015: Theory and Practice of Computer Science. SOFSEM 2015. Lecture Notes in Computer Science, vol 8939. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-46078-8_37

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-46078-8_37

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-46077-1

  • Online ISBN: 978-3-662-46078-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics