Mobile App for a Global Leader in Image Processing

Customer

The Customer is a European company and one of ScienceSoft’s long-term clients. The company is a global leader in image processing with an extensive portfolio of innovative technologies and patents. They offer products and solutions to enhance user experience in all aspects of digital imaging including processing, compression, storage, printing and display of digital images.

Challenge

The Customer came up with an app concept and started searching for an iPhone application development company to develop it and integrate with a portable accessory (which would be attached to iOS devices and allow to take professional-quality pictures). ScienceSoft was briefed to develop the app in close cooperation with the Customer’s team of developers and perform complete functional testing of the end-product.

Project planning is the main challenge faced by ScienceSoft developers due to a strict dependency on the portable device which is currently being created by a third party. Thus, ScienceSoft can develop and test only the features that are already supported by the tool. And since the creation is still in progress, the Customer’s business needs and technical requirements change regularly.

In addition to that, the project requires considerable management skills as a number of teams working on different tasks need to be coordinated timely and efficiently.

Solution

ScienceSoft team started off with the development of two independent applications. One was a UI application for streaming pictures from the iOS-device viewfinder. The other provided interaction between the iOS layers and the portable tool thanks to the MFi Program allowing to work with electronic accessories that connect to iOS devices. Consequently, the applications were merged into one, so that the team could focus on the integrity of the end-product. While the specification is constantly changing, ScienceSoft along with the Customer’s team has already worked on several features of the ultimate tool:

  • Full set of shooting modes such as portrait, landscape, sports, burst and others, as well as exposure settings, namely aperture, shutter speed and ISO
  • Image gallery management
  • Social sharing
  • Cloud-based solution for image storage and processing
  • Camera firmware updates
  • Remote retouching service

The portable accessory can be attached to a device only using a Lightning cable. This essentially impedes the testing of the final solution (the mobile app together with the portable tool connected to an iOS device) as it is impossible to run automated tests on a device disconnected from the Mac computer.

And as the team investigates ways of testing the end-product, it is possible to test the mobile application in a standalone mode. ScienceSoft team applies the Calabash framework, a well-established and proven tool to write and execute automated tests for mobile apps. The team has developed a large number of repetitive (and constantly updated) testing scenarios which are automated and run to detect bugs.

Though ScienceSoft does not play the key role in the camera’s firmware development, a considerable amount of effort is put into reporting the bugs to the third party.

Results

To date, ScienceSoft team of eight developers and testers have been working on the project for more than six months. The tasks are accomplished in line with the requirements. The Customer expects it to be an innovative solution on the market of digital imaging.

Technologies and Tools

iOS native development: Core Data, Core Image, Core Motion, Photos, Quartz Core, External Accessory, AV Foundation, Media Player, CFNetwork

Testing: Calabash (automated testing), TestRail (test case management system), Jira (bug-tracking system), Tera Term and ZOC (terminal emulators)