Salt Lake Software Symposium

May 3 - 4, 2019

Making Sense of Architectural Coupling with Connascence

Friday - May 3 4:45 PM - WASATCH 1

Matt Stine

Matt Stine

Global CTO - Software Architecture at Pivotal

Connascence is a term coined by Meilir Page-Jones in his article “Comparing Techniques by
Means of Encapsulation and Connascence.” It is a software quality metric that attempts to measure coupling between entities in three dimensions: strength, locality, and degree. Rather than describing architectural coupling as simply loose or tight, connascence gives us a tool to describe and measure the huge diversity in coupling that we encounter in systems. Relatedly, it also gives us a tool for encouraging high cohesion within modules.

Connascence can also be divided into static and dynamic categories, with a long list of specific types such as connascence of name, meaning, timing and identity.

Page-Jones gives us a rule to follow, “Eliminate any unnecessary connascence and then minimize connascence across encapsulation boundaries by maximizing connascence within encapsulation boundaries,” which he says can be applied to “any future design paradigm with partitioning, encapsulation and visibility rules.”

In this session, we’ll examine connascence as it appears within architectural patterns such as REST, message-driven collaboration, and microservices, as well as within various serialization techniques. You’ll walk away with tools to help you better describe and manage coupling within your system architectures.

Video Preview

About Matt Stine

Matt Stine is an 18 year veteran of the enterprise IT industry, with nine of those years spent as a consulting solutions architect for multiple Fortune 500 companies, as well as the not-for-profit St. Jude Children's Research Hospital. He is the author of Migrating to Cloud-Native Application Architectures from O'Reilly, and the host of the Software Architecture Radio podcast.

Matt is obsessed with the idea that enterprise IT “doesn’t have to suck,” and spends much of his time thinking about lean/agile software development methodologies, DevOps, architectural principles/patterns/practices, and programming paradigms, in an attempt to find the perfect storm of techniques that will allow corporate IT departments to not only function like startup companies but also create software that delights users while maintaining a high degree of conceptual integrity. He is currently the Global CTO of Architecture at Pivotal, and spends much of his time advising IT leadership on the effective adoption of cloud-native architectures.

Matt has spoken at conferences ranging from JavaOne to OSCON to YOW! and is a nine-year member of the No Fluff Just Stuff tour. Matt is also the founder and past president of the Memphis Java User Group.