Fact is, in in ideal world you use BOTH. Reason being that the ECU is a steady state device, it has tables that are basically just grids, where it sees @ 4000 RPM & 280% load it injects xxx volume of fuel and fires the spark at xx degrees before TDC, etc. On the dyno you can tune in steady state, which you can not do on the road, and is what the ECU wants.
However, in reality cars do not live in steady state, they are analog devices and the ECU is a digital one, as such the ECU is forced to interpolate between several cells in the map to obtain desired results. There is no substitute for real world testing. No matter how excellent a dyno may be, at the end of the say it is simulating (key word here) real world effects, and simulations, no matter how good they are, are never 100% accurate. As such all maps should be checked in real world conditions and tweaked if needed.
In an ideal world all cars would be dyno tuned, then finished on the road. However if you HAVE to choose between one or the other, go for a road tune, because even though it might not get every little bit out of the car, at least you know it is going to run well and safe where it matters most, in the real world.
There is a reason why OEM's tune on the engine dyno, then finish on the test track. Not just because they are bored.
