product modeling within the framework of the world wide web

11
Product modeling within the framework of the World Wide Web U. ROY and S.S. KODKANI Knowledge Based Engineering Laboratory, 151 Link Hall, Mechanical, Aerospace and Manufacturing Engineering Department, Syracuse University, Syracuse, NY 13244, USA E-mail: [email protected] Received September 1997 and accepted April 1998 This paper presents an approach to the development of an open collaborative design environment in the Computer Aided Design (CAD) setting of a networked enterprise. Demand for high quality and variety of low to medium quality of products or ‘mass customization’ has led to the concept of ‘virtual organizations’. The de-centralized design teams of such an organization require a framework to manage the CAD product information. By integrating the emerging standard for 3D geometry on the World Wide Web with conventional CAD packages, we describe a framework for the development of a product model with various levels of abstractions. The syntactic content of the product model, accessible through any Internet interface such as Netscape Navigator associates itself with a centralized database for embedding technological information at the face and feature levels. The semantic and syntactic content of the product model can then be accessed and manipulated through the single Internet interface. The system is deployed on a test-bed utilizing both a UNIX box and a machine operating under the Windows NT system, to demonstrate it’s open architecture and interoperability. 1. Introduction Product development teams today are increasingly facing the challenge of meeting the demand for high product variety and quality when these products are produced in relatively low quantities. One of the consequences of the demand for this ‘mass customization’ of products has been the necessity for teams of engineers, oer from several areas and geographical locations, to work to- gether over networks, supported by informational and computer services. The eectiveness of future Product Development (PD) teams will on the one hand, depend upon the adaptability of existing design practices in this collaborative product development environment, and on the other hand, on developments in CAD and related tools to support collaboration. It is also necessary that the collaboration should not be solely restricted to product development teams; it should be extended to all the elements of an enterprise. A major problem encoun- tered here is the integration of the various types of data involved in an enterprise, how to deal with the software applications programs written for various operating sys- tems present in the organization, and how to provide a single view to the user, abstracting all the hardware and software specifics of individual systems [1]. To work in such an environment, the need for product development teams (and at a higher level, the enterprise) to adopt a new radical approach is apparent. Within this direction, the benefits of the developments in advanced information and modeling systems and particularly in Internet tech- nology must be exploited. In this paper, a prototype system is developed which aids product development teams to perform their CAD activities within the collaborative framework of Internet technologies. In any design activity, it is necessary to ensure that the product information is captured accu- rately and kept up-to-date. Further, in a collaborative environment, it is necessary that the product related data is complete and allows designers to visualize, manipulate and negotiate modifications to the design, through a product information model. Research in Product Data Management (PDM) [2] and database management sys- tems has addressed some of these issues. However, how to accurately generate this information using such tools and completely integrate them in the collaborative environ- ment has not been studied. These issues have led us to implement a prototype system based on enabling Internet technologies. The system is based on Virtual Reality Modeling Language (VRML) for defining a product’s syntactic model and incorporates a centralized database for associating tech- nological information. This allows teams to define prod- uct models completely. The prototype system takes advantage of the interoperability and seamless extensi- 0740-817X Ó 1999 ‘‘IIE’’ IIE Transactions (1999) 31, 667–677

Upload: u-roy

Post on 03-Aug-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Product modeling within the framework of the World Wide Web

Product modeling within the framework of theWorld Wide Web

U. ROY and S.S. KODKANI

Knowledge Based Engineering Laboratory, 151 Link Hall, Mechanical, Aerospace and Manufacturing Engineering Department,Syracuse University, Syracuse, NY 13244, USAE-mail: [email protected]

Received September 1997 and accepted April 1998

This paper presents an approach to the development of an open collaborative design environment in the Computer Aided Design(CAD) setting of a networked enterprise. Demand for high quality and variety of low to medium quality of products or `masscustomization' has led to the concept of `virtual organizations'. The de-centralized design teams of such an organization require aframework to manage the CAD product information. By integrating the emerging standard for 3D geometry on the World WideWeb with conventional CAD packages, we describe a framework for the development of a product model with various levels ofabstractions. The syntactic content of the product model, accessible through any Internet interface such as Netscape Navigatorassociates itself with a centralized database for embedding technological information at the face and feature levels. The semanticand syntactic content of the product model can then be accessed and manipulated through the single Internet interface. The systemis deployed on a test-bed utilizing both a UNIX box and a machine operating under the Windows NT system, to demonstrate it'sopen architecture and interoperability.

1. Introduction

Product development teams today are increasingly facingthe challenge of meeting the demand for high productvariety and quality when these products are produced inrelatively low quantities. One of the consequences of thedemand for this `mass customization' of products hasbeen the necessity for teams of engineers, o�er fromseveral areas and geographical locations, to work to-gether over networks, supported by informational andcomputer services. The e�ectiveness of future ProductDevelopment (PD) teams will on the one hand, dependupon the adaptability of existing design practices in thiscollaborative product development environment, and onthe other hand, on developments in CAD and relatedtools to support collaboration. It is also necessary thatthe collaboration should not be solely restricted toproduct development teams; it should be extended to allthe elements of an enterprise. A major problem encoun-tered here is the integration of the various types of datainvolved in an enterprise, how to deal with the softwareapplications programs written for various operating sys-tems present in the organization, and how to provide asingle view to the user, abstracting all the hardware andsoftware speci®cs of individual systems [1]. To work insuch an environment, the need for product developmentteams (and at a higher level, the enterprise) to adopt a

new radical approach is apparent. Within this direction,the bene®ts of the developments in advanced informationand modeling systems and particularly in Internet tech-nology must be exploited.In this paper, a prototype system is developed which

aids product development teams to perform their CADactivities within the collaborative framework of Internettechnologies. In any design activity, it is necessary toensure that the product information is captured accu-rately and kept up-to-date. Further, in a collaborativeenvironment, it is necessary that the product related datais complete and allows designers to visualize, manipulateand negotiate modi®cations to the design, through aproduct information model. Research in Product DataManagement (PDM) [2] and database management sys-tems has addressed some of these issues. However, how toaccurately generate this information using such tools andcompletely integrate them in the collaborative environ-ment has not been studied.These issues have led us to implement a prototype

system based on enabling Internet technologies. Thesystem is based on Virtual Reality Modeling Language(VRML) for de®ning a product's syntactic model andincorporates a centralized database for associating tech-nological information. This allows teams to de®ne prod-uct models completely. The prototype system takesadvantage of the interoperability and seamless extensi-

0740-817X Ó 1999 ``IIE''

IIE Transactions (1999) 31, 667±677

Page 2: Product modeling within the framework of the World Wide Web

bility of the information infrastructure of the World WideWeb (WWW) (see Appendix). This is demonstrated byutilizing both, the UNIX and the Windows NT operatingsystems as test-beds in the prototype system developedfor collaborative product design.

2. Literature review

The area of collaborative mechanical product develop-ment is relatively new and the literature is somewhatsparse, compared to information available regardingtechniques for collaboration and improvement of CAD/CAM practices.Glicksman and Kumar [2] have developed and tested

generic tools to capture and integrate design information.The tools work with shared text, audio, video and white-boards. A tool, XShare serves as a wrapper for existingapplications operating in the X ± Windows environment.However, the tools are limited to UNIX boxes only anddo not address speci®c issues involved in the generationof product model information in the Internet environ-ment. The SHARE project [3] has developed an open,network-oriented environment for concurrent engineer-ing, which allows engineers to participate on a distributedteam using their own tools and databases. Dong et al. [4]have described a framework for managing CAD-baseddesign information in enterprises for facility design andmanagement using TCP/IP. The integration infrastruc-ture allows bidirectional database associativity betweenCAD models and relational databases. Using their con-cept of `smart drawings', they have developed a sharedknowledge base for exchanging product informationamong interdisciplinary design teams. However, the CADmodels are 2-D in nature, which limits their utility fornegotiations amongst designers for manufacturability,assembly analysis, etc. in a concurrent collaborative en-vironment. Thus, the CAD related information cannot becaptured for utilization in downstream applications.Nagy and Ullman [5] have considered product struc-

ture and it's components, design functions and con-straints in a collaborative system, where di�erent teamsof designers negotiate design alternatives through post-ings. In the Issue Based Information System (IBIS), dis-cussions amongst design team members are carried outwith the aid of a browsing interface. Discussions postedby the design team members are utilized to facilitatemodi®cations and re®nements to existing product de-signs. One such system is gIBIS [6] where these discus-sions are presented in a hypertext structure. Toye et al. [3]have developed a preliminary prototype environment fordesigners to gather, organize, re-access, and communicateboth informal and formal design information. It isbroadly concerned with how information technology canhelp engineers to develop products. The environmentdeveloped was tested under an engineering design course

where designers conceived, designed and prototypedelectromechanical systems for industrial sponsors. ThePalo Alto Collaborative Test [7] project investigated thedesign of a knowledge-based concurrent engineeringsystem with the ability to reason about the design modelfrom di�erent engineering perspectives. This system is anintegration framework for geographically disparateproduct design teams. The system aims to address thefollowing issues: (i) development of interfaces, protocolsand architectures for enabling co-operative productdevelopment; (ii) facilitation of the knowledge transferbetween systems which have their own specializedknowledge bases and reasoning mechanisms; and (iii)decision support mechanisms for product development.The support architecture proposed in this system is usefulfor developing large-scale product design systems in-volving large groups of individuals. Khedro et al. [8] havepresented an approach to the development of concurrentengineering software applications based on a knowledgesharing technology. The knowledge is shared using taskdependent programs developed using a communicationstandard called Agent Communication Language (ACL),and task-independent programs called Facilitators. Thedesigners have to adapt their modules according to theACL, which can constrain their design, even before itactually begins. Enscapsulation of design and manufac-turing services with software agents has been proposed byFrost and Cutkosky [9]. They have also identi®ed anurgent need to develop standard mechanisms by whichdesigners can load process capability models into theirpreferred CAD environments. The ICM project [7] isinvestigating collaborative concurrent conceptual designby formalizing and implementing a design methodologyprototype. Both graphic and symbolic models are devel-oped to represent form, function and behavior, which canbe shared by designers throughout the design process forthe mechatronic domain.Lenz et al. [10] have outlined a concept for a service

that can provide design assistance to a variety of users viathe Internet. Four types of services or Widget DesignBrokers (WDB) have been identi®ed and discussednamely WDB's private to the user, speci®c for a particularcompany, generic for an industry or completely generic.The paper, however, does not provide any details aboutimplementing WDB's, which can adapt to varying designrequirements and at the same time be stable and robust.The systems described above are speci®cally developed

to aid collaborative design activities for the mechanicalengineering domain. Despite many similarities to thesystems described above, the proposed collaborativeproduct design system di�ers mainly in the approach inusing a single user interface for accessing and manipu-lating both product semantics and syntactics. It incor-porates the emerging standard for representing 3-Dgraphics on the World Wide Web, Virtual Reality Mod-eling Language or VRML. Some of the basic constructs

668 Roy and Kodkani

Page 3: Product modeling within the framework of the World Wide Web

of VRML and their formats are included in the Appen-dix. A single interface is used for the development ofVRML-based models from CAD models. The CADmodels created by utilizing local CAD tools, are con-verted into VRML based models by invoking remotetranslation services. Further, VRML-based features areautomatically extracted to capture the designers intentwith respect to geometry. The use of VRML for productgeometric modeling also aids in human assisted featurerecognition during design evolution. The manufacturingfeatures are then used for knowledge based processplanning. The VRML-based models, owned by it's cre-ator are fused into the product data management infra-structure by specifying the address of the model into acentralized database. The centralized database is alsointegrated with the World Wide Web.

3. Product design

Product design requires team e�ort and it cannot be ini-tiated and completed by an individual single-handedly.Currently industry recognizes the need for the overlap-ping of tasks to reduce the design cycle time. Any productdevelopment activity starts with the development ofa product model. This product model is utilized fortolerance analysis, manufacturability analysis, etc. In acollaborative environment, the product model represen-tation should capture all the geometric and technologicalinformation which would be required for future analysis.The product model representation should be completeand accurate so that designers and manufacturers canaccess this information as early as possible in the designprocess. Both the visual as well as the semantic repre-sentation must be encapsulated in the product modelrepresentation. The visual representation is usually de-veloped in CAD packages and is characterized by thegeometric and topological information of the product.The semantic representation of a product model consistsof the technological information associated with thevisual representation of the product. The technologicaldata such as surface roughness, material, etc. should beclosely associated with the visual representation, so thatdesigners can easily access and modify the information, ifnecessary. Various data exchange standards such asIGES/PDES/STEP have been developed to capture geo-metric as well as non-geometric data. The STEP modelingtechnique, for example, allows representation of size,form and tolerance information on the faces of theproduct. This limits their utility as they cannot be utilizedby geographically dispersed design team members work-ing on heterogeneous operating systems.Re-usability of existing data is essential to reduce the

cost and time involved in designing new products. It isessential to classify existing product models so that sim-ilar models can be easily retrieved for future projects. In a

conventional, sequential product design process, designengineers usually design a part and put their design re-lated information on a CAD system or as an engineeringdrawing and send it to a manufacturing department. It isthen manually read by a process planner for recom-mending changes to the product if it is not manufactur-able. This sequential approach can lead to long productdevelopment cycles.For reduction in product development cycles, it is

necessary to capture complete product model informationthat can be utilized by product design modules for furtherprocessing. Also, the product models should be accessibleto geographically dispersed product developers (namelydesigners and process planners) as well as remotelylocated product design modules. This necessitates aninfrastructure that can meet the need for this increasedagility in production organizations.

3.1. The World Wide Web as a collaborative medium

The World Wide Web technology is adequate for pro-viding designers with basic descriptions of manufacturingservices and can support product transactions [9]. TheWWW, in conjunction with tools such as NetscapeNavigator, is an extremely e�ective tool to store andaccess information. It can also be used to store thecommon information generated during various designactivities of a design team. The evolving design `pub-lished' on the WWW can be used to negotiate designmodi®cations and re®nements. Future design teams couldutilize this information to aid in the design of similarproducts. Low cost, ability to work on a wide range ofnetwork architectures and operating platforms coupledwith the seamless extensibility can make this informationinfrastructure very suitable for product data managementsystems. Interaction on the WWW can be realizedthrough the Virtual Reality Modeling Language(VRML). VRML is an emerging and developing standardfor representing 3-D models and scenes on the WorldWide Web. The language supports constructs for primi-tives such as cube, sphere, cylinder, etc. Nodes fortransformations such as translation, scaling and rotationsare also supported. An important characteristic of thislanguage is it's ability to support hyper-links which allowassociation to any type of document on the WWW.However, there are certain limitations to the usage of thelanguage. The user interface for the modeling languageprovides only viewing and orientation capabilities such aspanning, zooming and translation. The ease of creation ofgeometric models is a fundamental issue involved in anymechanical product design activity. The current use ofVRML is therefore severely restricted in this respect.Although, existing tools for modeling and analysis arefairly sophisticated and provide a good interface formodel creation and manipulation, they are usually basedon a single machine architecture. Some of the sophisti-

Product modeling within the framework of the World Wide Web 669

Page 4: Product modeling within the framework of the World Wide Web

cated packages developed do support management ofproduct models on multiple machines. However, it islimited to machines which form a part of a local networkand is not accessible through di�erent operating systems.Technical data has to be associated with geometricmodels for complete product model representations. Theconcept of a CIM database as a database containing in-formation required by all the di�erent elements of anenterprise has not yet been totally implemented, becauseof the di�culties in the structure of the databases re-quired by di�erent elements and in the accessibility ofdata from di�erent platforms.

3.2. Proposed collaborative modeling schema

Acknowledging the fact that existing software packagesare sophisticated, an indirect approach to the integrationof product model data to the WWW is adopted. Atranslator is developed which takes the native ®le formatof the conventional modeling package SDRC/CAEDS[11] and converts it into a corresponding VRML basedmodel. This model can then be fused into an existingproduct data repository by linking mechanisms developedin the system. The translator resides on a main centralserver (see Appendix) and can be accessed remotely by adesigner. The product information repository includesnot only the technological data attached to products, butalso links to the geometric models which still reside in theindividual machines of the designers. This results in asystem which is physically distributed and at the sametime logically integrated. Access permissions to theproduct models for manipulation and viewing are con-trolled by the creator of the model who can be consideredto be the owner of this model. The database conceptualschema is modeled using Entity Relationship (E-R)diagram for the relational system as shown in Fig. 1.The E-R diagram shows the relationship between all theentities in the Product Design Database (PDD). The`Part' table is related to the `Material' table through aone-to-many relationship. This takes into account situa-

tions in which a single part is manufactured with two ormore materials. The `Material table' stores the names ofall the materials available in the shop-¯oor. The `Part'table is also related to the `Raw Stock' and `Operation'tables as shown in the E-R diagram. The table storingthe cutting tool information `Cutting Tool' has a many-to-many relationship with the material table. The `Oper-ation' table shares a one-to-many relationship with the`Machine' and the `Cutting Tool' tables. Figure 2 shows afew of the tables of the database.

4. System overview

Figure 3 shows a schematic drawing of the proposedCollaborative Product Design (CPD) system. The goal ofthe system is to allow asynchronous, multiple systemproduct model access at various levels of abstractions.The system operates under a single Internet interface. The

Fig. 1. E-R diagram for part of the Web integrated database.

Fig. 2. A view of some of the database tables containing theproduct model information in the Product Design Database(PDD).

670 Roy and Kodkani

Page 5: Product modeling within the framework of the World Wide Web

system consists of pockets of design services provided byservers residing on geographically separated machines asshown in Fig. 4. A product model is considered to consistof two layers in this system. The graphical layer, whichcontains the geometric model of the product and it'sabstractions, and the technological information level,which stores information about the graphical or visualrepresentation of the model. Associated with each layerof abstraction is product data de®ning the productsemantics.In this design environment, each designer creates his

model from his personal design station using the con-

ventional CAD package, SDRC/CAEDS which is in-voked from his WWW interface. Central to the system isa knowledge database residing on one of the servers on aNT machine and a Translator module. The WWW in-terface allows access to this Translator module whichaccesses the internal ®le format (universal ®le format) ofthe geometric model and develops a correspondingVRML-based geometric model. This model is stored in arestricted ®le system by the module. A mechanism todownload this model by the designer into his local station(client) is also available. The database linkage mechanismis built inside the Translator module and invoked simul-taneously. Through the database linkages provided bythis linking mechanism, the designer can provide productlevel technological information such as material, heattreatments, etc.The geometric model of the product is decomposed at

face and feature levels by another module, which ®rstextracts appropriate data from the CAEDS ®les and thenformats it suitably. The face and feature level VRML-based models are generated dynamically by this module.Face level data such as surface ®nish (associated with aparticular face of the product, but not an element of amanufacturing feature) and feature level data additions(which could be utilized for process planning) into thedatabase can then be made through these generatedmodels.

4.1. Details of the system architecture

With the above overview of the system, we now examinethe detailed architecture of the system as illustrated inFig. 5.

Fig. 3. Schematic drawing of the proposed CollaborativeProduct Design System.

Fig. 4. Model framework for the virtual collocation of ProductDesigners and Design services.

Fig. 5. Detailed architecture of the product geometric subset ofthe collaborative system.

Product modeling within the framework of the World Wide Web 671

Page 6: Product modeling within the framework of the World Wide Web

4.1.1. Translator module

The Translator module resides on a central server on aUNIX box. It provides service to designers on demandand takes the native ®le format of the geometric modeldeveloped in the SDRC/CAEDS package as input. Asubset of this module is a program that formats the datainto B-Rep schema and stores the output into two ®les,which contain the geometrical and topological details ofthe geometric model. The main routine in this module,then generates the corresponding VRML-based modelsusing VRML constructs such as IndexedFaceSet. Theyare by default stored in the ®le system of the server ma-chine. A mechanism is provided to automatically loadthis model from the server into the designer's worksta-tion. For this to be possible, the designer has to provideaccess permissions to his user account. Links to the cen-tralized database of the system, which is required for theincorporation of the model generated by the designer intothe system, are automatically handled by the system.The designer can feed in technological and adminis-

trative data about the product model in the centralizeddatabase. Technological data includes the materialproperties, quantity requirements, etc. Administrativedata is critical for quick retrieval of the product modelsfor future usage. It is assumed in this paper that a projectcan involve one or more people. Each person involved ina project is responsible for one or more components of anassembly. The database allows designers to feed in sup-port information such as the name of the owner of thepart, date of creation of the part, version number, etc.Information regarding the names of people involved in aparticular project, their contact e-mail addresses, etc., areinput into the database by the project leader. Figure 6shows an activity ¯ow diagram involved in the processfrom the user and system perspectives. A product de-signer initiates geometric modeling by invoking a con-ventional CAD package (in our case SDRC/CAEDS)through the browser interface. This triggers a system calle�ecting the loading of a local copy of the CAD packageinto the designer's workstation. The product designergoes through a sequence of well-de®ned activities to cre-ate a complete product model.

4.1.2. Face and feature extractor

Automatic information exchange is a primary require-ment for concurrent design and manufacturing. It is animportant element of factory automation. Research is inprogress on the topic of allowing the CAD and CAMactivities to be performed concurrently. This necessitatesan automatic interpretation of CAD information intomanufacturing-speci®c information. However, designerscan have di�erent views of the same design object. Anindividual involved in analyzing space requirements maybe interested in the overall size of the object and must beable to access the geometric model of the assembly or

single part product. On the other hand, a process plannermay be interested in manufacturing features which can beutilized to determine the sequence of operations involvedin manufacturing the product. Extraction of manufac-turing features is one of the approaches toward this ef-fort. The Face and Feature Extractor generates dynamicVRML-based models of the features and faces of theproduct. Features can be slots, steps, pockets, blind step,etc. These features are linked to the geometric model ofthe product, as well as to the database to provide tech-nological information such as surface roughness, toler-ance requirements, etc. Face level abstractions are alsogenerated by the module. A professional responsible forthe downstream applications in the product developmentcycle can access the product model at three di�erent levelsof detail namely, the product, feature and face levels.

4.1.3. System speci®cs

The Translator module is developed using the C pro-gramming language and currently resides on a UNIXbox, which acts as the server machine. Access to themodule is provided through a HTTP server con®guredfor this machine. The Face and Feature Extractor alsoresides on the same machine as the Translator module.The server handles the request for translation servicesrequested by design members from their own personaldesign stations.A routine written in PERL handles the loading of the

VRML-based models generated by these modules intothe host machine of the designers. The knowledge base,which relates the designers' local VRML-based geometricmodels to the associated technological information and

Fig. 6. Activity Flow Diagram from user and system perspec-tives.

672 Roy and Kodkani

Page 7: Product modeling within the framework of the World Wide Web

also provides the project information, resides on a ma-chine running on the Windows NT operating system. Theknowledge base has been developed in MS Access andcoupled to the WWW through MS Access ODBC (OpenDatabase Connectivity) driver and dbWeb, a front endtool for creation of queries and WWW integrated sche-mas as shown in Fig. 7. The ODBC driver translates theMS Access database speci®c SQL queries and translatesthem into the format required by dbWeb. Microsoft'sInternet Information Server (IIS) provides the service forhandling requests from geographically separated design-ers. The Netscape Navigator browser is used as thecommon interface to all these modules. Each teammember utilizes this interface for performing his designactivities. Figure 7 also shows the architecture for inte-grating the database with the WWW.

5. Implementation and case study

This section presents the implementation of the Collab-orative Product Design (CPD) system with a case study.In order to evaluate the functioning of the prototypeCollaborative Product Design (CPD) system, severalfeatures of the CPD system were tested.The main interface of the CPD system is shown in

Fig. 8. This interface provides hyperlinks to native, aswell as the module for generating package speci®c CADmodels using SDRC/CAEDS into neutral VRML-basedformat solid models. The interface thus provides access toboth the local tools, SDRC/CAEDS solid modeler, and aVRML viewer, such as VRWeb, as well as access to thesystem for translating these models.A designer who wishes to utilize this system loads the

CPD main interface through the URL:

http://felix.cat.syr.edu:4000/public_html/DEMO/interface.html

Suppose a product designer is assigned with the task ofdesigning a component to guide the linear motion of atable of a machine tool. The ®rst task of the designer is toidentify the basic shape and form of the guiding com-ponent which would perform the required function. Toguide the sliding motion of a ¯at table, the designed

component has to not only ensure smooth movement ofthe table in a guided linear path, but also prevents thetable's movement beyond a certain length. A block with athrough slot along it's length and a blind pocket is se-lected for the design. The slot serves as a guideway for thetable, while the pocket restricts the motion of the table inthe lateral direction.To develop the detailed design for such a `BOX' like

component using the prototype Collaborative ProductDesign (CPD) system, the following steps have to betaken by the product designer:

Step 1. Generate the geometric model of the component.

The product designer invokes his/her native WWWbrowser and loads the main interface of the CPD system.Next, the CAD solid modeler SDRC/CAEDS is invokedby the designer through a hyperlink on this interface. Thedesigner generates a solid model of the `BOX' componentby utilizing the `Object Modeling' task of the solidmodeling package. This task is a module in the SDRC/CAEDS package for creation of solid models. The `BOX'component consists of 16 faces, 38 edges, and 24 vertices.The solid model is then stored by the product designer asa universal ®le, a native ®le format storing boundaryrepresentation of object in SDRC/CAEDS, in his local®le system.Fig. 7. Web-database integration architecture.

Fig. 8. Main interface for the Collaborative system.

Product modeling within the framework of the World Wide Web 673

Page 8: Product modeling within the framework of the World Wide Web

Step 2. Generate the VRML-based models using theExtractor and the Translator modules.

The Extractor module and the Translator module areaccessed by the designer through the next hyperlink onthe CPD main interface. The user id and design stationname are accepted by the module to retrieve the universal®le from the designer's local ®le system and to generateVRML-based models. The models are generated at threelevels, namely, the part, feature and face levels. ThreeVRML-based models are generated at the part level. Twoof the models are linked to the Collaborative ProductDesign Database interfaces to aid in incorporating dataand viewing the existing part data in the CollaborativeDesign Database, while the third model is linked to aHTML document which gives product details. The de-signer can access these models through the next set ofhyperlinks on the main interface of the CPD system.Accessing the models directly loads the models into thelocal VRML browser of the product designer. TheVRML-based model of the `BOX' component generatedby the Translator module is shown in Fig. 9. The com-ponent level models are given default names by theTranslator module based on the user id of the designer.For example, if the user id of the designer is tkdave, theVRML part models are generated with names : ``tkda-

ve1.wrl'', ``tkdave2.wrl'' and ``tkdave3.wrl''. The ®rst twomodels, ``tk dave1.wrl'' and ``tkdave2.wrl'' are linked tothe Product Design Database (PDD) interfaces for dataaddition and viewing, while the third model ``tkda-ve3.wrl'' is linked to a HTML document which givesproduct geometry details.The product designer accesses existing part information

in the Collaborative Design Database by clicking on the®rst of the three VRML-based geometric models. Thetypical output presented by PDD for an existing part isshown in Fig. 10. To add new data related to the `BOX'component into the PDD, the designer loads the dataaddition interface of the PDD system by activating thesecond VRML model. Appropriate part level technologi-cal data is then added by the designer into the system. Theinformation thus created by the designer encompasses thecomplete product model in a shared environmentenscaptulating both geometric and technological infor-mation. The shared product model can be utilized by de-sign team members for `downstream' application modulessuch as manufacturability analysis, process planning etc.

6. Implementation issues, summary andfuture directions

Some of the issues and decisions we have made for thecurrent system are:

Fig. 9. The VRML-based geometric model of the new `BOX'component design. Fig. 10. Sample output in response to a query to the database.

674 Roy and Kodkani

Page 9: Product modeling within the framework of the World Wide Web

(1) Static schema: At the time the users are accessingthe centralized database through the WWW, the databaseschema remains static. This means that if changes arebeing made in the database schema itself by the databaseadministrator, it cannot be accessed by any user. This isrequired because otherwise inconsistent results may bepresented by the database due to concurrency problems.(2) Database access and limitations: Currently, a user

cannot only insert, but also update and delete existing datain the database from his user interface. Constraints couldbe imposed on users, if necessary. The database has in-herent limitations regarding the number of users that canaccess it concurrently. Amore sophisticated database suchas ORACLE, could be integrated to the WWW, whichwould allow a greater number of simultaneous users.

In this paper, we have described a collaborative envi-ronment for sharing information that may be scatteredacross an enterprise, but logically integrated. The e�ortrequired for searching and retrieving information elimi-nates the need for user to know where and how the data isphysically stored. The use of 3D geometry for storingproduct geometric model facilitates human-assisted orautomated interpretation of product model for processplanning, manufacturability analysis and other `down-stream' applications.The proposed system has been developed using VRML

Version 1.0. This version does not allow integration withcode written in the Java programming language whichcould be utilized for enhanced user interaction. Thetranslator could be modi®ed to take advantage of VRMLVer 2.0 Speci®cations. The representation of dimensionsand tolerances on the VRML-based models are not sup-ported by the VRML browser. For this to be possible, itwould be necessary to enhance the capabilities of thebrowser and extend VRML capabilities through it'sextensibility construct. The product data managementdesign does not incorporate mechanisms to record theupdates in the design which may be required to keep trackof product model re®nements. This could be enabledthrough minor modi®cations in the database schema.Remote service modules such as analysis agents for ana-lyzing manufacturability, assembly, etc., could be devel-oped and deployed on theWWWfor utilization by productdesigners, on demand, from their design workstations.

References

[1] Peltonen, H., Mannisto, T., Alho, K. and Sulonen, R. (1993) Anengineering document management system, in Proceedings of theASME Winter Annual Meeting. pp. 6±9.

[2] Glicksman, V. and Kumar, V. (1993) A shared collaborative envi-ronment formechanical engineers, inProceedings of Groupware '93.pp. 335±347.

[3] Toye, G., Cutkosky, M.R., Leifer, L.J., Tanenbaum J.M. andGlicksman, J. (1993) SHARE: a methodology and environmentfor collaborative product development. Technical Report CDR-TR no. 19930507, Center for Design Research. pp. 28±36.

[4] Dong, A., Moore, F., Woods, C. and Agogino, A.M. (1995)Managing design knowledge in enterprise-wide CAD, in Pro-ceedings of the IFIP WG5.2 Second Workshop on Formal DesignMethods for CAD. pp. 23±37.

[5] Nagy, R.L. and Ullman, D.G. (1992) A data representation forcollaborative mechanical design. Research in Engineering Design,3(4), 233±242.

[6] Conklin, J. and Begeman, M.L. (1988) GIBIS: a hypertext tool forexploratory policy discussion. TOIS-ACM Transactions on O�ceInformation Systems, 6(4), 307±331.

[7] Genesereth, M.R. et al. (1994) Palo Alto collaborative testbed.http://conan.wi-inf.uniessen.de/conen/kqml/kqmlspec/subsection3.11.3.html.

[8] Khedro, T., Genesereth, M.R. and Teicholz, P.M. (1994) Con-current engineering through interoperable software agents, inProceedings of the First Conference on Concurrent Engineering:Research and Applications, pp. 78±86.

[9] Frost, H.R. and Cutkosky, M.R. (1996) Design for manufactur-ability via agent interaction, in Proceedings of the Design forManufacturing Conference. ASME. pp. 1±16.

[10] Lenz, T.J., McDowell, J.K., Sticlen, J. and Hawley, M.C. (1996)Widget design brokers, in Proceedings of the Workshop on Web-based Design Environments (in conjunction with the Fourth In-ternational Conference on Arti®cial Intelligence in Design).

[11] CAEDS Solid Modeling User's Manual. Structural DynamicsResearch Corporation

[12] Liu, C., Peek, J., Jones, R., Buus, B. and Nye, A. (1994)ManagingInternet Information Services, O'Reilly and Associates, Inc.

[13] Bell, G., Parisi, A. and Pesce, M. The Virtual Reality ModelingLanguage, Version 1 Speci®cattion. VRML Group, http://vag.vrml.org/www-vrml/vrml.tech/verm110±3.html.

Appendix

Basic concepts and terminologies

World Wide Web (WWW) and the Internet

The Internet is a federation of computer networks thatspeak a common set of protocols, known as `The Internetsuite'. TCP and IP (or TCP/IP), which stand for Trans-mission Control Protocol and Internet Protocol, are thetwo most commonly used protocols in the suite. Com-puters `on' the Internet are connected to each other withhigh-speed telephone circuits [12]. They send binary datato communicate with other computers on the Internet.They identify themselves by their addresses and alsoidentify with whom they wish to communicate by speci-fying the address of the receiver (the server) on the data(IP) packet which sends it via a program called the client.The hyper-media system WWW, an added layer of ab-straction to the existing structure encompasses the ser-vices o�ered by the Net namely FTP, Gopher, Telnet,WAIS and in addition speaks in it's own protocol ± theHTTP protocol. It is a wide-area hyper-media informa-tion retrieval initiative aiming to give universal access to alarge universe of documents.

Client server architecture

It consists of: A client, responsible for interacting withthe user, for example, by accepting keyboard input

Product modeling within the framework of the World Wide Web 675

Page 10: Product modeling within the framework of the World Wide Web

displaying data to the user and a server, responsible forperforming tasks as directed by the client, for exampleaccessing data on the clients behalf, performing calcu-lations, and so on, and then providing data to the cli-ent. The client/server model makes the networktransparent to the application programs. It is possibleto have programs running on several di�erent machinesin the network, all invoked from and displaying theirwindows on a single screen. The language that Webclients and servers use to communicate with each otheris called the HyperText Transmission Protocol (HTTP).All Web clients and servers must be able to speakHTTP in order to send and receive hyper-media docu-ments. For this reason, Web servers are often calledHTTP servers.

Synchronous, multiple system architecture

An architecture in which there is an immediate noti®ca-tion (synchronous) of each others actions and that can besupported across di�erent platforms (e.g., UNIX, Win-dows etc.).

Hyper-media and Hypertext

The operation of the Web relies on hypertext as its meansof interacting with users. Hypertext is basically the sameas regular text ± it can be stored, read, searched, or edited± with an important exception, Hypertext contains con-nections within the text to other documents. Hyper-mediais hypertext with a di�erence ± hyper media documentscontain links not only to other pieces of text, but also toother forms of media ± sounds, images, and movies.Images themselves can be selected to link to sounds ordocuments.

Hyper-Text Markup Language (HTML)

The standard language the Web uses for creating andrecognizing hyper-media documents is the Hyper-TextMarkup Language (HTML). It is loosely related to, buttechnically not a subset of the Standard GeneralizedMarkup Language (SGML), a document formattinglanguage used widely in some computing circles.HTML uses what are called Uniform Resource Loca-tors (URLs) to represent hyper-media links and links tonetwork services within documents. It is possible torepresent nearly any ®le or service on the Internet witha URL.

CGI scripts

AHTTP URL may identify a ®le that contains a programor script rather than a HTML document. This program isexecuted whenever the URL link is activated. Such pro-grams are called HTTP scripts or Common GatewayInterface (CGI) scripts. These scripts are normally stored

in a directory called cgi-bin of the HTTP servers and sothey are also sometimes called ``cgi-bin'' scripts. This wayinput from the user from the client side can be processedon the server machine by executing such programs. CGIprograms could be written in almost any scripting orprogramming language.

Virtual Reality Modeling Language (VRML)

Virtual Reality Modeling Language (VRML) is a lan-guage for describing multi-participant interactive simu-lations or virtual worlds networked via the globalInternet and hyper-linked with the World Wide Web [13].It completely supports 3D models with polygonal ren-dered objects, materials, etc. VRML supports the hyper-linking feature. Models developed using VRML can belinked to other documents on the Web which can containtextual, numerical or audio/visual data.

Language basics

At the highest level of abstraction, VRML is just a way forobjects to read and write themselves. Theoretically, theobjects can contain anything, 3D geometry, MIDI data,JPEG images etc. VRML de®nes a set of objects useful fordoing 3D graphics. These objects are called Nodes. A nodemight be a cube, a sphere, a texturemap, a transformation,etc. A node of the same type is distinguished from othernodes by it's parameters. For example, each `Cylinder'nodemight have a di�erent radius value. These parametersare called ®elds, which de®ne instances of nodes. A nodecan have zero or more ®elds. For example, the sphere noderequires the `radius' ®eld to describe a particular sphere.Nodes in VRML are divided into groups: Shape nodesform a group and these nodes specify geometry and in-clude cone, cube, sphere, cylinder and ASCII Text. Thesecond group consists of the Property nodes and includenodes for matrix or transform properties like Matrix-Transform, Rotation, Scale, Transform, appearancenodes like Material, MaterialBinding etc., camera nodesand and light nodes. Group nodes form the next group andcomprise of Group, Separator, Switch, TransformSepa-rator, and WWWAnchor nodes.Some of the important constructs or nodes supported

by the language are described in detail below:

WWWAnchor

The WWWAnchor group node loads a new scene into aVRML browser when one of its children is chosen. Ex-actly how a user ``chooses'' a child of the WWWAnchoris up to the VRML browser; typically, clicking on one ofits children with the mouse will result in the new scenereplacing the current scene. A WWWAnchor with anempty (``'') name does nothing when its children arechosen. The name is an arbitrary URL.

676 Roy and Kodkani

Page 11: Product modeling within the framework of the World Wide Web

FILE FORMAT/DEFAULTS

WWWAnchor {name "" # SFStringdescription "" # SFStringmap NONE # SFEnum

}

IndexedFaceSet

This node represents a 3D shape formed by constructingfaces (polygons) from vertices located at the current co-ordinates. IndexedFaceSet uses the indices in its coord-Index ®eld to specify the polygonal faces. An index of ÿ1indicates that the current face has ended and the next onebegins. The vertices of the faces are transformed by thecurrent transformation matrix.

FILE FORMAT/DEFAULTS

IndexedFaceSet {coordIndex 0 # MFLongmaterialIndex )1 # MFLongnormalIndex )1 # MFLongtextureCoordIndex )1 # MFLong

}

Cube

This node represents a cuboid aligned with the coordinateaxes. By default, the cube is centered at (0, 0, 0) andmeasures 2 units in each dimension, from ÿ1 to �1. Thecube is transformed by the current cumulative transfor-mation and is drawn with the current material and tex-ture.

FILE FORMAT/DEFAULTS

Cube {width 2 # SFFloatheight 2 # SFFloatdepth 2 # SFFloat

}

Cylinder

This node represents a simple capped cylinder centeredaround the y-axis. By default, the cylinder is centered at(0, 0, 0) and has a default size of ÿ1 to �1 in all threedimensions. The cylinder has three parts: the sides, thetop (y � �1) and the bottom (y � ÿ1). The radius andheight ®elds can be used to create a cylinder with a dif-ferent size.

FILE FORMAT/DEFAULTS

Cylinder {parts ALL # SFBitMaskradius 1 # SFFloatheight 2 # SFFloat

}

Other primitives supported by the language are cone andsphere.

Biographies

U. Roy is an Associate Professor in the Mechanical, Aerospace, andManufacturing Engineering Department at Syracuse University. Dr.Roy's current research interests include product development in con-current and collaborative environment, knowledge-based computer-aided engineering, and geometric tolerances.

Salil S. Kodkani is a Product Development Engineer at StructuralDynamics Research Corporation, Ohio. Salil received his M.S. degreein Manufacturing Engineering from Syracuse University in December1996 and his current research interests include team-based productdesign environments and manufacturing project information systems.

Contributed by the Engineering Design Department.

Product modeling within the framework of the World Wide Web 677