Though not speaking from experience it strikes me that having a prototype done with all the programming and game mechanisms worked out. Allows for better and quicker level design because you know how the enemies are going to react etc. and thus you can create more interesting levels that use the game mechanisms properly wehereas if you don't actually have the programming done you might find out that the things you planned don't work 'cos the programming doesn't work sa hoped etc. which would then require redesigning of levels.