What is transliteration?

Transliteration consists in representing the characters of a given script by the characters of another, while keeping the operation reversible. The use of diacritics or digraphs solves the problem of different number of characters between the alphabets of the two writing systems.
The main goal of this conversion operation is to enable the automatic and unambiguous recreation of the original (which is also known as retroconversion). In a word, the transliteration of a transliterated text should return the original text. This is why standards are used, like ISO.
Romanization (or Latinization) is the transliteration of a non-Latin script into a Latin script.

What is it used for?

Transliteration is particularly used by libraries or for the processing of textual data.
When a user performs a search or indexes content, the transliteration process can find the information written in a different alphabet and returns it into the user’s script.
Transliteration also enables the use of a keyboard in a given script to type in a text in another one. For example, it is possible with this technique to use a qwerty keyboard to type text in Cyrillic.