Building and maintaining analysis-level class hierarchies using Galois Lattices
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Software metrics (2nd ed.): a rigorous and practical approach
Software metrics (2nd ed.): a rigorous and practical approach
AntiPatterns: refactoring software, architectures, and projects in crisis
AntiPatterns: refactoring software, architectures, and projects in crisis
Refactoring: improving the design of existing code
Refactoring: improving the design of existing code
Understanding class hierarchies using concept analysis
ACM Transactions on Programming Languages and Systems (TOPLAS)
Object-Oriented Design Heuristics
Object-Oriented Design Heuristics
A Concept Formation Based Approach to Object Identification in Procedural Code
Automated Software Engineering
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Object Oriented Design Pattern Inference
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
CodeCrawler - Lessons Learned in Building a Software Visualization Tool
CSMR '03 Proceedings of the Seventh European Conference on Software Maintenance and Reengineering
TOOLS '01 Proceedings of the 39th International Conference and Exhibition on Technology of Object-Oriented Languages and Systems (TOOLS39)
Using History Information to Improve Design Flaws Detection
CSMR '04 Proceedings of the Eighth Euromicro Working Conference on Software Maintenance and Reengineering (CSMR'04)
Detection Strategies: Metrics-Based Rules for Detecting Design Flaws
ICSM '04 Proceedings of the 20th IEEE International Conference on Software Maintenance
Recovering binary class relationships: putting icing on the UML cake
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A reverse engineering tool for precise class diagrams
CASCON '04 Proceedings of the 2004 conference of the Centre for Advanced Studies on Collaborative research
Refactoring " Improving Coupling and Cohesion of Existing Code
WCRE '04 Proceedings of the 11th Working Conference on Reverse Engineering
Automatic Generation of Detection Algorithms for Design Defects
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
Using FCA to suggest refactorings to correct design defects
CLA'06 Proceedings of the 4th international conference on Concept lattices and their applications
Formal concept analysis-based class hierarchy design in object-oriented software development
Formal Concept Analysis
Normalized-scale Relations and Their Concept Lattices in Relational Databases
Fundamenta Informaticae
Supporting ontology design through large-scale FCA-based ontology restructuring
ICCS'11 Proceedings of the 19th international conference on Conceptual structures for discovering knowledge
An exploratory study of the impact of antipatterns on class change- and fault-proneness
Empirical Software Engineering
Normalized-scale Relations and Their Concept Lattices in Relational Databases
Fundamenta Informaticae
Relational concept analysis: mining concept lattices from multi-relational data
Annals of Mathematics and Artificial Intelligence
Review: Formal Concept Analysis in knowledge processing: A survey on models and techniques
Expert Systems with Applications: An International Journal
Hi-index | 0.00 |
Software engineers often need to identify and correct design defects, i.e., recurring design problems that hinder development and maintenance by making programs harder to comprehend and/or evolve. While detection of design defects is an actively researched area, their correction- mainly a manual and time-consuming activity- is yet to be extensively investigated for automation. In this paper, we propose an automated approach for suggesting defect-correcting refactorings using relational concept analysis (RCA). The added value of rca consists in exploiting the links between formal objects which abound in a software re-engineering context. We validated our approach on instances of the Blob design defect taken from four different open-source programs.