I am an android developer and I can honestly say that the permission system is not as ideal as we would like. Unfortunatley, there are many developers (mostly game devs) who will load up their permissions with a bunch of different stuff, then only use one or two. The reason for this is that most game devs use what is called an engine that they will use as the basis for multiple games. Rather than modifying the engine for every game, they will just make it as universal as possible. There are better ways to achieve this, but this is the easiest route and thus the one most devs tend to pick.
This makes things very difficult for the users because we cannot accurately asses whether the permissions are just there for the helluvit, or whether they are actually being used, likely for malicious purposes.
Another problem with the current permissions system is the wording of most permissions. Not only the wording, but also the category list and placement. permissions are generally vaguely worded, usually in a negative sense. A great example is the backup/restore permission brought up in this very thread. the permission has all kinds of legitimate uses, but the wording makes it sound very malicious, no matter what it is actually used for. Without context, it's impossible to tell.
These are only but a few of the problems with the current permissions system, something that Google is aware of and claims to be in the process of reworking.
My blog, Inverted Keystrokes
, is looking for aspiring developers (not necessarily with Android) to post articles. If you have any development experience and are interested in participating, please PM me. =)