Main Content

Connascence Examined

A talk by Jim Weirich at Distill

About the Talk

August 8, 2013 7:45 AM

The Winery SF, San Francisco, CA

The Winery SF, San Francisco, CA

Connascence (noun) is defined as (1) the common birth of two or more at the same time; production of two or more together, (2) That which is born or produced with another, or (3) the act of growing together.

In software, we are told we should reduce the coupling between our modules so that our software is easier to maintain. But what is coupling? Myers (in "Composite/Structured Design") suggests that there are seven levels of coupling, but his nomenclature is developed during the days of Structured programming and does not deal well with objects and classes.

By identifying and classifying how changes in one portion of a software program can effect other places in the program, connascence attempts to define coupling in terms of ways software can changes. In this talk we will examine the different types of connascence and come to understand how coupling effects software development.

Ratings and Recommendations

This Talk hasn't been rated yet. Sign In to rate Talks.

comments powered by Disqus