Keywords

1 Introduction

Designing a product is a knowledge-intensive activity. Thus, to prevent design errors, i.e., choices that make certain designs “not allowed” or inappropriate for their intended use, design departments prescribe design rules. A design rule is a prescriptive statement – often an unstructured blend of text and graphical objects (equation, sketch, etc.) – aiming at assisting deployed designers for the achievement of a proof design, in compliance with best practices, applicable regulations, and DfX constraints. Many factors like the increasing complexity of design products or the number of norms per industrial domain tend to increase the number of designer rules an industrial designer has to comply with. The ever-increasing number of design rules leads to critical issues when industrial companies want to use and manage such “Big Data”.

While a designer is working on a product, he or she often needs to check design rules if he or she wants to provide a design free of errors. An expert designer may have memorized all crucial rules of his domain. A non-expert designer does not have in mind all applicable design rules. He/she has no other alternative than to spend a large amount of time finding the subset of design rules that matches his design context by either searching in design manuals or asking expert-colleagues to guide him/her. This task is even more time consuming because design rules often come from different domains and are stored in documents or databases that may not be correctly organized. Unstructured documents are still common in the industry [1]. Many companies still store design rule knowledge in unstructured documents – mainly PDF format – which are over tens or hundreds of pages.

As we will see in the next sections, there already exists many industrial tools and researchers’ proposals for managing design rules. For each approach, several researches have been performed on Google Scholar [2] as well as ScienceDirect [3] between the 12/17/2019 and the 12/20/2019. From the obtained results, we selected two types of contributions: Conceptual work to present a definition of the concept or approach, and application work in the domain of industrial design to illustrate pros and cons of the approach.

We will firstly present a design rule definition and classification (Sect. 2). Then, we will review the existing tools supporting the application of design rules (Sect. 3). Finally, we will focus on technologies that provide context awareness capabilities and briefly discuss how our Context-Aware Design Assistant would contribute to the current state-of-the-art solutions.

2 Design Rules

For this paper, design rule definition is based on the work of Fu et al. [4] who propose a formal definition of a Prescriptive Design Principle:

  • It is stated in the grammatical imperative form.

  • It includes a prescriptive action for a designer to take.

  • It increases the likelihood of reaching a desirable consequence.

  • It is situated within a particular context and point in time.

In this paper, we will reduce the scale of this definition and consider a more technical definition. Calkins et al. [5] in the field of Knowledge Based Engineering (KBE) consider that design rules synthesize the knowledge of a company and indicate how it should be used to create a proven design. In our case, we also want to put the emphasis on how this knowledge is stored in databases or in design books. After reviewing numerous design manuals, we assume that a design rule is a prescriptive statement in natural language, often associated with descriptive graphical objects (equation, table, chart, etc.) guiding the work of the designer in a specific design context to improve design quality.

Authors previously cited both emphasis on the heterogeneous aspect of design rules. Calkins et al. consider four different origins possible for design rules: Heuristic (rules from companies’ best practices), Empirical (based on experimental data), Legislated constraints (established by official norms), Physic (based on analytical or numerical physical models). Design rules affect not only the design but also all the phase of a product lifecycle, such as product recyclability [6] or maintainability [7].

We conclude that design rules have various origins and objectives and that each one relates to a specific design context. They are essential for maintaining the quality level of industrial products and their number is significantly increasing.

3 State of the Art of Design Rule Application Tools

Most industrial design rule checkers [8,9,10] adopt procedural approach. They have built a set of rules for each possible rule origin. For example, a tool may have a set of a few dozen rules to check on a part machined using a milling process. Each rule is an algorithm that detects geometrical features in the CAD data that do not respect the rule. Bo Huang et al. [11] give a good example of the work realized in this field. Such a rule application strategy results in expert systems that have a pre-defined number of rules focusing on a very specific problem. They are efficient in detecting CAD quality errors and rules directly associated with a design issue like a manufacturing process. However, this approach has some flaws:

  • Rule editing requires the work of experts in order to modify or create algorithms. As explained previously, a design rule is due to evolves with technology or even company habits. It is not trivial to maintain or personalize the design rule set with this technology.

  • Design rule storage across multiple domain silos makes multi-domain rules application complicated. Design is a multi-domain process and many design rules do not fit in the pre-defined contexts fixed by those tools.

  • Some rules represent unstructured knowledge that cannot be translated into algorithms. Traditional rule checking tools cannot process these rules but the designer still need to know and consider them for his design.

To improve design rule application, scientists explored declarative approach of design rule application. They use new technologies such as Semantic Networks (SN) to represent the knowledge associated with the product and the design rules. According to JF Sowa [12]: “A semantic network or net is a graph structure for representing knowledge in patterns of interconnected nodes and arcs.” They are primarily used to represent conceptual knowledge as natural language expressions in a structured and unbiased way. This process is not straightforward for design rules but many scientists work to improve design rules representation in SNs like S. Kang et al. [13]. Using a SN could allow us to process all kind of design rules.

Various teams experimented SNs for design rule application in the manufacturing industry [14,15,16]. Their strategy is to build a data model to represent the type of product they focus on. Once this model is built, they implement a translation algorithm to automatically generate a semantic representation from the digital mock-up. Then, they can edit rules that will apply on the knowledge representation of the product. They are able to identify design errors as well as automatically correct some of them. In this method, design rules are not algorithms that will explore the geometry. They are descriptions of what the semantic representation of the product should be. This makes design rules easier to implement. Some teams even develop their own high-level language to facilitate new design rules editing.

However, this approach is not flawless. Each type of industrial product needs his own semantic representation to perform well with this approach. These representations are hard to develop and maintain [16] and are domain specific. Therefore, only specialized industrial domains can benefit from this approach. An industrial part often go through multiples manufacturing processes, needs to comply with assembly rules and has mechanical constraints. Creating the semantic representation of this part and the set of associated rules would be extremely difficult with the previous approach.

4 Introducing a Context-Aware Cognitive Design Assistant

In [17], A. K. Dey describes the context of a software user as: “Any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.” In our case, any information describing the design process, the digital mock-up or the team members in charge of the design, is part of the design context.

A. K. Dey gives a definition of a Context-Aware System (CAS): “A system is context-aware if it uses context to provide relevant information and/or services to the user, where relevancy depends on the user’s task.” Therefore, a context-aware application for rule application would have to provide rule information and design guidance when the user needs it to progress without mistakes in his design task. As context knowledge is multi-domain, such a tool would have a greater ability to process multi-domain design rules.

CAS are by definition user centered. Each user will have a different context and different needs in different times. The CAS will provide a suitable service for each case. This is crucial in industrial context where team members need to coordinate their work on a complex task. For example, M. A. Dhuieb et al. propose a context-aware architecture to present manufacturing knowledge to workers in factories [18]. Design context can be compared to this one as each designer has a specific task and level of expertise, but need to work with his/her team. Therefore, we propose to use context awareness in a rule application tool to improve multi-domain rules recommendation as well as the designer’s productivity, which are the main flaws of state-of-the-art rule application tools previously presented.

On a practical aspect, context knowledge is represented in state-of-the-art CAS by a Semantic Network. The context graph is complex and evolves dynamically. A structural data model is essential to run context aware applications. J. Aguilar et al. propose a general data model for context modeling [19]. In our domain of application, R. Pinquie et al. [20] propose a data model to represent the user’s design context in a context aware design assistant. This assistant would perform design rule recommendation on the fly to improve user’s productivity. We propose to develop a proof of concept of such an assistant to demonstrate the efficiency of context aware technology for design rule application.

5 Conclusion and Future Work

The goal of this paper is to review the state-of-the-art of design rules and design rules application to demonstrate the need for a context-aware design assistant.

First, we discussed about the concept of design rules in the manufacturing industry. We demonstrated that the use of design rules is a crucial issue to improve design efficiency.

Then, we reviewed existing tools for managing rules. Tools based on a semantic network enable designers to better detect design flaws and ease the edition of rules. We raised the issue that all these product-centered tools failed to process efficiently multi-domain rules, which are very common in design activity. Moreover, semantic representations of industrial products are fastidious to produce and limited to a single domain.

Finally, we presented CAS and how they could be used to improve multi-domain rule application as well as user specific rule recommendation. This is why we propose in a future work to develop a Proof of Concept of this approach with an industrial set of data.