Coding should include
creating one or more interfaces
providing an implementation (e.g., a concrete class) for one or more interfaces
demonstrating polymorphism by relying on interfaces rather than concrete implementations.