Historically, for Indian languages, InScript keyboard was designed as a layout that can be directly mapped to the available keys in the keyboard. The Inscript standard went through a revision in 2010 to accommodate more characters that were added later to unicode and also to fix several usability issues and bugs. It also aimed to add Rupee symbol(₹) to the keyboard. But this revision, known as Enhanced InpScript specification had several issues for Malayalam, and we pointed out them to CDAC who were designing it. Mainly it broke the backward compatibility with previous version. Remember that, by 2010, students in Kerala schools started learning Inscript. So it raised the issue of relearning the changed key positions. As more characters were added to unicode Malayalam codeblock, to accommodate some of them, a third layer was introduced in Inscript Malayalam.
According to TDIL, the layout of inscipt is chosen for the following rationale: "This layout uses the standard QWERTY 101 keyboard. The mapping of the characters is such that it remains common for all the Indian languages (written left to right). This is because of the fact that the basic character set of the Indian languages is common. The vowels are divided into long and short vowels and the consonants are divided into vargs. The INSCRIPT layout takes advantage of these facts and thus the organization is simple. Due to the phonetic nature of the keyboard, a person who knows typing in one Indian script can type in any other Indian script. The logical structure allows ease in learning. In the Inscript keyboard layout, all the vowels are placed on the left side of the keyboard layout and the consonants, on the right side. The placement is such that the characters of one varg are split over two keys. The splitting of the word into keystrokes is based on the phonetic spelling of the word. The sequence required for typing a word is same as the sequence in which the characters of the word are pronounced."
CDAC did not finalize or release this version officially till 2016. Some operating systems started adding this input method specification since support for Rupee sign was important. In 2016, Enhanced Inscript became BIS IS 16350:2016 standard.
Because of the quasi-official status of Inscript, it is taught as part of Malayalam typing training, but some teach old version of Inscript, some teach new version and complaints about key position change is common. The usability issues and learning effort makes it less attractive. Occassionally I see people customizing the key layout(Example: Peruma -A Malayalam Inscript Keyboard for Windows). Interestingly, the customized keyboards are called with same name Inscript to add more confusion.