Sometimes I like to imagine software development as a pulsing web of light, with blips of information flowing along lines from far-flung points. The information races toward the development team, which is a brilliant, complex tangle of lines, then funnels into a glowing core of software too bright to look at.
I’m a little weird that way.
There’s truth to the idea, though. Software development is all about information. The more effectively your programmers can access and understand the information they need, the more effective they will be at creating software. The better information customers and managers have, the better they can manage the schedule and provide feedback to the programmers.
Communication in the real world is a lot messier than it is in my image. There are no glowing lines to sterilely transport information from one brain to another. Instead, people have to work together. They have to ask questions, discuss ideas, and even disagree.
This chapter contains eight practices to help your team and its stakeholders collaborate efficiently and effectively:
Trust is essential for the team to thrive.
Sitting together leads to fast, accurate communication.
Real customer involvement helps the team understand what to build.
A ubiquitous language helps team members understand each other.
Stand-up meetings keep team members informed.
Coding standards provide a template for seamlessly joining the team’s work together.
Iteration demos keep the team’s efforts aligned ...