|
| The first agile principle in the Agile Manifesto is "individuals and interactions over processes and tools." In this competitive world, the customer expectation is high in terms of quality, productivity and cost. "Individuals" alone cannot meet customers' expectations and this is where the tools complement individuals' efforts. There are numerous open source and commercial tools available to help developers achieve success. The second part of above-mentioned agile principle says "interactions." This adds another dimension of complexity in a "duo-shore" model, where the teams are separated not only by distance but differ culturally.
Wiki is a tool used to enhance group communication. Wiki's flexibility and ease of use has made it popular among agile teams. The typical scenarios for Wiki usage include:
Some of the commercial wikis provide plug-ins to draw burn-down charts and RSS feed capabilities. Example open source wikis include JSPWiki and Twiki. An example commercial wiki is Confluence.
Design, Coding and Integration
Let us look at the agile principle, "Continuous attention to technical excellence and good design enhances agility."
Agile teams benefits by getting early feedback about possible "about-to-happen-defects" captured at the build stage. The developer can iteratively fix the code and build (see Figure 1).
Figure 1: Tool integration in an Agile environment.
CI tools can be configured to send emails about the build status to the developers, thus increasing the developer's productivity by avoiding constant polling of build status (see Figure 2). Agile teams benefit from increased communication, early feedback and adapt cycle, and improved quality and productivity.
Figure 2: CruiseControl integration
ANT is the most popular Java build tool. It acts as glue among the source code, quality tools and continuous integration server. A continuous integration server could be configured to run the build file at regular intervals.
Having multiple source code repositories scattered across GDT will hamper communication. As the size of the project grows, the configuration managers have been found wasting their productive hours in merging code from different repositories. The solution to this problem is to have a common repository such as CVS , Subversion or ClearCase. (These could be integrated with an IDE like Eclipse.) Agile teams benefit because a common repository helps improve communication among teams, reduce waste as managing single repository is easy, support effective daily build and integration and provide global view of code quality to entire team.
Kent Beck says: "An interested observer should be able to walk into the team workspace and get a general idea of how the project is going in 15 seconds. He should be able to get more information about real or potential problems by looking more closely."[2]
Figure 3: Picture of Virtual Laval Lamp taken in agile room.
If a defect is found at later stages of the project, the cost of tracing the origin and fixing the 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.
Figure 4: Example Fitnesse scenario.
[1] See the Agile Manifesto, http://www.agilemanifesto.org/principles.html for this and other agile principles. [2] Kent Beck, "Extreme Programming Explained," page 61
About the Author
Venkatesh Krishnamurthy is an agile mentor and technical architect at Valtech India, a global software development company (http://www.valtech.com/). In this role, he mentors and coaches project teams on implementing SCRUM methodology. He is also the architect for "Valtech Cockpit" an agile offshore PM tool, which is integrated with advanced communication tools, defect tracking tool, source code repository, etc to aid transparent offshore agile project management.
Set as favorite
Bookmark
Email this
Hits: 11451 Trackback(0)Comments (0)
|
| Last Updated on Saturday, 20 October 2007 09:14 |
Agile Marketplace - Announcements and Special Offers
Upcoming Webcasts
Sponsored by Urbancode - On Demand
Mastering Complex Application Deployment
Sponsored by CollabNet - Wednesday, August 24, 2011
Closing the Agile Loop: Continuous Integration, Continuous Information
ScrumWorks Pro – The World’s Best Agile Project Management Tool
Simply put, CollabNet’s ScrumWorks Pro is the best Agile project management solution on the market, bar none. More than 150,000 Agile professionals rely on the power and simplicity of ScrumWorks every day. But don’t take our word for it – try it yourself for free. CollabNet is now providing the first 10 users of ScrumWorks Pro at no charge!
Download ScrumWorks Pro today!
The Business Case for ALM Transformation
Are legacy systems holding your company back? Breakthrough these technical constraints with an open and scalable environment that meets your unique business need to transform. There is no reason to be locked into an obsolete platform. The output of a number of recent transitions from legacy systems, this is practical white paper shares lessons learned and illustrates how guidance and enablement can pave the way for change.
Download this Whitepaper




