Engineering and verifying requirements for programmable self-assembling nanomachinesProceedings of the 34th International Conference on Software Engineering
Document TypeConference Proceeding
Conference34th International Conference on Software Engineering (ICSE 2012)
Publication VersionAccepted Manuscript
Conference Title34th International Conference on Software Engineering (ICSE 2012)
Conference DateJune 2-9, 2012
AbstractWe propose an extension of van Lamsweerde's goal-oriented requirements engineering to the domain of programmable DNA nanotechnology. This is a domain in which individual devices (agents) are at most a few dozen nanometers in diameter. These devices are programmed to assemble themselves from molecular components and perform their assigned tasks. The devices carry out their tasks in the probabilistic world of chemical kinetics, so they are individually error-prone. However, the number of devices deployed is roughly on the order of a nanomole (a 6 followed by fourteen 0s), and some goals are achieved when enough of these agents achieve their assigned subgoals. We show that it is useful in this setting to augment the AND/OR goal diagrams to allow goal refinements that are mediated by threshold functions, rather than ANDs or ORs. We illustrate this method by engineering requirements for a system of molecular detectors (DNA origami “pliers” that capture target molecules) invented by Kuzuya, Sakai, Yamazaki, Xu, and Komiyama (2011). We model this system in the Prism probabilistic symbolic model checker, and we use Prism to verify that requirements are satisfied, provided that the ratio of target molecules to detectors is neither too high nor too low. This gives prima facie evidence that software engineering methods can be used to make DNA nanotechnology more productive, predictable and safe.
Rights© 2012 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.
Citation InformationRobyn Lutz, Jack Lutz, James Lathrop, Titus Klinge, et al.. "Engineering and verifying requirements for programmable self-assembling nanomachines" Zurich, SwitzerlandProceedings of the 34th International Conference on Software Engineering Vol. 1 (2012) p. 1361 - 1364
Available at: http://works.bepress.com/eric-henderson/35/