While developing custom web applications, developers have to make many changes to the content management system (CMS) to meet business needs precisely. In addition to being open source, Drupal is also designed as a customizable and extensible CMS. The developers can easily extend and customize Drupal's core functionality by using specific modules. At present, a developer has option to choose from over 38000 contributed modules for Drupal. At the same time, he also has option to write and share custom modules according to specific requirements.