Top Banner
Hewlett-Packard Company Restricted 06/07/22 Test 1 Convergence of IQPT / XAPQT
23
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test1

Convergence of IQPT / XAPQT

Page 2: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test2

Radical Divergence - XAPQT vs IQPT

XAPQT (HRAPQT) IQPT

Page 3: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test3

Radical Divergence - By the Numbers

IQPT Multiple Print Frequencies Bi-Directions 4 Dual Pentium PCs & 1

Industrial PC 2 Large Images (50M

Pixels)

Line Interfaces– I-Blaster, Tarzan Intro,

Cyborg, Tyborg

XAPQT Dual Print Frequency Uni-Direction 2 Dual Pentium PCs

12 Small Images ( 300K Pixels) 1 Color Camera Line Interfaces

– Lava, Tiger

• Different Control Hardware & Sequence• Different Acquisition Hardware & Sequence

Page 4: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test4

Hobbes (Tiger’s XAPQT)

Page 5: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test5

Pele / Wax (Lava’s XAPQT )

Page 6: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test6

TIJ 3 Half Inch (I-Blaster’s IQPT)

Page 7: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test7

TIJ 3 One Inch (Tarzan Intro’s IQPT)

Page 8: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test8

Small vs Large Image

Page 9: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test9

What is Convergence?

For the Q Software:

Same executable running on ALL tools (XAPQT & IQPT)

Ability to run any algorithm on any tool(XAPQT & IQPT)

Page 10: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test10

Why Convergence ?

Reduce / Eliminate redundant work Enable flexible support & development staffing Ensure customer quality Encourage cross-site credibility Prevent unfair yield practices Decrease cost of qualification

Increase speed of evolution (synergy)

( From a conversation in DIMO November 1998 - some things take time! )

Page 11: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test11

History of End Of Line Testers

1994 HRAPQT Developed for Formula 1, Canvas, & Tiger Lines

1995 Unique code on each HRAPQT

1995 I-Blaster improvements leveraged to TIJ 2.5 color

1996 I-Blaster code leveraged to Hercules & Tarzan

1997 I-Blaster Ready for Production

1999 I-Blaster code leveraged to Tiger

2000 XAPQT on Tiger / IQPT on I-Blaster

2001 XAPQT on Lava / IQPT on Tarzan

2010 All testers running same code

XAPQT (HRAPQT)

Page 12: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test12

How is Convergence Achieved ?

Deny variation is necessary– force one solution everywhere without exception

Support “controlled” variations – allow each solution to be “built” from a common

set of configurable building blocks

Convergence = Synergy

Page 13: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test13

How is Convergence Kept?

Lockup the tools so that nothing can change

Allow anyone to initiate change in a “controlled” fashion

Convergence = Synergy

Page 14: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test14

Controlled Change

Software changes must do nothing by default (i.e. a configuration file must be modified for the change to take effect)

Software changes must be tracked (i.e. a source control strategy is absolutely necessary)

All software changes must be tested (i.e official releases must be made available once tested)

Page 15: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test15

IQPT Deployment Map

IQPT Monitor

MAIN MFC UI

NSK UI Component

Image AnalyzerUI

GUI Message Log

Modeless Dialogs

Message Logger

Modeless Dialogs

DataAnalyzerUI

Image Analyzer

Data Analyzer

NSK Component

SoftLogix OCX

Vision Engine

VEProcess VEDisplayVEAcquie

PIE UI Component

Focus Component

Tool UI Component

PIE Component

Focus UI Component

Tool Control

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

IqptMainDlg

Key: User Interface PC

Tool Control PC

Vision PC

On Each PC

Page 16: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test16

IQPT Component Map

Key:

IQPT Monitor

MAIN MFC UI

NSK UI Component

Image AnalyzerUI

GUI Message Log

Modeless Dialogs

Message Logger

Modeless Dialogs

DataAnalyzerUI

Image Analyzer

Data Analyzer

NSK Component

SoftLogix OCX

Vision Engine

VEProcess VEDisplayVEAcquie

PIE UI Component

Focus Component

Tool UI Component

PIE Component

Focus UI Component

Tool Control

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

Modeless Dialogs

IqptMainDlg

Code Shared with XAPQT

Code exclusive to IQPT

Page 17: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test17

XAPQT Component Map

Key:

XapqtMainUI

MAIN MFC UI

Starts and stops all components

Image AnalyzerUI

GUI Message Log

Modeless Dialogs

Message Logger

Modeless Dialogs

DataAnalyzerUI

Image Analyzer

Data Analyzer

CimQuest

Vision Engine

VEProcess VEDisplayVEAcquie

ApqtUI (Digital IO)

ApqtComponent

Modeless Dialogs

XapqtMainDlg

Code Shared with IQPT

Code Exclusive to XAPQT

Page 18: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test18

Configurability Made Easy

House{

House(): nBedrooms(3), nBathrooms(2), nOther(3){

}

int nRooms(){ return nBedrooms + nBathrooms + nOther; }

int nBedrooms;int nBathrooms;int nOther;

};

House : public abcConfigurable{

House(): abcConfigurable(“house”), nBedrooms(“numberOfBedrooms”,3), nBathrooms(“numberOfBathrooms”,2), nOther(“numberOfOtherRooms”,3){ nBedrooms.parent(this); nBathrooms.parent(this); nOther.parent(this);}

int nRooms(){ return nBedrooms + nBathrooms + nOther; }

ConfigParam<int> nBedrooms;ConfigParam<int> nBathrooms;ConfigParam<int> nOther;

};

Page 19: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test19

Configuration Comments

House(): abcConfigurable(“house”), nBedrooms(“numberOfBedrooms”,3), nBathrooms(“numberOfBathrooms”,2), nOther(“numberOfOtherRooms”,3)

{ nBedrooms.parent(this); nBedrooms.AddComment(“must have a

closet”);

nBathrooms.parent(this); nBathrooms.AddComment(“include half

baths”);

nOther.parent(this);}

house = (

/> must have a closetnumberOfBedrooms = 3// changed from 2 on Tuesday 15-May-2001// Support engineer’s comments go here and // are not lost when the configuration is resaved!

/> include half bathsnumberOfBathrooms = 2

numberOfOtherRooms = 3

) /* End of house */

C++ Code Configuration File

Page 20: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test20

Visual Directory Comparison

Page 21: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test21

Current Installations

Corvallis– IQPT I-Blaster– Odo (Offline

development)– XAPQT Lava

San Diego– IQPT Tarzan Intro– Odo (Offline

development)

Dublin– XAPQT Tiger

Singapore– XAPQT Tiger

Page 22: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test22

Past Developers

Bruce Johnson (PM) George Radominski (PM) Ken Tubbs (PM) Sankar Chakrabarti Warren Chism Frank Demonte Kim Mondelli Gil Smith Ed Walsh

Scott Carpenter Mike Monroe Tom Twigg Marilyn Zuber April Gilbert

Page 23: Convergence

Hewlett-Packard Company Restricted

04/10/23

Test23

Current Developers

Ken Shaw (PM) Nadeem Khan Don Welch Randy Stockberger Deqing Hu Yongsheng Liu Guy Howard David Collins Paul Stieger

Brad Dixon (I-Blaster) Shawn Gibson (Lava) Ian Kelly (Tiger) Raj Krishnan (Tiger) Jorge Sanchez (Tarzan

Intro) Ed Dozier (Tarzan Intro)

Convergence = Synergy