Integration and Testing Case Study

The Client

Our client builds online platforms that facilitate two-way communications with customers, employees, and citizens in contexts ranging from market research to civic engagement.

They are developers of cloud-based software built around their own platform which matches an accessible user interface with fully featured modules for survey authoring, community management, discussion forums and reporting.

The Challenge

Our client had an existing mobile web application that’s backend needed to be migrated to a new Windows Communication Foundation (WCF) web service. This would enable its backend to exchange data with its front end.

Our client was looking for a vendor to continue developing and maintaining their software. The vendor would have to complete their work without any documentation of the existing framework.

Key Challenges

– The new component to be developed needed to merge seamlessly into the existing framework.

– The overhead on the new component needed to be as minimal as possible so that little additional lag would be added to the system. The client’s application was expecting many users; therefore performance was important.

The Process

  1. Agile development process consisting of multiple sprints.
  2. Testing on target mobile platform using actual devices.
  3. Performance testing using client-specified criteria as input.
  4. Deliveries made in overlapping meetings with clients.
  5. Cloud-based staging environment for shared test system.

How Optimus Helped

Optimus Information’s team first studied our client’s application code to determine the best approach to take for the new system integration. We then studied the application’s data types and values that were returned by various web service calls and mapped the new service calls to existing ones. This mapping allowed our team to properly identify the different elements of the application.

Our team then mapped how the different elements of the application would render in the web service UI, and pull data from the UI to pass to the backend. We decided to use an XML file to pass data back and forth between the front- and back-end.

Our client provided clear, non-functional specifications for the project. Our team checked for compliance to these specifications throughout the project using data from trace files generated by the code.

After the new component of the application was developed, we conducted black box testing. We also conducted automated unit testing using customized mockups of inputs to remove any external dependence on the web service.