Patterns for Parametric Design Parametric Modeling End-User Programming in Computer-Aided Design Cognitive Issues In 3D Parametric Systems Reduction of Device Overhead for Integrated Design Collaboration
Patterns of Parametric Design

Patterns for Parametric Design

Robert Woodbury, Cheryl Qian, Roham Sheikholeslami, Maryam Maleki, Victor Chen

Experts use their experience of solving problems in the past to build on and create new solutions in new situations. Such experience is part of what makes them experts. Some of these reusable solutions can be expressed in what are known as design patterns. Patterns express design work at a tactical level, above simple editing and below overall conception. A pattern comprises several components, including a name, a problem description, an abstract solution and a discussion of consequences.

Through ethnographic studies, we show how patterns can be used to improve learning and work with parametric modeling and discern patterns invented by designers. We argue that the need for patterns indicates the absence of appropriate support for complexity in a parametric modeling system and seek new features and interface designs that enable working at high levels of complexity.

The website www.designpatterns.ca provides the parametric modeling community with well-crafted examples of reusable code. By explaining the motivation, context and details of the code, it enables people to more effectively learn parametric modeling systems and to build larger and more complex models with confidence. Further, the patterns themselves suggest new directions for the design of such systems as GenerativeComponents.

Parametric Modeling

Parametric Modeling

Robert Woodbury, Victor Chen, Karine Kozlova, Maryam Maleki, Davis Marques, Cheryl Qian, Nahal Salmasi, Roham Sheikholeslami

Conventional CAD systems focus design attention on the representation of the artifact being designed. Currently industry attention is on systems in which a designed artifact is represented parametrically, that is, the representation admits rapid change of design dimensions and structure. Parametrization increases complexity of both designer task and interface as designers must model not only the artifact being designed, but a conceptual structure that guides variation. Parametrization has both positive and negative task, outcome and perceptual consequences for designers. Positively, parametrization can enhance search for designs better adapted to context, can facilitate discovery of new forms and kinds of form-making, can reduce the time and effort required for change and reuse, and can yield better understandings of the conceptual structure of the artifact being designed. Negatively, parametrization may require additional effort, may increase complexity of local design decisions and increases the number of items to which attention must be paid in task completion.

While there is a general appreciation of the concepts and advantages of parametric modeling, application to projects at the scale and complexity of buildings raises important theoretical and practical issues. In a deep sense, parametric modeling is not new: building components have been adapted to context for centuries. What is new is the parallel development of fabrication technology that enables mass customization. Building components can be adapted to their context and parametric modeling can represent both context and adapted designs. In a design market partly driven by novelty, the resulting ability to envision and construct new architectural forms rewards firms having such expertise. There are relatively few such firms, most of which have had long experience and have built substantial reputations on distinctive form and construction. But many firms and students (future practitioners) are interested. The confluence of technology and interest appears as exploration in a new design space: architecture and its supporting technologies of parametric design and fabrication are experiencing both co-development and rapid change.

We contribute to scholarly knowledge of parametric modeling in several ways. In 2005, Robert Aish of Bentley Systems and Robert Woodbury published a paper on technical features of GenerativeComponents that brought key ideas, such as replication, into the public research domain. We devise programming constructs, such as goal seeking, that show how parametric modeling can be used for advanced tasks. Using concepts from my design space exploration work, we seek better ways for parametric modeling to support discrete change.

End-User Programming in Computer-Aided Design

End-User Programming in Computer-Aided Design

Maryam Maleki, Robert Woodbury

In building design, analysis, and manufacturing, architects, civil, mechanical and electrical engineers use Computer-Aided Design (CAD) systems from the earliest stages of design to construction. A typical CAD system’s graphical user interface (GUI) provides a wide range of capabilities. However, designers and engineers who want to engage repetitive, complex or exploratory design ideas must use both the GUI and programming. Most such designers are amateur programmers acting as end-users, not system developers---they have relatively little formal education in computer science or programming. The literature shows that end-user programmers find difficulty when the programming is separate or different from their main task (design, analysis, etc.). Separation of design and program requires switching between tasks, with consequent loss of both focus and efficiency.

list view

I hypothesize that bringing the tasks of design and programming closer will positively affect CAD users’ performance and experience. I propose using the model view, which is a common form of representation in all CAD systems, for presenting and editing programming elements such as data, functions, loops, etc. This will not only bring the two domains closer, but also use designer’s visual and spatial abilities to enhance their programming experience. I will not eliminate the textual programming language integrated in CAD systems - the visual language maps to the textual language and both are always editable. This enables users to use more complex conventional programming environments when problems grow in size and complexity. Every task performed in the model is reflected in the textual program (and vice versa) and is accessible to the user. We combine visual programming and direct manipulation techniques directly in the 3D model view.

Cognitive Issues In 3D Parametric Systems

Cognitive Issues in 3D Parametric systems

Diliara Nasirova, Robert Woodbury, Halil Erhan

In the current rapid development of parametric design tools the underlying computational-technology outpaces interface design. Interaction with these tools is becoming cognitively more demanding – for example, designers must switch between different views, manipulate views to adjust working context in relation to the model, select operations with complex parameters, and differentiate reference geometry from design geometry. The goal of this study is to understand users' cognitive capabilities and limitations in the context of parametric design so that more natural interfaces can be developed.

We bring attention particularly to the importance of change control and detection in 3D parametric design. The term “change detection” refers to the visual processes involved in noticing, identifying, and localizing a change in a given visuospatial context. Failure to properly detect changes may easily lead to frustration with modeling in 3D parametric systems and decrease designers’ productivity and motivation regardless of powerful features provided. Moreover, such perceptual issue may lead to design failures. Novel interfaces are required to reduce if not eliminate these effects. To enhance designers' performance we propose using various techniques to visualize changes such as peripheral interface and visual dataflow programming.

Collaboration Workflow Simplified: Reduction of Device Overhead for Integrated Design Collaboration

Collaboration Workflow Simplified: Reduction of Device Overhead for Integrated Design Collaboration

Andy Huang, Robert Woodbury, Halil Erhan

Design collaboration relies on cognitive tools such as analog media and digital peripheral devices, and shows the characteristics of distributed cognition (Hutchins, 1995). It is a social and complex activity involving multiple agents communicating and using external cognitive tools to encode, decode, and share information in the process of collaborative task completion. The systems supporting this activity should meet the 'principle of least collaboration effort' (Clark and Wilkes-Gibbs, 1986) that proposes that agents in collaboration minimize their effort in presentation and acceptance of arguments (information). They should also adapt the minimal interference principle to ensure task completion to be as simple as possible. We have yet to see a design-collaboration support system that adapts these views. Currently, collaboration uses dispersed mixed media that is often overloaded with representations and functionality, thus preventing seamless information sharing. Designers are required to spend extra effort collecting information using peripheral devices and in system management when sharing information. This hinders design collaborations, as the system becomes a bottleneck in information exchange. Such systems go against Clark's principle (1986) by imposing overheads that potentially lead to designers neglecting to both add and retrieve information. The overheads are also observed when associating information within a design process because existing information is effectively inaccessible.

The goal of this study is to understand these overheads in information collection and sharing using peripheral devices, and to provide designers with a supportive platform to enhance collaboration using both analog and digital media. The platform is envisioned to improve productivity and reduce redundant work by integrating peripheral devices into the collaboration workflow. Information acquired using these devices should flow into the collaboration knowledge base as effortlessly as possible, without forcing them to perform extra tasks. More-over, designers should be able to choose quickly which information is to be shared with other collaborators.