Flexible, Reliable, Distributed Software

This book focuses on developing software for distributed computing using the principles, methods, and practices introduced in my previous book Flexible, Reliable Software - Using Patterns and Agile Development, published by CRC Press, 2010.

Chapter TeleMed Case. The PayStation was the central case study for introducing and discussing test-driven development and design patterns in my original book. In this chapter I will introduce TeleMed, a small tele medical systems for monitoring patients in their homes, that in a similar manner serves as case study for distributed computing.

Chapter Basic Concepts. This chapter introduces basic concepts and outlines the many challenges of distributed computing.

Chapter Broker Part One. The Broker pattern is a central architectural pattern for implementing method calls on remote objects. In this chapter, I will go through the basics of the pattern.

Chapter Implementing Broker. In this chapter, I will highlight central aspects of the Broker implementation, using the TeleMed case study as a foundation. I also show how to use test doubles to allow easy testing of broker based systems.

Chapter Broker Part Two. Adhering to the TDD philosophy of take small steps, this chapter completes the Broker pattern. I will deal with the issues of server created objects as well as handling more than one type of remote object.

Chapter HTTP. In this chapter I will detail some of the basic concepts and techniques in the hypter text transfer protocol that is the engine behind WWW, the world wide web. It turns out that HTTP is an excellent technology to build Broker upon.

Chapter REST. Representational State Transfer, REST, is an architectural pattern for large-scale distributed system based upon HTTP. This chapter presents the pattern and compares it to the Broker.