Both shared-kernel
and published-language
are part of the Context Maps patterns collection. Context Mapping is a very useful and powerful tool that allows one to see what kind of dependencies link systems together. They can also highlight teams relationships.
A shared-kernel
means that 2 systems are strongly coupled by sharing a shared artifact (model, DLL, Jar, DB, ...). If those 2 systems are handled by 2 different teams, it means that whenever Team A change something, it will impact Team B and vice versa.
A published-language
is a model that is well documented that everyone can understand and translate. Think of iCal, VCard or such things.
Michael Pl?d did a great job on documenting Context Maps patterns, you can have a look here.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…