The Evolution of Commitments
in the Design of a Component
Journal of Mechanical Design; March 1992, Vol. 114, 1-7.
Brian D. McGinnis
David G. Ullman, Assoc. Prof. E-mailUllman
Department of Mechanical Engineering
Oregon State University
Corvallis, Oregon
USA
SYNOPSIS This paper traces the evolution of a component of a mechanical design from its
initial inception to completion. This research focuses on the interplay of design objects,
features, constraints, and design decisions. Based on empirical data extracted from verbal
design protocols, a design terminology is developed. Constraints were identified in the protocol
and classified according to their source, level of abstraction, and form or function orientation. A
structure for constraints was also developed which decomposes the constraints and classifies
them into ten (10) basic feature relationships.
1 INTRODUCTION
This paper traces the design of a mechanical component from its initial inception through to the
final detailed design. The data for this paper is based on a protocol study in which five designers
were video and audio recorded as they designed machines to meet abstract needs. This data has
yielded a model of the design process in enough detail to answer many questions fundamental to
the development of computer aided design tools, the evaluation of design quality and the
development of effective design methodologies and teaching techniques. Previous papers
detailing this model are referenced in this paper.
To explore component development in design, the design history of a single component was
extracted from one of the protocols. One goal of collecting this data is to show the development
and propagation of constraints, the relation of design features to constraints, and to identify the
needs for representation in mechanical design. Additionally, this effort continues research on the
concept of a design history in that every decision made that helped the component progress from
its inception to the final, detail drawings was noted.
In the design of a component some constraints on its form and function are given at the
beginning of the problem. Other constraints arise from the designer's knowledge of the domain.
Yet others are derived from each design decision made. It is the interplay of these types of
design constraints that form the evolutionary refinement of the component. This evolution is
traced in detail and the constraint-driven nature of the design clearly demonstrated.
A second goal is to clarify the definitions of and show the relationships between the terms
"constraint" and "design feature". These terms are currently used in many inconsistent ways. In
order to trace the history of the design of the component considered, the definitions of constraint
and feature are forced to be clarified and the relations between them evolved. In developing this
history, requirements for design data representation are identified. This was the subject of an
earlier paper but is still being refined in studies such as this.
The organization of this paper will be to first describe the protocol data that is the basis for this
study (Section 2). In Section 3 the terms feature, design object, constraint and design decision
are defined as well as the interactions that exist between them. This is followed by Sections 4
and 5, where protocol data concerning features and constraints are presented. A constraint
mapping technique used to reduce the data is presented in Section 6. Conclusions drawn from
this data are in Section 7.
2 DATA FOR THE STUDY
To understand the performance of a design engineer it was necessary to observe engineers engaged in the design process. This was accomplished in this research through a technique called protocol analysis. Protocol analysis involved the video and audio taping of engineers as they solved specific design problems. During their solutions they were asked to "remain verbal" (1, 2). The engineers' verbalizations were then transcribed. By reading the transcripts and viewing the designers gestures and drawing action on video tape, many types of protocol data can be extracted from the design (1, 3). Here, the protocol data extracted were the features and constraints of the design effort.
Protocol analysis is the best way known to these researchers to gather information on how
humans solve complex problems. Since the major use of the data developed here is for the
development of interactive computer aided design tools, it is important to know how human
designers behave in order to develop acceptable human/machine interfaces. However, the
protocol data is limited to what the designer verbalizes, gestures or draws. It is conceded that not
all the design activity is verbalized in the protocols as humans think faster than they can talk.
But, past research (1) has shown that what is recorded gives enough information on the overall
activity to aid in understanding the design process.
Figure 1: Top and side view of flipper-dipper assembly
In previous studies (1, 2), a total of five separate design protocols were recorded. Two
experienced design engineers solved a problem concerned with the packaging of small batteries
in a computer and three design engineers solved the problem used for this study. The design
problem presented to the engineer whose protocol is used in this study (the selection criteria
follows this paragraph) was that of coating both sides of an aluminum plate with a thin film. The
design specifications (1,3) presented to the subject gave the required operation which included a
worker loading a 10" x 10" x .063" aluminum plate into the machine to be designed. The
machine then must lower the plate to the surface of a water bath. On the water surface was a
sticky, thin chemical layer which adheres to the plate on contact. The plate must then be lifted
off the surface, flipped over and the process repeated for the other side. Finally, the worker
removes the plate with the film on it and loads a new one to be coated. Based on the action
required by the machine, this problem has been dubbed the "flipper-dipper" problem. Along with
the functional requirements above, specific form constraints on the handling of the plate and the
allowable space for the machine were also given.
Figure 2: Top view outer frame assembly
Since the goal of this research was to track one component through its evolution it was necessary
to select a single subject's protocol for study. The selected protocol was chosen because of the
clarity of the protocol data and the relative straightforward nature of the design process and of the
finished design itself. The chosen protocol consists of a pedestal, outer frame, flipping frame,
and gripper as is shown in Figure 1. This figure is a cleaned up CAD drawing of the final design
drawing generated by the designer. The operation of the mechanism is as follows: the operator
places an aluminum plate into slots located on the gripper assembly, the gripper which is
attached to the flipping frame is then lowered to the water surface for the chemical adhesion, the
plate is then raised above the water bath and rotated about a pivot between the flipping frame and
outer frame, and the plate is again lowered with the opposite side down; once the chemical
adhesion has taken place the plate is again raised and removed from the gripper assembly. To
account for the thickness of the flipping frame, the gripper assembly slides on rods so that the
lower edge of the plate is always below the lower edge of the flipping frame.
Due to its simplicity the design object chosen for the study was that of the outer frame assembly
of the machine. The outer frame along with its decomposition into its major components is
shown in Figure 2. The main function of the outer frame assembly is to raise and lower the
flipping frame over the water bath. The components that comprise the outer frame are the lever
arms, the front cross member, the back cross member, the diagonal cross member, the front and
back pivot points, the doublers, and the bushings. Each of these components has certain features
that are pertinent in the design. The constraints associated with these individual features are the
ones focused on in this research.
The protocol studied encompassed a total design period of 4 hours and 38 minutes, recorded over
three separate design sessions on subsequent days. The transcript for this protocol consisted of
85 pages of typed, double-spaced verbalizations and 28 separate design drawings made by the
subject (all drawings were done by hand). These range from conceptual sketches to complete
detailed drawings from which Figures 1 and 2 were taken. The development of the outer frame
assembly was contained in 40% of the total transcript and was represented on 34% of the
drawings.
As an example of the data, consider the section of transcript presented below which is about one
minute long. In this example the subject is about 1/3 of the way through the design. He is trying
to position the front pivot point (the pivot between the outer frame and the flipping frame) and
subsequently determine the lever arm length. This topic is reconsidered four other times during
the protocol, each time with new design information having been generated in the interim. The
numbers preceding the lines refer to page and line number of the protocol from which the data
was extracted. In this section the designer is referencing a sketch he made that is shown in Figure
3.
The text, the figure and the associated video tape for this and other similar segments of the protocol that refer to the outer frame assembly, are the raw data on which this study is based. In order to deal with the data it was first reduced to a more intelligible form. This reduction can be found in the lower section of Fig. 3.
"Let's see how much we've got in the back. We've got 32" |
19 minus 15, 17" here to play with, so we need, surface of |
the water is here, 1/2" below and if we make most of this take |
place near the front of the tank, say 1" from the |
25 front of the tank, here's a plate, that'd give us the |
longest moment arm there, or fulcrum, so we get the maximum |
29 elevation pivot point, pivot point is up above the, okay, |
if we have to we can make it up here. Okay. And the rods |
here, rod here, and it has to go equal distance past here, |
35 so that it slides equal distance from both sides of the |
pivot point. And the pivot point will also be, on the same |
39 plane as the pivot point we'd also have to have our guide |
so that it didn't extend below or equal distance on each |
side of the pivot point, like so, the framework. Okay, |
45 here we go. And, that would take care of that arm |
coming back. Okay." |
19.17 we've got .... 17" here to play with [from back of sink to back edge of table] (drawing 4.2) |
19.23 most of this [machine process] take place near the front of the tank, 1" from front of tank |
19.27 longest moment arm there, or fulcrum |
19.27 get the maximum elevation in the [front] pivot point |
19.31 [front] pivot point is up above the...... make it up here (drawing 4.2 A) |
19.45 that arm coming back (drawing 4.2 B) |
Figure 3: Text and accompanying reduction from protocol
It should be noted that not all of the information available in the transcript sample was extracted.
Only information relevant to the outer frame was considered.
The important points to note about the above reduced text are that: 1) This reduction does capture
the design progress of the protocol; 2) It is easier to follow than the original text; and 3) The six
statements are all of a similar structure. This last point sets the tone for the remainder of this
paper. Namely, after examining the constraint statements on the outer frame assembly, it was
hypothesized that all the data could be represented in terms
of features and constraints and that design decisions could be observed through the changes in
them.
3 DESIGN OBJECTS, FEATURES CONSTRAINTS AND DESIGN DECISIONS
One of the main objectives of this research is to establish an acceptable terminology which can
be used in describing the design process. By following the progression of constraints and the
evolution of features in the design protocol, the formulation of this terminology is achieved.
Thus the terminology developed in the following sections was arrived at through considerable
review of the design data.
3.1 Design Objects
During the design effort an engineer decomposes the design into assemblies, components, interfaces and features of assemblies, components and interfaces. All aggregations of components are termed an "assembly" (4). Assemblies can be thought of as parent or child in nature, in that an assembly can have a larger parent assembly or have children or (sub)assemblies. Since there is no limit to the number of assembly generations, the term "assembly" is used for all component aggregations. "Components" are individual parts of a design.
(**** need design object definition here**)
A design object tree, which graphically displays the hierarchal breakdown for the design
studied, is shown in Figure 4. This diagram shows the breakdown of the entire assembly into its
children assemblies. Also depicted is the breakdown of the outer frame assembly into its eight
components.
The next section focuses on features. However, before fully defining features it must be noted
that the breakdown of design objects into assemblies, components and interfaces is inadequate in
that it is too coarse. Usually it is necessary to deal with the features of a design object or
commonly, the features of a feature. For example; the lever arm is a component. However,
much design activity was expended on the front pivot point, a feature of the lever arm. The front
pivot point, in turn, has many features such as its location. Thus, features themselves must be
treated as design objects.
It is important to define all the entities of a design as design objects, in order to discuss them as a
group and because this breakdown is consistent with the way in which a designer refers to the
design. At any given moment in the design, the designer focuses his attention on one of the
design objects. The distinct properties of the design object that the engineer deals with when
working on it are commonly called design features.
3.2 Design Features
There has been a substantial amount of work done in the area of design feature definition and use
(5, 6, 7, 8). These efforts represent a variety of different backgrounds and differing points of
view. This has resulted in a variety of definitions for the term "feature". These definitions all
have validity in their respective fields or areas of interest. However, here the concern is for the
terminology used by the designer and so the definition must be very broad. Thus, this research's
formal definition for a feature is:
A feature is any particular or specific characteristic of a design object that contains or relates
information about that object. It is verbally represented in the form of a noun or noun clause. From the above definition it can be surmised that anything and everything about a mechanical
design object can be considered a feature, such as: location, length, material, operation, etc.
Depending on the point of view taken, some features are obviously more important than others.
In other words, the relevancy of a feature is dependant on the focus at the time. For example, the
manufacturing feature of a surface finish may not be important to a designer during the
conceptual phase of the design process, but is important to manufacturing. Likewise some
functional features of how a design object behaves or what its purpose is, which may be critical
to a designer, may not be important from a manufacturing point of view. An expanded object
tree displaying some of the features of the components used in the design of the outer frame
assembly is shown in Figure 5. The features shown in this tree are those that the engineer
devoted a considerable amount of time to. A complete list of all 277 features and 38 design
objects used by the designer in the sections of the protocol studied are given in Appendix A. Out
of the 277 features, 95 (34%) of them directly describe the outer frame. The remainder of the
features were of components, interfaces or assemblies that acted as constraints on the outer
frame.
There are two distinct types of
features used by the designer: form
features and function features. Form
features include geometrical,
topological, manufacturing and
tolerance features along with any
other features used to describe the
physical structure of the design
object. Functional features include
both the purpose of the design object
such as support, stability, or strength
and the behavior that the design
object performs like lifting, gripping,
or rotating. The form features
embody the physical characteristics
of design objects in a design while
the functional features explain what
purpose the design objects achieve
individually and what behaviors they
exhibit in the overall design. A breakdown of these different feature types can be found in
Appendix B.
The feature diagram in Figure 6 displays how the features are segregated into form or function.
To better understand the way in which form and function features describe an object, consider the
front pivot point in the design studied. Some important form features include the shape, depth,
diameter, location and manufacturing method. A functional feature of the pivot point is that of
providing an axis on which the flipping frame can rotate.
3.3 Constraints
In the protocols, constraints are statements made about a design's features, such as: "the length is
19 inches" and "the knob diameter is smaller than the outer arm height." In the first example the
feature "length" is constrained by the value 19 inches". The second example relates two features,
"the knob diameter" and "the outer arm height" by a conditional relation of "smaller". In
reviewing the constraint statements like those at the end of Section 2, for all the protocol sections
focused on the design of the outer frame assembly, the 277 features were involved in 725
constraint relations. These have been classified into two types of semantic structures. By using
these structures every constraint in the protocol has been modeled. Independent of the protocol
studied, the constraint types given below are thought to represent all types of constraints possible.
The first semantic structure is of the form <feature - instantiation>. Here the term "feature" is as
defined in the previous section and term "instantiation" refers to the value specified for the
feature. From the protocol sections reviewed, two types of feature relationships of this structure
were found. These are:
1. <function feature> - <instantiation>
2. <form feature> - <instantiation>
Below are examples of these two constraint types found in the protocol. Preceding the feature
relationship is the number referring to the specific type of the relationship involved. The dashes
(-) signify the separation between the feature and instantiation.
1. [machine operation time - is 40 seconds]
Here the feature being instantiated is the functional feature of "machine operation time". It is
being instantiated with the descriptive value "is 40 seconds". This instantiation comes from the
given design specific- cations and is therefore a reference made by the designer as opposed to his
changing or giving some new value to the feature.
2. [flipping frame depth - needs to be at least 10 1/2"]
The form feature here "flipping frame depth" is instantiated with the value "at least 10 ½ inches
". Here a feature is given conditional initial value that it must achieve.
Of the above two examples the first came from the given specifications and the second from the
design itself. Many of the instantiations observed involved the initialization or modification of
features in the design itself. It is these instantiations that give the current state of the feature. By
observing the change in the representation and value of the instantiation, the history of the
development of the feature can be tracked.
For example, the next two occurrences of the flipping frame depth are give below as:
2. [flipping frame depth - is 12 inches]
2. [flipping frame depth - is 12 inches overall]
The feature is first given a value of "12 inches", which is a refinement of the previous
instantiation. The feature value is then further refined by the instantiation "12 inches overall".
This type of feature development is typical of the protocol studied, and shows how the feature
progresses with respect to the constraint.
The other semantic structure observed for the constraints was of the form: <dependent feature -
relation - independent feature>. As there are both form and function features and there can be
both form and functional relations, there are potentially eight different feature relationships of
this structure. These are:
3. <form feature> - <form relation> - <form feature(s)>
4. <form feature> - <function relation> - <form feature(s)>
5. <function feature> - <form relation> - <function feature(s)>
6. <function feature> - <function relation> - <function feature(s)>
7. <form feature> - <form relation> - <function feature(s)>
8. <form feature> - <function relation> - <function feature(s)>
9. <function feature> - <form relation> - <form feature(s)>
10.<function feature> - <function relation> - <form feature(s)>
In each of these, one or more features constrain, through the relationship, a single feature.
Examples of each of these constraint types are:
3. [knob location - in middle of - flipping frame outer arm location]
Here the form feature, "knob location", is constrained by the relation, "in middle of", to the form
feature "flipping frame outer arm location". This was used as a form constraint on the
positioning of the knob.
4. [flipping frame - pivots on - shoulder bolts]
The first form feature, "flipping frame", is given the function of "pivots on" in reference to the
second form feature "shoulder bolts". This relation acts as functional constraint on the flipping
frame.
5. [ ] <function feature> - <form relation> - <function feature>
This relationship was not found in the section of protocol that was codified. This relationship is
theoretically possible but cannot be substantiated by the data reviewed.
6. [front cross member purpose - prevent - outer frame racking]
Here the functional feature of "front cross member purpose" is related to another functional
feature of "outer frame racking", by the functional relation of "prevent". Here the functional
purpose of preventing outer frame racking was satisfied by the front cross member.
7. [front pivot point elevation - would be 8 inches to allow for - flipping frame rotation]
Here the form feature, "front pivot point elevation", is subject to the conditional form relation of
"would be 8 inches to allow for" in regards to the function feature, "flipping frame rotation".
This is used as form constraint on determining the location of the front pivot point.
8. [back pivot point location - limits - framework side travel]
This relationship shows that the form feature of "back pivot point" has a functional relationship
of "limits" on the function feature of "framework side travel". This constraint performs a
simulation on a function of the back pivot point.
9. [flipping frame rotation - occurs 1 inch from -tank front edge]
In this relationship, the functional feature of "flipping frame rotation" is related to the form
feature of "tank front edge" by the form relation of "occurs 1 inch from". Thus the position of the
water tank is imposing a form constraint on the flipping frame operation.
10. [spring purpose - hold out of water - flipping frame]
Here the function feature, "spring purpose", is related to the functional relation of "hold out of
water" with respect to the form feature "flipping frame". The only difference between this
relationship and that shown above in [6] is that the independent feature is of a form type.
All the constraints extracted from the design protocol can be broken down into one of the ten
relationships discussed above. By representing the constraints in these semantic structures, both
the progress and interdependency of the features can be examined. The processes by which new
constraints are generated or added to the design are the decisions made by the designer.
3.4 Design Decisions
In this constraint model of the design process, design decisions are defined in terms of constraint
changes.
A design decision is defined as occurring each time the value of a feature of a design object or
the relationship between features is changed or initialized.
Design decisions may be driven by several different constraints emanating from separate design
objects. The result of a decision is usually a single constraint, but multiple constraint are
sometimes generated. The result of the design decision can affect any level in the design object
tree but is usually a modification of a specific feature value or relation, on which the decision
was focused. The driving constraints of a design decision are referred to as the forcing
constraints of that particular decision. The resulting constraints, on the other hand, are the direct
consequences of design decisions and represent new information generated in the design. Once a
design decision is made, this new information can be used as forcing constraints in future design
decisions.
4 FEATURE OBSERVATIONS
In the sections of the protocol that were focused on the design of the outer frame assembly, 277
separate features were observed. A list of these features are given in Appendix A. In reviewing
these 277 features it should be noted that they are of the pattern {design object - specific feature}.
Specific features are object attributes of interest. If the design process was totally geometric,
then the specific features would all be geometric primitives such as length, height, etc. In the
entire 277 features there are only 58 different specific features. A listing of these feature
attributes, categorized by type, can be found in Appendix B. These are by no means a complete
list of all possible design features, but represent only the features explicitly used by this designer
on one subassembly in the design. It is observable from this list that the majority of the feature
attributes are form oriented. This is consistent with the results of earlier research (Ullman et.al
1988), namely, designers focus on form much more than function.
5 CONSTRAINT CLASSIFICATION
Once the definitions were completed and the constraints extracted from the design protocol, the
task of classifying the constraints was initiated. The classification of the constraints was
performed not only for purposes of analysis but also in hopes of developing a more formal
constraint language, upon which a representation could be built. Even if the classification only
provides an elaborate bookkeeping tool, it would still be beneficial in the development of a
constraint management system. The classification also gives insight into how the designer uses
constraints in a design and relates the significance of some constraints as opposed to others.
Constraints are classified by three different measures: constraint source, constraint structure and
level of abstraction. Below is an explanation of each of the different measures and statistics from
the protocol reduction that was taken for the outer frame assembly.
5.1 Constraint Source
A constraint can originate from one of three different sources: it can be given, introduced or derived. Given constraints are those furnished to the designer which provide an idea of what is required by the design. A given constraint is usually received by the designer at the beginning of the design as part of the design specifications and requirements. These can be either form or function oriented and can originate from clients, designers of adjacent design objects, or initial specs. Given constraints can be used at any time in the design process, whenever the designer requires information on the initial state of the design.
An introduced constraint is one which is brought into the design from the designer's domain
knowledge, handbooks, or other "domain knowledge" sources. It is a constraint that is brought in
from outside the current problem solution space and has not been derived from any other
constraints. Introduced constraints often are vague and general by nature. Examples of introduced
constraints are "keep everything as light as possible" or "make maximum use of the table". Other
introduced constraints include equations and hard data used in analysis such as material
properties, but none of these were observed in the protocol examined.
Derived constraints are generated inside the design space and are intrinsic to the design being
worked on. Derived constraints result from and can be changed by the outcome of design
decisions. Although design decisions can be affected by given, introduced or derived constraints,
the result of the decision is always a change or initialization of a derived constraint.
The process of design for a mechanical part can be thought of as the creation and refinement of a
set of constraints. Initially these constraints consist of a group of given constraints, that define a
desired function and/or form for a particular application. The given constraints comprise the
initial specifications of the design. As the design process proceeds, this body of constraints grows
and develops until a final concrete solution is achieved.
In the beginning of the design, the design engineer is presented with given constraints that are primarily functional, that describe the desired operation of the design. Along with the functional definition of the design, very specific form constraints are often presented in the given specifications (e.g. the dimensions of the aluminum plate).
Figure 7
As the designer proceeds, the given constraints become less abstract and develop into concrete
form and function instantiations for specific design objects. In the protocol studied, the engineer
took the given specification of "coating both sides of an aluminum plate" and developed it into "a
person would load it [plate], dip it, rotate it, dip it, and then a person would have to flip it back to
unload it". This revision of the functional constraints allows the engineer to begin the
conceptualization of the design objects needed for the design function. The next three paragraphs
walk through the three design stages of the design (conceptual, layout, and detail), in reference to
the constraint source: given, introduced, or derived. In analyzing the data, the concept of three
distinct design stages was adopted: conceptual, layout, and detail. These stages are really
management labels given to the level of design detail and are hard to apply since the design
process is so interleaved. While one feature may be in the layout stage, other adjacent
components or features of the object in question may still be conceptual. Therefore the design
stage divisions assumed in this research were based on the drawing level produced by the
designer during the protocol. Rough sketches were treated as conceptual design representations.
After establishing a basic layout of the design with rough sketches, the designer used a straight
edge to generate scale drawings with rough dimensions. These drawings were taken as
representations of layout design. The designer then made drawings with detailed dimensions and
manufacturing notes. These were considered as representations of detailed design. These stages
are important when trying to understand how the constraints affect the design and how the
constraints are propagated through the design. A graph of the constraint source percentage for the
three design stages and for the total design process of the flipper dipper design protocol is given
in Figure 7.
As the design's functional constraints become more concrete, design objects are created to meet
these new functional requirements. During the conceptual stage of the design, the majority of the
constraints (70%, see Figure 7), are given constraints. From the functional constraints are born
the conceptual form of the design. In the development of the conceptual design, form features are
created out of functional requirements and then verified by simulation of the design operation.
Once a completed conceptual design is created, the designer begins the layout stage of the design process. In the layout stage the designer patches and refines his design and checks to see that there are no conflicts with any of the form constraints given in the design specifications. The main driving force of the layout stage are the derived constraints (79%). It should be noted here that almost half of these derived constraints originated from design objects outside the outer frame assembly.
Figure 8
In the detail stage of the design, the engineer is primarily refining the design to ensure that all the
design objects work together. The main drivers of this design stage are previously derived form
constraints (84%). This refinement process consists of comparing different form constraints to
ensure that there are no conflicts in the design, and changing or "patching" the constraints when
conflicts arise. The resulting product of this constraint propagation and feature evolution is a
formalized detailed design from which the mechanism can be constructed.
When examining the percentages for the overall design, the dominant value is of the derived
constraints (75%). This value suggests that the designer deals primarily with constraints
generated by the design itself rather than constraints brought in from outside the design space.
5.2 Constraint Structure
As discussed earlier there were ten different constraint structures possible in the protocol. The
percentage of each type of structure was calculated and plotted in Figure 8. By far the largest
percentage of relationships (51%) fell into the second type, [form feature - instantiation]. The
next highest percentage (20%) was for the third relation, [form feature - form relation - form
feature]. This supports the earlier notion that the majority of the work performed was
concentrated on the form features. It should be noted that most of the first relationship types,
[functional feature - instantiation], were verbal simulations of the machine's operation. (i.e.,
[machine operation-operator slides plate in, pivots it and turns the frame that holds it].
The 10 constraint structures have been divided into two separate categories: form constraints and
function constraints. Structures 2,3,5,7 and 9 are form constraints. Structure 2 gives the
instantiation of a form feature whereas structures 3,5,7 and 9 give a form relation between either
form or function features. Likewise, structures 1,4,6,8 and 10 are function constraints. Structure 1
gives the instantiation of a function feature whereas structures 4,5,7 and 8 give functional
relationships between either form or function features.
Nearly three-quarters (72%) of the constraints are of the form type and the other quarter (28%)
are functional. Since the design problem studied was driven primarily by functional
requirements, it might be expected that for a design with more form oriented specifications, the
percentages observed would have an even wider spread.
5.3 Level of Abstraction
The level of abstraction for a constraint (3) can fall into one of three sub-divisions: abstract,
intermediate or concrete. The concept of abstraction is actually a continuous function rather than
the discrete form used here. However, codifying abstraction is difficult and thus the three
divisions are very loosely bound and may overlap each other in certain instances. Also note that
the abstraction level refers to the "instantiation" or "relation" the features attain rather than the
representation of the feature. Therefore the current abstraction level of a feature is represented by
its most recent instantiation.
Abstract constraints are very general and are usually concentrated in the conceptual stage of the
design process. An example of an abstract constraint is "small axle on a framework [the front
pivot point]", which is the first conceptualization of the front pivot.
Intermediate constraints are more descriptive in nature but still not fully defined in a precise
quantitative notation. These constraints are predominantly found in the layout stage of the design
but can be dispersed throughout the design effort. An intermediate constraint would be "our
[front] pivot point we want right in the middle of the tank". This constraint tells approximately
where the pivot should be (in the middle of the tank), but not exactly.
Concrete constraints are very specific, giving exact quantitative values or specific functional
qualifications. As expected these constraints are found primarily in the detail stage of the design.
A concrete constraint would be "our [front] pivot point will be 6" from the center". Constraints
tend to start as abstract and develop through intermediate into concrete specifications. However,
this is not always the case as many design objects are brought into the design (introduced) at a
concrete level.
As with the constraint sources, the levels of abstraction were also grouped into the three different
design stages: conceptual, layout, and detail. The resulting percentages can be seen graphically in
Figure 9. In the conceptual stage the majority of the constraints were abstract (55%), which
should be expected. In this stage the concrete constraints appear to be higher than what might be
anticipated (18%), but this can be accounted for when realizing that most of the given constraints
are stated in a concrete form. In the layout stage, the intermediate constraints are predominant
(57%), which is not surprising considering the above definitions. In the detail stage of the design,
the concrete constraints have the largest magnitude (47%). They are followed somewhat closely
by the intermediate constraints (36%). Since the design studied was not completed through to the
level of full detailed drawings but instead to the high level layouts with manufacturing notes, it is
expected that with a more detailed level design, the concrete constraints would increase greatly in
the detail stage of the design.
The percentages for the entire design can be seen in the total grouping in Figure 9. The first
observation that can be made of these values is that they are fairly well distributed. It can also be
noted that the largest percentage occurs at the intermediate level, which suggest that the design
was developed significantly on a transitional basis. As stated above, the concrete constraints
would increase significantly if the design was carried out to complete detailed drawings.
6 CONCLUSIONS
The focus of this paper is concerned with the development and propagation of constraints and
features in the mechanical design process. This was documented by studying the constraints that
affected the design of one part's features in an entire design protocol. The evolution of the part's
features involved the generation of design decisions. These design decisions were forced by
inputted given, introduced, and derived constraints and resulted in new derived constraints.
By identifying and codifying the constraints, a better understanding of the necessary requirements
for representing them was established. The constraint classification which was proposed in
references 3 and 4 was tested and validated. This classification consisted of the constraint source,
level of abstraction, and structure. The structure developed for the constraints was based on
feature relationships. These feature relationship were of the form:
<dependent feature> - <relation/instantiation> - <independent feature>
From this basic pattern, 10 different structures were generated. These structures were used to
successfully model all the constraints identified in the part design.
The research performed resulted in a substantial insight into constraint and feature generation and
propagation in the process of mechanical design. With the creation of a constraint classification
based on feature instantiations and relations, the next step, that of building a formal
feature/constraint representation, can proceed.
REFERENCES
(1) STAUFFER, L.A., ULLMAN, D.G., and DIETTRICH, T.G., Protocol Analysis of
Mechanical Engineering Design, International Conference on Engineering Design, Boston, MA,
1987.
(2) ULLMAN, D.G., STAUFFER, L.A., and DIETTERICH, T.G., Toward Expert CAD, ASME
Computers in Mechanical Engineering, 1987, Vol. 6, No. 3, pp. 21-29.
(3) ULLMAN, D.G., DIETTERICH, T.G., and STAUFFER, L.A., A model of the mechanical
design process based on empirical data: a summary, Proceedings of the AI in Engineering
Conference, Stanford University, Aug., 1988.
(4) TIKERPUU, J., and ULLMAN, D.G., General Feature Based Frame Representation for
Describing Mechanical Engineering Design Developed From Empirical Data, International
Computers in Engineering Conference, San Francisco, CA, August 1988., p. 245.
(5) CUNNINGHAM, J.J. and DIXON, J.R., Designing With Features: the Origin of Features,
International Computers in Engineering Conference, San Francisco, CA, August 1988., p. 237.
(6) DIXON, J.R., DUFFEY, M.R., IRANI, K.L., MEUNIER, K.L., and ORELUP, M.F., A
Proposed Taxonomy of Mechanical Design Problems, International Computers in Engineering
Conference, San Francisco, CA, August 1988, p. 41.
(7) UNGER, M.B. and RAY, S.R., Feature - Based Process Planning in the AMFR, International
Computers in Engineering Conference, San Francisco, CA, August 1988, p. 563.
(8) SHAH, J.J., and WILSON, P.R., Analysis of Knowledge Abstraction, Representation and
Interaction Requirements for Computer Aided Engineering, Journal of Design Studies, accepted
for publication.