Industry: Oil and Energy
26 reviews on
"InventorSoft helped us develop our web application. I provided them with very little to start with, but they’ve been very good at coaching us and setting up an ecosystem appropriate for software development. When starting in software development, inexperienced people can make a lot of decisions that result in significant delays, so it’s important for us to have someone with experience on board."
Joshua Wirth, CEO at Daly EnergySee all testimonials
Daly Energy application is a project software that focuses on the field of data modelling. The end product is the storage of modelling data of solar panel systems. This software provides the best tools and functionalities to create and manage complex data designs and structures.
Daly Energy has many functions. It allows for the analysis and storage of big data on weather, the addition of modules for creating energy models and a dashboard that aids visualization and investigation of selected data.
The application provides a graphical collaborative workspace for the creation of data in figures, charts and graphs. It also serves as a sophisticated calculator and analytic tool.
The client wanted a data modelling software but had no expertise to do it on their own. They needed an experienced team to work on it, and they reached out to us to start this project from scratch.
Every single aspect of this software was developed by our team. We did the project and architecture planning, system design, DevOps and cloud integration and development of all the functionalities by ourselves.
Daly Energy Admin:
This is the admin that manages all the processes on the Daly energy software.
The admin that manages workspace channels like Slack.
The users of the platform. They enter data to be analyzed.
a. Registration, Login and editing of users
We implemented a CRUD user management feature that gives users full control and management over their personal details. CRUD means Create, Read, Update and Delete.
Users can register on the platform, login with their authenticated registered details, and edit or change details if there is a need to.
b. User management at workspace level
We managed users at workspace level by sending out emails to invite new members, assigning members to different roles, managing the different channels, and setting regulations, and permissions. This ensures the smooth running of the workspace.
We used JWT tokens to authenticate and verify users. Once they are signed in, it gives them access to routes, pages, services and resources permitted with a token.
JWT tokens is also a reliable way of transmitting information from one service to another or between two parties with the use of private/public keys. The tokens do not just authenticate the users, it verifies the service the user is going for.
As signatures are calculated using the payer and payload, communications between the user and server are safe and the user is certain that information is not tampered with.
We stored and managed our database with PostgreSQL. PostgreSQL is a great choice for this project since we are working with geo-data. It supports geographic objects, making it a good fit for location-based services and geographical information systems. PostgreSQL also improves performance optimization to a great extent.
The client's custom backend is integrated with Python for easy calculations and the creation of charts from the data provided.
Google API for geodata, etc
With Google's API for geodata, we can convert geographic coordinates into more human-readable addresses. This is particularly useful in analyzing big data on weather.
Other Google APIs help in the conversion and display of data as live interactive charts, graphs and figures.
Most of our data visualization was done with Python, but Python couldn't handle it all. We had to implement a solution with Java and this accelerated the creation of graphs, figures and charts by over 800% which is 9 times faster than using python alone.
We optimized our database by tuning the Postgre server, planning an efficient system architecture design and proper indexing of entries.
Top features created by us
The user management system we designed allowed users to create, login, and edit their own personal details on their profile. They have full flexibility and control over their personal pages.
We implemented a graph creation feature that calculates the formation and creation of graphs from parsed files, and big data from weather using Java.
We have admins to manage our workspaces on Slack. Invitations to new users are done with an SMTP (Simple Mail Transfer Protocol) or users can accept invites within the settings in the application. We enabled cookies to authenticate users, tailor personalized preferences, and keep the user secure.
Testing was done by our team. We tested all the use cases and wrote the documentation of the test cases.
This software was deployed and hosted on Google Cloud. We have maintained it through automation and continuous configuration integration.
Methodology of development
We used Kanban as a workflow management tool to implement the agile and DevOps process.
June 2021 ongoing
1 Back-end; 1 Front-end developers, 1 QA engineer