Scrum, Behavior Driven Development, Continuous Integration and Refactoring Tools for Agile Software Development

 

This website presents a list of agile software development tools, both open source and commercial, used for:
* Scrum agile project management and Lean kanban (IceScrum, Agilefant, ..)
* BDD Behavior-Driven Development and ATDD Acceptance Testing Driven Development (Cucumber, JBehave, RSpec, FitNesse, Selenium, SpecFlow, Behat, ...)
* Continuous integration (Hudson, Jenkins, CruiseControl, BuildBot, Gump, Apache Continuum, TeamCity, ...)
* Code and database refactoring (Liquidbase, ReSharper, DbRefactor, ...)

Agile is a software development approach based on the principles of the Agile Manifesto that values:
* Individuals and interactions over processes and tools
* Working software over comprehensive documentation
* Customer collaboration over contract negotiation
* Responding to change over following a plan.

If Scrum and Kanban are the best know frameworks for Lean and Agile project management, the Agile movement has also inspired different practices to improve programing and software testing, especially in the eXtremme Programming (XP) movement. Some of those practices are Behavior-Driven Development (BDD), Test-Driven Development (TDD), continuous integration (CI) and deployment, collective code ownership, pair programming and refactoring. Lately, the DevOps approach as also be associated to the Agile movement, increasing the speed of software delivery and shortening the feedback cycle.

 

There is also many commercial Scrum tools that you can use for free or free online Kanban tools and the emergence of free or commercial host-based tools that target specific Agile project management activities like the Scrum Burndown charts or retrospectives.