<TABLE> <S> <C>
<PAGE>
<ARTICLE> 5
<MULTIPLIER> 1,000
<S> <C>
<PERIOD-TYPE> 3-MOS
<FISCAL-YEAR-END> OCT-31-2000
<PERIOD-START> FEB-01-1999
<PERIOD-END> APR-30-2000
<CASH> 978
<SECURITIES> 0
<RECEIVABLES> 1,889
<ALLOWANCES> 0
<INVENTORY> 1,622
<CURRENT-ASSETS> 5,057
<PP&E> 3,690
<DEPRECIATION> 2,237
<TOTAL-ASSETS> 7,321
<CURRENT-LIABILITIES> 2,186
<BONDS> 0
0
0
<COMMON> 5
<OTHER-SE> 4,637
<TOTAL-LIABILITY-AND-EQUITY> 7,321
<SALES> 2,155
<TOTAL-REVENUES> 2,485
<CGS> 1,052
<TOTAL-COSTS> 1,261
<OTHER-EXPENSES> 1,010
<LOSS-PROVISION> 0
<INTEREST-EXPENSE> 3
<INCOME-PRETAX> 256
<INCOME-TAX> 90
<INCOME-CONTINUING> 166
<DISCONTINUED> 0
<EXTRAORDINARY> 0
<CHANGES> 0
<NET-INCOME> 166
<EPS-BASIC> 0.37
<EPS-DILUTED> 0.36
</TABLE>