MW and OB each had it half-right. In MW, hitting was purely character skill, and damage was fixed by the weapon, with a bonus for strength. In OB, hitting was purely player skill, and damage was mainly a function of character skill.
In reality, hitting is a matter of attacker skill versus defender skill, and it doesn't take a lot of talent to plant an axe or knife into a block of wood, but hitting a dodging, parrying, or blocking opponent who's swinging back at you, without getting killed by doing so, is another matter entirely. The damage to a chunk of inanimate matter is largely dependent on the weapon and your strength, with skill playing a highly variable and hard to quantify role by allowing you to target specific weak points. Being defensive about it can sharply reduce the amount of damage you do.
One way of handling the game mechanics would be to compare the attacker's weapon skill with the defender's agility or dodge skill, and adjust the chance to hit by that. Depending on the margin of success or failure, you'd get anything from a complete "wiff" (Morrowind style, but rarer), with a nice animation of your character stumbling or twirling around as the weapon catches absolutely nothing, through stages of "glancing hit" or "weak hit", up to "solid hit" and "critical hit". The odds of getting better damage on average would increase with skill, but not be totally dependent on it, since a lucky or unfortunate swing could still net you a critical hit or a total failure. Most hits would be "normal", getting rated damage for the weapon type and character strength, with just enough better or worse hits based on skill to skew the overall noticably. Damage would typically have a maximum of the weapon's rating, plus a strength bonus, but be modified somewhat up or down by the margin of success/failure. That should allow the game to avoid the "one hit kill", without making a reasonably competent character swat some goblin 30+ times with a massive weapon before it finally falls down. The main point is to avoid "stupid" failures like in Morrowind, by allowing you to "manage" the difficulty, depending on what offensive or defensive actions you take. Trying harder things is more likely to result in failures until your skills allow you to do them well, where "sticking to basics" is less likely to "pay off big", but will generally allow you to do most tasks with a low failure margin.
By allowing the character to go more or less "ballistic", you could have added emphasis on player skills (both attacking and blocking) for a slight reduction in the character's defensive stats. In short, you'd have to play "smarter" just to break even, or else just let the character act "normally" and use the character's stats as-is.
In short, character skill should be the main factor, but player skill should allow you to "push" the character a little beyond normal in a pinch.
In FO3, being able to routinely headshot "insta-kill" just about any humanoid NPC with a BB gun was idiotic. My second character probably got more kills throughout his short career with that starting BB gun than with any other weapon, including the Sniper Rifle.