Para o desenvolvimento deste projeto foram utilizados os padrões: - Proxy - Observer - Template Method - Static Factory Method - Singleton Sofware na linguagem JAVA, escrito na IDE intellij, baseado no código de @jonasjp.