Why should it be a "last resort"? What would be a "good enough" reason to use SoftwareSerial?
The only good enough reason is that you have absolutely no other option. SoftwareSerial blocks the Arduino for long periods with interrupts disabled which poses lots of problems if you have to deal with hardware that needs a reaction within some time. And it works reliably only up to about 9600 baud, above that you need a very tolerant communication partner because the timing gets quite lousy and I never reached anything above 38400 baud even not with adapting hardware.
So SoftwareSerial is really only a method of absolutely last resort.
The OP should build its hardware so that it's easy to disconnect the bluetooth module or use an ICSP programmer to update sketches.