These tools, written in J2ME MIDP, run on phones and other small-scale Java devices, to allow software developers understand the particulars of new devices. They quickly uncover aspects such as full class hierarchy, keypad constraints, and general specs.