The terminal software was designed with several principle aspects:
- Fully upgradeable in the field, including all firmware and application code.
- Open standards based environment to provide a development environment which
is familiar, quick and easy to develop.
- Operating environment open for multiple applications, and the ability to deploy
these applications remotely.
- Flexible and optimized communication module to overcome inherent problems with
wireless networks.
A top level schematic for the architecture is shown in the diagram below:
Java was chosen as the implementation language since as an open standards and portable
language, it is ideal given the principle requirements.