A distributed real-time programming model is presented. It consists of a set of tasks whose segments require processor time and devices, and which is run on a dedicated network of microcomputers. A task is started upon receipt of an external signal or the completion of other tasks. Segments communicate via message passing, and there may be a limited number of transient communication errors. A heuristic algorithm is developed to determine an upper bound on the response time of each task. This algorithm is useful in a hard-real-time environment for determining if response times will always be met.