First, we will begin presenting the classes diagram, where we can observe the relationship between classes as their importance.
Click here to download UML Design
The different boxes represent each implemented class, we can distinguish two types: shady boxes and without shadowing ones. The shady ones represent interfaces as Constants and Server_Interface. The interfaces are similar to classes, but without instance variables and with declared methods without body. Once defined, any number of classes can implement it, and this is represented by a discontinuous arrow. The most important class is Island, the other ones are supported classes or simply threads with other responsibilities.