Chapter 3. What’s the Pattern? Architecture, Pattern Languages, and Design

This chapter is split into two sections. The first introduces Christopher Alexander’s groundbreaking work on evolutionary growth versus big-bang projects. We also look at software design patterns, discuss the need for a pattern language specific to cloud native, and explain why having a pattern language increases the chance of a quick and successful transformation. In the second part, we discuss patterns themselves, how they are made, how they work—and our process for creating cloud native patterns for this book.

Architecture: “The complex or carefully designed structure of something.”

There is a reason that we apply the term “architecture” to both buildings and computer systems. The term describes a non-trivial system whose shape has come about through careful thought, imagination, and planning—also known as design.

In his book A Pattern Language, first published in 1977, Christopher Alexander consolidated decades of intelligent observation of architecture. He thoughtfully analyzed what works—and what does not—when we undertake to design and build human systems. Alexander points out that “right” architecture has nothing to do with classical beauty. Rather, it creates a structure that is comfortable and easy to use and maintain. It’s one that feels like a responsive, even living, place that supports and extends those who use it rather than constraining or frustrating them.

Alexander’s quality of “rightness” ...

Get Cloud Native Transformation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.