The DeviceEditor bioCAD canvas provides a web-based visual design environment (Figure 1) that mimics the familiar whiteboard design process practiced in biological laboratories. An online user's manual [23] provides an introduction to bioCAD, an overview of DeviceEditor functionality, and step-by-step how-to video demonstrations.
DeviceEditor design process
To begin the process, the genetic components or biological "parts" that will comprise the design are defined. This is accomplished by first selecting a standardized icon from the Synthetic Biology Open Language Visualization extension (hereafter SBOLv) [25] palette to represent a given component (e.g., promoter, 5' UTR, terminator). If no icon in the SBOLv palette fully captures the essence of a part (e.g., the pBbS8c-rfp backbone consists of more than just an "Origin of Replication", Figure 2), the most appropriate option or a blank generic icon can be selected. While visually evocative, from the outset the icons do not contain actual information. A DNA sequence is then mapped to the part icon (Figure 2), either copied from third party software or retrieved from a sequence file. DNA sequences in DeviceEditor do not need to be "packaged" in any particular format, such as the BioBricks format [26]. Each part is then set to either "Forward" (default) or "Reverse" to indicate the desired orientation of the part in the resulting construct. Once all of the desired component part icons have been defined, they are arranged from left to right in a "collection" to match their 5' to 3' order in the target DNA construct (Figure 3A, B; Additional file 1). For combinatorial designs, interchangeable component icons are arranged in the same vertical collection "bin" (Figure 3C, D; Additional file 2). The design is then specified to produce a "Circular" (default) or "Linear" DNA construct (Figure 1, top right).
To limit the total number of times a part may appear in a given construct, to prevent any two parts from appearing together in the same construct, or to ensure that two given parts always appear together in the same construct, Eugene design specification rules [20] may be added. These rules can ensure that two parts always appear together in the same construct, prevent two parts from appearing together in the same construct, and limit the total number of times a part may appear in a construct. For example, if prior research demonstrated that the short linker sequence must be used with the tag sig1 (Figure 3C) to achieve proper GFPuv localization, Eugene rules can be specified (Figure 4; Additional file 3) to ensure that the short linker is always constructed together with sig1. This would eliminate two (of the eight possible) combinations that have the short linker following the tag sig2. For metabolic pathway library designs that vary enzyme ortholog selection and gene ordering [30, 31], Eugene rules can ensure that orthologs and individual enzymes are not repeated in the same construct. The application of just 9 Eugene rules to the design shown in Figure 5A eliminates 1632 undesirable combinations that do not constitute complete pathways, out of 1728 total possible combinations. Also, the set of "desirable" combinations may evolve with additional experimental information, for example, if evidence arises that two particular enzyme orthologs do not operate well together in E. coli. A key point is that this additional information only requires the modification of a few design rules to update the desirable set of combinations, rather than complete re-designs. This is important because toggling a few design rules enables researchers to re-use designs as they switch between microbial hosts and as they gain experimental insight. For selection-based experiments exploiting pooled-library designs [32], Eugene rules can ensure that each vector backbone is always constructed together with its one-to-one corresponding user-specified DNA barcode (Figure 5B), facilitating and reducing the cost of sequence-identifying top performers.
To integrate physical implementation (i.e. DNA assembly) strategy into the DeviceEditor design process, the means by which the parts should be assembled together (i.e. "forced assembly strategies") may optionally be prescribed for each part (Figure 4A, top right). Part icons with forced assembly strategies are visually distinguished with a blue rectangle indicator light at the top left (Figure 4A, left). Additional aspects of DNA assembly strategy may be further customized in the "Collection Info" panel (Figure 1, right). For any given bin in a collection, a "direct synthesis firewall" may be set to "true" to prevent the extension of DNA synthesis through the assembly junction [12] to the right of the bin, as visually indicated by a red vertical line between bins (Figure 3D). The optional "forced relative overhang/overlap" position for each bin prescribes the overhang/overlap position of the assembly junction [12] to the right of the bin. Finally, the forced assembly strategy for each bin is displayed but is not directly modifiable, as it is determined by the forced assembly strategies of the parts that the bin contains. To automate DNA assembly, DeviceEditor submits the design contained within the collection to j5, a web-based software tool for designing cost-optimized, scar-less, multi-part, DNA assembly protocols [12] (Figure 6, top). Part icons peripheral to the collection are not submitted as part of the design to j5. Once users have visually verified that the desired constructs are correctly designed, DeviceEditor can also direct j5 to design downstream automation processes, such as condensing multiple assembly files and distributing PCR reactions by annealing temperature (Figure 6, bottom).
Design process acceleration and correct-by-construction design
DeviceEditor accelerates the design process by relieving the user of tedious routine tasks. For example, sequence annotations and other meta-data are retained when sequences are copied via a compatible clipboard format (see Methods) and pasted onto part icons (Figure 2), or mapped from Genbank format sequence files, obviating the need to re-annotate sequences post-assembly. Part icons can be copied and pasted between concurrent DeviceEditor sessions, enabling the re-use of previously defined parts. Also, DeviceEditor provides hyperlink shortcuts to view j5-assembled design sequences in VectorEditor [33, 34] (Figure 6) for rapid visual design feedback.
The DeviceEditor correct-by-construction design process prevents common mistakes. Within the confines of DeviceEditor, the user is not able to perform invalid design modifications. For example, icons for repeated parts are internally linked together (Figure 5A), so that when one instance of a part is modified, all instances are updated in unison, precluding the persistence of obsolete information or the introduction of inconsistencies between repeated parts. DeviceEditor's correct-by-construction features also benefit j5 DNA assembly design automation [12]. The j5 web-form interface [35] requires the user to upload several comma-separated value (CSV) input files. When manually preparing these CSV input files with spreadsheet software (e.g. Excel, Open Office), there are no safeguards against mistyping start and stop base-pair numbers, or placing a direct synthesis firewall at an unintended assembly junction. Since spreadsheet software does not constrain the user's input, j5 design parameters may be specified out of their acceptable ranges, part names may incorporate typographical errors or prohibited characters, and sequence file names may be mistakenly entered instead of sequence display IDs (a subtle, yet common point of frustration). In contrast with the manual preparation of CSV input files, the DeviceEditor interface for j5 ensures that design parameters fall within their acceptable ranges (Figure 6), validates the uniqueness and correctness of part names, automatically extracts sequence display IDs, prevents start and stop base-pair numbering mistakes (Figure 2), and visualizes the selected placement of direct synthesis firewalls (red vertical lines in Figures 3D and 5B). DeviceEditor's correct-by-construction features can optionally prevent the user from moving a part icon with a "DIGEST" forced assembly strategy to the first collection bin, as this would be problematic for downstream j5 DNA assembly design [12]. Finally, DeviceEditor pre-empts substantially increased DNA assembly costs by visually alerting the user if two parts in the same bin have disparate forced assembly strategies, which greatly limits the combinatorial re-use of assembly fragments [12]. Part icons with forced assembly strategies differing from their bin are visually distinguished by a red rectangle indicator light at top left (Figure 4A, left).
Graphical user interface for creating and modifying Eugene biological design specification rules
Several bioCAD tools (e.g. Clotho [8, 36] and GenoCAD [10, 37]) harness biological specification rules and expression grammars to constrain designs, but the underlying rules and grammars are not viewable or modifiable through the design tools themselves. This can be problematic for design specification rule languages such as Eugene [20] that currently rely on name-matching for part identification, since simple typographical errors can result in referencing incorrect or non-existing parts, and identical names (e.g., "vector_backbone") for distinct parts can result in the misapplication of rules. DeviceEditor's graphical user interface for creating and modifying design specification rules (Figure 4A) and its Eugene rules file import feature (Figure 4B) prevent typographical mistakes by constraining new rules to supported operators (e.g. WITH) and operands (i.e. part icons) presently on the design canvas. Part icons associated with Eugene rules are visually identified by an orange circle indicator light at bottom right (Figure 5A). DeviceEditor also prevents the misapplication of rules by 1) not allowing distinct parts to have the same name and 2) displaying all rules that specifically apply to the selected part icon (Figure 4A), precluding the need to search through thousands of unrelated rules. While DeviceEditor currently only supports a subset of Eugene rules (NOTMORETHAN, WITH, and NOTWITH), future development will expand this list towards more complete coverage.
Mechanisms for integration with other bioCAD software
While bioCAD enables the de novo design or selection of existing component parts to achieve a given biological activity, many of these tools (e.g. the RBS Calculator [15] and GLAMM [5]) specialize in a subset of genetic components (e.g. RBS sequences or metabolic enzyme genes) and are not directly integrated with downstream DNA assembly design automation. DeviceEditor assists the aggregation and arrangement of DNA sequences arising from disparate sources. There are three mechanisms to transfer component information from other bioCAD tools to DeviceEditor: copying and pasting (mapping) components into DeviceEditor (Figure 2), CSV and sequence files (i.e. Genbank format) (Figure 7), and DeviceEditor design files (see Methods). The latter two mechanisms are preferable for transferring multiple components to reconstitute complex designs (Figure 5), since copying and pasting is currently limited to one component at a time. CSV and sequence files are advantageous in that they are straightforward for third-party software to generate, although they convey less information (e.g. CSV files omit SBOLv icon selection information, Figure 7) than DeviceEditor design files. SBOL [16], a promising emerging data exchange standard, is an anticipated fourth mechanism for integrating DeviceEditor with other bioCAD software. Further development of DeviceEditor will support importing SBOL XML once the XML serialization of SBOL has been firmly established [38].