Big Data Management System Frontend
Big Data Management System Frontend

A client wanted to create Big Data databases that enterprises can use together with familiar BI tools, thus connecting big data and SQL worlds. At DashBouquet we are capable of handling such tasks so we immediately agreed to help our client.

In order to start shipping solutions, the client was first required to develop installation GUI, which had to be good-looking, reliable and functional. It also had to connect to the database management system directly in order to control the key parameters and perform certain actions.

According to our and our client’s vision, the UI should provide the end users with a feeling of “speed” if compared to traditional Hadoop-based solutions.

Client did a great job creating a list of requirements on how this software solution should operate; therefore, many key points exceeded the main entry.

There was also a special demand to keep an eye on stability of the software. Everything should work regardless of external conditions.

Technical solution

Our first step was to assess the key components and coordinate the results of estimation with the client. Next, we gave our client an opportunity to test an app with the end-users, supporting three landscapes: development, staging and production. The testing period lasted for two weeks. We held meetings in person to share feedback, received from the users, alongside with a list of issues. In order to provide stability, all logic key elements were identified as discrete files with test coverage, which runs every time the app is built or deployed. We estimate that this decision allowed us to decrease up to 40% of costs on iteration of key components when rearrangement of design and functional list took place. Clear functional approach and strong typing system by Typescript provided us with stability over frequent changes, which was appreciated by both our customer and development teams. We selected React as a base for front-end part, and it was bundled with Redux and Redux-Saga to control side-effects. As a middle layer between Database Management Servers and end-users we created express-based NodeJs server, which allowed us to manage multiple servers. As always, CircleCI provided continuous delivery, Slack assisted with fast and efficient communication, Youtrack helped in defect monitoring and Git kept the source code of all projects. 

Technologies

  • Typescript
  • React
  • Redux
  • Redux-Saga
  • JDBC