Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Architecture CULTIVATE Plugin • Remove Bad Smells by appropriate Refactorings • Bad-Smell-Analysis • Visualization of Bad-Smells uses ConTraCT Plugin JTransformer Plugin • Editor for Conditional Transformations • Apply Refactorings Conditional Transformations JDT Plugin • Analysis + Transformation • Eclipse Java IDE • interface: logical Program.language • provides Abstract Syntax Tree • keeps representation synchron with Java Source uses for application Prolog Database Eclipse Framework with Plugin Concept Java Model Deltas Java Source Subject: Improvement of (OO-)Software What is essence of good (OO-)Software? comprehensible, maintainable, extendable modular, locality of change reusable, appropriate abstraciton How do I find out, if my code is good? Adherence of coding standards „bad smells“ Design Patterns („good smells“) (OO-)Software-Metrics to be implemented in the practical part („Analysis“) How do I improve my code? Manual Restructuring Predefined Refactorings of your IDE Editable Refactorings to be implemented in the practical part („Transformations“) Das CULTIVATE Plugin Purpose of the Plugins Improve the Java-Software with an interactive Tool for Programmanalysis and Refactoring-Support Tasks: analysis for „bad smells“ detection GUI Representation for the analysis detailed display for the each analysis appropriate refactorings, which remove the „bad smell“ glossary: Analysis: generic term for „bad smell“, Metrics, ... Conditional Transformation: Transformation with precondition Refactoring: Conditional Transformation, which preserves the behaviour of the Software