Long casting times work for some spells. That's where my rituals come in. Go have a look at them, there are some of them in the Arcane thread in my signature, about four posts down.
They involve checks, and a casting time of 10 minutes per level.
However, this does not work for all spells. We always have to balance playability against fluff. And power balance isn't everything. Wizards need to have something to do every turn of combat, that's important. It can just be analysing monsters and giving helpful tactical tips, of course, but long casting times should stay far, far away from combat spells.
That's where preparation comes in. Preparing, after all, is pre-casting the spells you need to fire off quickly, later.
If we do checks, there should be an option to cast spells safely, though. Perhaps just at much lesser power, or only certain weak spells.
The division in my system is simple, four categories:
Cantrips: your basic nut and bolt spell. You can cast them as long as you have another spell prepared. Standard action to cast. These are the spells that you cast every turn.
Invocations: your stronger, limited combat spell. You prepare them ahead of time and lose them when you cast them. Can be interrupted easily while casting, as they take a full round. These are the spells that turn combat around when cast.
Mantras: your buff spells. You cast them ahead of time, and they stay up until you dismiss them or they get interrupted. A minute to cast.
Rituals: the spells you don't cast in combat. Everything from magical storms to teleports to calling extraplanar creatures to lichdom. These also have skill requirements, skill checks and the potential for (sometimes catastrophic) failure.
I do think it basically works. Though I do not use checks. What I did, instead, was limit the concentration skill to cantrips only. Other spells are interrupted automatically when the wizard takes damage.