The Twelve-factor Applications

The twelve-factor app is a methodology for building software-as-a-service (SaaS) applications that:

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

The Twelve-factor Applications web sites synthesizes all of our experience and observations on a wide variety of software-as-a-service apps in the wild. It is a triangulation on ideal practices app development, paying particular attention to the dynamics of the organic growth of an app over time, the dynamics of collaboration between developers working on the app’s codebase, and avoiding the cost of software erosion.

Get more information on this http://www.12factor.net/