Work on synthetic biology has largely used a component-based metaphor for system construction. While this paradigm has been successful for the construction of numerous systems, the incorporation of contextual design issues—either compositional, host or environmental—will be key to realising more complex applications. Here, we present a design framework that radically steps away from a purely parts-based paradigm by using aspect-oriented software engineering concepts. We believe that the notion of concerns
is a powerful and biologically credible way of thinking about system synthesis. By adopting this approach, we can separate core concerns, which represent modular aims of the design, from cross-cutting concerns, which represent system-wide attributes. The explicit handling of cross-cutting concerns allows for contextual information to enter the design process in a modular way. As a proof-of-principle, we implemented the aspect-oriented approach in the Python tool, SynBioWeaver, which enables the combination, or weaving, of core and cross-cutting concerns. The power and flexibility of this framework is demonstrated through a number of examples covering the inclusion of part context, combining circuit designs in a context dependent manner, and the generation of rule, logic and reaction models from synthetic circuit designs.
This is an open access article distributed under the Creative Commons Attribution License
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited