I've experimented with a number of ways of implementing shields in the combat system I use. The most obvious way, subtracting 5 from your Combat Penalty, just doesn't give enough of a benefit, particularly if you are a "walking tank".
I've played using a 50/50 rule. That is, for any attack roll, there is 50% chance that the attack hits the shield.
I've never been thrilled with that approach.
The one that makes the most game sense to me is to treat the shield as a weapon. That is, fighting with a shield is not unlike fighting with two weapons. However, rather than require the "Two Weapon Fighting" Feat, it requires a proficiency in shield usage. A member of the Fighter Class automatically gets proficiency in light, medium, and heavy shield use. Rogues are limited to light shield use, which requires a proficiency.
Normal non-proficiency penalties apply.
Here is a table for Shield Weights, combat values, and such.
The first column lists the weight of the shield, which is added to the user's combat penalty. The second column gives the combat value of the shield, which counters the weight. A small leather shield will give an opponent +5% to hit you because of the weight of the shield, but -10% to hit because of the combat value of the shield, resulting in a net combat value of +5%.
The leather shield has an AC value of 8. Using the shield does not affect your attack with your weapon hand. The shield provides partial cover against ranged attacks. It offers no bonus to a Bull Rush. Using the shield as a weapon, the shield has a -15 damage modifier.
Lets go to our character Sebastiano. He had a Combat Rating of 27, and a Combat Penalty of 3. He is going to use a medium wooden shield. The 15 pounds of weight brings his Combat Penalty to 18. However, the shield has a combat value of 15, which is added to his Combat Rating. Defending with his shield gives him a Combat Rating of 27 + 15, or 42. He subtracts this from his combat Penalty, for a new Combat Penalty of -24.
When defending with a shield, any attack that "misses" the defender automatically hits the shield. The shield mitigates any damage to the defender.
Example: A Hill Giant a Combat Rating of 40 takes a swing at Sebastiano. Without a Shield, Sebastiano has a Combat Penalty of -3. The Giant would have to roll a 37 or lower to hit.
Instead, Sebastiano uses his shield, with a new Combat Penalty of -24. The Giant must now roll a 16 or less to hit.
The Giant rolls a 30, a "miss". The blow strikes the wooden shield. The Giant rolls for damage. He wields a club 2 handed, and has a +11 damage modifier. The giant rolls a d10, and gets a 5. 5 + 11 is 16. The table below is consulted, and the damage reduced accordingly.
16 damage against a wooden shield reduces the damage roll to 3. The standard damage table is consulted, as well as the hit location table. A roll of 47 indicates a hit to the upper left arm, which is protected by AC8 leather. A 3 against AC8 does 9 points of damage.
Had he not had a shield, he would have taken 19 points damage to the same location.