UML

Por Marina Martinez
A UML (Unified Modeling Language), que significa Linguagem Unificada de Modelagem é uma linguagem padrão para modelagem orientada a objetos. Ela surgiu da fusão de três grandes métodos, do BOOCH, OMT (Rumbaugh) e OOSE (Jacobson). Esta linguagem de modelagem não proprietária de terceira geração, não é um método de desenvolvimento. Têm como papel auxiliar a visualizar o desenho e a comunicação entre objetos. Ela permite que desenvolvedores visualizem os produtos de seu trabalho em diagramas padronizados, e é muito usada para criar modelos de sistemas de software.

Além de fornecer a tecnologia necessária para apoiar a prática de engenharia de software orientada a objetos, a UML poderá ser a linguagem de modelagem padrão para modelar sistemas concorrentes e distribuídos. Utiliza-se de um conjunto de técnicas de notação gráfica para criar modelos visuais de software de sistemas intensivos, combinando as melhores técnicas de modelagem de dados, negócios, objetos e componentes. É uma linguagem de modelagem única, comum e amplamente utilizável.

Embora com a UML seja possível representar o software através de modelos orientados a objetos, ela não demonstra que tipo de trabalho deve ser feito, ou seja, não possui um processo que define como o trabalho tem que ser desenvolvido. O objetivo então é descrever "o que fazer", "como fazer", "quando fazer" e "porque deve ser feito". É necessária a elaboração completa de um dicionário de dados, para descrever todas as entidades envolvidas, refinando, com isso, os requisitos funcionais do software.

A Linguagem Unificada de Modelagem possui diagramas (representações gráficas do modelo parcial de um sistema) que são usados em combinação, com a finalidade de obter todas as visões e aspectos do sistema.

Os Diagramas da UML estão divididos em Estruturais e Comportamentais.

Diagramas Estruturais

  • De Classe: Este diagrama é fundamental e o mais utilizado na UML e serve de apoio aos outros diagramas. O Diagrama de Classe mostra o conjunto de classes com seus atributos e métodos e os relacionamentos entre classes.
  • De Objeto: O diagrama de objeto esta relacionado com o diagrama de classes e, é praticamente um complemento dele. Fornece uma visão dos valores armazenados pelos objetos de um Diagrama de Classe em um determinado momento da execução do processo do software.
  • De Componentes: Está associado à linguagem de programação e tem por finalidade indicar os componentes do software e seus relacionamentos.
  • De implantação: Determina as necessidades de hardware e características físicas do Sistema.
  • De Pacotes: Representa os subsistemas englobados de forma a determinar partes que o compõem.
  • De Estrutura: Descreve a estrutura interna de um classificador.

Diagramas Comportamentais

  • De Caso de Uso (Use Case): Geral e informal para fases de levantamento e análise de Requisitos do Sistema.
  • De Máquina de Estados: Procura acompanhar as mudanças sofridas por um objeto dentro de um processo.
  • De Atividades: Descreve os passos a serem percorridos para a conclusão de uma atividade.
  • De Interação: Dividem-se em:
    1. De Sequência: Descreve a ordem temporal em que as mensagens são trocadas entre os objetos.
    2. Geral interação: Variação dos diagramas de atividades que fornece visão geral dentro do sistema ou processo do negócio.
    3. De comunicação: Associado ao diagrama de Seqüência, complementando-o e concentrando-se em como os objetos estão vinculados.
    4. De tempo: Descreve a mudança de estado ou condição de uma instância de uma classe ou seu papel durante o tempo.

Diagramas da UML

Referências Bibliográficas:
http://pt.wikipedia.org/wiki/UML
http://computacao.unitri.edu.br/downloads/monografia/49351143168297.pdf
http://projetos.inf.ufsc.br/arquivos_projetos/projeto_721/artigo.tcc.pdf
http://www.macoratti.net/uml_vb.htm