Friday, June 3, 2016

The Agile Manifesto in English - 11



Principles

Agile principles are concretization of agile values.  Agile manifesto lists 12 principles. These principles are iterated in the form of assertive statements.


6.     The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

We already know that communication plays big role in software development and maintenance and face to face communication with an opportunity to sketch is the richest form.
This principle simply states this fact. 


But we all know that in today’s world teams are spread not only geographically but temporally and culturally as well.  This distribution is not only due to cheap offshore labor but availability of skill as well.  While forming software teams you need to consider few factors w.r.t. communication:

  • Geographic distribution 
  • Temporal distribution
  • Cultural distance
  • Number of teams
  • Team size of each team
  • Inter-dependencies of teams

Communication is not only about flow of information but context as well. Moreover component of context increases many fold if at least one party in conversation is from high context culture.

Communication = Information + Context

Though Allen curve is about physical distance and about frequency of communication. In my experience Allen curve very well incorporate temporal and cultural affinity.




Cultural distance is a two sided sword, if team is homogenous, it increases the communication richness as well as frequency but on negative side ideas from diverse backgrounds are lost.
While having communication via audio and video recordings, do not forget that in both cases it is painful to locate specific moment in recordings.  Try to keep recording duration within few minutes.
If your teams are distributed, do not forget Conway’s Law which is always present everywhere and every time.

Though it is not stated specifically number of persons in team and number of teams also play big role in effective and efficient communication.  Here Dunbar’s number plays a significant role.

In scrum, kanban, and devOps frameworks, this principle is reflected in following practices:


  • Daily Standup
  • Information radiators
  • Collocated teams
  • Shared sketching environment 
 

No comments:

Post a Comment