[Twisted-Python] Re: In Defense of Taps
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):
More information about the Twisted-Python