Last night QCon offered an after-hours chance to hear Martin Fowler and Dan North speak on the topic of the “Yawning Crevasse of Doom,” more recognisable to us as the communication gap between the business and development. The talk began at a very pedestrian pace and I was soon fearing that this seminar would yield nothing new or stimulating, but this proved unfounded.
Dan and Martin used an analogy of a ferry man and a bridge builder to illustrate the trouble in communication. In the case of the ferryman, an analyst is used as a conduit between business and development with the risk that too little is communicated or communication is inaccurate. Also to its discredit, this is a slow, “low bandwidth” form of communication. The bridgebuilder, on the other hand, allows direct contact between the business and techies, thereby enabling tight feedback loops and frequent, “high bandwidth” communication. Obviously, building bridges is the preferable scenario.
The topic of domain driven design came up, with Fowler stating that it’s been around for some time but only now coming into popularity. Evolving a project-wide “ubiquitous language” is indeed an important concept and one that Fowler stressed. Business people should be speaking the same language as developers and testers. Fowler then brought the concept one step further, stating that even technical aspects of a project can affect communication. Programming languages was the example, which Martin suggested can impact the ubiquitous language and communication on a project. One of his current “hobby horses” of the moment is domain specific languages, which are “little languages” that are intended to solve problems within a given domain. (VBA for Excel is an example of one of these, basically a domain-specific version of VBScript!) See a Fowler talk on this topic here.
For his part, Dan North focussed on the increasing importance of soft skills in making software development work. He brought up the importance of usability testing and how this is something we should definitely be testing for, as per the context-driven testing school. He also mentioned interaction testing and ethnography, which involves direct study of the way people use a system. Off-shoring came up, and Dan made the comment that the only distributed model he’s seen work is the one whereby teams of business analysts, developers and testers are still co-located together. Across a project, one such team might be onshore, another might be offshore.
Fowler closed by asking the largely development audience to think about each of their technical challenges and what they mean for communication. “How does this affect the bridge?” He asked. It’s an interesting line of inquiry.
The place was literally crawling with ThoughtWorkers and a post-session visit to the bar provided a good chance to catch up, as we at SQS have worked with them before at Egg and Barclays, among other places.