Automation in Agile - 5/6/2013

If there is anything that I have learned in my software development career it is that all development is Agile whether you call it that or not. Agile is fast, lean, dynamic and unforgiving. The development team is in a constant tug of war with requirements and at the same time trying to maintain quality. This poses a great challenge which Agile teams must learn to overcome. How do we balance quality with new functionality? The simple answer is automation. Automation is key for any successful Agile team.

Automation is simply the process of automating tasks within your software development and testing process. In a true Agile environment, software development is performed at such a fast pace that if there is anything that can be automated, it must be automated. We need to free up the development team from repetitive tasks to focus on building new things and fixing bugs. There is hardly any time to waste. One area where automation has existed for some time now, is the build process. If anyone has ever written a build script that compiles the application and puts out a released version of the software, then you have done automation. Every time the build fires whether using any build technology such as CruiseControl, Nant, or MSBuild, the build is automatically kicked off compiled, packaged and deployed to a server as a release for testers or anyone else to pick up. This is essential for virtually any software team out there, regardless of size. Automating the build eliminates one of the basic tasks that have to be done regularly and possibly multiple times a day. This keeps the team free from having any valuable resource tied up so that the team can focus on the more important aspects of software development.

Now we come to a slightly more advanced form of automation called Automated Testing. Once a build is created successfully, to assure it’s a quality build, a set of basic tests must be performed on it. This can be called a build verification test or a smoke test. The basic idea is to make sure that the piece of software that was just created is any good. Does it install? Does it even launch? Can it be deployed on a server? Whatever your software may do, there will be a set of very basic features that it must be able to do say it works, even if it may have bugs further down. This is something a lot of QA teams do as part of their daily routine. Their job is to verify and give a green light that the build has passed the basic tests and can be tested further for more regression, adhoc or exploratory testing. The challenge is that if your team wants to be Agile, this process should also be automated. A set of automation scripts or tests need to be built that perform this task unattended or automatically as frequently as possible; if not after every build then at least once a day. As the team is focusing on building new features or completing user stories, the automation is providing the necessary confidence and support to make sure that no major functionality is getting broken and the software still can be considered stable to be potentially shippable. This also reduces any unforeseen major bugs to creep in and surface when it comes time to close out a sprint or an iteration. Giving the team and its stake holders, greater confidence in the software they are producing.

While automation can be applied to many aspects of the development process, these two areas of automation are absolutely essential. Getting an automated build and automated test will give the team a strong foundation to build upon and increase development quality and speed. Remember, automation saves time and time is money!


  1. Thanks for your informative article on software testing. Your post helped me to understand the future and career prospects in software testing. Keep on updating your blog with such awesome article. Software testing course in Chennai| Software testing training in Chennai

    1. An important building block of SEO is to develop your website which can be easily understandable for both Online Visitors (most important) and search engine robots. In the current digital age, seo is important for your online success means to generate leads.

      SEO Services in IndiaSEO Company in India SEO Company in India SEO Services in India

      SEO Company in India SEO Services in India

  2. Great blog..You have clearly explained about agile..Step by step explanation is too good to understand..Its very useful for me to understand..Keep on sharing..
    Software testing training in chennai


  3. Thank you for taking the time to provide us with your valuable information. We strive to provide our candidates with excellent care and we take your comments to heart.As always, we appreciate your confidence and trust in us.

    Software Testing Training in Chennai


  4. First is to thank you for all this informative posts you give us for free; i bet all of us are happy.
    Such a great idea of yours! You have been a big help for me. Thanks a lot. more post for interesting topic. Great!

    SAP training in Chennai

  5. Thanks for appreciating. Really means and inspires a lot to hear from you guys.I have bookmarked it and I am looking forward to reading new articles. Keep up the good work..Believe me, This is very helpful for me.

    Digital marketing company in Chennai

  6. Great and useful article. Creating content regularly is very tough. Your points are motivated me to move on.

    SEO Company in Chennai

  7. Thanks for posting this useful content, Good to know about new things here, Let me share this,
    AngularJS Training in Chennai | AngularJS Training | Best AngularJS Training Institute in Chennai

  8. Awesome blog with smart content. Thanks for sharing such a informative blog. Selenium Training Institute in Chennai | Java Taining Institute in Chennai

  9. It is amazing and wonderful to visit your site.Thanks for sharing this information,this is useful to me...
    Android Training in Chennai
    Ios Training in Chennai

  10. I loved this blog content.I also tested this article information helped to us Keep on modernizing these kinds of informational articles. Thank you for this blog. This for very interesting and useful.Java Training in Chennai | Java Training Institutes in Velachery,Chennai

  11. Good one, Thanks for sharing your views and ideas... it helps to understand clearly... keep rocks...
    Java Training institutes in velachery | Java Training in chennai

  12. Your Blog is really nice and informative..Thanks for sharing such a interesting article..keep updating..
    No.1 Java Project Center in Chennai | Dot Net Project Center in Chennai | Mini Project Center in Chennai

  13. Awesome Blog with informative concept. Really I feel happy to see this useful blog, Thanks for sharing such a nice blog. Selenium Training Institute in Chennai | ISTQB Training Institute in Chennai | Six Sigma Training in Chennai

  14. Impressive blog with lovely information. really very useful article for us thanks for sharing such a wonderful blog... 
    Web Designing Training Institute in Chennai | DotNet Training Institute in Chennai | Java Training Institute in Chennai

  15. Nếu bạn đang có nhu cầu thuê acc battleground có thể truy cập shop để lựa chọn cho mình một acc battlegrounds để trải nghiệm trò chơi, thuê acc battleground hay thuê acc pubg sẽ giúp bạn tiết kiệm chi phí khi chơi game

  16. Interesting post! This is really helpful for me. I like it! Thanks for sharing!

    Webseiten Gestaltung Lüdenscheid

  17. This comment has been removed by the author.