About   Forum   Wiki   Home  

       
    Managed Chaos      
   
Naresh Jain’s Weblog on Object thinking, Patterns, Open Source, Agile and Adventure Sports

 
`
 
Tags
Recent Comments
Quick Search
Recent Entries
Categories
Archives
October 2008
M T W T F S S
« Sep   Nov »
 12345
6789101112
13141516171819
20212223242526
2728293031  
Add to Technorati Favorites

Syndicate This Blog
Entries (RSS)
Comments (RSS)

Project Automation

Concerned about your team’s performance? Looking for ways to enhance your team’s productivity and getting rid of all those mundane tasks? Years of consulting and building products have thought me that Automation is the key to improving team’s productivity and bringing joy back to software development.

If your team is seriously looking at automating as much as possible on their projects, you must consider some items like:

  • Setting up an automated build for your project. You must explore tools like Ant, NAnt, Maven, GAnt, Rake, etc
  • Creating automated unit, acceptance and UI tests for your project. Have a look at xUnit frameworks, FitNesse, Selenium, Watir, Abbot, etc
  • Setting up a Continuous Integration (CI) process for your team. Configuring a CI server with Version Control System for your project
  • Setting up developer work-stations with all the necessary tools and framework to be able to independently build the project from developer desk in a predictable and repeatable way
  • Setting up an evolutionary database design and data migration process using tools like Migrations, Liquibase, etc
  • Enabling the automated build to switch between Development, CI, Staging and Live environment using simple properties
  • Setting up coding standards for the team and using tools like CheckStyle and other Static analysis tools to automatically validate code format and other aspects with each build
  • Adding code coverage or test coverage frameworks like Cobertura, Jester, etc to your build
  • Setting up an integrated project dashboard on CI server with various project metrics like BurnUp/BurnDown chart, test coverage trends, test counts, etc. This Dashboard is visible to everyone on the team and all the stakeholders
  • Setting up a build promotion process
  • Setting up a team wiki which is versioned along with the whole project

The general rule of thumb I use when is comes to automation is:

If you need to do something more than once a day, it got to be automated. Period!

One Response to “Project Automation”

  1. Devdas Bhagat Says:

    The Unix sysasdmin rule of thumb is “If you ever need to do a thing thrice, script it”. Note the lack of time limit in there.

Leave a Reply

This is a captcha-picture. It is used to prevent mass-access by robots. (see: www.captcha.net)

You must read and type the 5 chars within 0..9 and A..F, and submit the form.

  

Oh no, I cannot read this. Please, generate a

    Licensed under
Creative Commons License
Design by vikivix