Tool Integration In Distributed Agile Development

defect will increase. And, depending on the scope of the defect, additional modules could be affected. xUnit frameworks, such as JUnit, NUnit and MBUnit, are the unit testing frameworks which form the core part of  TDD.

Automated regression testing can be implemented by making the CI tool run the unit tests continuously. These "self testing builds" could output the results as a Web page. The onsite team can provide feedback and take corrective measures by going through the web page. Again, the team can benefit from improved quality and communication and from early feedback-adapt cycles.

Fitnesse is an acceptance testing framework gaining popularity due to its ease of use, and its ability to enable collaborative development between the customer and development team. Figure 4 illustrates a sample scenario of Fitnesse usage for both onsite and offshore agile development:

  • Customers provide the requirement either using Wiki or spreadsheets.   
  • Developers write "fixtures," pieces of Java code, to run against the business logic of the application. 
  • The results from executing fixtures are compared with the actual values (as given by customer). Matching results are shown in green

 

vk0706-4

Figure 4: Example Fitnesse scenario.

The acceptance tests need to be executed frequently by integrating with Cruise Control. The output can be viewed as a Web page, in turn enabling the onsite customer to get the latest status of quality of project.

After considering the tools in this article and relating them to the agile principle "individuals and interactions over processes and tools," it is clear that tools form the bridge between individuals to interact effectively . Especially in an offshore development scenario, good communication tools with frequent access to transparent data make a marked difference in delivering software on time.


 [1] See the Agile Manifesto for this and other agile principles.

[2] Kent Beck, Extreme Programming Explained  page 61

About the author

Venkatesh Krishnamurthy's picture
Venkatesh Krishnamurthy

Venkatesh Krishnamurthy comes with a rich and diverse expereince of designing and developing softwares since last 15 years. He has coached and conducted Agile teams across the globe. His hands on experience of coaching and mentoring are reflected in his articles and on his blog.He has been a speaker in many Agile conferences across the globe. He is a regular author columnist at Techwell.com. Contact him at venky_nk@yahoo.com or via his blog, http://agileworld.blogspot.com