Case study: QA support for interactive multimedia applications

The project

  • Industry: Interactive Market
  • Duration: long-term partnership
  • Shinetech responsibilities: Progress Control, including Requirement Analysis, Test Plan Generation, Test Cases Generation & Execution, Bug Report submission and Test Report Delivery, Regression Testing of new functionalities
  • Test Environment: Windows 98 with IE 6.0 and Flash 9.0, Windows 2000 with IE 6.0 and Flash 9.0, Windows XP with IE 6.0/IE 7.0/FF 2.0 and Flash 9.0, Vista Business with IE 7.0/FF 2.0 and Flash 9.0, Mac OSX with Safari/FF 2.0 and Flash 9.0
  • Tools: Admin Tool, Fiddle and Http header for testing. PMS (Project Management System) for Requirement management, Bug management, Task assignment, etc.

The Client

Client is a leading provider of speaking avatar products design for Viral Marketing, Blogging & Social Networking, E-Learning and Mobile etc, Its products are Web-based, ASP-hosted and can be delivered to any device including browsers, mobile devices, TV and CD-ROMs. With industry-leading technology, client serves over 8,000 business customers worldwide and millions of consumers.

What the Client Wants

Client has its own in house development team and they have developed huge number of web based workshops and customized applications for many of their clients. What they want to look for is a reliable software testing partner. And since their projects are time sensitive, they would like this testing support team can deliver the work in a timely manner and keep constant contact with their local QA and Development team. Also they need direct contact to responsible persons.

Challenges

Client's requirements might change at any moment during the developing/testing phase, but they expect detailed test cases could be created before the start of the test phase for necessary approval. Once a change has been approved, we need to make necessary change in the test plan / test cases immediately. And for some products, testing work needs to be executed simultaneously with the development work. In such a case, we need to take measures to avoid the unordered phenomenon of the Bug caused by this. Meanwhile, client also has multiple projects overlapping at the same time that need to be tested.

Solutions

Avoid Repetitive Work — Establish Test Cases Database

For saving the time spent on establishing the Test Cases for every workshop, based on some workshops client has finished and development model client has built which includes the basic functionalities of the workshops, we established a Test Cases Database. For the following new workshop testing, we only need to generate test cases for new functions and modify the existing Test Cases Database. Then Test Cases for a new workshop are produced. And for enhancing the reusability of the Test Cases, we keep enriching the Test Cases Database whenever a new function arises.

Overcome Challenges — Efficient Process Management

For making projects get efficient control and finally achieve the expected objective, we have put great emphasis on process management, like managing Requirements, Test Plan, Test Cases and etc. Client's requirements might change at any moment and whenever a change has been approved, we would record new requirements document on the project management tool (PMS) for version control. And then dynamic adjusts to the Test Plan would be made according to new requirements and practical situation. Test Cases also would be renewed and every renewal would get complete record.

Make More Efficient Work — Bug Submission

For making the developers easily understand bugs report and then fix the bug, with prescribed pattern, we demanded that bug must be located exactly and the description must be clear and perspicuous, and pictures were required to be made more comprehensive description. Taking this into account, we produced the evaluation of every tester by making periodical bug quality statistics, like statistics of bug's precision and understandability. Also, our testers communicated continually with developers to make sure that bugs would be fixed as soon as possible. At the end of every project, we made periodical bug quality statistics to analyze what kind of functionalities often meet problems so that the following testing work could be more efficient. For client, this kind of information is helpful when they develop new products.

Transparent to Client — Deliver Test Report

A Test Report were delivered to client when every project has been finished. Detailed data like testing cycle, testing resources, bugs found and left issues of the project were included in Test Report. Also, the analysis which had been generated according to the actual project and our understanding was intimated to client for their reference. By Test Report, client could have a clear knowledge of our testing process and testing result. Meantime, normative document is benefit for controlling the whole testing process.