Rajaraman Raghuraman

About Rajaraman Raghuraman

Rajaraman Raghuraman is a highly passionate software craftsman with 8+ years of experience in the IT industry. He is also the owner of AgileDevTest Blog (http://agiledevtest.blogspot.com) and author of an Ebook "Programmer's Motivation for Beginners" which is available at http://programmersmotivation.com.

What an Agile Project needs for success

In my previous posts I explained about the Attitude of a Great Software Developer and Attitude of a Great Software Tester.  I am a huge fan of Agile methodologies.  I believe, if an Agile project needs to be successful, there are certain factors that will make it happen.
 
 
 
 
 
 
 

  • Technical Craft
    • The technical capabilities of a team should be of top quality, if you want to run a successful Agile Project.  An Agile project is actually run by the collective strengths of the individual team members and hence they need to be highly adept at their jobs.
  • Team maturity
    • This is one of the critical success factors for an Agile Project.  Not everyone is comfortable in working in an environment where there are lot of changes.  Hence the team members and the team as a whole should be highly mature enough to understand the realities and make quick yet thoughtful decisions
  • Collaboration
    • I cannot stress this point enough.  The entire team should collaborate within themselves and also with external stakeholders.  This is actually one step ahead of an important point Communication.  It emphasizes the fact that it is a complete team game.  A developer needs to collaborate with Product Owners, Testers and vice versa.
  • Team Morale
    • Agile methodologies put a high emphasis on the people who run the projects.  It is a given that, a team with high morale will produce better quality work and with more speed.  It is important that the team is maintained with high morale during the entire course of the Agile Project.
  • Engineering Best Practices
    • This is one of the most important success factors for an Agile Project.  The level of best practices determine the maturity of the Agile Project and will decide the speed of the Feedback Cycle.  Some of the engineering best practices include but not limited to
      • Code Refactoring
      • Automated Unit Tests
      • Test Driven Development (TDD)
      • Source Code Repository
      • Build Automation
      • Static & Dynamic Code Analysis
      • Setup Automation
      • Automated Smoke Tests
      • Automated Functional Tests
      • Automated Regression Tests
      • Continuous Integration
      • Continuous Deployment
  • Support from Management
    • Highly Critical.  Support from the upper management is required for an Agile Project to be successful.  The trick is not to expect miracles overnight from an Agile Project.  A good Agile Project will regularly start to add value to the business as the time progresses.
  • Support from Product Owner
    • Mr. Product Owner is the instrumental person who directs what features are available to the market at what times and how critical are they.  He helps in prioritizing and re-prioritizing the features as the iterations progresses.  Hence it is absolutely critical that the person playing the role of a Product Owner is clear about what is needed, has the ability to think from the business perspective and decide which features will add more value to the users of the business.
  • Continuous Improvement (Not the other CI :-) )
    • This is also another important factor that will influence the outcome of an Agile Project.  An Agile team learns from its mistakes, so its a journey of continuous improvement for both the team as well as the processes that the team uses.  An Agile team would be flexible enough to accommodate process improvements continuously thereby getting better and getting the product / application better.

A well run Agile Project will have a lot of benefit for the business and the organization.  It also lifts the team morale and makes them progress towards a common goal of producing great quality software.  Hence it is highly recommended that the above mentioned points are taken care of, for the project to be successful.
 

Related Whitepaper:

Applying Agile Principles To The Development of Smarter Products

Agile development has become a cornerstone of most software development organizations.

Marked by iterative processes that deliver incremental value over time, agile development has enabled organizations to manage software complexity more effectively and to improve quality and time to market compared with previous development processes.

Get it Now!  

Leave a Reply


× 4 = sixteen



Java Code Geeks and all content copyright © 2010-2014, Exelixis Media Ltd | Terms of Use
All trademarks and registered trademarks appearing on Java Code Geeks are the property of their respective owners.
Java is a trademark or registered trademark of Oracle Corporation in the United States and other countries.
Java Code Geeks is not connected to Oracle Corporation and is not sponsored by Oracle Corporation.

Sign up for our Newsletter

15,153 insiders are already enjoying weekly updates and complimentary whitepapers! Join them now to gain exclusive access to the latest news in the Java world, as well as insights about Android, Scala, Groovy and other related technologies.

As an extra bonus, by joining you will get our brand new e-books, published by Java Code Geeks and their JCG partners for your reading pleasure! Enter your info and stay on top of things,

  • Fresh trends
  • Cases and examples
  • Research and insights
  • Two complimentary e-books
Get tutored by the Geeks! JCG Academy is a fact... Join Now
Hello. Add your message here.