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.
 

Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you two of our best selling eBooks for FREE!

JPA Mini Book

Learn how to leverage the power of JPA in order to create robust and flexible Java applications. With this Mini Book, you will get introduced to JPA and smoothly transition to more advanced concepts.

JVM Troubleshooting Guide

The Java virtual machine is really the foundation of any Java EE platform. Learn how to master it with this advanced guide!

Given email address is already subscribed, thank you!
Oops. Something went wrong. Please try again later.
Please provide a valid email address.
Thank you, your sign-up request was successful! Please check your e-mail inbox.
Please complete the CAPTCHA.
Please fill in the required fields.

Leave a Reply


eight + = 16



Java Code Geeks and all content copyright © 2010-2014, Exelixis Media Ltd | Terms of Use | Privacy Policy | Contact
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.
Do you want to know how to develop your skillset and become a ...
Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you two of our best selling eBooks for FREE!

Get ready to Rock!
You can download the complementary eBooks using the links below:
Close