I just did it for consistency since Ruby doesn't have interfaces. In my opinion, if you define a method in the base class that you want to be overridden, I think it's good to provide the expected signature so subclasses know what to implement.