January 16, 2020

243 words 2 mins read

Icebergs, bathtubs, and flows: Applying systems thinking to software architecture

Icebergs, bathtubs, and flows: Applying systems thinking to software architecture

Software systems have a dynamic nature that requires a design approach different from the architecture of physical structures. Systems thinking examines the structure and behavior of complex systems. Matt McLarty provides an introduction to systems thinking and explores how it can be applied to software architecture, particularly in the context of distributed systems and microservices.

Talk Title Icebergs, bathtubs, and flows: Applying systems thinking to software architecture
Speakers Matthew McLarty (MuleSoft)
Conference O’Reilly Software Architecture Conference
Conf Tag Engineering the Future of Software
Location San Jose, California
Date June 11-13, 2019
URL Talk Page
Slides Talk Slides
Video

Software architecture is a young and curious discipline. While analogizing software architecture with building architecture and city planning can be useful, it can also be misleading. Physical structures benefit from up-front design to guide their development, but software systems have a more dynamic nature that requires additional foresight. Systems thinking is a maturing field that examines the structure and behavior of complex systems, how they develop, and how they may be influenced (but never controlled). Matt McLarty explores how systems thinking can be applied to software architecture. You’ll gain an introduction to systems thinking concepts and axioms, such as the iceberg model, the bathtub theorem, stock and flow diagrams, and more; an analysis of enterprise software ecosystems from a systems thinking perspective; and systems thinking–inspired techniques software architects can use when designing or evolving these software ecosystems through the use of microservice architecture and APIs.

comments powered by Disqus