Thursday, December 6, 2012

How to have teams Self Organized in Agile Framework - The Power Of Self-Organized Teams in Scrum Methodology

In agile software development methodology, there will not be less or no supervision. There will not be culture of reporting manager who assigns the tasks to you on daily basis and tracks the progress of the tasks and manager expects updates from their subordinates regularly. In agile framework no one is assigning you and tracking you the tasks. It’s all about the team members who play all the project management roles. The management would like to hear from the engineers/programmers regarding the project than just the leads. So, there is flat hierarchy in scrum methodology, the team members will deal with all aspects of the software including the software requirements to design, implementation and demos. May be in certain organizations, the Software Requirement Specifications are written usually by leads and design will be done by architects. However, in the scrum, team does not deal with huge set of user requirements at one go and does not create design for all of the requirements but requirement by requirement incrementally. And in all these project management activities, the team members are involved which is good for the team member since he/she will have entire idea on the user requirement that they are dealing with and the ultimate goal for the teams is to produce a working software at the end of each Sprint.

For the team to self organize in the environment described in above paragraph, a great mutual understanding between the team members is essential. For example, agile promotes methodologies such as Extreme Programming where two developers sit together and write software code. For this method to succeed, both members must feel comfortable with sitting together. It may so happen that even the software development frameworks like Agile say that Extreme Programming gives results and if team members are not comfortable with because of one or the other reasons, then its not simply going to work. Here the team is said to be 'Not Self Organized'.

In a self organizing team, teams will not just follow scrum rules but adopt quickly the required changes to achieve tasks in scrum methodology, the Sprint Goals. There is no concept of single member wins and rest of the team members fail or vice versa. It’s entire team that fails or wins at the end of PSI. In certain cases, if a team member is stuck in certain complex tasks and is not able to move forward to the next tasks, the other team members will quickly help the person and take required actions to come over the issue and move ahead. The mentality of individual contributor and not helping any other team members is not a good idea in a self organizing and cross functional teams because the team has a common goal.

Self organizing teams interact face to face than written communications or over the tools. There is no much dependency on documentation and the design but its all the team members who discuss the technical stuffs, challenges & clarifications and resolve them on the go. Teams will not wait for anybody's approval before doing something. Its the final working software that the required customers have to approve.

In summary, Complex software tasks have been resolved when many minds are combine thinking towards the solutions and this is possible only in a team that's self organized. There are several challenges before the team becomes a 'self organizing' team such as conflict of interests between two members, team members' experience level, and level of product/domain understandings. The team members need to change their mentality to adopt this framework. Scrum master should carefully observe team members behaviors and coach them as and when needed to bring the team to 'Self Organizing' team one and henceforth no coach, lead, supervision is required.

No comments:

Post a Comment

Related Posts Plugin for WordPress, Blogger...