Connascence
Complexity of dependencies in object-oriented software system.
[Adaptative Code]
• Connascence provides a taxonomy for dependency and coupling,
allowing developers to reason about the quality of their code.
[Development and Dinosaurs]
• Meilir Page-Jones introduced it in 1992 in his paper Comparing
Techniques by Means of Encapsulation and Connascence [DZone –
about connascence]
Identity
Value
Timing
Execution Order
Position
Algorithm
Meaning
Type
Name
Worse???
Better
• Connascence of Name: References
• Connascence of Type: Messages and Objects
Connascence of Meaning
ILMPolicy L69
Connascence of Algorithm
PolicyTransformingStreamFactory L15
Connascence of Position
DataStoreWorker L27
Connascence of Execution Order
PolicyWorkerService L51
Connascence of Value
PolicyWorkerService L88
Connascence of Timing
SaveDinosaur(dino)
Thread.Sleep(25000)
ship.ShipDinosaur(dino)
Thank you

Connascence