BT

Relationship Between Tools and Agile Software Development

| by Vikas Hazrati Follow 0 Followers on Jul 24, 2008. Estimated reading time: 1 minute |

Kent Beck, recently published a paper where he shared his thoughts about tools and Agile software development. He stated that many people misinterpret the “Individuals and interactions over processes and tools” part of the manifesto to believe that Agile software development does not require tools. Tools are an integral part of Agile software development and the right set of tools acts as a catalyst for effective development.

According to Kent, Agile places a lot of emphasis on flow, which means delivering in small chunks. As a result of flow there is frequent transition between activities. Usually, there is quick transition between analysis, design, testing, coding and deployment. Thus the priority of a tool changes from working well for a given activity to efficiently switching between activities. He gave the example of cards on the wall as a tool which fulfills these criteria though it has other shortcomings. As soon as a pair realizes that there is an additional requirement during the course of an activity, they can update the card and get back to their activity. Thus cards would allow a quick transition but they suffer from disadvantages like being impermanent and not easily distributable across locations.

Similarly, Kent suggested that transparency is very important in Agile. Given that Agile embraces change, change of plans is a common phenomenon. Transparency ensures that everybody on the team knows about changes and propagates trust. The tool should support and enable transparency.

Kent added that common Agile practices have strong correlation to more than one tool. For example, daily deployment practice requires unit testing, configuration management and continuous build. Similarly TDD practice requires a unit testing tool and a refactoring tool. Looking from the other side, each tool supports multiple practices. For example, configuration management tool supports daily deployment, incremental design and continuous integration. Thus each tool supports multiple practices and each practice requires multiple tools.

He noted that Agile has already made a strong impact on the developer tools. Some of the changes that he predicted for future tools are

  • Smooth transition between activities

  • Greater scope for automated testing

  • Transparency

  • Real time collaboration

The paper is available for download in various formats. Discussion on the paper is going on, on the the Extreme programming group.

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT