A Middleware-Centric Design Flow for Networked Embedded Systems