Cash hardware simulation simplifies application development
With Web Device Controller (WDC), S&N has long had a product which allows devices to be integrated into an application on the basis of a strictly technical-oriented interface specification, without requiring knowledge of the specifics of a particular device or its technical control. If the interface has been integrated into an application, all devices that are supported by the respective manufacturer of that interface can be automatically used directly without being adapted to the application.
Precise specification of the technical requirements and processes is the basis of this integration. Standard network technologies, preferably WebServices, are used as an integration layer. A device which is integrated in this way presents itself to the application as a web service.
The target group for this solution are mainly customer environments in which technically complex peripherals are to be integrated into an application. The focus is currently on cash recycling equipment, both for notes as well as coins, as they are becoming increasingly widespread in the banking sector and the commercial sector.
Implement device integration without access to real hardware
Even this type of integration, which is managed without a "real" API because of network orientation and is thus independent of the programming technique used, must first be integrated into any application it wants to use. This usually means that when control of a device is to be implemented, the device must be available to all the developers performing this integration, otherwise result and quality control cannot be carried out.
One shortcoming is that cash recycling systems in particular are quite expensive and difficult to transport in general. Therefore, from a cost point of view, it is not feasible to make the corresponding number of devices available for each developer and each QA employee who is involved in the integration process. As a rule, a single device type is not integrated, but rather a set of devices that are to be used within the scope of a major project. The fact that projects are now being implemented in spatially distributed work environments must also be brought into the equation here.
This is where the WDC simulator product comes in. The WDC simulator simulates the devices to be integrated within a WDC infrastructure in the form of a dialog application. The dialog application visualizes the current state of the simulated device. Using the example of the cash recycling device, this would be the current configuration of money containers and processed notes and coins and the current inventory. Dialog functions provide the ability to track the operation of devices, such as the insertion of specific note and coin denominations in a deposit procedure or withdrawal in a pay-out operation.
Here is an example of a GUI simulator for a note recycler:
Only the device is simulated, NOT the interface or the business logic
It is very clear in this simulation concept that it is not the WDC solution as a whole that is simulated but rather a specific device within the standard WDC product. The interface that the application communicates with and the business logic displayed in the WDC that displays the business processes according to specification, will continue to be displayed by the base product. Infrastructural features such as integration with in-house security or service concepts of each client environment can thus be fully implemented and validated - without "real" cash hardware.
Adjustment of the device behaviour by configuration
Different devices bring different hardware capabilities, and thus different behaviour in a transaction process. In contrast to the POS application, this does actually show in a unified interface display, nevertheless checks need to be made to ensure that all realistic sequence variations are also taken into account in the application. Therefore, it is possible to adjust the WDC simulator to the features and run-time properties of a particular device to be simulated simply by configuring via an XML file. Since there can be a variety of these configurations, which are used alternatively, it is also possible to provide a complete "devices park" at the same time for testing and integration work in a simulation environment.
The overall WDC ATS simulator solution consists of up to four components, whose interaction is illustrated by the diagram.
The WDC kernel comprises the standard product Web Device Controller (WDC) without changes. As can be seen from the diagram, the standard product consists of the actual kernel in which application communication, security and business logic are handled and a series of so-called device adapters with which individual devices can connect.
Inside the kernel, there is an internal standard interface through which the WDC kernel controls the device adapters. The necessary abstraction between the manufacturer-specific device control systems and the WDC kernel takes place in these device adapters.
A device adapter has now been created for the WDC ATS simulator, which makes the device functions mappable for a GUI. As you can see in this arrangement, the WDC kernel cannot identify that the device used is actually being used in a simulation. The device behaviour corresponds exactly to a real device.
The Device Adapter "simulator" constructs the actual logical representation of a simulated device within the WDC kernel. It also ensures that only one GUI session runs on a device at any time, regardless of whether it is Java GUI or Web Service Simulator.
Java GUI simulator is an implementation of the WDC ATS simulation based on a GUI implemented in Java. This GUI implementation communicates directly via the network to the JMS broker.
The simulator device configurations are stored in the installation environment of the Java GUI and are referenced only by the latter.
A separate instance of the JAVA GUI must be started for each device to be simulated. Any number of simulation GUIs can be started in parallel in the same environment, limited only by the available system resources.
The Web Service Simulator is an implementation of the WDC ATS simulation based on a web server. The actual GUI is represented here by a browser that accesses the Web Simulator Service as a web server. Using the Web Service Simulator any number of simulation sessions can be offered in parallel, limited only by the available system resources. A restriction arises only when using the Interface Specification 2.0.
The currently available version of the web ATS simulator does NOT allow you to individually configure any device properties to fictitious units, but rather follows the philosophy that devices to be simulated should also exist in reality.
That is why prepared device configurations, which exist as real devices and are supported by WDC, are shipped with the simulator software. This refers not only to device types, but also to their specific hardware configuration in various projects.
Currently, the following devices can be provided as a simulation:
- Note Recycler Wincor Nixdorf ProCash6100xe
- Note Recycler Wincor Nixdorf Cineo 6010, 6020, 6030, 6040, 6050
- Note Recycler Glory RBG200
- Coin Recycler Wincor Nixdorf iCash15e + Cineo1020
- Coin Recycler Glory CI10C
Other configurations can be created and provided by S & N as required.
Deployments for various areas of application
Device simulations can be used at different points and at different stages of the development process. The WDC simulator is therefore offered in several deployment versions - tailored to the needs of your environment.
Developer-Deployment for Windows Workstations
To support the development work, it is advantageous for the developer to have immediate access to all features of the WDC development environment. For this reason, it is possible to install the WDC simulator along with the required components of the base product as a stand-alone installation on a Windows-based developer workstation or on a suitable available system in the development environment.
Controller Deployment with local or remote GUI
This deployment variant integrates into the customer environment as a "real" cash machine, in other words, it is installed on controller hardware, just as it is used by the device suppliers in the roll-out of the device. The controller is integrated in the customer environment in the same manner as would occur with a real device, except the device configuration in the WDC is adapted to the simulator.
Controller Deployment with Web-Based GUI
This variant corresponds to the deployment of the variant described above. However, it does not require components to be installed by the user, browser access to a specific URL on the WDC controller is sufficient. The user here has no direct access to the configuration, but also does not require separate installation components.