Descrever a arquitetura de um código orientado a objetos de maneira clara e padronizada se torna cada vez mais necessário na área de desenvolvimento de software. Equipes de trabalho maiores e espalhadas pelo mundo, muitas vezes de forma remota devido a constantes mudanças na forma de trabalho, fazem com que o código, antes de ser escrito, tenha de ser bem elaborado e pensado previamente, o que justifica a padronização na modelagem de diagramas que expressam os requisitos. Daí surge, por exemplo, a linguagem UML (Unified Modeling Language) para criação de diagramas de classe, de sequência, de atividades entre outros, que facilitam a descrição de uma arquitetura para os desenvolvedores que irão implementá-la. Uma vez criados os diagramas, o próximo passo é a criação dos arquivos fontes e código a ser escrito. Este passo, inicialmente, consiste na mera declaração de classes, interfaces e enumeradores contendo seus atributos e métodos, sem qualquer comportamento que implemente os requisitos. Criar arquivos de código fonte em uma plataforma SAP NetWeaver (plataforma que serve como fundação para diversas aplicações), assim como escrever o código dos objetos, demanda tempo e esta tarefa pode sofrer atrasos causados por eventuais instabilidades do servidor ou conexão com ele. Foi criada, então, uma ferramenta automatizada que gera o código fonte em ABAP (linguagem proprietária de alto nível da SAP utilizada na plataforma NetWeaver) contendo a declaração dos objetos e as classes de teste unitário. Nomeada PlantUML2ABAP, ela utiliza como entrada um diagrama de classes criado com a linguagem PlantUML. Foram feitos experimentos a fim de comparar o tempo levado para a escrita do código ABAP e criação dos arquivos entre as formas manual e automática, com a ferramenta. Por meio dos resultados obtidos nos experimentos, conclui-se que o uso da PlantUML2ABAP cumpre o objetivo de reduzir o tempo gasto com a criação dos arquivos fonte e com a escrita do código destes objetos em pelo menos 11 vezes. Um resultado considerado realmente satisfatório pelos desenvolvedores envolvidos nos experimentos, que acreditam que a PlantUML2ABAP permite que seus utilizadores tenham mais tempo para focar em design e qualidade de código. |