DIVI – philosophy of action

The information about the launch of DIVI was evoked a good response. We would like to thank the Geoforum and Gisplay editing offices for the articles, and we want to thank You for your e-mails with questions about access and kind words. The following article aims at explaining the logic which we followed when creating DIVI, and the way it meets its primary objective, i.e. improvement in functioning of companies through the use of GIS.
We have created many web applications whose primary component is a map but the main goal is to reach information. Reaching reliable and up-to-date information in a quick and convenient way for people who do not need to know what GIS, coordinate systems, layers, and geoportals are. These people treat a map as an ordinary website and expect simplicity, speed, and responsiveness.
The application preparation phase always looked the same: it began with development of the environment, installation of several applications (database, GIS data server, back-end application to support the database, etc.), then accesses were secured, connections configured, etc. That generated costs in the process but also later, because the entire environment had to be monitored, updated, etc. The development of the web application itself, which was what the client expected (and for what he supposedly paid) was largely the shortest part of the implementation. Ultimately, the client received an application that consisted of several pages and its cost was high. We also had little fun when creating back-ends instead of useful applications.
We decided that we needed a reliable tool thanks to which we will take care of the problem of back-ends (what cannot be seen) that are used to create mapping applications once and for all. We decided to create a tool that would allow us to focus on developing solutions adapted to clients’ models and business processes without the need to put something together “on the back”. Moreover, we decided to solve some other problems that often appear in GIS, for example, data editing by many people, history of editing, giving attachments to objects, etc. This is how the DIVI concept was created. After 12 months of work of a group of programmers we decided that we can show our solution to the world.

What exactly is DIVI?

DIVI consists of 4 integrated components.

  1. server application (DIVI.io)
  2. plug-in for QGIS
  3. mobile application (browser and data collector)
  4. DIVI API

to which users gain access after creating an account (for the company) and creating users (identified by login and password).

Server application (integrated database, GIS data server, and a few others) with access via a web browser after logging in (Fig.1) is the main component and the brain of DIVI. This is where data is stored (spatial and non-spatial, and attachments to objects), account-assigned users are managed (new ones are created, permissions to specific layers and applications are given), the entire history of data editing is kept, and decisions on data availability are made (in the form of rasters, vectors, and interactive maps). Additionally, data can be created and edited in a convenient manager (Fig.2), files with spatial data can be uploaded, data can be geocoded, given symbolization, WMS and background maps can be read, and more. It is a specific management console.

The QGIS plugin was designed to enable creation of advanced mapping compositions and advanced editing in QGIS Desktop. Its operation is very simple. Once logged in, we get a list of layers to which we have access on the DIVI account. These layers can be added to a QGIS project. From now on, we can edit them like any other layer (we can use the field calculator, advanced editing tools, CAD Tools, etc.). One the changes are saved the information about the editing is sent to DIVI, and the history browser shows information on who and when edited the data. This is very helpful for dynamic data sets.

The DIVI Mobile Applicationis both a browser and a data collector. Once installed on a mobile device, use your user name and DIVI password to log in. We get a list of projects to which we are authorised. After moving to the project we see a map with data and all backings and WMSs configured in DIVI.io. After selecting the active layer we can identify objects, edit attributes, add pictures directly from a camera, or add attachments from the memory of a device. Geographic location as well as addition of points, lines and polygons is possible. Obviously, all changes are saved online and can be browsed in the history of editing. It is a very convenient tool for field surveys and search for objects in the field.

DIVI API is our pride. All functions and data are available from the level of REST API. It is the basis for building your own applications (web and mobile) on the basis of DIVI.

Why so? Modern technologies require flexibility and possibilities to integrate with existing systems in the field of data exchange. There are various needs for GIS and we found that there is no point in trying to meet them in a single application “to everything”. “Clicking” on applications without the need for programming is always a compromise between usability and functionality with capabilities of the system. At the end of the day, no one is fully satisfied, and something still needs to be programmed. That is why we have focused on open APIs, and the possibility to create additional applications (on our own or by employing a different company). This model has already been proven in the world, and it works well with our clients too. This solution is cost-effective because you can have one engine to support multiple business processes within the company. It is also designed for agile, incremental development of the use of GIS without the company’s large initial financial outlay. Subsequent articles present applications that already operate on this principle. What is more: on our repository at GitHub we publish a code of model applications, and plan a series of articles known as “developer’s guide” from which every person will be able to learn how to create applications for visualizing, editing, filtering and data creating using HTML and JavaScript only.

What is next?

We are not slowing down and continue to work on the development of DIVI by adding new functionality, correcting mistakes, and focusing on ergonomics of use and promotion. We would like to thank our existing clients for their trust and, of course, we are hoping to win new ones 🙂