Why we don't change feature's module file in code?

A good reason you don't change any features module by hand, so you don't loose your work.  Ex if you changed the file and pushed it to dev and someone else is working on this site with the UI a new featrue module will be created without your work.  A feature module not like a custom or a contrib module because if someone working on a contrib or custom module and change a file and someone has already change this file on dev and you are trying to push it, you will get a conflict with this file and you will know that.  With the feature modules if you change any file and some one is working o

Using Different Versions of the Same Module

What do you do if one site requires a specific version of a module, while one of the other sites requires a different version of the same module?

Because of the way Drupal is constructed, you cannot install two versions of the same module in the sites/all/modules/ directory. Attempting to do this will lead to fatal errors or, even worse, subtle bugs that arise from certain loading errors.

RAD Methodology

RAD stands for rapid application development. With this methodology you use structured techniques, and prototyping to set your requirements, get prototypes quickly and use minimal planning. It's essentially one process that wraps several stages into one (requirements, design and possibly even the development processes.) It's close to the agile mathod but the main difference is the use of prototyping.