Yes, the rankings are suspect but BA plays in the airline ratings and awards playground along with many others, so it's fair game.
Maybe give it a 3.5* rating.
Short haul it categorically isn't 4* in any shape or form. For long haul the 4* rating might be more justifiable, at least if you're a higher level status holder travelling in a business or first cabin.
Anyway, comparing BA peer airlines in the 3* listing, either they are ranked too low or BA's ranking is too high.