Bike rental exercise for Intive-FDV
Design: I have chosen the Strategy pattern as the main design point for this problem, since it fits the specifications of the pattern: the variations of the rent behavior can be determined at run time, this pattern also make it simple to scale the API, since new variations can be executed as new implementations of the underlying interface.
Development Practices: The main development practices I've used were OOP and the SOLID principles, starting from the design since the problem was really small and this were good enough to solve it.
How to run the test: The project was developed using Maven so the quickest way to run the test is running the command "mvn test".