I got a Bluetooth heating thermostat that I want to modify. The board has an ATmega 169PA, and I identified JTAG and ISP "connectors". They all look like those five round golden plates in the upper right of picture. Their distance is about 2.54 mm (0.1 inch) between each. Is there a name for those gold plates? How do you commonly connect a programmer (e.g. bus pirate) to those "plates"? (Preferably without soldering)
The way they are supposed to be used is with "pogo pins" (sharp spring loaded pins) mounted in a test fixture that holds the board in place against the pins. Such a fixture is known as a "bed of nails".
Great for production but kinda sucks for development. Building such a fixture for one-off use would be a lot of effort and may make access to the board for test probes difficult. Especially as those pads are nowhere near the mounting holes.
Solding wires to the pads is an option and probablly what I would do personally. I would go for 30AWG wirewrap wire, if the wires get accidently stressed you want it to be the wire or the solder joint that fails (as those are easy to replace), not the pad.
Depending on the physical constraints an option can be to glue a connector to an empty part of the board with hot glue or silicone rubber and then solder your wires between that connector and the pads.
You need to use pogo pins. You'll have to build some sort of holder or fixture to keep the spacing and possibly maintain tension.
If you are only trying to program it once, you can probably use your hand to hold it in place, but you'll need to use a piece of perf board, or drill your own plate to hold the pins in the correct spacing.
Another approach that I have seen used is to measure out all the alignments, then put the results in a 3D printer.
If you want the best solution, you'll need to measure your board and determine a way to clamp the programmer to the PCB in a way that is self-aligning.
This is sometimes referred to as a "bed of nails" like @PlasmaHH mentioned.