Ensuring Reliability in Distributed Systems: An Educational Approach