Use the Dimensions sliders in the 3D view properties panel. Press N in the 3D view, or go to View -> Properties. To use the units you want, go to the Properties panel -> Scene -> Units panel. In your case, select "Metric". Then change the dimensions as needed. You type in the number followed by the units (you don't need a space between the number and units). In the screenshot below, I set the X and Y axes to 10cm so the cylinder ends are a circle with diameter 10cm.
For separate edges, you can't directly make an edge 10cm. For some edges, you can use vertex snapping to get what you what. In the example below, I used a plane instead of a single edge because it's easier to see.
So for a face in edit mode, you'd have to consider it as edges you have to resize and change your select mode to Edge Select.
Other notes about Dimensions:
- Note that 1 Blender unit ["None"] is equal to 1 meter. (Interestingly enough, this may not be right when 3D printing. When I tried it for the first time at my university, I found out that the machine I wanted to use read 1 Blender unit = 1 mm, so when I was using "Metric", 15 cm = 0.15 m = .15 Blender units = 0.15 mm, which is like microscopic. Got a good laugh out of that.)
- You can't type unit abbreviations when the units are set to "None".
- You can type imperial unit abbreviations even when you select "Metric", and vice versa. This can be handy when you need to convert units.
- Dimensions represent the bounding box of an object. So if you rotate an object in edit mode, the Dimensions won't reflect the object's actual dimensions.
- Dimensions are independent of scale, whether you Ctrl + A to Apply Scale or not.
- Dimensions are relative to Local axes. This can make things confusing, like if the cylinder in the first image was rotated 90 degrees in on the y axis, changing the X dimensions would make it seem like it's being scaled along the z-axis. Change the Transform orientation in the 3D view to "Local" if you need to.
See also this and this.