The Twelve-Factor App, a Methodology for Building Web Apps


12Factor.jpg

Suggested by the designers of the Heroku PaaS platform, the twelve-factor methodology can be applied to apps written in any programming language, and which use any combination of backing services (database, queue, memory cache, etc). It is aimed at building Software-as-a-Service apps that:

  1. Use declarative formats for setup automation, to minimize time and cost for new developers joining the project;
  2. Have a clean contract with the underlying operating system, offering maximum portability between execution environments;
  3. Are suitable for deployment on modern cloud platforms, obviating the need for servers and systems administration;
  4. Minimize divergence between development and production, enabling continuous deployment for maximum agility;
  5. And can scale up without significant changes to tooling, architecture, or development practices.

More about the Twelve-Factor App