At the core of all technical analysis theory are two very simple concepts: support and resistance. Support can be defined as a "floor" through which the currency pair has trouble falling below. There is no scientific formula for calculating support; it is something that is typically "eyeballed" by traders, and hence involves somewhat of a subjective element.
Resistance, on the other hand, is simply the opposite: it is the upper boundary through which a currency pair has trouble breaking. Similar to support, resistance levels are somewhat subjective. Generally, if the market reaches a certain number, a number of times and cannot sustain a break above that level; it can be identified as resistance.
The reason why price has trouble breaking these levels is the presence of actual orders around these levels. A support level is simply a price area where buy orders tend to be, and so it takes more than normal selling pressure to break that level. Similarly, a resistance level is a price area where sell orders tend to be, and so it takes more than normal buying pressure to break that level.