[Twisted-Python] Re: In Defense of Taps

Steve Waterbury waterbug at beeblebrox.gsfc.nasa.gov
Wed Feb 12 17:11:15 EST 2003

Dave Peticolas wrote:

> For those of us too lazy to download and scan the source,
> what, in a nutshell, is PGEF supposed to do?

A fair question.  PGEF is supposed to be a framework for developing 
applications that capture the data produced by engineering tools 
(CAD, Finite-Element Analysis, Simulation, Failure Analysis, etc.), 
component libraries, product documentation, configuration 
management, etc., etc.  Basically, to support the capture, integration, 
and management of all information produced and consumed in the 
life cycle of a manufactured product (hardware and/or software ... 
usually both!).  And, incidentally, to help engineers collaborate 
(via messaging, etc.) and to integrate their desktop tools 
(spreadsheets, etc.) with their more sophisticated tools (CAD, etc.) 
and services on the net (repositories, component libraries, 
analysis engines wrapped as Web Services, etc.).  

So what we've started out with is (1) a repository server that's 
supposed to support persistence and version/configuration management 
for the definition of a product and all its various "models" 
(CAX, FEA, etc.) and documents, and (2) a client that's intended to 
be a "product model/data browser" in the same sense that a "Web 
browser" presents various less semantically rich formats, such as 
HTML, images, other media, etc.   I.e., The PGEF Client's purpose is 
to present (a) various types of tree structures that occur in product 
data/models (e.g., assembly structures, version trees, functional trees, 
etc.), (b) tabular presentations of collections of engineering objects, 
(c) editors for product model metadata and parameters, and (d) hooks 
for communicating with product model viewers, such as CAD model viewers, 
analysis postprocessors, etc.  So far we only have a few of (a), (b), 
and (c) in it.  

Ultimately, for any enterprise that is mainly about manufacturing, 
PGEF will integrate *all* of the enterprise's technical data ... 
not *too* ambitious, eh?  ;^)  

An important piece of this puzzle is the STEP (ISO 10303) standard for 
"Product Model Data", which is a set of information models of the various 
types of data I mentioned above.  STEP itself is very complex (and not 
pretty, but it's really the only game in town for multi-disciplinary 
engineering data integration and it is taken very seriously by all large 
manufacturing organizations ... the list of organizations using/developing 
STEP is a who's who of manufacturers:  Ford, GM, Daimler-Chrysler, Boeing, 
Lockheed-Martin, Northrup Grumman, Raytheon, etc.), so one of the constraints 
on PGEF is to be able to map between STEP's information models and the PGEF 
repository schema ... if you browse the comments in createPgerDbTables.sql, 
many refer to how things map to/from STEP.  The actual engine that we'll 
use for the mapping is a Lisp application that we will interface with, 
called "Express Engine" (after the modeling language, Express, or ISO 10303-11):  


-- Steve.

More information about the Twisted-Python mailing list