I think it's a good tactic for these franchises. They really don't need more than one per gen. These games always hold the attention of their audience and retain quality throughout their console's lifespan, so it makes sense.
This can also answer why Nintendo games tend to be more expensive than games on other consoles... Nintendo games are meant to sell throughout the consoles life cycles and in many cases beyond it (Nintendo STILL Publish, Mario Kart Wii, Super Smash Bros. Brawl, and Mario Kart DS), while many other games are only meant to sell throughout a year's span before the latest version of that game comes out (CoD and AC games are a good example of this). Plus their games are actually complete and not rushed unlike the two games I just mentioned.