If you are designing a switch debounce circuit you need to consider the following factors:
(1) switch contact minimum current
Depending on the switch contact material, a cleaning current may be required- generally gold and carbon/composite contacts are suitable for zero current operation.
(2) Switch contact maximum current
It is unlikely that this value would be exceeded, but where a capacitor is connected across a switch, especially a high value capacitor, a large instantaneous current can flow and damage the switch contacts. With a low current switch this normally means punching through the gold flash on the contact to expose the non zero current material under the gold flash.
(3) maximum rise and fall time of input signal to logic family input
For all logic families, with the exception of the Schmidt trigger input types, there is a maximum rise and fall time which must not be exceeded. The reason for this is that between input logic voltage levels the chip is an amplifier which can oscillate and generate multiple output pulses and, in the extreme, destroy itself. For this reason only Schmidt input logic devices should be used with integrating (capacitor) debounce circuits. So for example, in the OP the integrating debounce switch should not be connected directly to the 74LS90 counter chip. Instead a Schmidt input device, 74LSxx14 or 74xx132 for example, should be used between the counter clock input and the switch. Care is also needed with software debounce schemes to ensure that the switch input to the system does not cause hardware problems. In most cases a mechanical switch does not generate an edge fast enough for most logic families.
(4) Behavior of debounce circuit with different button press duration
The clock output should be defined for all combinations of switch on/off durations
(5) Behavior of debounce circuit at power turn on and turn off
The circuit should not generate spurious clocks at power turn on or turn off.
(7) Flexibility
(7.1) Should be suitable for a single contact switch and not require change over switch as with some debounce circuits and should be suitable for both make and beak switches
(7.2) Up (supply rail) and down (0V) switching should be catered for.
(7.3) It should be possible to configure for a positive edge or negative edge clock output.
With good design the integrating debounce circuit will be adequate for most applications but item (1), (2), and (3) are not properly addressed on many debouce circuits, especially on the net.
Other debounce circuits for critical applications are:
(1) Schmidt trigger timed
(2) logic
(3) clocked
(4) dedicated chip (best where many switches are required)
This may seem strange but one of the least reliable and troublesome circuit function, in my experience, has been clock input switches. In one instance the spring loaded button on a piece of test equipment flew off and hit the test engineer in the eye- luckily it didn't do much damage.