Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > Embedded

Tips for testing outsourced software

Posted: 11 Dec 2007 ?? ?Print Version ?Bookmark and Share

Keywords:testing software? test planning? automated tests?

By Naresh K. Malepaty
MindTree Consulting

One challenge that enterprise organizations face is effectively testing software products developed offshore. Below are some activities that can be followed to effectively execute an outsourced project.

Swiftly position a working model to test various aspects of a design, illustrate ideas and gather early feedback. When the prototype is sufficiently refined and meets functionality, robustness and other goals, it is ready for software test automation. Good product definition enables an understanding of the importance of a structured test automation approach that is based on a chosen methodology.

Test planning should be clearly depicted. This includes required timelines and resources to accomplish the task, along with roles and responsibilities; entry and exit criteria; engagement models; a development life cycle process; dependencies associated with the onsite team; a review process; foreseen risks and the steps taken to mitigate them; and identification of deliverables at appropriate intervals.

Use a well-defined communication structure describing the process to be followed in seeking clarifications on the domain and the application. Identify gaps in the set of manual test cases, resolving issues that might arise and procedures to mitigate risks.

Recognize that verbal communication, particularly long distance, is imperfect. Supplement it with exchanges held onsite at periodic intervals, including status reviews and management reviews, and with written exchanges (e-mails, instant messaging and documents).

Knowledge transition is key for successful offshore automation projects. The offshore team must understand the domain and product functionality. This can be achieved by an onsite visit or by effectively using Web exchanges and documentation. Knowledge transfer spans the process, from planning to delivery. The process needs to be structured and designed so that the offshore team absorbs the customer knowledge.

Development of automation scripts should be treated with the same regard as the development code. Automation scripts contain knowledge about how the application is expected to perform. Automated tests will likely remain in place after the engineers who built them have moved on to other projects or organizations. Automation scripts should thus be managed through a source code control system, just like development code. It makes sense to use the same system and employ the same tagging mechanism throughout, since prior versions of the application and tests may need to be recreated in the future. It is also important to develop and enforce set coding standards and naming conventions.

Key components and deliverables include: the automation framework, guidelines for data preparation, metrics, automated scripts, an installation guide, a user guide and release notes.

Test automation, when carried out in a planned manner, offers great benefits. But since every project is unique, the effort, time and cost to be invested in automation must be assessed in order to ensure adequate returns.

About the author
Naresh K. Malepaty
is a senior test manager at MindTree Consulting, a global IT and R&D services company co-headquartered in the United States and India.

Article Comments - Tips for testing outsourced software
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top