The keys to effective design collaboration - Embedded.com

The keys to effective design collaboration

When it comes to electronic design, the most successful designers are those who work on a design collaboratively. This means productive teamwork in every aspect of the design cycle, from supply chain to schematic capture and board layout, to fabrication, and even interfacing between electrical and mechanical domains. In fact, 58% of best-in-class companies utilize design collaboration tools, whereas only 33% of laggard companies do the same (Aberdeen Group, January 2014).

The question is, why do so many organizations accept inefficient collaborative practices? It’s clear that there’s a fundamental problem here, but the solution is far more involved than it would appear on the surface. The electronic design world needs more collaboration, and collaboration toolsets need a few key features to help designers climb the proverbial mountain.

Visibility
Tools must provide visibility into others’ work. This probably seems like a no-brainer. How could anyone work in a team environment without seeing their teammates? Yet we find that our CAD tools are either incapable of doing this, or are functionally limited when they do.

Figure 1: Visibility allows designers to see designated work areas and edits in-progress, making it easier to avoid inefficient collaborative design practices.

Real-time visibility of design changes would seem to be the ultimate feature for every system, but this isn’t the case. Collaboration can be more useful and effective by playing to the strengths of designers and how they actually work. It’s much more natural to portion out work areas beforehand, and check in design changes periodically. Much like a version control system, a good collaboration system provides the same sort of back end tools for conflict resolution.

Differencing and merging of changes
The natural way to think about collaborative design is like a group of designers working on a single document, but in reality, this isn’t the case. In reality, each designer holds a separate copy of a document, and changes from those documents are compared and merged into a single master copy at the end (or periodically throughout). Therefore, it’s absolutely essential to have an intelligent system for differencing, i.e., comparing differences between versions, and merging changes together.

For collaboration toolsets, this relies on a scheme that, once again, works much like a version control system. That is, each user designs along their own line of development (branch), split from the mainline (trunk). Independent changes from several designers on separate branches can be compared with the trunk, and either merged into a new head revision or discarded. The effectiveness of this stage depends on the granularity of changes to be accepted or discarded. A comprehensive system covers both ends of the spectrum. Fine details and individual items can be reviewed, but at the same time, high level views can also be used to expedite the collaborative process.

A unified environment for seamless design flow
Interactions between designers in different areas of a single tool must be simple and painless. Board designers, engineers, librarians, and many others collaborate within the same design space, and often within the same software environment. Bidirectional support between areas of this environment is essential.

Imagine this scenario: the schematic design is complete and now it’s time to layout the PCB. Story over, right? Of course not. It’s nearly guaranteed that something will need to be revised or changed in the schematic later on, and with enough bad luck, this will happen after a significant portion of the layout work is already complete. A simple system for collaboration between different people in different phases of the same design flow can make a huge difference in productivity. Struggling to communicate design intent is no way to go about designing a product.

Collaboration between multiple environments
Designers must interact with several different parties in order to fully realize a complete product, and although it may not seem like it at first, this is also a form of collaboration. Imagine cutting down the back and forth time, even a little bit, between a designer and a manufacturing facility. Or the time between a designer and a part supplier. Or the time between the electrical guy and the mechanical guy. Better conveying of the design intent and reducing extraneous time in any of these scenarios makes a product cycle that much faster, that much more cost-efficient, and that much less likely to fail. Tools need to fully support collaboration between different domains.

Supply chain
There’s nothing quite as frustrating as completing a design only to find out later that some of the parts are either not available or are prohibitively expensive. Inefficient design flow due to lack of communication across the supply chain is a big deal, and is almost entirely preventable with the right set of tools. Real-time collaboration between suppliers and designers can easily be achieved by maintaining an active link to common supplier websites’ databases, ensuring that pricing and availability information will always be accurate and up-to-date. Quality design tools can do this behind the scenes, without imposing on the designer in any way.

ECAD/MCAD
Increasing component density and decreasing board size means that more than ever, designers need to take mechanical constraints into account. Mechanical housing requirements, clearances, features for thermoregulation, and complex mounting structures are all critical elements of electronic design, but their integration into the product flow often requires the expertise of mechanical designers. It’s essential to have a good system in place for collaboration between electrical and mechanical domains.

Figure 2: Creating a complex mechanical PCB assembly requires the expertise of both electrical and mechanical designers. Seamless ECAD/MCAD file transfer is often needed for collaboration.

The two most prominent, standardized methods for this type of collaboration are vendor-neutral file formats for bi-directional design transfer:

STEP (Standard for The Exchange of Product model data)
STEP offers true 3D representation, meaning it’s possible to transfer more complex design features such as Rigid-Flex board areas. On the other hand, including supplementary features (copper traces, silkscreen, etc.) in STEP files can lead to enormous file sizes, so these features are often left out to improve design performance. Unfortunately, this means there is more ambiguity for designers in dealing with potential issues during mechanical assembly, and additional functions such as finite-element analysis are not available straight out of the box using STEP.

IDF (Intermediate Data Format)
IDF extrapolates a 3D model using 2D board information and model heights to create a “2.5D” representation of design data. While this works well for most PCB design, accurate mechanical clearance checks might need more robust components models, and therefore might need replacement by a mechanical designer. Although the IDF 4.0 standard has been available for several years, it has failed to catch on with most EDA vendors, who have chosen instead to remain with the older IDF 3.0 format and explore alternative methods for ECAD/MCAD collaboration.

Summary
The best design collaboration tools are those that best follow these guidelines, essentially making the collaborative process as easy as possible for everyone involved. Nowadays, it’s commonplace for several people to have their hands on a single project, and bringing an electronic product to market is a task often divided across the country, if not the globe.

Max Clemons is an Application Engineer at Altium focused on developing electronic design content. He is an IPC Certified Interconnect Designer, with experience researching electronic materials and green energy devices. He received his BSEE from the University of California, San Diego.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.