Software that already provides many essential functions has the advantage that the uniform data pool avoids duplicate data storage and interfaces are not necessary. But even with such so-called integrated software, it is sometimes necessary to fall back on other software solutions. In this case, the interfaces are essential for the smooth running of all software functions. The right interface concept is particularly important.
At the beginning is the interface concept
Programming an interface is not that difficult with the right preparation. This is usually based on an interface concept, which fields there are and what they contain (e.g. data type, field length or number of decimal places). The interface description also shows which file format is used for exchange (mostly .csv or .xml). The entire conceptual design of the interface should be well documented. Especially the data concept and the operation must be explained so that it enables other users to use or extend the interface. In this way, the use of the interface can become self-evident for every new user.
How the interfaces exchange the data
It is also possible to enter the data directly into the Database of the other software. However, there is then always the danger that the users cannot work in the software that receives the data because the tables are blocked. Therefore, it is better if the data exchange is processed via a "clipboard". The software then retrieves the data to be received when the workload permits.
Interface monitoring
With "simple" interfaces, data can be exchanged quickly between two software solutions. However, there is usually little transparency for the user regarding the transferred data. Possible transmission errors are not noticed. In this case, interface monitoring becomes necessary.
This can be used to log the entire data transfer. Transmission errors are displayed or smaller data transfers - in case of faulty data - are aborted. In any case, these data records can be corrected manually. The user can also delete entire data transfers and carry them out again.
Compared to the "simple" interfaces, the development of interface monitoring is quite complex. It is therefore worthwhile if a corresponding tool is already available for the software as a add on is available or integrated in the standard.