Well, I don't think they're fired out like human cannonballs.
"BLast! Missed again! OK, Private, into the tube, and try not to throw off my aim with that panicked flailing!"
I hadn't given it much thought but I'd been assuming some kind of boarding tackle was being employed. It certainly should have a chance to miss/not grab properly/whatever, but things haven't struck me as being particularly unbalanced as they are.
That's with boarding, that is. As for ramming, I agree there should be a chance for the targeted ship to dodge and that basing it on comparative speed and agility would be the way to do it.
I usually use ramming as a way for those ships which are obviously not going to make it another turn to get a bit of pre-emptive revenge on their opponents. I've thought several times about how illogical it is for a ship which is down to its Last sputtering drive unit to be unfailingly able to successfully close and ram into a fully mobile enemy.
I do like the fact that the amount of damage a ship has taken is considered in how much damage it does when ramming, however.