Parametric CAD Modeling: An Analysis of Strategies for Design Reusability

CAD model quality in parametric design scenarios largely determines the level of flexibility and adaptability of a 3D model (how easy it is to alter the geometry) as well as its reusability (the ability to use existing geometry in other contexts and applications). In the context of mechanical CAD systems, the nature of the feature-based parametric modeling paradigm, which is based on parent-child interdependencies between features, allows a wide selection of approaches for creating a specific model. Despite the virtually unlimited range of possible strategies for modeling a part, only a small number of them can guarantee an appropriate internal structure which results in a truly reusable CAD model. In this paper, we present an analysis of formal CAD modeling strategies and best practices for history-based parametric design: Delphi’s horizontal modeling, explicit reference modeling, and resilient modeling. Aspects considered in our study include the rationale to avoid the creation of unnecessary feature interdependencies, the sequence and selection criteria for those features, and the effects of parent/child relations on model alteration. We provide a comparative evaluation of these strategies in the form of a series of experiments using three industrial CAD models with different levels of complexity. We analyze the internal structure of the models and compare their robustness and flexibility when the geometry is modified. The results reveal significant advantages of formal modeling methodologies, particularly resilient techniques, over non-structured approaches as well as the unexpected problems of the horizontal strategy in numerous modeling situations.


I. Introduction
One of the contributions of modern 3D CAD to accelerate the product development process is the ability to reuse and make alterations to existing models in an efficient and relatively easy manner. Many authors have identified the ability to apply previous designs and processes to new situations as an essential factor in modern engineering and product development scenarios [1][2][3]. With the increasing popularity of model-based engineering approaches, where the majority of design information is stored digitally within CAD models, design reusability has become largely dependent on CAD reusability. CAD models serve as the central point of the development process and the main data source used and shared by most stakeholders.
In the CAD domain, reusability refers to the extent to which CAD data can be effectively altered so it can be used in or adapted to different applications or designs with minimal effort. In today's industrial environments, where engineering design relies heavily on digital product representations, CAD reusability demands an efficient management of three-dimensional CAD data. Making changes or reusing a particular CAD model may be simple, difficult, or impossible, depending on the semantics associated to the modeling procedure chosen by the original creator.
From an industrial standpoint, feature-based parametric CAD is currently the industry standard technology to create geometric models and assemblies, and is widely used across many engineering fields. In a parametric model, the geometry is mainly controlled by non-geometric features called parameters [4], which can be defined by dimensional, geometric, or algebraic constraints. If properly used, parametric CAD enables the addition of design semantics to the model, which translates into the rapid alteration of existing models by simply editing the values of some parameters.
Current parametric CAD is dominated by the history-driven approach, where a record of how the model is built is automatically saved and made available as the model is being created. History-based parametric modeling systems rely on data structures that maintain three-dimensional information of specific aspects of the model (features) in an associative manner (parent/child). In other words, all features in the model are connected hierarchically, creating a network structure where every node represents a feature and every connection represents a dependency between two features. This structure is commonly known as design tree, feature tree, or history tree. The adaptable nature of the design tree allows CAD users to quickly model complex parts with relative ease while increasing the flexibility and reusability of their designs. When feature dependencies are properly defined, alterations performed to a parent node will automatically propagate to its child nodes, i.e., the CAD model will react to changes in a predictable manner [5]. Unfortunately, parent/child interdependencies between features are also the root of many regeneration problems in parametric modeling. The size and complexity of a parametric CAD model can grow rapidly and significantly depending on the application. As the number of dependencies grows, so does the interconnectedness of the design tree, which may negatively impact maintainability and model reuse. When feature interdependencies are not defined properly, even minor alterations may cause the CAD model to become unstable, forcing designers to rebuild the model to some degree to re-establish new design intent [6].
Despite the powerful parametric tools available in modern CAD packages, the responsibility of creating efficient models that can be easily altered and reused still lies on the designer [5][6][7]. Authors Rynne & Gaughran [9] point out that CAD software is "of limited use to engineers and technologists who do not fully understand fundamental graphics principles and 3D modeling strategies." Problems related to modeling strategies can easily be observed in practical scenarios, where the same part modeled by two different expert designers will likely have a different construction history and ability to adapt to design changes [5].
In this regard, identifying the most appropriate modeling practice for a particular design situation and understanding how the design tree can be structured are critical factors to guarantee success. Therefore, it is essential to select a well-thought modeling methodology to ensure an efficient functional model and minimize the time and effort involved in performing modifications based on the characteristics and requirements of the part [1,2]. The process, however, is not easy. Selecting a specific strategy and making modeling decisions are activities that strongly depend on the user's cognitive abilities and her experience and skills to understand and break down the design [9,10]. To exacerbate the situation, most CAD trainings are aimed at learning how to use a specific software tool rather than how to create robust and reusable CAD models. [5].
In industrial settings, some companies define internal CAD modeling methods and guidelines (oftentimes dictated by previous experiences and/or senior designers' expertise) that must be followed by designers to ensure a certain level of consistency and standardization. However, this type of information is often kept private, protected, or patented [11], as it may lead to competitive advantages for organizations. As a result, there is a limited amount of published scientific literature about effective parametric CAD modeling methodologies and their practical application in production environments.
In this paper, we address some of the difficulties inherent to parametric CAD model structures and examine three major modeling methodologies used in feature-based parametric design: horizontal modeling, explicit reference modeling, and resilient modeling. We present a series of experiments aimed at comparing these strategies by using three industrial CAD models with different levels of complexity and analyzing the internal structure of the models. To determine their effectiveness, we study user performance and model behavior when the geometry is modified, emphasizing the correctness of the model after changes and the time employed to complete the task.

II. Related Work
Despite the significant advances made in the area of parametric CAD modeling, the foundations established by Shah [4] and Roller [12] and supported by the work of Anderl and Mendgen [13] remain relevant and unchanged. Researchers generally agree that in order to create an effective parametric CAD model, the functional parameters of the part that is being modeled must be recognized [14] so the appropriate parametric scheme and structures can be determined and implemented [8]. Although many authors have studied parametric modeling in terms of the technology, its mathematical basis, and its benefits within the product development process [13,[15][16][17], only recently are scholars beginning to study modeling strategies and specific user's decisions as enablers of the technology.
According to Chester [16] and Rynne and Gaughran [9], effective use of CAD systems requires the acquisition of strategic knowledge such as selection of solid modeling alternatives and proper use of modeling constraints to capture design intent [19][20][21]. The most relevant studies on feature-based modeling were compiled and discussed in the review paper presented by Shahin [22]. From a more practical perspective, design methodologies, organization requirements, and techniques for 3D product modeling are described by the German norm VDI2209 [23], which emphasizes the importance of a "thinking process" as a necessary step to create robust CAD models and prepare the next steps of the modeling process. Unfortunately, specific modeling procedures and formal CAD strategies are not addressed by any of these documents, partly because of the difficulty of dealing with the human cognitive element involved in the decision making process during the modeling process. Additionally, as stated by Bodein et al. [5], the research community has mainly focused on making CAD models increasingly comprehensive by incorporating various layers of information to assist designers during the decision making process. For example, mechanisms such as knowledge-based systems or model annotations [22] have been developed to aid designers in creating more reusable models, but limited efforts have been put towards developing efficient CAD modeling procedures.
Attempts to define formal parametric design methodologies have originally focused on assembly modeling. Some strategies have been proposed in terms of how components must be organized within the assembly context and what constraints and relationships need be established among the components (top-down design). For example, Aleixos et al. [25], suggest a top-down assembly modeling methodology based on the integration of semantic elements with CAD models. Authors Hui et al. [26], also use semantic elements to develop an "assembly semantic modeling" theory that can be applied to assembly sequence planning. In addition, software systems and algorithms such as the graph-based system recently proposed by Patalano et al. [27] have been developed to assist users and partially automate some of the aspects involved in the design of constraint-based mechanical assemblies.
Despite their undeniable benefits, assembly modeling techniques are only a fraction in the overall scheme of parametric product development. Efficient modeling practices require adequate modeling strategies for individual parts as well. Although some authors have ventured to define part modeling guidelines and best practices, this area remains relatively unexplored. Hartman [28], for example, defined a procedure based on observing how experienced designers create models. The objective of his study was to determine the relationship between the expert's mental model and the specific modeling actions performed. Rynne & Gaughran [9], developed a strategy based on cognitive modeling to maximize design intent when designing CAD parts. Bluntzer et al. [29] proposed a methodology that emphasizes modifications and the customer needs as fundamental elements to define the CAD model geometry. Likewise, Company et al. [30] suggested a set of modeling best practices for quality CAD training based on progressive refinement that can be assessed with a series of coordinated rubrics. Other authors, such as Bhavnani et al. [31], recommend creating models using fewer, more complex features, as these parts can be modeled more quickly, whereas Wu [32] claims that the best modeling strategy may not result in parts with the smallest number of features, as the overall efficiency of a model depends to a great extent on the ease of making modifications.
All the attempts mentioned in the previous paragraph provide valid guidelines for creating robust and reusable parametric CAD models. Nevertheless, they are not formal modeling methodologies and in many cases their recommendations can only be applied to small or very specific domains. For this study, we have identified three major modeling strategies that have been published, explained in detail, and tested: Delphi's horizontal modeling [11], explicit reference modeling [5], and resilient modeling [33]. The three methodologies are publicly available and have been used or are currently being used or adopted in professional environments. Although other methodologies or variations of current methodologies are likely to exist, their specific details are often protected or not available to the public. Efficient CAD strategies can easily translate to competitive advantages, so companies are often protective and reluctant to share them.
The general goal of an efficient parametric modeling methodology should be to build design trees that are simple, easy to understand, and with a small number of parent/child dependencies that properly convey design intent [34]. However, the three methodologies identified in our study approach part modeling from notably different directions and the results are CAD models that behave and react very differently to design changes. In the following sections, we analyze these three methodologies focusing on the aspects that make them unique, the structure of their corresponding modeling trees, and describe a series of experimental studies aimed at assessing model reusability and user performance when the strategies are applied to real design scenarios.

Formal Modeling Methodologies Horizontal Modeling
Horizontal Modeling is a CAD modeling methodology developed and patented by Delphi Technologies, Inc, a subsidiary of Delphi Corp., one of the world's leading manufacturers of automotive parts [11]. The methodology was designed to minimize the need to recreate or repair CAD data by eliminating the parent/child dependencies between model features. According to the authors, horizontal modeling offers significant savings in terms of model creation and alteration time by eliminating feature dependencies in the design tree. The goal is to provide a way to isolate and alter geometric features without affecting other features.
In the horizontal modeling methodology, all features are built off of datum planes, instead of other features. This ensures that all features are independent from one another and no direct dependencies are established (see Figure 1). Therefore, datum planes are the only elements used as parents for model features. This scheme minimizes the potential risks of accidental or indirect effects caused by altering or deleting a feature. As a result, all features are defined at the same level within the design tree, giving the CAD model a simple, flat, and linear structure, hence the name "horizontal." Although the creation of datum planes adds an additional level of work to the preparation of a CAD model, the design tree of a 3D model created with a horizontal methodology is generally simple, understandable, and with a chain of feature dependencies that is usually short and easy to trace. Nevertheless, horizontal modeling is often criticized for being a radical approach to 3D modeling that completely eliminates parent-child relationships. It is difficult to express design intent in the feature tree, partly because of the lack of automatic propagation of changes throughout the design tree. It is generally agreed that dependencies between features are extremely valuable when used properly. In fact, they are the basis of the parametric modeling paradigm. Datum planes are certainly necessary and valuable in many situations. However, dependencies are fundamental elements that enable designers to incorporate intelligence into their designs and ultimately create truly adaptable and reusable models. Sharing and relating features to existing geometry are at the core of feature-based parametric CAD systems and their benefits simply cannot be ignored. In addition, the fact that horizontal modeling is a patented methodology means that designers are technically not allowed to use it without a license from Delphi Technologies, Inc.

Explicit References Modeling
A general classification of the basic 3D modeling operations provided by parametric CAD systems and all possible constraints that can be associated to a particular shape was provided by Bodein et al., [5] based on previous work by Bettig and Shah [35] (see Figure 2). More specifically, the authors divided parametric constraints in two groups or categories: category I and category II. Category I includes constraints that can be defined by elements that are not part of the model geometry. Category II includes constraints that must always reference existing features or aspects of the geometry. For example, operations such as extrusions and revolutions are based on two-dimensional sketches that can be created on reference datums (category I), whereas chamfers and fillets must always be linked to existing features (category II).
From this classification, the authors developed the explicit references modeling methodology, a strategy specifically developed for complex parts that focuses on minimizing the number of constraints linked to existing geometry by efficiently managing functional references. According to the authors, although most geometric elements can serve as basis to build new features (for example, new sketches can be created directly on existing planar surfaces of a 3D model), its use should be limited to localized modification operations (see Figure 2). In most cases, existing geometry to support constraints can be replaced by external datums such as points, planes, or lines [5] (see Figure 3). Figure 2. Classification of modeling operations and associated constraints, adapted from [5] In addition, according to the explicit references modeling strategy, dependent features (child nodes) should be placed as close to the parent as possible. By placing child features close to their corresponding parent, features in the design tree are grouped together visually and based on the functional element they represent, which naturally makes the design tree more intuitive and easy to follow. This structure facilitates model understanding even for users that are not familiar with the model or have not participated in its creation. As confirmed by Johnson and Diwakaran [36], models that follow a logical sequence of steps are better understood by designers than those created with unstructured strategies.
Finally, special considerations are required for features that are likely to be modified or eliminated. Because parent-child relationships are still allowed, model inconsistencies may still occur. This is especially important in complex models with large numbers of features. A feature created early in the modeling process (thus, placed at a high level in the design tree) may cause regeneration problems when altered or eliminated if other important features depend on it, as the change may indirectly affect its child nodes. To minimize unwanted regeneration effects, the methodology recommends all features that are likely to be modified or removed from the model to be placed at the lowest levels in the tree structure. Originally conceived as part of Solid Edge training, the resilient modeling methodology (see http://resilientmodeling.com) was developed by Gebhard [33] with the goal of creating a neutral solution to the problem of unstable models by managing the sequence and structure of the design tree. The methodology defines a collection of best practice methods that maximize the flexibility and robustness of CAD models while minimizing inconsistencies.
In this methodology, simple and intuitive structures are used so minimum effort is required to comprehend design intent. Additionally, building errors, problematic areas and their sources can be easily identified and remediated. Features in the design tree are organized in six sequential groups according to their importance, function, and volatility (how likely it is to affect other features). These groups are shown in Table 1. The first group contains reference elements and datums that must be available to geometric features throughout the entire modeling process. The second group, if necessary, contains construction geometry such as curves, paths, and surfaces that can be used as references for subsequent solid bodies. Group 3, the Core group, contains major features of the model that define the overall shape and orientation of the part (typically, features that add material, such as sweeping operations). Drastic changes to the basic shape and size of the part will require the modification of features in this group.
Geometric features that remove material from the part such as holes, slots, and cuts are included in the Detail group (group 4). Detail features are created as child nodes of features in groups 1, 2, and 3, and should not be used as parent nodes or reference elements for subsequent features, unless absolutely necessary. Features that do not require further child features are included in groups 5 and 6. Group 5 is an optional group that includes final geometric elements such as patterns, drafts, and symmetry elements, if used. Cosmetic and finishing features such as fillets and chamfers are always created last and grouped together in the Quarantine set (group 6).
In addition, stable and reliable guidelines are provided to build specific features, as well as tested modeling methods that enhance the ability to alter, reuse, and share parametric CAD models. To guarantee that CAD models are created according to the methodology, RMS also offers a checklist with key items that designers can use to verify the quality of their models. This checklist also facilitates information exchange among different members of the CAD team. To simplify editing tasks and provide an intuitive mechanism to recognize the sequence of operations that was performed throughout the modeling process, RMS recommends that features are named based on their design intent and their functional purpose, as opposed to how they were built.

CAD Model Complexity
Complexity is an aspect of design that is usually defined in the terms of systems. A system is a set of interrelated elements that manifest a behavior which the individual elements would not display independently [37,38]. A complex system can be understood as a large number of components that interrelate in a non-simple manner [39].
Most definitions of complexity relate to a measure of understanding and quantifying these components and how they interrelate with one another [40]. For example, some authors define complexity as the amount of effort required to manufacture or design [41,42], (i.e., how difficult it is to solve a manufacturing or design problem), which suggests that design complexity is related to the design process [39]. Other authors such as Mocko and Paasch [43] and Weber [44] consider coupling between parts to determine complexity in terms how the parts are assembled into a whole and what properties arise exclusively from the assembly.
In a feature-based parametric CAD modeling context, complexity can be determined by the structure of the parametric model (sketches, features, and interdependencies), which is a direct result of how the model was built. A variety of metrics have been proposed to measure model complexity. Authors Mathieson and Summers [38] used a set of metrics to analyze connectivity graphs of assemblies. They classified their metrics in three categories: size, interconnectivity, and decomposition [38].
Size is a common and intuitive metric in complexity measurement. For example, Johnson and Diwakaran [36] use multiple counts in their comparative study of different modeling strategies, including number of features, average number of entities in each sketched feature, number of patterns, etc. [21] also include several counts (such as number of sketched features or number of edge features) as part of their proposed equation for computing the part complexity index (CI). The number of dimensional constraints in the model has also been used as a complexity metric, although in many cases some dimensions can be replaced with geometric constraints, depending on the design intent, as stated by Kirstukas [45].
While size metrics are intuitive and easy to calculate, their results may be a poor measure of the model complexity, as their contribution is nonlinear. When the count is low, the addition of one more is significant, but as the count increases the overall significance of each new item decreases [46].
Interconnectedness and centrality measures address the relations between nodes and the relative importance of each node within the model. Common metrics within these groups include flow capacity (the number of each unique paths between each pair of nodes) [47], and clustering coefficient (degree to which nodes are grouped within the system) [48].
In this paper, we define four simple metrics that we apply to the graph structure of the model (number of feature nodes, number of dependencies between nodes, number of leaf nodes, and average node connectivity) to describe the complexity of the parametric CAD models used in our study. The four metrics are a basic representative set that allows us to classify our models for our analysis and provide a quantitative view of the models. They are not intended to be a comprehensive or formal set of measurements of parametric models. Although certainly incomplete, this set provides a simple yet more descriptive mechanism to quantify nodes and dependencies than generic words such as "low complexity" or "average complexity," which would provide more subjective information. The selected metrics are intuitive and easy to use. Obviously, more detailed sets of metrics and combinations of metrics can be used to fully quantify model complexity, but the selected set is sufficient and appropriate for the purposes of our study.
Number of features nodes is a size metric that describes the total number of features (including reference geometry) that were created in the model tree. Number of dependencies refers to the relations created by geometric and dimensional constraints between features in the model. Leaf nodes refer to feature nodes with no dependencies. Finally, average node connectivity is the average number of child nodes per parent node.

III. Experimental Procedure
For our analysis, we conducted three studies with a group of engineering students with previous experience in engineering design graphics and parametric solid modeling, particularly using the CAD package SolidWorks®. Participants were selected from a fairly homogeneous group with comparable knowledge and levels of abilities in terms of CAD, same educational background, and taken from the same class. The experiments took place in a computer laboratory environment, where participants were equipped with a workstation and the appropriate CAD software. The experiments were designed around model alteration activities using feature-based parametric CAD models with increasing levels of complexity. The goal of our study is to examine the different parametric modeling methodologies discussed previously and compare their effectiveness when modifications need to be performed to a CAD model. By studying how a model reacts to changes, we intend to determine the most efficient mechanisms for creating CAD models as well as the factors involved during the modeling and decision making processes.
To test and compare the modeling strategies, three parts were selected: a supporting piece of a bearing lever assembly, a cover piece of an interior gas tank, and a housing component; and modeled according to the guidelines of the methodologies described above. Thus, for each part, three separate models were created. The parts used in this study are shown in Figure 4. For the bearing support lever, a fourth model, created by an engineering student from a previous semester, was also used to compare with models from the other three methodologies. Since the supporting piece was assigned to a different group of engineering students in the previous semester as a modeling exercise, a representative model was selected from a pool of 60 student submissions. The selected model represents the most common strategy followed by the majority of the students. Although these students received no formal training in modeling methodologies, they were specifically instructed to create a reusable model considering proper design intent. The intention of including the student model as part of the first test is to illustrate a practical reference point from which the formal methodologies can be understood and compared. The goal of this paper is to compare only the three formal methodologies (horizontal, explicit references, and RMS), not a generic student approach.
The information presented to the students for this modeling exercise is shown in Figure 5 (dimensions have been omitted for clarity). No student from the group that completed the modeling assignment the previous semester took part in the experiment presented in this paper. The complexity of each version of the parts is summarized in Table 2 based on four basic metrics to assess parametric features and dependencies. For the first experiment, participants were asked to modify a specific version of the CAD model, which was randomly assigned. Participants were not informed about the specific methodology that was used to create the model they received. In the two subsequent studies, participants received all three versions of the models. Models were provided one at a time: first, horizontal; next, explicit references; and finally, resilient. For each model, participants were required to perform a sequence of alterations to the geometry. Although the models are provided in sequence and the geometries and topologies from the three methodologies are the same, their design trees, configurations, and dependencies are significantly different, forcing participants to examine the models' structures with the same thoroughness as they normally would if receiving the model for the first time. The alteration tasks were presented as traditional drawings in a classic test format using an online testing tool. In order to have a clearer view of the final design, drawings of the model before and after the alterations were made available to participants. Participants were required to download the original part, perform the requested changes, and submit the modified CAD model to the system. Similarly to the modeling time metrics used by Bodein et al. [4], we used alteration time (time required to complete the series of modifications) to assess user performance. Participants were timed starting from the moment the original part was downloaded until the altered part was submitted. A maximum of 20 minutes were given for each model, based on the authors experience and what they considered a more than reasonable time limit for the complexity of the exercise.
The general settings of the experiments are summarized in Table 3.

MODEL 1: LEVER SUPPORT
A total of 92 freshman engineering students volunteered for this activity. Participants were organized in 4 groups of 23 students. Each participant received a copy of the CAD model assigned to their group. Group 1 used the student model, group 2 used the horizontal model, group 3 was assigned the explicit references model, and group 4 used the RMS version.
The alteration that participants were asked to perform to this model involved increasing the radius of the top arch of the support to allow the lever to travel a greater distance. Only the new value for the radius of the bottom of the arch and the before and after drawings were provided (see Figure 6).
The lever support used in the first part of the exercise was modeled following the different methodologies. The corresponding design trees are shown in Figure 7. The design tree of the model selected from the student work pool is also shown. A closer look at the student's model reveals many similarities to the model that follows the explicit references methodology. The fact that all edge fillets appear at the end of the tree in the student's model is likely due to the general modeling practices demonstrated in the classroom and required by the instructor.
Although naming practices and labeling of modeling operations are generally recommended and certainly add value to a model, only the resilient modeling strategy explicitly requires features to be properly named.
Furthermore, a specific naming scheme is described and considered part of the overall modeling strategy. For this reason, the authors decided to name only the features of the resilient model and leave the rest of the models with the default feature names assigned by the CAD software. Although this decision may have a slight effect in the resulting alteration times, we believe the effect is not significant enough to invalidate the overall outcomes.
The main differences between the modeling procedure followed by the students and the three formal methodologies are related to the initial sketch used to create the base feature (see Figure 8) and the selection of dimensional constraints. In the case of the three formal methodologies, the sketches are prepared to automatically withstand downstream changes in the design tree when any of the radii in the upper part of the support is changed. Although other strategies could have been used, the selected approach is efficient in situations where other components may need to relate to the model, such as additional configurations that change the shape and form of specific lines (e.g. the arc with a 14 mm dimension could be connected to an external parameter. The 54 mm dimension shown in Figure 8 (right) could have also been used). Because we wanted participants to work with finished models and concentrate on the internal structure of the part without making specific assumptions about the design, we decided to provide the constraining scheme shown in the Figure 8. The students' initial sketch was created based on their own experience, intuition, and the student's perception of the simplest and most natural shape of this particular model. However, as we will demonstrate later, this approach is not as flexible as any of the formal strategies, since this particular sketch makes the model more difficult to alter.  . Initial sketches for lever support using formal methodologies (left) and student's model (right). Note that in the first case, the sketch profile borders with, but does not include the arch. Geometric constraints have been omitted for clarity.
The resulting models after the modification of the initial sketch are shown in Figure 9. None of the models returned rebuild errors after this modification. Both explicit reference modeling and resilient modeling result in correct models after initial modification. However, the geometry of the part created with the horizontal modeling methodology is clearly incorrect. With regard to the student's model, modifying the radius did not have the desired effect in the upper part of the support. This is partly due to the fact that the 35 mm radius dimension is not available in the initial sketch. Therefore, the alteration needs to be accomplished indirectly by changing two radii: 45 and 55 mm (see student's model in Figure 8), which produces the model shown in Figure  9 (right). In addition, the distance from the base to the cylindrical feature also needs to be adjusted.

MODEL 2: TANK
A total of 32 senior engineering students, all with previous CAD modeling experience, volunteered for this activity. All participants received copies of the three CAD models in a sequential manner. First, the horizontal model was provided and participants were asked to perform the alterations. Next, the explicit references model was distributed and alterations were performed to this new model. Finally, the process was repeated for the RMS version of the model. The time to complete the required alterations for each model was recorded. For our analysis, those participants unable to complete the alterations within the allotted time were considered unsuccessful attempts.
For this exercise, the original model given to participants is shown in Figure 10. Hidden and center lines have been omitted for clarity. Only the dimensions that need to be edited are shown.
Participants were asked to perform three alterations to this model: -Alteration 1: Increase the overall width of the part from 89 mm to 100 mm -Alteration 2: Reduce the overall length of the part from 478mm to 400 mm -Alteration 3: Increase the shell thickness from 2 mm to 3 mm The requested alterations are shown in Figure 11. When the explicit references and resilient modeling methodologies were used, the design tree returned rebuild errors, as many dependencies could not be regenerated. From a user's perspective, these errors were seen as indicators of the critical aspects of the model that needed to be fixed. They served as signals or pointers to the specific features of the design tree that required immediate attention.
However, when the horizontal methodology was used, no errors were returned as no direct dependencies exist between features (no changes need to be propagated). From a user's perspective, this could be misleading, since the model can be overlooked and passed as correct when in fact, significant problems can occur. Even when no errors are identified and the user is not notified, the geometry can be drastically affected, which may have unexpected consequences. In our experiment, modifying the overall width and depth of the part causes problems in the linear pattern feature used to generate the series of ribs at the bottom of the model, as shown in Figure 12. To ensure correctness of the model, the horizontal methodology requires an additional effort from the user in terms of visually inspecting the geometry.
Because the explicit references methodology requires all features localized inside the implicit representation (such as fillets, chamfers, and shell operations) to be defined as close as possible to their primitive in order to reduce the degrees of feature dependency, the risk of instability during geometry regeneration is higher because the number of features following these modification features in the history tree is greater [5]. In other words, the alteration of these features will cause the instability of the model as some features will lose their reference. The scope of the problem is smaller in the case of the resilient modeling strategy, as these features are defined at the bottom of the design tree.

MODEL 3: HOUSING
A total of 32 senior engineering students, all with previous CAD modeling experience, volunteered for this activity. This group of students was different from the group involved in the previous activity. All participants received copies of the three CAD models in a sequential manner. First, the horizontal model was provided and participants were asked to perform the alterations. Next, the explicit references model was distributed and alterations were performed to this new model. Finally, the process was repeated for the RMS version of the model. The time to complete the required alterations for each model was recorded. For our analysis, those participants unable to complete the alterations within the allotted time were considered unsuccessful attempts.
For this exercise, the original model given to participants is shown in Figure 13. Hidden and center lines have been omitted for clarity. Only the dimensions that need to be edited are shown.
Participants were asked to perform two alterations to the model:  Similarly to the previous model, the requested alterations unintentionally create a series of unwanted artifacts in the model's geometry when changes cannot be propagated efficiently to depending downstream features. For both alterations, when the explicit references and resilient modeling methodologies were used, the design tree returned rebuild errors for the dependencies that could not be regenerated successfully. Once again, when the horizontal methodology was used, no errors were returned. However, the geometry was drastically affected to the point where some features became unavailable, as shown in Figure 15.

IV. Results
The results of our experiments are shown in Table 4. For the first experiment, a one-way ANOVA analysis (α = 0.05) was used to assess differences in performance for each experimental condition. Considering that the assumption of homogeneity was not met (Levene's test of homogeneity of variances resulted in F(3, 88)= 32.40, p< 0.001), a Welch's F test was used. This test confirms that the differences in execution time for each modelling methodology were statistically significant (Welch's F(3, 45.22) = 147.85, p < .001). Games-Howell post-hoc tests (used because of the lack of homoscedasticity) showed that there were significant differences in every pairwise comparison (p <.001) except for horizontal vs. explicit comparison (p = 0.003). As expected, results confirm the positive impact of using a formal methodology when creating a CAD model.
For the second experiment, a one-way within subjects (or repeated measures) ANOVA (α = 0.05) test was used to compare the effects of the different modeling methodologies on the time spent altering a CAD model. In this particular exercise, two participants failed to complete the exercise in the allotted time when working with the horizontal model. Seven participants submitted incorrect models when working with the horizontal methodology, four of which also returned incorrect models for the explicit references exercise.
Mauchly's test revealed a violation of the sphericity assumption, χ 2 (2) = 11.4, p = 0.003. Therefore, the degrees of freedom were corrected using Greenhouse-Geisser estimates of sphericity (ε = 0.75). Results show that the time spent modifying the CAD models was significantly influenced by the modeling methodology, F(1.499, 43.463) = 119.108, p < 0.001, η 2 = 0.804. Post hoc tests using the Bonferroni correction revealed that the comparisons between each modeling condition were statistically significant (p < 0.001). The resilient strategy was the most efficient, whereas the horizontal modeling approach performed the worst. In addition, it is important to emphasize that although the horizontal modeling does not necessarily return errors or warnings to the user when a change is made, the resulting geometry may still be incorrect. Therefore, horizontal modeling can be a risky strategy that gives users a false sense of security.
For the last experiment, a one-way within subjects (or repeated measures) ANOVA (α = 0.05) test was conducted to compare the effects of the different modeling methodologies on the time spent altering a CAD model. In this particular exercise, four participants failed to complete the exercise in the allotted time when working with the horizontal model, one of which also failed when working with explicit references model and another submitted an incorrect model for the explicit references exercise. Eight participants submitted incorrect models when working with the horizontal methodology, four of which also returned incorrect models for the explicit references exercise. One participant submitted a correct horizontal model, but an incorrect model for the explicit references methodology.
Mauchly's test confirmed the sphericity assumption, χ 2 (2) = 1.712, p = 0.425. Results show that the time spent modifying the CAD models was significantly influenced by the modeling methodology, F(2, 52) = 350.724, p < 0.001, η 2 = 0.931. Post hoc tests using the Bonferroni correction revealed that the comparisons between each modeling condition were statistically significant (p < 0.001). Similar to the previous experiment (experiment 2), the resilient strategy was the most efficient, whereas the horizontal modeling approach performed the worst.

V. Conclusion and Future Work
In this paper, we reviewed three formal parametric modeling methodologies specifically designed to emphasize CAD reusability: Delphi's horizontal modeling, explicit reference modeling, and resilient modeling. We examined the advantages and disadvantages of each strategy and compared their effectiveness when design changes need to be performed. We designed an experiment with a group of CAD users where a series of parts were modeled according to the guidelines of the three methodologies and users were asked to perform a number of model alterations.
We observed that horizontal modeling requires the creation of numerous datum planes, even before creating solid bodies, which can be a cumbersome and time-consuming process, particularly when dealing with complex parts. This intricate structure may dissuade designers from adopting this strategy in their regular practices. Although regeneration problems are rare, the logic of the horizontal modeling process may not be intuitive (particularly for novice designers). Additionally, eliminating the parent-child relationships defeats the purpose of parametric modeling (it is difficult to anticipate the evolution of the model geometry if changes are not automatically propagated). From a reusability standpoint, our experiments show that horizontal modeling is prone to modeling errors when users are not entirely familiar with the CAD model and its modeling intent. The fact that no regeneration errors occur when a feature is changed (errors do occur, but many go unnoticed because the application does not return any error messages) may lead designers to falsely believe the part is correct without paying attention to collateral effects. This was by far the most common problem our participants experienced while performing the assigned tasks with the horizontal models.
Explicit references modeling provides a method to isolate all solid bodies and features associated with the functional elements of a part that are independent of one another, so that changes on each function can be performed without affecting other functions. However, some of the problems of the horizontal modeling methodology may, to a certain extent, be inherited by the explicit references strategy, as we observed in our experiment. Features that depend on reference geometry may not be automatically updated as expected when functional elements are not clear or certain features overlap. Nevertheless, our results show a significant improvement of this methodology in terms of alteration time over the horizontal strategy.
In our study, participants found the resilient modeling strategy easy to use and well structured. Results confirm the participants' opinions and the effectiveness of this approach, both in terms of final model quality and alteration time and reusability.
A relevant factor that could affect the results of the experimental work presented in our study is the participants' level of CAD knowledge and expertise. Although engineering students can be considered a lower skilled population when compared to design professionals, they also comprise a homogeneous group. More experienced users bring a higher skill level but usually with a more heterogeneous distribution. In this regard, a natural future task requires an experimental study with advanced CAD users in a real industrial setting. It should be noted that conducting an experimental study such as the one proposed in our paper in a real industrial environment is difficult because of the daily workloads and routines of the personnel, inherent risks, and availability. Additional limitations include the sample sizes. In an academic setting, it is difficult to gather a large group of participants with a similar knowledge of a specific parametric modeling tool. It is even more difficult in an industrial setting, where a company with a relatively large design department would be needed. Additional studies are required to further ensure that user actions are not influenced in any way by having prior knowledge of the models and that neither the requested alterations nor the manner the methodologies are implemented (such as using specific naming schemes) in the model influence the outcome.
On a broader scope, our results reveal how important the use of formal modeling methodologies can be when targeting CAD reusability. Although the majority of the educational practices related to CAD focus on declarative and specific procedural command knowledge (generic commands, operations, and tools that are typically available within CAD systems), the approach does not provide sufficient strategic knowledge, which is related to the selection of the proper modeling strategies. The concepts of CAD quality, complexity, and reusability are also omitted. In this context, it becomes evident that practical mechanisms to incorporate these methodologies throughout the entire CAD training process are required. The next step of our research on parametric CAD quality will be to determine a method to objectively assess model quality. We are interested in developing complexity metrics that can provide indicators of good modeling practices as well as identify particular aspects of the geometry that may need improvement. This data can provide valuable information to make informed decisions about modeling methodologies, modeling alternatives, and best practices. In particular, we are developing a plugin that can be installed as a module in a parametric modeling package that would allow us to keep track of the specific user actions (such as mouse clicks) involved in performing an alteration to a model. The number of actions could then be used as an additional indicator of complexity. We plan to carry out additional experiments in the near future using this metric.
As a long term goal, we are considering developing automated methods to evaluate the internal structure of a CAD model and provide feedback as to how the model can be improved. These mechanisms could provide significant benefits in the area of CAD training. In addition, optimization algorithms can be applied under certain controlled conditions to automatically simplify and restructure a parametric model in order to make it more reusable. Similarly, we are also interested in exploring additional methods to interact with complex interdependencies within the CAD model and developing techniques to manage model complexity and communicate design intent. Examples of these methods include improved visualization of parametric structures using graphs and dependency matrices, and the use of knowledge-based systems and model annotations to help convey design intent in an explicit manner.