The operating system of the platform may be a particular release of UNIX, OS/2, DOS, Windows, Windows-NT, or an in-house operating system.
The application developer has to be aware of the operating system, as implementing applications will heavily depend on the operating system. For example, if the application has to handle more than one line per system then there is resource sharing, which is more easy to manage with a multi-task operating system than with a single task system like DOS. If the available technology runs under DOS then a spooling mechanism is to be used and should be clearly documented. Of course if the application developer is supplied with application development tools that make the operating system transparent for him then there is no need for that.
If the adopted speech technology uses particular hardware for which drivers are provided, then the application developer may need to integrate them within his own software development environment. He has to know how to do that.
High level application programming interfaces may be provided and thus the application developer may use them directly with no calls to the drivers . Such application programming interfaces may be coherent with the best known ones such as TAPI , TSAPI or the planned SCSA TAO (SCSA Telephony Application Object ). The aim of such APIs is to simplify the development of telephony applications independently of the technology providers and the hardware.
The application developer should know whether the technology he is buying incorporates such APIs as this will allow him to port his application easily to a new technology or a platform if required.
Implementing voice-based applications may be achieved through the use of APIs as mentioned above or through user-friendly easy-to-use software called an application generator. The first strategy involves a programming task to be carried out by an expert who has to avoid many problems related to the integration of telecommunication devices and computing facilities. The use of an application generator permits building up of applications using a high level script language or very popular Graphical User Interfaces (GUIs) . In both cases no specific know-how about hardware drivers and so on is required.
High level script language s allow the developer to write his application using a ``natural like'' language while graphically based languages allow the user to draw his application as a flow chart using the icons provided. The script functions or the icons are pre-programmed functions.
In both cases the application developer has to know what the pre-programmed functions are and - if expansion is provided for - how he can add a customised function of his own. Some generators allow functions to be written using a programming language (like C) and incorporate them together with the other functions.
Some application generators offer the possibility of generating either C-code or a script language . This may allow experts to customise the application better. The application developer should be informed about this.