• DevOps, Agile, Digital Transformation
  • Twitter: @ZenDevOpsIO
Search Menu

Designing For Change With 12-Factor Apps

12-Factor Apps

The 12-Factor App is a widely known best-practice for building software-as-a-service applications. However, even if you aren’t building software-as-a-service applications, there are a lot of benefits.

In fact, we are seeing huge benefits from applying 12-Factor principles to almost all of our applications, even applications that still run as services installed to Linux or Windows virtual machines. In a few conversations we’ve had with other developers lately, it has seemed a bit surprising that we are applying these principles to non-SaaS apps.

In thinking through what has made this beneficial for us, one thing stands out: the 12-Factor methodology helps you produce an app that is better-designed to handle change.

Designing for change is not a new concept, but often times when we think about designing software for change, it is probably most obvious to think about the internal structure of the application and how well it can be adapted to changing business needs.

But in this series, I would like to highlight a few other types of changes that may be less obvious, but are supported well by 12-Factor Apps:

  1. Human and Organizational Changes: Changes in the People and Organization that make or use the app.
  2. Technology Changes: Changes in the Technology used to build or execute the app.
  3. Run-time Changes: Changes in the Run-Time environment in which the app is executing.

I’ll discuss each of these more below and we’ll dive deeper later in this series.

This post is part of an ongoing series. Subscribe below to join our mailing list and never miss a post!

  • Want updates in your inbox?

    Use the form below to subscribe to the mailing list. You'll receive (very) occasional updates as we create awesome, relevant content.

    Your information is private. We'll never spam you. And you can unsubscribe at any time.



Eric Wyles

Hi, I'm Eric, founder, author, and editor at Zen DevOps. I am a software developer and architect who is passionate about digital transformation and sharing what I know. You can find more info about me on the About page of this site. Please feel free to reach out to me here or on social media. @ericwyles | LinkedIn

Leave a Reply

Notify of