Change: Changed Metrics XML Structure
Change: Used the Extract Method(http://refactoring.com/catalog/extractMethod.html) on statement() of Customer Class; Changed Variable names according to Fowler; Updated Metrics and Class Diagram
Change: Used Move Method Refactoring(http://refactoring.com/catalog/moveMethod.html) on amountFor() of Customer; Updated Metrics and Class Diagramm;
Bad Smell: Resolved the Feature Envy of the amountFor() Method by using Move Method in this Step
Change: Removed the Temp thisAmount with the Replace Temp with Query Refactoring (http://refactoring.com/catalog/replaceTempWithQuery.html); Updated Metrics;
Change: Used the Extract Method(http://refactoring.com/catalog/extractMethod.html) on statement() of Customer Class to extract Code For Frequent Renter Points;
Change: Used Move Method Refactoring(http://refactoring.com/catalog/moveMethod.html) to move Extracted Code To Rental; Updated Metrics and Class Diagramm;
Bad Smell: Resolved the Feature Envy of the getFrequentRenterPoints() Method by using Move Method in this Step
Change: Removed the Temp totalAmount with the Replace Temp with Query Refactoring (http://refactoring.com/catalog/replaceTempWithQuery.html); Updated Metrics and Class Diagram;
Change: Removed the Temp frequentRenterPoints with the Replace Temp with Query Refactoring (http://refactoring.com/catalog/replaceTempWithQuery.html); Updated Metrics and Class Diagram;
Change: Used Move Methode(http://refactoring.com/catalog/moveMethod.html) to move getCharge() and getFrequentRenterPoints() to Movie according to Fowler; Updated Class Diagram and Metrics
Change: Used Self Encapsulate Field(http://refactoring.com/catalog/selfEncapsulateField.html) to unify access to priceCode Field; Updated metrics;
Bad Smell: First step in removing the Case Statement
Change: Used "Replace Type Code with State/Strategy" Refactoring(http://refactoring.com/catalog/replaceTypeCodeWithStateStrategy.html); Updated Metrics and Class Diagram
Add: New Type Classes according to Refactoring
Bad Smell: Second Step in removing Case Statement
Change: Used "Move Method"(http://refactoring.com/catalog/moveMethod.html) to move getCharge from Movie to Price; Updated Metrics and Class Diagram
Change: Used "Replace Conditional with Polymorphism" Refactoring on getCharge to remove switch Statement; Updated Metrics and Class Diagram
Bad Smell: This and the last commit are the last two steps in removing the Case Statement from getCharge
Change: Added Type argument to Vector of customer to get Correct Class Diagram;
Change: Used "Move Method"(http://refactoring.com/catalog/moveMethod.html) to move getFrequentRenterPoints from Movie to Price; Updated Metrics and Class Diagram;
First Step in removing Conditional Statement from getFrequentRenterPoints;
Change: Used "Replace Conditional with Polymorphism" Refactoring on getFrequentRenterPoints to remove if ; Updated Metrics and Class Diagram
Bad Smell: The last step to remove the Conditional from getFrequentRenterPoints