US4002 - ArthurSchiavom/gestao-informacao-chao-de-fabrica--projeto-academico GitHub Wiki
=======================================
Como SCM, pretendo proceder à recolha das mensagens geradas nas/pelas máquinas de uma determinada linha de produção.

Classe do domínio: MensagemProtocoloComunicacao


- Command - Para implementar a ação de registar novas categorias
- Repository Pattern - Para abstrair o sistema de persistência de objetos, facilitando a implementação com diferentes tecnologias
- Controller - Para separar o layer da interface do layer de domínio, introduzindo então um layer de aplicação encarregue do processamento, mas não responsável por caracterizar o negócio ou interagir com o utilizador.
- Polymorphism & Template method - Usado na implementação do repositório específico de cada entidade.
- Liskov Substitution principle & Dependency inversion - Em todas as implementações de interfaces e extensões de classes.
- Pure fabrication - Controller e UI.
- Information expert & HC/LC - Sempre presente: cada classe tem uma responsabilidade bem definida, visando a sua independência de outras classes.
- Singleton - Utilizado na RepositoryFactory
- Strategy - Caso haja ficheiros diferentes, pode ser aplicado a strategy necessária durante runtime
- Factory - Utilizado para criar uma instancia da mensagem protocolo de comunicação que implementa o Strategy e faz as suas prõprias verificações