Field programming is important in this market. Having multiple choices helps. Some products both from Atmel and from others, have a bootloader we cannot reprogram that using strap pins allows you to pick usb or serial or other. Some just try to detect what you want to do, and others you only get one choice, jtag for example, or serial.
I like the AVR solution in that the processor is held in reset, so if you (me) do something stupid (yep, been there done that) and hang the processor (say you enable clocks from the pll without correctly configuring the pll), or you reconfigure the wrong gpio pins to find those were the pins you needed for the programming interface. Well you may end up with a bricked board or chip. Holding the processor in reset at least protects us from our self.
The programming interface is well documented. The xmegas or the one I played with uses a completely different interface than the tinys and such. The smaller ones it is just SPI and you can take your time, put the thing in reset, could use toggle switches and flip them by hand if you wanted. The xmega the timing is critical, you wait to long and the chip goes out of programming mode. (it is not spi) Either case it is well documented.
You can use the off the shelf solutions and use avrdude or whatever, but these interfaces are simple, and you can use anything you can generate spi with (other microcontrollers, a raspberry pi, any ftdi part/board with mpsse instructions and the pins exposed, whatever). And developing your own is not a difficult task. Educational, and perhaps in your production line you may or may not want to use avrdude, or maybe you cant for some reason.
Yes, this AVR ISP interface can be used to program a bootloader or any application you want. You do not have to do one thing with one interface then the other with a different interface.
Why use another bootloader then? Well a serial bootloader could use as little as one pin or two, or three if you want a strap or in the case of arduino they use a third one to reset the chip then send something before the bootloader hands off to the application.
So sometimes you want to use serial in your design for field programming, reduce the pins or that is just your preferred thing. You may want jtag, you may want usb or in this case use the AVR ISP all the time. Some chips allow you to erase/write flash blocks while running on a flash block, meaning you can write your own bootloader using whatever protocol you want. Which is what the Arduino folks did, they claim to support some protocol, but look at their bootloader code to see the truth.
Whether you use off the shelf hardware and software or do your own, this AVR ISP interface is probably the way to go for put it in a fixture and program then plug in a socket and go, one burn and done. Esp, if you do end up with a bug in the software you can go back to the programmer and reprogram. Erased and not erased flashes are equally supported.
So the bottom line is about freedom to choose. Program in a fixture then move the part, program in place, RE-program in place, speed of programming, pins required, software requirements, programming fixture hardware/software/cost requirements. There is not one solution that makes everyone happy. So the vendor provides one or two or three solutions, then you can sometimes add your own on top of that.
BUT, you should have read the documentation from the chip vendor for the product you were interested in, they all provide programming information, without that documentation that product is a failure because nobody would be able to use it in a production line. Not our job to read the docs for you.