Wireless sensor network (WSN) applications sense events in situ and compute results in-network. Their software components should run on platforms with stringent constraints on node resources. To meet these constraints, developers often design their programs by trial-and-error. Such manual process is time-consuming and error-prone. Based on an existing task view that treats a WSN application as tasks and models resources as constraints, we propose a new component view that associates components with code optimization techniques and constraints. We provide a visualization mechanism to help developers select code optimization techniques. We also develop algorithms to synthesize components running on nodes, fulfilling the constraints, and thus optimizing their quality.
['Zhenyu Zhang', 'Wing Kwong Chan', 'T. H. Tse', 'Heng Lu', 'Lijun Mei']
Resource prioritization of code optimization techniques for program synthesis of wireless sensor network applications