If you would rather use an external programmer for only an individual board, you can edit the boards.txt file in the hardware/ sub-directory of the Arduino application directory. Set the board.upload.using parameter to the identifier of one of the programmers in programmers.txt.
Thank You for your reply dc42.I got your point. Also, during prototype serial communication between PC and arduino may be needed. So instead of hooking up an ICSP cable and a Serial cable I can just do with a serial cable.
Also, please tell me if I do use a bootloader, can I just use a USB cable with DB9 on the other side (or female headers) to program and serially communicate or do I use some other kind of interfacing module?