Book Image

arc42 by Example

By : Dr. Gernot Starke, Michael Simons, Stefan Zörner, Ralf D. Müller
Book Image

arc42 by Example

By: Dr. Gernot Starke, Michael Simons, Stefan Zörner, Ralf D. Müller

Overview of this book

When developers document the architecture of their systems, they often invent their own specific ways of articulating structures, designs, concepts, and decisions. What they need is a template that enables simple and efficient software architecture documentation. arc42 by Example shows how it's done through several real-world examples. Each example in the book, whether it is a chess engine, a huge CRM system, or a cool web system, starts with a brief description of the problem domain and the quality requirements. Then, you'll discover the system context with all the external interfaces. You'll dive into an overview of the solution strategy to implement the building blocks and runtime scenarios. The later chapters also explain various cross-cutting concerns and how they affect other aspects of a program.
Table of Contents (9 chapters)
Free Chapter
1
Acknowledgements
8
VII - macOS Menu Bar Application

V.7 Deployment View

This view describes the operation of DokChess. As a Java program, it is relatively undemanding if you want to use it only on the command line. However, this is inconvenient and requires a physical chessboard with coordinates if the user cannot play blindfolded. Therefore, here is an explanation of how to configure DokChess in conjunction with a graphical frontend.

7.1 Windows Infrastructure

The following deployment diagram shows the use of DokChess on Windows without an opening book. Arena is used as an example frontend ( refer V 9.1, decision How does the engine communicate with the outside world?):

Figure 5.31: Deploying DokChess on a Windows PC

Software requirements on a PC are as folllows:

  • Java Runtime Environment SE 7 (or higher).
  • The JVM (javaw.exe) is in the path otherwise adapt dokchess.bat.
  • Arena (http://www.playwitharena.de).

DokChess.jar contains the compiled Java source code of all the modules and all the necessary dependencies (Uber...