We define collaborative exchange as the degree to which informal communication exists among participants in the development process. This collaboration should provide the contextual specificity necessary to meaningfully create and share knowledge. For example, it should facilitate developers’ integration of their technical knowledge with the application domain knowledge of users. Similarly, different user groups, defined by product groups, functional membership, or location, should be able to more effectively share their perspectives on the application domain with others. Additionally, developers should be able to share their technical knowledge with other developers. The suggested permutations and combinations of integrating technically and contextually-specific knowledge between and among developers and user groups expands the knowledge base for the development process and promotes common understanding.