QA & Testing Ensuring Success to Agile Project

Writing by AppLabs on Thursday, 12 of February, 2009 at 12:18 pm

To ensure the success of development projects in an Agile environment, engage the test teams from the start, and by the by have the previously independent contributors (Business Analysts, Developers, Testers, End Users etc.) work together in teams.

An Agile development uses a ‘Test Driven Development’ (TDD) approach. An approach where the team and the project stakeholders all contribute to kick-off meetings where the ‘user stories’ are selected for the next sprint (Sprints in an Agile project can extend to multiple levels in a complex system), which are used as the basis for a set of tests. The testers create test scenarios, which after the approval are broken down to test cases, which further offer adequate test coverage for the given functionality. The developers then write code that will pass the tests. In this approach the development and testing take place continuously throughout the sprint, for minimal defects and low implementation risk. As functionality grows with each iteration, regression testing must be performed to ensure that existing functionality has not been impacted by the introduction of new functionality in each iteration cycle. Defect fixes should also be followed by extensive regression testing.

The scale of the regression testing grows with each sprint and to ensure that this remains a manageable task the test team should use test automation for the regression suite and focus their manual testing effort towards locating new defects during the build phase. In the Release Phase, prior to releasing a product, a final acceptance test is performed before transitioning the application into production. The testing activities listed above are not exhaustive but broadly cover the areas which the testing team contributes to the Agile approach.

Engaging test teams from the beginning of every iterative development cycle and not just after the first couple of sprints will hence ensure an accelerated delivery of working software. And the testing team in return must develop the necessary mindset, wherein their own agility and flexibility will prove the key to their success in the project.

Leave a comment

Category: Software Testing

Outsource QA and Testing Services?

Writing by RajuB on Thursday, 12 of February, 2009 at 11:44 am

Outsourcing aims at business objectives gained through operational excellence. And one such aspect of this is, QA and testing, which provides many benefits to companies who seek to improve the quality of their production applications, reduce business risk through rigorous testing and augment and improve upon the incumbent testing teams and processes. Given the increase in global IT outsourcing agreements, many companies will be looking at outsourcing QA and testing as an independent validation and acceptance phase in order to ensure high quality deliverables and gain competitive advantages.

To achieve these benefits, organizations select an outsourcing partner who will typically have local and offshore test centers and capabilities as well as a strong onsite consultancy presence. While doing so, the companies should follow the major considerations:

  1. The Engagement Model, a crucial aspect of developing the outsourcing plan.
  2. Service Level Agreement should detail the minimum level of service to be provided by the outsourcing vendor.
  3. Mobilization, a phase which includes setting up of an intensive communication protocol with the client
  4. Integration with all the parties (client, testing vendor and development vendor),
  5. Seamless communication between the client and their stakeholders,
  6. Flexible and scalable approach
  7. Improvements in terms of quality
  8. Comprehensive change and configuration management system
  9. Intellectual property protection
  10. Security

When opting for outsourcing QA and testing engagements companies face certain success factors:

  • The business objectives agreed at the outset of the contract or business case are managed to successful completion.
  • Transition from the “testing today” to “tomorrow’s testing” is seamless in terms of business impact and employee satisfaction
  • Noticeable and continuous improvements in the approach and methods used within your IT organization (not just testing)

While organizations derive value from outsourcing software development, outsourced software testing will maximize returns from their investments and provide the right level of objectivity and rigor required to create a high quality product. If an independent QA and testing service provider is chosen whose focus is on ensuring quality products/systems are implemented, benefits will be fully maximized.

Leave a comment

Category: Software Testing