@startuml
!include skinparams.puml
actor "Human Player" as player
actor "GUI Program" as gui
actor "Human User" as user
usecase "Play a match" as play
usecase "Use as backend for machine player" as backend
usecase "Generate a move" as genMove
player --> play
gui --> backend
user --> genMove
gui --> genMove
@enduml