Artigo SQL Magazine 13 - Projeto de software utilizando UML

Veja como a UML é utilizada para visualizar, especificar, construir e documentar artefatos de software.

Clique aqui para ler esse artigo em PDF.

Clique aqui para ler todos os artigos desta edição

Projeto de software utilizando UML

por Rodrigo Oliveira Spinola

Muito se fala sobre a curva de aprendizado associado à orientação a objetos. Esta curva de aprendizado é fruto da necessidade e troca de paradigma ao deixar de projetar e desenvolver estruturado para fazê-lo seguindo os princípios da orientação a objetos. Em alguns aspectos, a mudança pode ser até fácil. Aqueles que não trabalharam por muito tempo com o paradigma estruturado tendem a ter mais facilidades. Vale deixar claro aqui que não estamos questionando o quão difícil é programar em uma linguagem orientada a objetos mas sim, aprender a tirar proveito das vantagens que estas linguagens fornecem.

 

Nota

Segundo Rumbaugh, a tecnologia baseada em objetos é mais do que apenas uma forma de programar. Ela é mais importante como um modo de pensar em um problema de forma abstrata, utilizando conceitos do mundo real e não idéias computacionais.

 

Neste contexto situamos a UML, linguagem de modelagem unificada. Até certo ponto podemos dizer que ela foi projetada para ajudar as pessoas a focarem nas vantagens provenientes do uso do paradigma orientado a objetos. UML é utilizada para visualizar, especificar, construir e documentar artefatos de software. Veremos agora o que significa cada um desses contextos de utilização.

·Visualizar: para muitos programadores, a distância entre pensar em uma solução para o problema e transformá-la em código é próxima de zero. Ele cria a solução e ele mesmo a desenvolve. Ainda assim, ele de alguma forma está modelando mentalmente o sistema que irá construir. Entretanto, existem sérios problemas com esta abordagem. Primeiro, comunicar o modelo criado mentalmente para outros desenvolvedores é uma tarefa cujo risco de perda de informação durante a comunicação é alto. E segundo, imagine que o projeto em questão é grande e a equipe envolvida não se restringe a um ou dois programadores. Teríamos sérias dificuldades na construção do sistema. Isso sem falar que não existiria documentação para o software e sua manutenção no futuro traria dor de cabeça, com certeza. Assim, o uso da UML provê uma notação comum para o entendimento compartilhado sobre o software que se está construindo.

·Especificar: a UML permite a construção de modelos precisos, não ambíguos e completos.

·Construir: os modelos construídos utilizando a UML podem ser conectados a uma série de linguagens de programação permitindo uma tradução entre os modelos construídos e o código. Este mapeamento permite também a engenharia reversa na qual os modelos são gerados a partir do código fonte. Vale uma ressalva aqui, UML não é uma linguagem visual de programação.

·Documentar: neste caso, os modelos criados durante o desenvolvimento fazem parte da documentação do software.

 

A Figura 1 nos dá uma boa metáfora da importância da UML para a construção de software. Da mesma forma que precisamos de um projeto bem feito antes de construirmos um edifício, precisamos também para software. Perceba que a planta de uma casa facilita a comunicação entre os envolvidos na construção, permite uma avaliação do cliente e assim por diante.

 

Figura 1.

 

Como o próprio nome nos diz, a UML é uma linguagem de modelagem, não um método. Ou seja, ela nos diz o que podemos modelar, mas não como. Modelos servem para possibilitar o entendimento do ambiente no qual o sistema irá operar, a comunicação entre as pessoas envolvidas em um projeto, promover a melhor compreensão dos requisitos do projeto, promover a difusão deste conhecimento entre os envolvidos e, avaliar diferentes soluções através da modelagem da solução." [...] continue lendo...

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados