Review the provided code for the Rewards Program. Identify…
Review the provided code for the Rewards Program. Identify at least five issues related to: Consistency and naming conventions. Code smells and maintainability. Logical correctness and future adaptability. For each issue: Explain the problem clearly. Propose a concrete improvement. Suggest one test case for the calcSalary and one for employeeStatus methods to ensure proper functionality. public class SalaryCalculator { /** * Calculates the salary based on hourly wage and hours worked. * Applies a 10% bonus if more than 40 hours worked, and a 5% tax deduction. * * @param w Hourly wage * @param h Hours worked * @return Adjusted salary after bonus and tax deduction */ public double calcSalary(double w, int h) { double salary = w * h; if (h > 40) { salary = salary + (salary * 0.1); // 10% bonus for working more than 40 hours } salary = salary – (salary * 0.05); // 5% tax deduction return salary; } /** * Determines the employee’s status based on years of experience. * * @param e Number of years of experience * @return Employee status as “Junior”, “Mid”, or “Senior” */ public String employeeStatus(int e) { if (e > 10) { return “Senior”; } else if (e > 3) { return “Mid”; } else { return “Junior”; } } public void main(String[] args) { SalaryCalculator s = new SalaryCalculator(); double salary = s.calcSalary(25.0, 45); System.out.println(“Calculated Salary: ” + salary); String status = s.employeeStatus(8); System.out.println(“Employee Status: ” + status); }}