5 Best Hikes at Bryce National Park

Bryce Canyon National Park is a smaller national park located two hours north of its far more famous neighbor, Zion National Park. Bryce Canyon is famous for its orange-colored hoodoos carved out of…

Smartphone

独家优惠奖金 100% 高达 1 BTC + 180 免费旋转




Aiming for Quality Assurance

Release It! Second Edition — Pragmatic Programmers (124 / 143)

👈 Countdown and Launch | TOC | Load Testing 👉

To understand why the site crashed so badly, so quickly, we must take a brief look back at the three years leading up to that point.

It’s rare to see such a greenfield project, for a number of good reasons. For starters, there’s no such thing as a website project. Every one is really an enterprise integration project with an HTML interface. Most are an API layer over the top of back-end services. This project was in the heyday of the monolithic “web site” on a commerce suite. It did 100 percent server-side rendering.

When the back end is being developed along with the front end, you might think the result would be a cleaner, better, tighter integration. It’s possible that could happen, but it doesn’t come automatically; it depends on Conway’s law. The more common result is that both sides of the integration end up aiming at a moving target.

In a Datamation article in 1968, Melvin Conway described a sociological phenomenon: “Organizations which design systems are constrained to produce designs whose structure are copies of the communication structures of these organizations.” It is sometimes stated colloquially as, “If you have four teams working on a compiler, you will get a four-pass compiler.”

Although this sounds like a Dilbert cartoon, it actually stems from a serious, cogent analysis of a particular dynamic that occurs during software design. For an interface to be built within or between systems, Conway argues, two people must — in some fashion — communicate about the specification for that interface. If the communication does not occur, the interface cannot be built.

Note that Conway refers to the “communication structure” of the organization. This is usually not the same as the formal structure of the organization. If two developers embedded in different departments are able to communicate directly, that communication will be mirrored in one or more interfaces within the system.

I’ve since found Conway’s law useful in a proscriptive mode — creating the communication structure that I wanted the software to embody — and in a descriptive mode — mapping the structure of the software to help understand the real communication structure of the organization.

Add a comment

Related posts:

Grabbing pictures from Instagram

6. Usually an average page features about 100–150 images, but you can easily thumb though all of them and find the one you’re looking for in like 10 secunds. Here’s the picture of the cat I’m looking…

Exploring Different Cameras

You may have noticed that we call our camera a PerspectiveCamera. If that name seems oddly specific, that’s because other kinds of cameras exist. For the most part, we want to stick with perspective…

Silent Black Rappers

Keep the same energy when Black women come out with their stories of abuse and want your empathy. Don’t call us liars and blame us for our trauma. Write these same long think pieces when Black women…