SRP,DIP and Test cases added