No, no mix-up will happen... once the USB/serial/arduino has the firmware uploaded... you are free to use the Serial port/usb as a program communication path between arduino and PC.
You can use the serial port to communicate between Arduino and the PC without any problems.
You only use the serial port to download the program to the Arduino port for a few seconds, then the program run and you can use the port for communicating with another program on the PC.
if the power is cut off, does our program stay in the board.
Yes, and it restarts from the beginning of the program when power is reapplied. There is no need for the Arduino IDE program to be running for this restart option, just plugged into the USB port for power or use external power applied to the external power jack on the Arduino board and you don't need the PC at all.
There could be some more io but you can't get everything.
For curious:
A friend of mine is going to write some pc programs reading and writing usb com port. And my job is to handle some hw devices with usb/serial data.
Sounds like a plan to me. Oh and if you find you are getting short of I/O pins just jump on the new Arduino Mega board and all your existing programming can still be utilized as 54 I/O pins should hold you for a while then