+ 54%
+75%
+67%
+ 84%
- 38%
29%
Redux
Redux allows to write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. Redux was used as state management library. It’s a mainstream library that most developers are familiar with and it provides all required functionality.
React Native
React Native has been selected as the technology for the development of the Android version because: Had supported all the required libraries for drawing required graphics and indicators Allows easily to port Android version to iOS support platform if any changes/updates are performed for the Android version compared with the case when the same change should be done for two different platforms separately. Allowed react js based devs to be involved in React Native app development.
MPAndroidChart
For graphics display, MPAndroidChart library was used. It is a powerful Android chart view/graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, dragging and animations. It provided a high level of customization out of box. MPAndroidChart was forked by our engineers to add more chart types into the Android version and provide Native sync between multiple charts.
The project had no technical specification, all the architecture had been developed on the fly and based on the researches of existing iOS and it’s reverse engineering. Thanks to the availability of the application on the iOS we had a good opportunity to pay close attention to all important functional and nonfunctional requirements, improve and enhance the application.
Kate Vodolazkina
Oleg Svet
Vitaliy Kononenko
Artem Karpukhin
Artem Babura
Mariia Boborova
Denis Bogatirov
A productive collaboration between the project participants is a key to success in any difficult situation. A well-organized communication system allows solving various almost immediately. Each type of meetings, face-to-face brainstorming, video or audio-conferences, helps to achieve the main goal of the project.
One of the main goal of the Compotools team is to finish the project in time and meet all intermediate deadlines with completed tasks and solved issues. To provide quick decision making and solving any difficulties during work on the project developers used Skype. All the necessary information and transitional data were stored and shared through Google Drive. Project Manager used Basecamp to set tasks to team members and to monitor assignments. Jira was also one of the solutions for the same purposes.
In order to succeed in this project, our team has chosen two of the most popular Agile frameworks: Scrum and Kanban, due to its opportunities and features. Scrum splits out complex tasks into small parts and visualizes them on a workflow. The team commits to ship working software at the end of set intervals, called sprints. It is a perfect methodology when we need to ship value to customers on a regular basis. Kanban mostly fits continuous development and delivery, tackling a small number of tasks fluidly and concurrently. The teams use a visual planning tool—the kanban board—that displays each project on a card and moves cards through columns that represent progressive stages of completion. Mixing scrum and kanban technologies we’ve got the opportunity to work on long-term tasks and solve issues that appeared on the fly. This made the development process faster.
CONSULTING
Product DESIGN
Product Engineering
1.
Launch
Based on Google Play standards the Computools team of developers and client’s in-house IT-department have prepared the application to launch and receiving approvements from the marketplace.
2.
Transfer
When the application has been approved by the marketplace, we’ve transferred the application and loaded to prepared directories. The application was also tested after transferring to make sure everything works correctly.
3.
Education
Our task was to make an Android version of the already existed iOS application. So we didn’t have to teach the client how to deal with the app. However, we’ve explained how to use new functions that were implemented during the development.
use link below to find
code sample