UML 2.0 - Visão geral

UML 2.0 é uma dimensão totalmente diferente no mundo da Unified Modeling Language. É mais complexo e extenso por natureza. A extensão da documentação também aumentou em comparação com a versão UML 1.5. A UML 2.0 adicionou novos recursos para que seu uso seja mais extenso.

UML 2.0 adiciona a definição de semântica formal e completamente definida. Esta nova possibilidade pode ser utilizada para o desenvolvimento de modelos e os sistemas correspondentes podem ser gerados a partir desses modelos. Porém, para utilizar essa nova dimensão, um esforço considerável deve ser feito para adquirir conhecimento.

Novas dimensões em UML 2.0

A estrutura e documentação da UML foram completamente revisadas na última versão da UML 2.0. Existem agora dois documentos disponíveis que descrevem UML -

  • A infraestrutura UML 2.0 define as construções básicas da linguagem na qual a UML é baseada. Esta seção não é diretamente relevante para os usuários da UML. Isso é mais direcionado aos desenvolvedores de ferramentas de modelagem. Esta área não está no escopo deste tutorial.

  • A superestrutura da UML 2.0 define as construções do usuário da UML 2.0. Significa aqueles elementos da UML que os usuários usarão no nível imediato. Este é o foco principal da comunidade de usuários da UML.

Esta revisão da UML foi criada para cumprir um objetivo de reestruturar e refinar a UML para que a usabilidade, implementação e adaptação sejam simplificadas.

A infraestrutura UML é usada para -

  • Fornece um núcleo de meta-linguagem reutilizável. Isso é usado para definir a própria UML.

  • Fornece mecanismos para ajustar o idioma.

A superestrutura UML é usada para -

  • Fornece melhor suporte para desenvolvimento baseado em componentes.

  • Melhore as construções para a especificação da arquitetura.

  • Fornece melhores opções para a modelagem de comportamento.

O ponto importante a observar são as principais divisões descritas acima. Essas divisões são usadas para aumentar a usabilidade da UML e definir um entendimento claro de seu uso.

Há uma outra dimensão já proposta nesta nova versão. É uma proposta para um Object Constraint Language (OCL) e Diagram Interchange completamente novos. Todos esses recursos juntos formam o pacote UML 2.0 completo.

Diagramas de modelagem em UML 2.0

Modelando Interações

Os diagramas de interação descritos na UML 2.0 são diferentes das versões anteriores. No entanto, o conceito básico permanece o mesmo da versão anterior. A principal diferença é o aprimoramento e os recursos adicionais adicionados aos diagramas na UML 2.0.

A UML 2.0 modela a interação de objetos das quatro maneiras diferentes a seguir.

  • Sequence diagramé uma visão dependente do tempo da interação entre objetos para atingir uma meta comportamental do sistema. A sequência de tempo é semelhante à versão anterior do diagrama de sequência. Uma interação pode ser projetada em qualquer nível de abstração dentro do projeto do sistema, desde as interações do subsistema até o nível da instância.

  • Communication diagramé um novo nome adicionado na UML 2.0. O diagrama de comunicação é uma visão estrutural da mensagem entre objetos, tirada do conceito de diagrama de colaboração da UML 1.4 e de versões anteriores. Isso pode ser definido como uma versão modificada do diagrama de colaboração.

  • Interaction Overview diagramtambém é uma nova adição na UML 2.0. Um diagrama de visão geral de interação descreve uma visão de alto nível de um grupo de interações combinadas em uma sequência lógica, incluindo lógica de controle de fluxo para navegar entre as interações.

  • Timing diagramtambém é adicionado na UML 2.0. É um diagrama opcional projetado para especificar as restrições de tempo nas mensagens enviadas e recebidas no decorrer de uma interação.

A partir da descrição acima, é importante observar que o objetivo de todos os diagramas é enviar / receber mensagens. O tratamento dessas mensagens é interno aos objetos. Assim, os objetos também possuem opções para receber e enviar mensagens, e aí vem outro aspecto importante chamado interface. Agora, essas interfaces são responsáveis ​​por aceitar e enviar mensagens entre si.

Portanto, pode-se concluir que as interações na UML 2.0 são descritas de uma maneira diferente e essa é a razão pela qual os novos nomes de diagramas surgiram. Se analisarmos os novos diagramas, ficará claro que todos os diagramas são criados com base nos diagramas de interação descritos nas versões anteriores. A única diferença são os recursos adicionais incluídos na UML 2.0 para tornar os diagramas mais eficientes e orientados para o propósito.

Colaborações de modelagem

Como já discutimos, a colaboração é usada para modelar interações comuns entre objetos. Podemos dizer que a colaboração é uma interação onde um conjunto de mensagens é tratado por um conjunto de objetos com papéis pré-definidos.

O ponto importante a ser observado é a diferença entre o diagrama de colaboração na versão anterior e na versão UML 2.0. Para fazer a distinção, o nome do diagrama de colaboração foi alterado na UML 2.0. Na UML 2.0, é nomeado comoCommunication diagram.

Consequentemente, a colaboração é definida como uma classe com atributos (propriedades) e comportamento (operações). Os compartimentos na classe de colaboração podem ser definidos pelo usuário e podem ser usados ​​para interações (diagramas de sequência) e elementos estruturais (diagrama de estrutura composta).

A figura a seguir modela o padrão de design do Observer como colaboração entre um objeto na função de um item observável e qualquer número de objetos como observadores.

Comunicação de modelagem

O diagrama de comunicação é ligeiramente diferente dos diagramas de colaboração das versões anteriores. Podemos dizer que é uma versão reduzida das versões anteriores da UML. O fator distintivo do diagrama de comunicação é a ligação entre os objetos.

Este é um link visual e está faltando no diagrama de seqüência. No diagrama de seqüência, apenas as mensagens passadas entre os objetos são mostradas, mesmo se não houver link entre eles.

O diagrama de comunicação é usado para evitar que o modelador cometa esse erro ao usar um formato de diagrama de Objeto como base para a mensagem. Cada objeto em um diagrama de comunicação é chamado de linha de vida de objeto.

Os tipos de mensagens em um diagrama de comunicação são iguais aos de um diagrama de sequência. O diagrama de comunicação pode modelar mensagens síncronas, assíncronas, de retorno, perdidas, encontradas e de criação de objetos.

A figura a seguir mostra um diagrama de Objetos com três objetos e dois links que formam a base para o diagrama de Comunicação. Cada objeto em um diagrama de comunicação é chamado de linha de vida de objeto.

Visão geral da modelagem de uma interação

Na prática, um diagrama de sequência é usado para modelar um único cenário. Vários diagramas de seqüência são usados ​​para completar o aplicativo inteiro. Portanto, ao modelar um único cenário, é possível esquecer o processo total e isso pode introduzir erros.

Para resolver esse problema, o novo diagrama de visão geral da interação combina o fluxo de controle de um diagrama de atividades e a especificação de mensagens do diagrama de sequência.

O diagrama de atividades usa atividades e fluxos de objetos para descrever um processo. O diagrama Visão Geral de Interação usa interações e ocorrências de interação. As linhas de vida e mensagens encontradas nos diagramas de sequência aparecem apenas nas interações ou ocorrências de interação. No entanto, as linhas de vida (objetos) que participam do diagrama Visão Geral da Interação podem ser listadas junto com o nome do diagrama.

A figura a seguir mostra um diagrama de visão geral da interação com diamantes de decisão, quadros e ponto de terminação.

Modelando um Diagrama de Tempo

O próprio nome deste diagrama descreve o propósito do diagrama. Basicamente, trata do tempo dos eventos ao longo de todo o seu ciclo de vida.

Um diagrama de tempo pode, portanto, ser definido como um diagrama de interação de propósito especial feito para focar nos eventos de um objeto em seu tempo de vida. É basicamente uma mistura de máquina de estado e diagrama de interação. O diagrama de tempo usa os seguintes cronogramas -

  • Linha do tempo estadual

  • Linha do tempo de valor geral

Uma linha de vida em um diagrama de tempo forma um espaço retangular dentro da área de conteúdo de um quadro. Normalmente, é alinhado horizontalmente para ler da esquerda para a direita. Várias linhas de vida podem ser empilhadas no mesmo quadro para modelar a interação entre elas.

Resumo

UML 2.0 é uma versão aprimorada em que novos recursos são adicionados para torná-la mais utilizável e eficiente. Existem duas categorias principais na UML 2.0, uma é a superestrutura UML e a outra é a infraestrutura UML. Embora os novos diagramas sejam baseados nos conceitos antigos, eles ainda têm alguns recursos adicionais.

A UML 2.0 oferece quatro diagramas de interação, o diagrama de sequência, o diagrama de comunicação, o diagrama de visão geral de interação e um diagrama de tempo opcional. Todos os quatro diagramas utilizam a notação de quadro para encerrar uma interação. O uso de frames suporta a reutilização de interações como ocorrências de interação.