Great question. I don't have a clear answer but here are my 2 cents.
Riot has stated that they tend to balance champions based on their performance at high levels of play.
Riot has also stated that they want all champs to be healthy with plenty of depth and counter play.
If a champion is unbalanced or unhealthy there are three options.
The first and most preferred option is to change the numbers a bit and hope for the best.
The second and most effective option is a rework. Riot is much better at building champions now than when the game was first released. Poppy is an example of how great a rework can be. Fiora is an example of the risks of expending resources on a champion who is fundamentally flawed. Bulding a champion like Fiora (Tenatious tank melter unkillable in small skirmishes) without fundamentally changing her identity is a daunting task. Mistakes are bound to be made. Because Riot values balance and plenty of people play Fiora they could only do their best to keep her viable without being too op.
When a champion is fundamentally broken and a rework cannot be justified the only option remaining is to nerf them. This reduces the number of people playing the broken champion and hopefully still allows dedicated mains to play them without dominating.
Aside from direct balance issues they also need to keep in check the viability of roles, builds, runes, and masteries. A great way to prevent one role from ruling them all are balance triangles. Think ADC > Tank > Assassin > ADC. By balancing these, no matter what people play there is always something that can beat it. You can actually find these triangles everywhere from champs to objective priority and even your macro and micro game. By keeping these triangles in check then game balance can never fall apart too much.
The more i write the more i ramble. TLDR: Riot has a long term balance plan, however things don't always work out as intended. Be patient and stay calm. They will get it right eventually. Even if they don't the game won't fall apart unless they seriously screw up.