Think ease of use.
You always have to start with what you want to achieve first.
And it can all be made simple - I want the weakest unit to kill the weakest player with 20 hits. I want the strongest unit to kill the strongest player with 10 hits. The rest is just curving the increments between them.
You can build any game on these two considerations alone. Anything else is just style.
Chasing individual numbers on individual pieces, without a good overall concept results in those games where you get so beefed up, nothing is a threat to your shiny armor, and any monster is just a tedium waiting to happen - a formality that you have to resolve by clicking on it to kill it.
Think of your maximum reduction - then you always know what the max possible is.
Then spread your reduction among your sources. These numbers almost fall in place themselves if you have the starting concept clear.
If you know 50% dr is the max you can have. You can easily split that between the sources. Say 50% (25%) to the armor, 15%(7.5%) to boots, 35%(17.5) to helmet. Round one up the other one down if you want to lose the decimals.
And group things, damage - or * (armor set 1) .... (armor set = the pieces) Its way easy to have configs that work with group attributes.
Now... people usually go for % multipliers because its easy. Slapping 50% damage reduction on something guarantees you get the same result even if you do 10 damage or 904004 damage. And its an easy shortcut in the original concept, put the good gear on - you die in 20 hits, take it off you die in 10.
If you really want to toy with damage reduction however you simply subtract damage and give flat damage reduction. You can scale it a lot better, and its portrayed more meaningfully to the player. If you ignore functionality - people would usually like to have 50'000 damage reduction as opposed to 50%. Then a guy can boast having 10'000 more than the other guy - instead of 0.7 percent.
Most designers don't bother and just slap some numbers to get along with the ride. Blizzard is known for actually planning ahead for their dps outputs. And that is much better seen in diablo 2 rather than 3. Even though diablo 2 has a bunch of useless modifiers the low end and the high end are done very comfortably.
If you can plan your dps scale. You can know your weakest unit will never be too weak, and your strongest unit will never be too strong.
Diablo 3 failed massively on damage progression when it first came out - it don't know how it is now but progression was horrid, the developing player hit a rock solid wall, they were unable to penetrate without being stuck in boring no challenge land for a long time. Whereas in diablo 2 you could get in the challenge areas and do some damage, but anything there could kill you in a couple of easy hits - so your play focused on controlling the field so you can soak your attackers with damage, without giving them much room to retaliate. That allows people who want a challenge, to try it. Everybody else who don't want hardship can always go back to the lower/safer/easier areas and re-grind - but being unable to challenge harder mobs due to the brick wall scaling of difficulty injects massive boredom into gameplay.
Few people really ever understand damage is all about pacing and threat.