1. Introdução

Um tipo enumeration (ou enum) é um recurso utilizado em linguagens orientadas a objeto para a representação de um conjunto fixo de constantes. Muito frequentemente, os usuários da ferramenta Astah* (antiga Jude) não conseguem descobrir como modelar enums em seus diagramas de classe, pois essa atividade é um pouco trabalhosa e requer o acesso a algumas telas um pouco escondidas da aplicação. A seção a seguir apresenta a receita de bolo através de um exemplo simples.

2. Modelagem de Enumeration no Astah* / Jude

No exemplo a seguir, considere que em nosso diagrama de classes desejamos definir um tipo enum chamado “Genero” para representar os seguintes gêneros de filmes: “AÇÃO”, “COMÉDIA”, “DRAMA” e “SUSPENSE” (usaremos apenas quatro gêneros para simplificar). Para realizar essa atividade, execute os passos descritos a seguir:

1. Inserir uma nova classe no diagrama. Basta clicar no ícone destacado na figura abaixo e depois dentro do diagrama. Coloque o nome “Genero” nessa classe.

Inserindo uma nova classe

Figura 1: Inserindo uma nova classe

2. Clique com o botão direito sobre a classe e selecione a opção “Add Stereotype”.

Iniciando a definição do enum

Figura 2: Iniciando a definição do enum

3. Clique sobre o nome “Stereotype” que apareceu acima de “Genero”. Isso fará com que a aba “Stereotype” localizada no canto inferior esquerdo da aplicação seja automaticamente selecionada.

Seleção da aba Stereotype

Figura 3: Seleção da aba Stereotype

4. Modifique o nome de “Stereotype” para “enum”. Com isso você definirá que a classe é na verdade uma enumeration.

Transformando a classe em um “enum”

Figura 4: Transformando a classe em um “enum”

5.Agora você irá inserir os campos “AÇÃO”, “COMÉDIA”, “DRAMA” e “SUSPENSE” em sua enumeration. Isto é feito da mesma forma utilizada para inserir atributos de classe. Ou seja, para adicionar cada campo, basta clicar com o botão direito sobre a classe e escolher a opção “Add Attribute” (ou CTRL + R). Mantenha cada campo com o tipo (Type) “int”.

Adicionando os campos do enum

Figura 5: Adicionando os campos do enum

6. Chegamos ao passo final, que consiste na definição de cada gênero como um campo enum. Inicialmente, clique em cima do nome “AÇÃO” e selecione aba “Stereotype” no canto inferior esquerdo.

Passo Final (1)

Figura 6: Passo Final (1)

7. Clique no botão Add e depois selecione a opção “enum” no combo.

Passo Final (2

Figura 7: Passo Final (2)

Após repetir os passos 6 e 7 para cada campo (AÇÃO, COMÉDIA, DRAMA e SUSPENSE), a definição do enum estará concluída.

Enum criada

Figura 8: Enum criado

3. Comentários finais

Este artigo mostrou uma receita para definir tipos enum na ferramenta Astah*. O processo é um pouco trabalhoso e, talvez por isso, causa dúvidas em muitos usuários da ferramenta.

Os desenvolvedores que não estão acostumados a trabalhar com enumeration em seus sistemas e que desejem saber mais detalhes sobre este recurso e o seu uso na linguagem Java, poderão consultar: http://docs.oracle.com/javase/tutorial/java/javaOO/enum.html.