Skip to content

Infrastructure for the identification of dependency injection bad practices in open source projects

License

Notifications You must be signed in to change notification settings

rnlaigner/dianalyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DIAnalyzer

Software analysis for Java dependency injection anti-patterns.

Documentation & Instructions

The instructions and project documentation are found in the docs folder.

Prerequisites

Maven and JDK >= 8

Built With

  • Maven - Dependency Management
  • JavaParser - Parser for the Java language
  • RepoDriller - Java framework to support mining software repositories
  • Apache POI - Java API for Microsoft Documents
  • Google Guava - Google Core Libraries for Java
  • JUnit - Testing framework for Java and the JVM
  • GitHub API for Java - Library that defines an object oriented representation of the GitHub API

Authors

Reference

Please reference the following work when referring to DIAnalyzer:

@inproceedings{10.1145/3350768.3350771,
author = {Laigner, Rodrigo and Kalinowski, Marcos and Carvalho, Luiz and Mendon\c{c}a, Diogo and Garcia, Alessandro},
title = {Towards a Catalog of Java Dependency Injection Anti-Patterns},
year = {2019},
isbn = {9781450376518},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3350768.3350771},
doi = {10.1145/3350768.3350771},
booktitle = {Proceedings of the XXXIII Brazilian Symposium on Software Engineering},
pages = {104–113},
numpages = {10},
keywords = {inversion of control, java, catalog, anti-pattern, dependency injection, coupling, dependency inversion, modularization},
location = {Salvador, Brazil},
series = {SBES 2019}
}

@mastersthesis{LaignerMaster20,
  author    = {Rodrigo Nunes Laigner}, 
  title     = {Cataloging Dependency Injection Anti-Patterns in Software Systems},
  school    = {Pontifical Catholic University of Rio de Janeiro (PUC-Rio)},
  year      = {2020},
  doi = {https://doi.org/10.17771/PUCRio.acad.47298},
  url       = {https://www.maxwell.vrac.puc-rio.br/48681/48681.PDF}
}

Credits

Template

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

Infrastructure for the identification of dependency injection bad practices in open source projects

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages