In software engineering, we are constantly seeking new development technologies and methodologies that can reduce software complexity, improve comprehensibility, promote reuse, and facilitate evolution of the software across its lifecycle.
One of the many design principles used to accomplish this is separation of concern, which involves dividing the application in distinct sections to address the separate concerns of the system. This principle can be applied at many different levels of the software abstraction.
A good practical example in the BPS Geodatabase is the separation between the presentation layer (frontend) and the data access layer (backend). The presentation layer is responsible for the user interface. It is where our users navigate through our data via maps, tables, plots and specialized tools to build their knowledge on the different petroleum systems around the Brazilian basins.
The data access layer is where all the data is stored and logically organized. The organization of the data is one step in a chain of responsibilities we are committed to: Processing data to be used in context and have meaning for petroleum systems analysis.
The separation of these two layers (front and back) opens up the possibility of delivering our backend layer directly to our clients and partners who would like to build or use their own software suite for petroleum systems analysis, meshing their own proprietary data with the BPS Geodatabase datasets.
To help with this process, the BPS Geodatabase provides a REST API that can be used with an automated code to help data managers retrieve data directly from the backend
To learn more about this and other technical benefits of using the BPS Geodatabase, please check out our paper on the subject for Rio Oil and Gas 2020: API FIST BUT UX JUST AFTER.