OO and inheritance can be brittle when you get new features that affect a wider amount of existing code. If you're only adding stuff on incrementally, you can conceivably add new classes for all of it and not worry about working with the existing code (usually you likely have some business classes that are basically starting primitives for new features, e.g. Customer).
As it gets more brittle, it gets harder to add those spanning features, especially if it's not clear what features will be asked for.
As it gets more brittle, it gets harder to add those spanning features, especially if it's not clear what features will be asked for.