A two level approach to the design of software for cooperating embedded systems | IEEE Conference Publication | IEEE Xplore