JavaPOS TM FAQ. What is an FAQ? What is JavaPOS?



Similar documents
JavaPOS TM FAQ. What is an FAQ? What is JavaPOS?

JavaPOS TM Introduction: 1

Example of Standard API

Java POS (Java for Retail POS) README FILE for the Wincor Nixdorf JavaPOS Package

Network Station - Thin Client Computing - Overview

New SurePOS 700 Front Service Cover features offer secure, reliable front access to the system unit

Mobile Application Languages XML, Java, J2ME and JavaCard Lesson 04 Java

INTRODUCTION TO JAVA PROGRAMMING LANGUAGE

Chapter 5: System Software: Operating Systems and Utility Programs

Installation Guide PSP Installation. Rev SRP-350plusII SRP-352plusII.

Lesson 06: Basics of Software Development (W02D2

CS 3530 Operating Systems. L02 OS Intro Part 1 Dr. Ken Hoganson

Characteristics of Java (Optional) Y. Daniel Liang Supplement for Introduction to Java Programming

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Availability Digest. Raima s High-Availability Embedded Database December 2011

Chapter 8 Objectives. Chapter 8 Operating Systems and Utility Programs. Operating Systems. Operating Systems. Operating Systems.

Introduction to Virtual Machines

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Virtual Desktop Infrastructure Planning Overview

SwiftStack Filesystem Gateway Architecture

Click to view Web Link, click Chapter 8, Click Web Link from left navigation, then click BIOS below Chapter 8 p. 395 Fig. 8-4.

Parallels Virtuozzo Containers

Double-Take Replication in the VMware Environment: Building DR solutions using Double-Take and VMware Infrastructure and VMware Server

Software: Systems and Application Software

Outline: Operating Systems

System Structures. Services Interface Structure

Enterprise-class desktop virtualization with NComputing. Clear the hurdles that block you from getting ahead. Whitepaper

APPLICATION VIRTUALIZATION TECHNOLOGIES WHITEPAPER

VMware Virtualization and Software Development

JAVA WEB START OVERVIEW

Multi-core Programming System Overview

A guide to CLARiSUITE TM network solutions

Operating System Structures

Cloud Computing for Control Systems CERN Openlab Summer Student Program 9/9/2011 ARSALAAN AHMED SHAIKH

Using AnywhereUSB to Connect USB Devices

12. Introduction to Virtual Machines

Empress Embedded Database. for. Medical Systems

CS3600 SYSTEMS AND NETWORKS

What is BEETLE mopos? BEETLE /mopos

DB2 Connect for NT and the Microsoft Windows NT Load Balancing Service

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Java Card. Smartcards. Demos. . p.1/30

Alliance Key Manager A Solution Brief for Technical Implementers

THE IMPORTANCE OF CODE SIGNING TECHNICAL NOTE 02/2005

picojava TM : A Hardware Implementation of the Java Virtual Machine

Regional SEE-GRID-SCI Training for Site Administrators Institute of Physics Belgrade March 5-6, 2009

Expanding the Value of the Windows Terminal Server Investment. HOBLink JWT HOB Enhanced Terminal Services

9/26/2011. What is Virtualization? What are the different types of virtualization.

Installing, Configuring and Administering Microsoft Windows

Kernel Types System Calls. Operating Systems. Autumn 2013 CS4023

Kaseya IT Automation Framework

The XenServer Product Family:

Managing a Fibre Channel Storage Area Network

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

System Requirements. 60GB free after OS and Updates, Raid 5 or Hybrid SSD array

Chapter 3: Operating-System Structures. Common System Components

Active Directory - User, group, and computer account management in active directory on a domain controller. - User and group access and permissions.

SMALL BUSINESS OUTSOURCING

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

Java TM WorkShop TM and Beyond. Joe Keller Director of Marketing SunSoft Developer Products

Release Version 4.1 The 2X Software Server Based Computing Guide

Chapter 8 Operating Systems and Utility Programs

How To Connect To Bloomerg.Com With A Network Card From A Powerline To A Powerpoint Terminal On A Microsoft Powerbook (Powerline) On A Blackberry Or Ipnet (Powerbook) On An Ipnet Box On

A+ Guide to Software: Managing, Maintaining, and Troubleshooting, 5e. Chapter 3 Installing Windows

Chapter 14 Virtual Machines

Configuring Apache Derby for Performance and Durability Olav Sandstå

Red Hat VDI. David Simmons

Quick Installation. A Series of Intelligent Bar Code Reader with NeuroFuzzy Decoding. Quick Installation

WHITE PAPER PAPER. Retail Store Automation Systems Management and the Role of the Bar Code Scanner. What Is Retail Store Automation Management?

INUVIKA OPEN VIRTUAL DESKTOP FOUNDATION SERVER

Enterprise Storage Solution for Hyper-V Private Cloud and VDI Deployments using Sanbolic s Melio Cloud Software Suite April 2011

How To Use The Dcml Framework

Table Of Contents. - Microsoft Windows - WINDOWS XP - IMPLEMENTING & SUPPORTING MICROSOFT WINDOWS XP PROFESSIONAL...10

Embedded Operating Systems in a Point of Sale Environment. White Paper

RED HAT ENTERPRISE VIRTUALIZATION

Proposal for Virtual Private Server Provisioning

Windows Server 2008 R2 Essentials

An Easier Way for Cross-Platform Data Acquisition Application Development

Lecture 6: Operating Systems and Utility Programs

POS software: Microsoft Dynamics - Point of Sale FAQ

Application Servers - BEA WebLogic. Installing the Application Server

Ahsay BackupBox v1.0. Deployment Guide. Ahsay TM Online Backup - Development Department

Niagara IT Manager s Guide

Redbooks Redpaper. IBM TotalStorage NAS Advantages of the Windows Powered OS. Roland Tretau

DIABLO VALLEY COLLEGE CATALOG

SCO Virtualization Presentation to Customers

What Is the Java TM 2 Platform, Enterprise Edition?

E-Business Technologies

Chapter 3 Operating-System Structures

Embedded Operating Systems Selection Guide

Remote Infrastructure Support Services & Managed IT Services

Building Reliable, Scalable AR System Solutions. High-Availability. White Paper

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Suh yun Ki m (KIS T) (KIS suhyunk@.com

Transcription:

JavaPOS TM FAQ What is an FAQ? An FAQ is a list of frequently asked questions. In addition to supplying background material, this document will provide answers for the most frequently asked questions about JavaPOS, posted by visitors to our website. What is JavaPOS? It was recognized early on that the emergence of the Java language on the computing scene offered several major advantages to the developers of retail applications. The JavaPOS (Java for Point Of Sale) standards committee was formed by a collection of retail vendors and end users to examine the ways in which these Java advantages could best be exploited in the retail environment. The JavaPOS programming standard v1.2 (see http://www.javapos.com) was the end result of ten months of effort by this committee. It was followed by JavaPOS v1.3, which defined Java interfaces for three additional retail POS devices. 1

What is the relationship between the OPOS and JavaPOS standards? The OLE Point of Sale (OPOS) standard was used as the starting point for the JavaPOS effort. There were several reasons for this approach. OPOS is a good first step The primary goal of OPOS is to permit retail application developers to be independent of the proprietary details (ex: special escape sequences) of the retail peripheral devices they accessed. This was the starting point for the larger goal facing the JavaPOS committee: to permit the retail application developer to be independent of the proprietary details of BOTH the peripheral devices they access AND the POS platform on which the application itself runs. For example, the JavaPOS standard eliminates the OPOS dependency on the NT Registry. Reuse of Retail Peripheral Device Models Over 90% of the voluminous OPOS documentation is devoted to specifying the properties, events, methods and error codes of the seventeen (as of OPOS v1.3) defined retail peripheral devices. These device models are both language AND platform independent, which allows their direct incorporation into the JavaPOS standard. Reduced Learning Curves Many retail application developers already have experience using the OPOS APIs, and many retail hardware vendors have experience implementing the OPOS Control APIs. This approach therefore reduces the learning curve for the very audience JavaPOS is targeted at. 2 JavaPOS FAQ December 17, 1998

Two-Phase Deployment By sharing the same device models as OPOS, it becomes possible to use a generic OPOS bridge to map existing OPOS Device Controls and Services into their JavaPOS equivalents. One example of such a bridge has been made freely available by Siemens Nixdorf, and others have been created by NCR and Datafit Corporation. This bridging capability provides an early means of prototyping and testing JavaPOS-compliant retail applications on existing POS terminals. What is the relationship between the UnifiedPOS and JavaPOS standards? The UnifiedPOS committee was formed at the request of leading retailers in the United States, to ensure that future (post v1.4) releases of JavaPOS and OPOS would continue to share the same POS device architecture (i.e. each defined device type would possess the identical set of properties, methods and events in both standards). The resulting UnifiedPOS retail device standard is both O/S independent and language neutral. Support for any new device types in UnifiedPOS will be quickly mapped to the Windows/OLE platform (by OPOS) and to the Java platform (by JavaPOS). Since the Java platform is available everywhere (including on Windows), JavaPOS therefore represents the platform independent mapping of the platform independent retail device architecture defined by UnifiedPOS. What are the advantages that JavaPOS brings to retail Point of Sale? The JavaPOS standard provides several significant advantages over OPOS: Reduced POS Terminal Costs Applications written in the Java language execute by having a Java Virtual Machine (JVM) interpret their platform independent byte codes. These applications will therefore execute wherever such a JVM is present JavaPOSTM FAQ 3

By lowering the minimum requirements for a Point of Sale terminal to a system capable of supporting a single JVM, the JavaPOS standard enables retail applications to be run on thin client platforms which are potentially less costly than more traditional Windows95/98 configurations. The minimal configuration requirements of such thin retail clients allow the possibility of sidegrading (reuse of) existing store hardware (including Intel computers) as Java Point Of Sale terminals. Platform Independence The JavaPOS standard utilizes the JVM as its retail platform, whether present in a browser, an operating system, or directly embedded within the microcode of a specialized computer chip. This language-centric platform is decoupled from any hardware or operating system specifics. Therefore any JavaPOS-compliant retail application is capable of running equally well on a thick client Windows95/98, SCO or JavaPC system, or on a thin client JavaOS or Windows-CE system. The only remaining proprietary element in a JavaPOS-compliant retail application is then the application code itself. Reduced administration costs of thin clients The capability of the Java language platform to reside on thin clients offers additional cost savings to those sites that run JavaPOS-compliant applications. If the client portion of a retail application is written as a Java applet or loadable application, all of the application code resides on the in-store server. This means that installing or upgrading the POS software on the server results in the automatic loading of the new software into each local POS terminal, when the terminal is next booted. The system administrator need only install a retail application once, and it becomes installed everywhere in the store. Fix the application once, and it is fixed everywhere. The absence of persistent storage on a thin client also eliminates the need to perform POS terminal data backup and recovery. 4 JavaPOS FAQ December 17, 1998

Is JavaPOS a complete standard? What are the actual JavaPOS Deliverables? For sites with large numbers of POS terminals, these advantages can result in a considerable savings in system administrative overhead costs. JavaPOS is a complete standard in exactly the same sense that OPOS is. It maps the UnifiedPOS architecture to a widely available platform. It standardizes the interfaces used by retail POS applications to control POS devices. It standardizes the interfaces supported by the device drivers which service requests from these applications. It defines a set of Java language APIs for these device drivers to locate and access their respective peripherals. The JavaPOS standards committee was chartered with producing the following set of deliverables: JavaPOS Architectural Whitepaper This whitepaper describes the philosophy and architecture of the JavaPOS standard and serves as an introduction to the other documents. JavaPOS Guide for Application and Device Programmers This document defines the JavaPOS standard. It consists of two main sections. The first is comparable in many ways to the OPOS Application Programmer s Guide. It defines the application-level Java language interface to the set of all defined retail peripheral devices. It is targeted at both retail application and system developers. The second is comparable in many ways to the OPOS Control Programmer s Guide. It is targeted primarily at those system developers who will write a JavaPOS Device Service. JavaPOSTM FAQ 5

JavaPOS Frequently Asked Questions (FAQ) List Answers to a set of frequently asked questions concerning the JavaPOS standard. You are in fact reading this FAQ now. Java Language Source Files These files provide the foundation upon which JavaPOS-compliant applications and device services must be constructed. They are all available on the JavaPOS web site. 1. JavaPOS Codes The collection of all JavaPOS status and error codes 2. JavaPOS Exceptions and Events The set of all defined JavaPOS Exception and Event subclasses 3. Retail Device Controls The base Device Control Interface, and for each retail device category (ex: Scanner, Cash Drawer): a. A derived JavaPOS v1.3 Device Control Interface b. A set of Device Control constants c. A completely implemented Device Control class 4. Retail Device Services The base Device Service Interface A derived JavaPOS v1.3 Device Server Interface for each category. A sample device service. 6 JavaPOS FAQ December 17, 1998

Is a JavaPOS thin client solution inherently less robust than a thick client one? Interestingly in either case a Java-based application is likely to be more robust than its C or C++ counterpart. This is due to the features of the Java language itself; in particular Java s support for automatic garbage collection, elimination of pointers and bounded array references. However assume that the robustness referred to here will be measured by the ability of an application to keep operating when communication has been lost with the in-store server. To answer this question, both types of POS terminals must be examined. Thick Client Retail applications running on a thick client POS terminal can operate somewhat independently of the in-store server because of information stored on local disks. This might include the retail POS application itself, prices, bar code strings, device drivers and peripheral configuration data. The in-store server would be accessed primarily to post purchases and other transactions, and for retrieval of the global information necessary to support such features as gift registry and targeted coupon generation. This relative independence comes at the cost of increased administrative overhead. This is due to the need to keep the local persistent information (both applications and data) current. Typically this requires some level of manual system maintenance to be performed directly upon each such POS terminal in the store. Thin Client. Retail applications running on thin client POS terminals generally get all the information they require to perform their functions at boot time. This means that all data updates are made once to the in-store server, and automatically reflected in each POS terminal the next time it is booted. However once the boot process is completed, there is no reason that a thin client JavaPOS terminal application need be any less robust than its thick client equivalent. Necessary information can be stored dynamically in flash JavaPOSTM FAQ 7

memory or in a local caching disk. The same transaction buffering capability typically provided by POS application software works identically on both thick and thin client POS terminals. Furthermore the boot information itself can be stored locally as well, being automatically updated only when a change has been made on the corresponding file stored on the in-store server. The JavaPOS thin client eliminates the need to perform local disk backup and restore, as well as other costly thick client POS terminal administrative tasks such as application installation, bugfix and removal. How do you deliver JavaPOS on a Windows Terminal There is a choice: you can either use Pure Java device services, or you can use an OPOS bridge. Windows 95 and Windows NT can be converted into standard Java platforms with the addition of the 100% pure Java JVM which is freely available from JavaSoft, and the Java Communications API extensions (also freely available from JavaSoft). Taken together, these support I/O to and from devices located off either a serial or parallel port. This means that the same pure Java Device Service that you run on a typical NC operating system such as JavaOS, will run equally well on a thick client Windows95 system. Alternatively, if you do not have pure Java Device Services for the devices you want to drive, but do have preexisting OPOS drivers, you can use a JavaPOS/OPOS bridge. A JavaPOS/OPOS bridge delivers the complete JavaPOS functionality to your Java POS application using your OPOS drivers. It can do so because the device functionality of JavaPOS exactly mirrors that of OPOS. Such bridges have been demonstrated by SNI, NCR and Datafit, and other companies are have developed them as well. Note that a JavaPOS/OPOS bridge is not Pure Java - it invokes native code written in C. You will need a different bridge depending on whether you use a 100% pure JVM from JavaSoft, IBM, Apple or Symantec, or use Microsoft s version of the VM which relies on a different method of invoking native code. 8 JavaPOS FAQ December 17, 1998

When can I start implementing my own JavaPOS solution? By using an OPOS bridge (see above), JavaPOS-compliant retail applications can be written today and deployed on Windows 95/NT systems. Likewise, fully compliant JavaPOS solutions can be implemented today on JavaOS. The full implementation of a JavaPOS solution requires creation of a set of Java Device Services, which can also be written once, and run everywhere. Such Devices Services in turn require POS terminal run-time support for the Java APIs. Taken together, they comprise the Java Device Driver Kit (JDDK). 1. Java Communications 2.0 Allows the Device Service to identify those communication ports present on the physical POS Terminal platform which are connected to actual retail peripheral devices. Available now from JavaSoft for JDK1.1.4 release and later on both Solaris and Windows/NT. Already incorporated into JavaOS. Soon to be incorporated into Linux and SCO among other platforms. 2. Java Service Loader (JSL) An enhancement to the normal Java Class Loader. It decouples the name used to request instantiation of a Java object of a new class, from the network location, actual class name and server class path. The JSL will be available as a 100% pure Java package in the first quarter of 1999, at which point it becomes available everywhere. It is currently publicly available only for JavaOS, and in a restricted alpha release for Windows95/NT platforms. 3. Java System Database Supports the naming and device configuration management requirements of POS Terminal platforms. Although originally designed to meet the specific needs of the retail industry, the JSD has proven general enough to be included in other device-centric platform standards such as those for Banking ATMs and factory automation controllers. JavaPOSTM FAQ 9

The JSD will be available as a 100% pure Java package in the first quarter of 1999, at which point it becomes available everywhere. It is currently publicly available only for JavaOS, and in a restricted alpha release for Windows95/NT platforms. So retail ISVs can start developing and testing JavaPOS-compliant Device Services on thin client JavaOS today, and have them run UNCHANGED on thick client Windows (or any other operating system that supports the Java Communications API), starting in Q1 1999. In the interim, JavaPOS-compliant applications may be developed and tested on Windows if they incorporate an OPOS bridge to connect to existing OPOS Device Services. How do I get my comments in for consideration by the JavaPOS committee? Post them directly from the JavaPOS web site. All such comments will be reviewed and responded to by members of the JavaPOS committee. Is it possible to write efficient, robust 100% Pure Java device drivers? The part of a device driver that needs to be so efficient that you might consider writing it in assembler, or at least C, is the low-level port handling. With Java, the handling of the serial, parallel or USB port itself is done within the Java Communications 2.0 API implementation. Support for this API is available today from JavaSoft for the JDK 1.1.4 release and above on Solaris or Windows, and is supplied directly with JavaOS. Additional ports are underway. The JVM which executes the Java byte codes of the device driver is compiled from native code for the target machine, using assembler or C, as the JVM writer deems appropriate. The 100% pure Java Device Service is thus given platform independence and is responsible only for translating the byte streams between the program and the relevant port. For instance, it might interpret a program command "cut paper" as "Escape X Y". 10 JavaPOS FAQ December 17, 1998

The Java language is ideally suited to doing this kind of translation, and, in practice, delivers more than adequate efficiency, especially when the driver code has been precompiled or JIT (Just In Time) compiled. In the latter cases, the overall performance of Java is comparable to native-mode compiled C++. How can I prepare for JavaPOS? Three main areas need to be addressed in your IT planning for JavaPOS: infrastructure, asset reusability and organization. For infrastructure, you will minimally need to support TCP/IP on the local area network in the store. If IP is not present you will need to develop an IP addressing scheme and determine how you are going to administer it. DHCP and DNS will provide lots of flexibility but you will need to architect addressing properly and consider the impact on your enterprise. Depending on the size of your stores and your Wide Area Network (WAN) you may need an httpd process running on your in-store servers. You will need to budget headcount and capital for the infrastructure improvements. If you are just getting started with an IP WAN make sure to address security issues up front. Firewalls and access lists will affect your network design and overall cost. Asset reusability planning refers to determining if your existing registers and servers can be utilized. Depending on your requirements they may need to be upgraded or replaced. While your vendor may offer some assistance, you should dedicate some staff to prototyping and evaluating after market upgrade solutions. You have to consider both the hardware characteristics and the operating software you are going to use. The registers are likely to run a DOS variant now, with MS Windows and JavaOS as options for the future. The investigation effort should provide details for the capital plan. If you outsource development the organizational impact is minimized. If you develop your own applications you need to consider if your staff is capable of taking on a new development paradigm. Determine the level of training your existing personnel need and whether you need to supplement their skills with new hires and/or consultants. It would be wise to pick a small project and use this as a training opportunity for your team. A kiosk project for example may JavaPOSTM FAQ 11

be a good one to gain experience on before taking on POS. During the test project, validate everything; object design skills, development tools, operating environment,... You also need to determine if your organization s structure will complicate things and if so, whether you need to reorganize. An advantage of writing in Java is the ability to reuse objects across a variety of platforms. For example, a POS object could be used in a handheld terminal or in an internet application. If the POS, handheld and internet programming is done in three distinct groups you have to account for extending the object for specific needs and the impact one groups changes will have on the others. You may need to establish "owners" of reusable objects to avoid versioning problems while leveraging existing expertise. What plans are there for international coverage? Using an international perspective, the JavaPOS-Europe and JavaPOS-Japan committee members are expected to significantly aid design efforts to map the new Java I18N capabilities onto the retail POS application space. Who is currently planning JavaPOS-based retail solutions? Telxon Corporation Telxon Corporation is using the specification to integrate the applicable POS peripherals to their mobile Pen-based, and PTC devices. Scanners, mag-stripe readers, printers, keyboards, and displays are among the devices common to all these products, when used in the retail environment. Telxon Corporation is committed to developing and providing JavaPOS compliant services for all their devices where the specification applies. In the view of JavaPOS committee member Telxon, the JavaPOS standard allows the retailer to easily mix fixed devices and mobile RF devices throughout their enterprise, without having to incur the expense of learning and maintaining an entirely different development platform. See: 12 JavaPOS FAQ December 17, 1998

http://www.telxon.com or http://www.telxon.com/javasol.htm MGV MGV believes the successful adoption of Java in the retail industry will yield significant benefits for our customers. We therefore intend to use our technical expertise at both the systems and applications level to ensure that the JavaPOS initiative can succeed in our industry. We will leverage our extensive retail domain knowledge and our strong relationships with both retailers and alliance partners to make JavaPOS a success and MGV JavaPOS solutions a significant factor in that success. Datafit Datafit has built a complete POS system written in Pure Java, called BeanStore. The system comprises a base framework, together with a toolset, itself written in Pure Java, that allows the appearance and functionality of the application to be tailored for the retailer. BeanStore is JavaPOS compliant. It can be used equally well with Pure Java device drivers, or using a bridge from JavaPOS to OPOS drivers, also developed by Datafit, for use on Wintel platforms. BeanStore has been tested on Wintel POS terminals, such as the IBM 4694, and on Network Computers with attached POS peripherals, including the Sun JavaStation and IBM NW1000. What platforms will support this specification? Complete platform support for the JavaPOS standard is already available on JavaOS and will be available on Windows 95/NT by Q1 1999. After that point, any platform which provides support for at least JDK 1.1.4 and the Java Communication 2.0 API will be a JavaPOS-enabled platform. JavaPOSTM FAQ 13

What are JavaPOS plans for 1999? The JavaPOS committee plans to expend efforts investigating the following issues in the months ahead. The results of this research may influence future versions of the JavaPOS standard. Additional Security Hooks The additional security features of the JDK 1.2 release may be incorporated into the JavaPOS standard to allow assignment of security constraints to Java applications and applets (ex: certain application can only be run by certain users). From a security point of view then, all JavaPOS applications would cease to be identical. Cross-JVM Communication Capabilities At present, there are several different intercommunication mechanisms that may be used to connect Java applets or applications executing under separate JVMs. Standardization on a single Java-based intercommunication mechanism for retail, wrapped in an easy-to-use interface such as JavaIDL or RMI, is anticipated to be a future feature of JavaPOS. Tracking Future OPOS Releases Work is currently underway to provide a JavaPOS mapping for the Credit Authorization Terminal (CAT) introduced in OPOS 1.4 After this point, it is anticipated that all future retail POS device specifications will be issued by the UnifiedPOS committee, and then adopted simultaneously by the JavaPOS and OPOS committees. Rather than simply tracking OPOS then, the JavaPOS committee will become a primary source for the creation and submittal of new device proposals to the UnifiedPOS committee. 14 JavaPOS FAQ December 17, 1998

Configuration Management & Administration A new JavaPOS whitepaper is being developed which will address the issues involved in administering thin client POS terminals in a retail setting. OPOS --> JavaPOS Migration A clear OPOS to JavaPOS migration strategy is being developed. Its overarching goal is to free existing POS applications from their dependency on the Windows operating system, and allow end users and ISVs the same flexibility in selecting an OS and hardware platform vendor that they have today in selecting among multiple suppliers for each POS device type. In brief, the strategy consists of a few well defined steps: 1. Use an OPOS bridge to access existing OPOS Device Services. This allows JavaPOS-compliant applications to be written today, which support the set of existing devices in the store. Such applications will only run on Windows however. 2. As true JavaPOS-compliant Device Services appear (developed and tested on any platform which supports the JDDK.. including Windows) the OPOS bridge begins to narrow. Once the last Java Device Service appears, the OPOS bridge can be discarded altogether. 3. At this point the entire retail POS application (including the JavaPOS Device Services) may now be installed and run on ANY JavaPOS-compliant platform (thick or thin client) without change. JavaPOSTM FAQ 15

16 JavaPOS FAQ December 17, 1998