Distributed and Parallel Systems by