Wednesday, May 25, 2016

The Agile Manifesto in English - 2


Values

The four values of agile manifesto are modeled as comparative statements.  These comparisons introduces desired and less desired behaviors not the desired and not desired.

1.     Individuals and interactions over processes and tools

The first value in the agile manifesto has four components:
·         Individuals
·         Interactions
·         Processes
·         Tools
We all have learned that software development is essentially a result of human interactions. This revelation leads us into territory of complexity theory. Due to individual behavior of team members and also intra and inter team dynamics software development and maintenance can’t be put into set lines of processes and tools unlike manufacturing and assembly line operations.
Software development and maintenance differ from manufacturing and assembly line in following significant manners:
·         Software development & maintenance is mostly devoid of repetitive tasks. In most of the cases as soon some repetitive task is discovered, team automates it.
·         In manufacturing and assembly line most of the interactions are among machines or machines and individuals. But in case of software development and maintenance interactions are mostly among individuals.
·         The general level of education of persons working in software industry is significantly higher than working in manufacturing and assembly line.
·         There is more cultural diversity within a software development and maintenance team than a typical manufacturing and assembly line team.
·         In most of the cases, software development and maintenance teams are distributed in terms of one or more dimensions of geography, time zone, and culture.
·         Software development and maintenance  is in very nascent state of becoming engineering (if it can ever become!), it is still largely a craft.
·         Underlying technology for software development is changing very rapidly.
·         In software development and maintenance no physical asset is created but a set of abstract notions.
·         Unlike Taylorism which focuses on economic efficiency and labor productivity, software development and maintenance seeks knowledge augmentation.
These key differences demand a different treatment for individuals involved in software development and maintenance over those involved in manufacturing and assembly line.
We humans are social animals, so require interactions among of our kind. Software development and maintenance requires lot of communication within a team and   across teams. This communication happens on formal and informal channels which make it difficult to confine in a set of processes and fixed tools.
We all deserve individual treatment. Even in your family, I am sure you treat your 5 and 15 years old kids differently. In a team certainly a recent colleges pass out and 10 year experienced need different treatment.
In light of above discussion, it does not mean that processes and tools are not required. It is simply means that individuals and interaction are preferred over processes and tools.




No comments:

Post a Comment