Conference Proceedings «Previous Next»

Effects of Dependency Injection on Maintainability

Ekaterina Razina, Intuit, Inc.
David S. Janzen, California Polytechnic State University - San Luis Obispo

Article comments

Copyright © 2007 IASTED. Published by Acta Press: Anaheim, CA.

Abstract

Software maintenance consumes around 70% of the software life cycle. Improving software maintainability could save software developers significant time and money. This paper examines whether the pattern of dependency injection significantly reduces dependencies of modules in a piece of software, therefore making the software more maintainable. This hypothesis is tested with 20 sets of open source projects from sourceforge.net, where each set contains one project that uses the pattern of dependency injection and one similar project that does not use the pattern. The extent of the dependency injection use in each project is measured by a new Number of DIs metric created specifically for this analysis. Maintainability is measured using coupling and cohesion metrics on each project, then performing statistical analysis on the acquired results. After completing the analysis, no correlation was evident between the use of dependency injection and coupling and cohesion numbers. However, a trend towards lower coupling numbers in projects with a dependency injection count of 10% or more was observed.

Suggested Citation

Ekaterina Razina and David S. Janzen. "Effects of Dependency Injection on Maintainability" Proceedings of the 11th IASTED International Conference on Software Engineering and Applications: Cambridge, MA.. Nov. 2007.
Available at: http://works.bepress.com/djanzen/11