There are number of different ways to implement Agile development and testing. Scrum has proved to be the most popular but others like extreme programming also have their benefits.
For the curious among you, “scrum” was a term used in rugby that referred to a tactic of trying to advance the ball down field as one unit, while passing the ball back and forth. For the tech crowd, Scrum is best known as the most widespread method of choice for Agile Software Development. It was popularized in the mid-1990’s as a “holistic” approach that increases speed and flexibility.
Indeed, most “agile” approaches implemented today is based on Scrum. A second choice would be Extreme Programming. Other lesser known agile approaches include Adaptive Software and Feature-Driven. You may also remember IBM’s Rapid Application Development model as well.
Many offshore companies will emphasize how many certified Scrum Masters they have on staff or how strictly they adhere to Scrum methods. Most of these certifications and the like are misguided Scrum is a tool and measuring adherence to methodology is really not a measure of business effectiveness.
The only 2 engineering metrics that matter are velocity (features defined, implemented, completed factoring complexity of each feature) and quality (bugs and severity). If you can just show me those metrics and historical trends, it would not be difficult to draw sensible conclusions about the effectiveness of a team.
That said, to blindly implement Scrum, especially in an offshore development environment, may be misguided. Implementing Scrum may be the best starting point, but agile development includes constant process evaluation. Aspects of Scrum that do not prove effective should be tossed away or replaced, depending on measured effectiveness. The same can be said about Extreme Programming and other methods.
So, don’t be fooled about the 100% Scrum implementations. Adherence to process is good, but measurable success has to be the objective.