
Migration of a VB Translation Application to C#
Customer
The Customer is a European company offering free and easy-to-use utilities to help users enjoy a better multimedia experience. Among the Customer’s products there are various solutions for searching and downloading videos from the leading video sites, converting audio files, creating ringtones and more.
Challenge
The Customer has a handy desktop application that allows users to translate on the go without the need to use external software or open additional tabs in the browser. The tool consists of a tray-item and a window displaying the translation results.
Regardless of the application they are working with, users can highlight a word or a piece of text and translate it in just one click using a keyboard shortcut. The translated text will appear in the translation window. Additionally, the highlighted word will be directly linked to a corresponding Wikipedia or YouTube pages as well as to other related media content. The dictionary database encompasses around 700 languages.
ScienceSoft was briefed to perform the application maintenance including extension to the .NET Framework 4.0, development of a version for Windows 8, and bug fixing.
Solution
ScienceSoft assigned a team of one Senior Developer and two Mid C# Developers to carry out the following changes:
- Convert the project from VB.NET to C#
- Embed the autocomplete feature – a tool predicting a word that users want to type
- Optimize the algorithm that generates search results
- Perform code refactoring
- Write unit-tests and UI autotests
- Add support for Windows 8
- Fix a number of bugs
Results
The project was delivered according to the requirements in the course of 1.5 years. The Customer received a convenient desktop tool for Windows which is specifically focused on providing better user experience through instant and quality translation.
Technologies and Tools
C#, .NET 2.0-4.0, Visual Studio 2010-2013, SVN
Need help with a similar project?
Drop us a line, and our rep will contact you within 30 minutes to arrange an initial discussion.