Try this:
Roll 4d6, drop lowest, but keep the stats in order. Then base a personality upon the stats. Then choose class.
If you use a point buy, roll 1d6 for which stat to put each point into. Or 1d6 for each stat, then 1d6 for how many points. Repeat as needed. Then do the above (after the dice part, of course).
If you use the standard array (or some such), put a chit with each number in a hat and draw, in order.
If you're feeling really daring, roll for race, class, and alignment (and anything else you can think of), too. Discard impossible results, like a Wizard with an Int of 5 who, thus, can't cast spells -- but start from whole cloth if you have to do this. Also, keep sub-optimal results, like the Half-Orc Wizard with a 12 Int and 16 Strength.
If you want, I've still got the old Unearthed Arcana around and can roll for your social class and birth order.
After that, let the character develop normally. That half-orc wizard might multiclass into a Fighter, or not. Just give it a couple of levels and see what happens.
I've actually thought about doing this a couple of times, but there has always been a hole in the group's make-up, so I've let that determine my last couple of characters.