Materials & References

Materials about tools, recommended books and scientific papers to improve your programming skills

DR-Tools Materials Academic Works How to cite? Recommended Books References about Metric Thresholds

Materials about DR-Tools /

# Description Date Idiom
DR-Tools-Heuristics.pdf Metric Heuristics Analysis february, 2020 English
DesignCodigo_Metaforas_TrilhaDesignCodigo.pdf With Alessandro Dias, presentation about metaphors and code design (The Developers Conference 2019, tracks Code Design and Extreme Programming) december, 2019 Portuguese
DR-Tools-Definition-Thresholds.pdf Metric definition and thresholds december, 2019 English
DR-Tools-Tudo.pdf drtools-metric and visualization presentation december, 2019 Portuguese
DR-Tools-Heuristicas.pdf Metric Heuristics Analysis october, 2019 Portuguese

Academic Works /

Title Authors Venue Date
DR-Tools: a suite of lightweight open-source tools to measure and visualize Java source code Guilherme Lacerda (Unisinos/UFRGS - Brazil), Fabio Petrillo (UQAC - Canada), and Marcelo Pimenta (UFRGS - Brazil) 36th IEEE International Conference on Software Maintenance and Evolution, Tool Demo Track (ICSME2020) september, 2020
Code Smells and Refactoring: A Tertiary Systematic Review of Challenges and Observations Guilherme Lacerda (Unisinos/UFRGS - Brazil), Fabio Petrillo (UQAC - Canada), Marcelo Pimenta (UFRGS - Brazil), and Yann Gaël Guéhéneuc (Concordia University - Canada) Journal of Systems and Software (JSS) may, 2020

How to cite? /

To cite DR-Tools Suite, use the following bibtex entry:
                
                    @manual{drtools:2020,
                        title={DR-Tools Suite},
                        author={Guilherme Lacerda},
                        year={2020},
                        note={available in http://drtools.site/}
                    }   
                
            

Recommended Books /

Books
Beck, K. Test-Driven Development: By Example. Addison-Wesley, 2003.
Beck, K. and Andres, C. Extreme Programming Explained: Embrace change (2nd edition), Addison-Wesley, 2004.
Beck, K. Implementation Patterns, Addison-Wesley, 2007.
Block, J. Effective Java – 2nd edition. Addison-Wesley, 2008.
Evans, E. Domain-Driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley, 2004.
Feathers, Michael. Working effectively with Legacy Code. Prentice Hall, 2004.
Fowler, M., Beck, K., Brant, J., Opdyke, W., and Roberts, D. Refactoring: Improving the Design of Existing Code. Addison-Wesley, 1999.
Fowler, M. Refactoring: Improving the Design of Existing Code. Second Edition, Addison-Wesley, 2019.
Fowler, M. Domain-Specific Languages. Addison-Wesley, 2011.
Gamma, E., Helm, R., Johnson, R., and Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994.
Hunt, A. and Thomas, D. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley, 1999.
Kerievsky, J. Refactoring to Patterns. Addison-Wesley, 2004.
Lanza, M. and Marinescu, R. Object-Oriented Metrics in Practice: Using Software Metrics to characterize, evaluate, and improve the Design of Object-oriented Systems. Springer Verlag, 2010.
Martin, R. C. and Martin, M. Agile Principles, Patterns, and Practices in C#. Prentice Hall, 2007.
Martin, R. C. Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall, 2008.
Martin, R. C. The Clean Coder: A Code of Conduct for Professional Programmers. Prentice Hall, 2011.
Martin, R. C. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall, 2017.
Poppendieck, M. and Poppendieck, T. Lean Software Development: An Agile Toolkit. Addison-Wesley, 2003.
Poppendieck, M. and Poppendieck, T. Implementing Lean Software Development: From concept to cash. Addison-Wesley, 2006.
Poppendieck, M. and Poppendieck, T. Leading Lean Software Development: Results are not the point. Addison-Wesley, 2009.
Tornhill, A. Your Code as a Crime Scene: Use Forensic Techniques to Arrest Defects, Bottlenecks, and Bad Design in Your Programs. The Pragmatic Programmers, 2015.
Tornhill, A. Software Design X-Rays: Fix Technical Debt with Behavioral Code Analysis. The Pragmatic Programmers, 2018.
Visser, J. Building Maintainable Software, Java Edition: Ten Guidelines for Future-Proof Code. O'Reilly Media, 2016.
Wake, W. C. Refactoring Workbook. Addison-Wesley, 2003.

References used to Metric Thresholds /

References
Danijel Radjenović, Marjan Heričko, Richard Torkar, Aleš Živkovič, Software fault prediction metrics: A systematic literature review, Information and Software Technology, Volume 55, Issue 8, 2013
Mariza A.S. Bigonha, Kecia Ferreira, Priscila Souza, Bruno Sousa, Marcela Januário, Daniele Lima, The usefulness of software metric thresholds for detection of bad smells and fault prediction, Information and Software Technology, Volume 115, 2019
T. Filo, M. Bigonha, and K. Ferreira, A catalogue of thresholds for object-oriented software metrics, in Advances and Trends in Software Engineering, 2015 The First International Conference on. IARIA, 2015
Kecia A.M. Ferreira, Mariza A.S. Bigonha, Roberto S. Bigonha, Luiz F.O. Mendes, Heitor C. Almeida, Identifying thresholds for object-oriented software metrics, Journal of Systems and Software, Volume 85, Issue 2, 2012
Rangasamy, R.Selvarani & Nair, T.R. & Ramachandran, Muthu & Prasad, Kamakshi. Software Metrics Evaluation Based on Entropy. Handbook of Research on Software Engineering and Productivity Technologies: Implications of Globalization, 2010
Robert C. Martin and Micah Martin. 2006. Agile Principles, Patterns, and Practices in C# (Robert C. Martin). Prentice Hall PTR, Upper Saddle River, NJ, USA
P. Oliveira, M. T. Valente and F. P. Lima, Extracting relative thresholds for source code metrics, 2014 Software Evolution Week - IEEE Conference on Software Maintenance, Reengineering, and Reverse Engineering (CSMR-WCRE), Antwerp, 2014
G. Vale, A benchmark-based method to derive metric thresholds, Master's Dissertation, UFMG, 2015
E. Lima, A. Resende, T. Lethbridge, The Uncomfortable Discrepancies of Software Metric Thresholds and Reference Values in Literature, ICSEA 2016 : The Eleventh International Conference on Software Engineering Advances, 2016
Checkstyle - Size Violations. https://checkstyle.sourceforge.io/config_sizes.html, 2019