Connect

  • Connect with me

  • Friday, July 16, 2010

    Informative Workspaces

    Background

    Way back in April 2008, when I had been to Tesco office in UK I had seen my team using Agile development practices. One of the thing which was quite noticeable was the big screen plasma TV in the corner of the team space displaying the latest build status of the project. Ever since I always wanted to have a similar setup for my team in Bangalore office as well.

    Informative Workspace

    I was reading The Art of Agile development by James Shore and one of the thing he suggests is to make use of informative workspaces. It basically means that we should share as much information as possible with all the team members in the best possible way. There are various ways of doing this.
    I have personally used couple of them to share my ideas with the team. Initially we would use an excel sheet to track down the hours remaining for each task for each day. We were also using the XPlanner tool for tracking the tasks during an iteration. XPlanner has a very good burndown chart in its reports. It also used to show the effort for each team member. Another feature I liked about XPlanner was that it allowed us to track effort for any tasks using pairs. So if two people had paired on a task, we could record the effort for both the developers in the same record.
    Due to reasons like better way of managing product and sprint backlog and also relatively good reports we moved from XPlanner to Team Foundation Server (TFS) 2008 and everything was integrated right into the Visual Studio IDE. I feel compared to many other commercial products Visual Studio still lacks in many of the features to support full fledged Agile development. But at a intermediate level it still gives us some good features in an integrated manner.
    I have used the Burndown chart, Sprint View and also the Sprint Task Board reports from TFS over last 6 to 8 months. I export these reports into PDF files and share it with the team. The idea behind this exercise is that everyone in the team is aware of where we stand with the regards to the sprint objectives. But many a times people don’t know how to interpret these reports and get the best out of them.
    Recently our team was moved to a different floor and we had a provision for fixing a big screen TV near to our workspaces as our team was seated very close to wall. We had been requesting for a plasma / LCD TV for quite some time. Finally our request was approved and we got a LDC TV for our team.
    One of the first thing that we did was to make use of it to display the burn down chart for the current sprint. Along with the TV we also got a white board where we could add information which we would track daily during the sprint. These two things have made our daily stand ups very informative.
    Along with the burn down chart we also display other things on the TV screen which includes
    • sprint view
    • build status for all the projects
    • coverage statistics for the projects
    • FxCop results
    • StyleCop results
    • NCover coverage summary for each project
    Here is a photo of how we conduct our morning standup.
    DSCN0131
    The white board is also used to show the following
    • planned story points for the sprint
    • burn down chart
    • status of tasks in progress and the developer or pair working on the task
    • product backlog items ready for test
    • defects fixed and ready for testing
    • Any impediments or issues that we need to address
    This is very helpful for anybody from the management side to have a look at the board and tell whether we are on track or not. Also if somebody missed the standup, they can find out the latest status just by looking at the board. It also helps us in getting into a technical design discussion related to tasks in progress.
    DSCN0135
    The above picture shows Mohamed Abdulla, myself, Samarjit Mishra and Amit Jain (from left to right) discussing some technical stuff :):)
    Conclusion
    Long time back when ThoughtWorks were working with our team in helping us adopt Agile, I remember Irfan Shah telling me how Anand Vishwanath made use of radiators for displaying the project status. I have also read about various teams using lava lamps to indicate the current build status. Its been only few weeks since we got the TV and white board for our team. The results so far have been very satisfying.
    I do have plans of putting more information on these places. Some of the information that we display on the TV is as of the previous day. I would want to spend some time getting dynamic and up to date content so that all team members are aware of the latest proceedings.
    Just to be on the funny side, I would also like to put a weird picture of the guy if someone breaks the build. It is not to offend anybody, but just to bring in some fun element and also enforce the practice of fixing the build as soon as its broken.
    Lets see how these things progress. Until next time Happy Programming :):)

    1 comment:

    1. Dude excellent article. Tfs 2010 provides u of using any template u like. It cmes bundled with msf template for agile. Cochango is the leading commercial template vendor which can be cusomized to u r will n wish. Agile has always been about being open in terms of communication. But its a irony that many teams in india offshore model see it otherways. Well anyways another good article buddy.
      Btw have u registered to bdotnet on facebook. Also make u r team aware of bdotnet.

      ReplyDelete