Bom dia,   Como ja postei aqui algumas vezes esses últimos dias, ja trabalho com com PHP a um bom tempo, mas somente coisas normais, e esse ano fui contratado para desenvolver um software de gestão de empresas contábeis, apesar de estar conseguindo fazer praticamente o que me cabe sem muitos problemas, me resta aquela grande dúvida:     Estou tentando documentar, comentar, controlar versão da forma mais correta possível com meu conhecimento na área, porém estou tendo um problema com a aplicação do conceito de UML, minha classes acabam de se tornando muito extensas, com funções internas redundantes, que mesmo com desempenho estando em ordem, fica praticamente impossível de um terceiro entender o que cada coisa faz/deveria fazer.   O que eu gostaria é de algum material/exemplo de uma aplicação prática complexa de estrutura UML, pois só acho exemplos simples, e não estou conseguindo aplicar em 'objetos não reais'.   Como por exemplo:   Controle de obrigações fiscais de um empresa:   Tenho os elementos empresa, responsável, e as obrigações, eu tenho essa função funcionando em meu sistema, porém tem um problema:   Como transformar esse fator abstrato de obrigações, em um objeto verdadeiro pra documentar, e, ordenar corretamente as classes ?   Deu pra entender minha dúvida?   Desde ja obrigado.