Browse Prior Art Database

(RSS) Method and Appratus for Distributed Open Systems Device Drivers Functional Verification Test Disclosure Number: IPCOM000019251D
Original Publication Date: 2003-Sep-08
Included in the Prior Art Database: 2003-Sep-08
Document File: 3 page(s) / 102K

Publishing Venue



We propose a new method of performing Functional Verification Test (FVT) for Open Systems Device Drivers over a heterogeneous network of Point-of-Sale (POS) terminals. Traditionally, FVT is performed on a per device and per I/O interface basis, locally on the machine that the device is attached to. Given the number of devices, I/O interfaces, operating systems and POS terminal models that IBM needs to support, this method of performing FVT is time consuming and inefficient. The proposed method has a client that connects to multiple terminals with different operating systems loaded. Each terminal is connected to the same model of the device under test, with different I/O connections. Under this method, a single instruction from the client is multicasted to the connected terminals, thereby exercising all attached devices simultaneously. The calls will be synchronized at the client machine so that the next instruction will not be issued before all devices complete the previous one. Execution results will be communicated back to the client, compared with the expected results and captured in a log file. We show that this new method of performing FVT reduces the effort needed tremendously. The method provides the level of efficiency necessary to perform functional test of open systems device drivers across a myriad of operating systems. With the proliferation of supported operating systems, this method spells the strategy that major POS developers require to efficiently test the device drivers.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 53% of the total text.

Page 1 of 3

  (RSS) Method and Appratus for Distributed Open Systems Device Drivers Functional Verification Test

      We compute the estimated savings in effort when performing printer testing using the new method as compared to the existing method. The computation is based on the assumption that we run a FULL test on each of the supported combination.

I/O Interface Avg Testcase per I/O = 900

S/N Supported

           ParallelPrinter RS232 RS485 USB Total number of testcases for all supported I/O 1 Model 4 X X 1800
2 Model 4A X X 1800
3 Model 4R X X 1800
4 4610-TI1/2 X X X 2700
5 4610-TI3/4 X X X 2700
6 4610-TI5 X X X 2700
7 4610-TN3/4 X X X 2700
8 4610-TN5 X X X 2700
9 4610-TM6/7 X X X 2700
10 4610-TF6/7 X X X 2700
11 4689 X X 1800
12 4835 X X 1800

Total Testcases 27900

Existing Method

    Number of testcases that needs to be executed for 1 OS = 27900 Number of operating system supported = 5 (Win98,NT,2K,XP,Linux) Number of testcases that needs to be executed for 5 OS on 1 machine = 5 * 27900 = 139500.

    Assume that we take an average of 2 mins to execute 1 testcase. Time taken to execute all testcases = 139500 * 2 / 60 = 4650 hours. New Method

    Factoring in network delays and additional time to verify results, we assume we take an average of 4 mins to execute 1 testcase.

    Time take to execute all testcases = 27900 * 4 /60 = 1860 hours. Analysis

    With the new method, we have achieved a savings of 60% in the effort required as compared to the existing method. The reduction in effort is proportional to the number of combinations of device-I/O-machine type-OS.

We are able to achieve the savings because:
1. Under the existing method, we perform the test locally on the machine with the device attached. A single tester can only work on 1 machine at anyone time, as interaction with the terminal is required.
2. With the new method, a single tester is able to test multiple devices individually connected to a terminal. The tester interacts through a single client interface. The client will then multicast the instructions to the various connected terminals. The terminal will


Page 2 of 3

report the result back to the client machine for verification.

    We have implemented a prototype using CORBA to bridge the distributed nature of the system. Figure 1 depicts the High Level Design and Figure 2 shows the collaboration of the various components.

Data Flow of Distributed Testing

JAVA Client Thread

object #1 stub

Push Event

Locate O#1

Locate O#1

Naming Service

object1 #1 Interf ace

Event/Notification Service


Serv er

Locate O#1 servant

Locate O#1

Push Event


Object #1 skeleton



COM/BEAN Adapter

     Call implementation RC


POS Drivers

Object #1 Implementation

Figure 1 - Distributed Test : High Level Design


[This page contains 2 pictures or other non-text objects]

Page 3 of 3

System Diagram Of Distributed Testing