Esse artigo faz parte da revista Engenharia de Software 17 edição especial. Clique aqui para ler todos os artigos desta edição



Projeto

UML – Explorando outros diagramas

Conhecendo diagramas de utilização menos frequente, mas de grande relevância na modelagem de sistemas

 

De que trata o artigo:

Este artigo tem por objetivo apresentar a sintaxe de três diagramas importantes da UML: diagrama de objetos, diagrama de atividades e diagrama de máquina de estados.

Para que serve:

Fornecer aos desenvolvedores ou estudantes da área de sistemas uma linha de entendimento com o intuito de orientá-los a modelar diagramas de menor utilização na UML, mas de grande relevância.

Em que situação o tema é útil:

Para quem ainda não modelou diagramas de objetos, atividades e/ou máquina de estados, ou para quem tem experiência e quer revisar a sintaxe permitida nesses tipos de diagramas.

 

Dos treze diagramas da versão atual da UML, são essenciais os Casos de Uso, Diagramas de Classes e Diagramas de Seqüências. Mas há outros de relevância comprovada, que podem ser explorados pelos desenvolvedores para refinar sua modelagem. Entre esses, podemos citar o Diagrama de Objetos, o Diagrama de Máquina de Estados e o Diagrama de Atividades.

Veremos a seguir a relevância desses diagramas na modelagem dos sistemas, bem como sua integração com outros modelos da UML.

Diagrama de Objetos

Sabemos que um objeto nada mais é do que a instância de uma classe, num determinado ponto (instante) do tempo. Pois podemos utilizar a mesma definição para designar o diagrama de objetos, tornando-o uma instância do diagrama de classes, representando essa modelagem num determinado instante do tempo. O Diagrama de Objetos utiliza grande parte da notação do Diagrama de Classes.

E qual seria o objetivo de um diagrama desses? Pense que uma modelagem parte de uma abstração, e quanto mais abstraímos mais longe do mundo real estamos, e isso pode nos levar a dúvidas ou interpretações errôneas sobre o que o usuário realmente deseja.

Assim, cada vez que criamos um diagrama de objetos, passamos a trabalhar com os valores dos atributos, ou seja, com dados reais, que nos dizem muito mais do que apenas a identificação dos atributos dentro da modelagem de uma classe.

O diagrama de objetos pode também auxiliar o desenvolvedor no momento de identificar problemas na execução de uma aplicação. Durante a depuração de um programa, podemos ir mapeando o conteúdo dos objetos envolvidos na execução, escrevendo os valores assumidos num diagrama de objetos. Assim, com o diagrama, temos a visão não só do objeto envolvido, mas por expansão dos seus relacionamentos, os objetos vizinhos.

Se considerarmos todos os objetos e relacionamentos possíveis, além de suas multiplicidades, teremos milhares de objetos. É evidente a impossibilidade de exibirmos todas essas instâncias. Por isso, mostramos num diagrama de objetos, criado com intuito de entendimento do modelo, somente um subconjunto que tenha relevância dentro da modelagem. Esse conjunto procura se basear em colaborações. Assim, a partir de um determinado objeto, percorrem-se os relacionamentos existentes, congelando-se um determinado estado do mesmo.

Sabemos que o estado de um objeto significa o conjunto de valores que ele assume num determinado instante. E é a partir do estado de um objeto que se determina o estado dos objetos com ele relacionados.

O Diagrama de Objetos irá demonstrar, portanto, um conjunto de objetos e suas respectivas ligações (instâncias dos relacionamentos), em um determinado instante do tempo (estados dos objetos congelados).

Então, de forma resumida, temos os seguintes usos para um diagrama de objetos:

...

Quer ler esse conteúdo completo? Tenha acesso completo