My first game was 5 levels and the game I am working on now is only 3.
However, those 3 levels have several objectives that reuse the same areas which makes for longer play per level.
The time it takes to complete a game depends on the user's skill, and the difficulty level of the objectives and gameplay.
The levels can be numerous while being easy, or you can have fewer levels that are more complex and still get the same amount of gameplay.
People like me, who are limited with the texturing, have to reuse the same areas to minimize the amount of media to create.
I spend more time on scripting and making other elements like death cards, minimaps, etc. than I do creating segments.
It all depends on your plot and as to how much you want to show off your artistry skills with all of you custom content.
Post Script
Remember, a game can be only one level and still be entertaining. (wait til next x-mas for my satan claus game)
Also, with no limit on the spawns and no clear objective; a shooting spree could be virtually infinite. (until the player surrenders...lol...or dies)