How can we Build Better Complex Systems? Containers, Microservices, and Continuous Delivery.
Monday, April 27, 2015 at 8:56AM
Todd Hoff in Strategy, microservices

We must be able to create better complex software systems. That’s that message from Mary Poppendieck in a wonderful far ranging talk she gave at the Craft Conference: New New Software Development Game: Containers, Micro Services.

The driving insight is complexity grows nonlinearly with size. The type of system doesn’t really matter, but we know software size will continue to grow so software complexity will continue to grow even faster.

What can we do about it? The running themes are lowering friction and limiting risk:

Some key points:

The highlight of the talk for me was the section on the amazing design of the Swedish Gripen Fighter Jet. Talks on microservices tend to be highly abstract. The fun of software is in the building. Talk about parts can be so nebulous. With the Gripen the federated design of the jet as a System of Systems becomes glaringly concrete and real. If you can replace your guns, radar system, and virtually any other component without impacting the rest of the system, that’s something! Mary really brings this part of the talk home. Don’t miss it.

It’s a very rich and nuanced talk, there’s a lot history and context given, so I can’t capture all the details, watching the video is well worth the effort. Having said that, here’s my gloss on the talk...

Hardware Scales by Abstraction and Miniaturization

Software hasn’t come very far in the last 40 years, while hardware has come a long way:

Software Scales by Federation & Wide Participation

When does software really grow? When smart people can do their own thing without worrying about their impact on others.

Monolithic Architectures Fail by Increasing Friction through Centralized Databases

Microservices Succeed by Reducing Friction

Microservices Increase Risk

Example of Federation in a System of Systems Design with the Swedish Gripen Fighter Jet

Containers Decrease Friction, but Not Risk

Continuous Delivery Lowers Friction and Lowers Risk

Organization

Article originally appeared on (http://highscalability.com/).
See website for complete article licensing information.