Flexible, Reliable, Distributed Software guides readers through the process of developing high quality distributed software by highlighting the software architecture behind remote method invocation as well as HTTP and REST based architectures. It covers both the architectural patterns as well as the underlying Java implementation.
Author(s): Henrik Bærbak Christensen
Edition: 2
Publisher: leanpub.com
Year: 2020
Language: English
Tags: agile
Flexible, Reliable, Distributed Software
1. TeleMed Case
1.1 Learning Objectives
1.2 TeleMed Stories
1.3 A Role Based Design
1.4 A Server side Role based Design
1.5 Related Work
2. Basic Concepts
2.1 The Issues Involved
2.2 Elements of a Solution
2.3 Tying Things Together
2.4 Summary of Key Concepts
2.5 Review Questions
3. Broker Part One
3.1 Learning Objectives
3.2 The Problem
3.3 The Broker Pattern
3.4 Analysis
3.5 Summary of Key Concepts
3.6 Review Questions
4. Implementing Broker
4.1 Learning Objectives
4.2 Architectural Concerns
4.3 Domain Layer
4.4 Client Side
4.5 Server side
4.6 Test-driven development of Distributed Systems
4.7 Using the Broker library
4.8 Summary of Key Concepts
5. Broker Part Two
5.1 Learning Objectives
5.2 Limitations in the TeleMed Case
5.3 Game Lobby Stories
5.4 Walkthrough of a Solution
5.5 Summary of Key Concepts
5.6 Review Questions
6. HTTP
6.1 Learning Objectives
6.2 A HTTP Walk-through
6.3 A HTTP Case Study: PasteBin
6.4 Broker using HTTP
6.5 Summary of Key Concepts
6.6 Review Questions
7. REST
7.1 Learning Objectives
7.2 The Demise of Broker Architectures
7.3 Representational State Transfer (REST)
7.4 Richardson’s model for Levels in REST
7.5 The Architectural Style
7.6 Level 1 REST: TeleMed
7.7 Documenting REST API
7.8 Continued REST Design for TeleMed
7.9 Implementing REST based TeleMed
7.10 Level 2 REST: GameLobby
7.11 Testability and TDD of REST designs
7.12 Summary of Key Concepts
7.13 Review Questions
Bibliography
Notes