It sounds that you lean heavily on OOP methods.
I find OOP to be weak in the design stage. It does help later to simplify the code. But, only after you find out where the actual objects are. I prefer ERD for any modeling I might need in the design.
Older methods like structured design and data-structured design offer better guidence in the design stage. Too bad people look down on anything that is not OOP (or the newer hype FP).
The most useful method by far, however, is to recognize the shape of the problem, look for and apply a known solution.