In Capt. J. Doe saves the Universe I have a mini boss at wave 25, 50, and 75 plus a final boss at wave 100.
Since CJDstU is only one continual level I had to spawn them based on units of time, thus my wave system. Each "wave" is really nothing more than a timer that I can set that changes the wave (level) variable each pass.
My enemy spawners, and the wave clock are all set to shut off at those specific levels and restart when the boss is destroyed.
The key is finding what works best for your game and duct taping the heck out of it.