1. StarUML - UML/MDA Plataform



Documentos relacionados
1. Visual Paradigm for UML

1. IBM Rational Software Modeler

1. Papyrus UML2 Modeler

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

Tutorial para atividades do Trabalho Prático da disciplina DCC 603 Engenharia de Software

Configurações de Templates no SolidWorks 2011

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Veja abaixo um exemplo de como os dados são mostrados quando usamos o

GUIA INTEGRA SERVICES E STATUS MONITOR

Como Gerar documento em PDF com várias Imagens

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

CURSO DE INFORMÁTICA BÁSICA AULA 2 O AMBIENTE WINDOWS

Procedimentos para Reinstalação do Sisloc

O Primeiro Programa em Visual Studio.net

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

4 - Layout de Mapas no QGIS 2.0

Lição 1 - Criação de campos calculados em consultas

Utilização do Webmail da UFS

Manual Administrador - Mídia System

Programa EndNote. Download para teste no site: (Atualmente o EndNote está na versão 5x)

Sumário. 1 Tutorial: Blogs no Clickideia

Dicas para usar melhor o Word 2007

Núcleo de Tecnologias Interativas de Aprendizagem.

AULA 1 Iniciando o uso do TerraView

Aula 03 PowerPoint 2007

IMPORTANDO ARQUIVOS SHAPEFILE PARA O POSTGIS VIA PROMPT DO DOS

Como gerar arquivos.plt

CONFIGURAÇÃO MINIMA EXIGIDA:

Como incluir artigos:

PMAT. Sistema de Análise e Acompanhamento de Operações. Manual. Desenvolvido pelo BNDES AS/DEGEP

CRIANDO TEMPLATES E LEGENDAS

Instalação e Configuração RPM Remote Print Manager para Windows 2000

MANUAL DO ANIMAIL Terti Software

TUTORIAL WEEBLY. 2-Crie um cadastro (lembrando que palavra passe é a senha). Após preencher o formulário, clique em Sign Up. It s Free!

Nova versão: Para School Control e acima, combinado com uso do Windows 7.

Fluxo de trabalho do Capture Pro Software: Indexação de código de barras e separação de documentos

Manual Instalação Pedido Eletrônico

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

Usar Atalhos para a Rede. Logar na Rede

Tutorial Vindula Gestão de layout Vindula

MANUAL DE UTILIZAÇÃO

Curso Básico de Visual FoxPro 8.0

Vamos criar uma nova Página chamada Serviços. Clique em Adicionar Nova.

Inserindo Dados no Banco de Dados Paradox.

Manual do Usuário. Minha Biblioteca

Funções básicas Cronograma Cronograma Funções Básicas

Tutorial. Edição de dbf usando Excel e Acess. versão /02/2012. Autores: Mauricio Schiavolin Silva, Vitor Pires Vencovsky

ArcSoft MediaConverter

Trecho retirando do Manual do esocial Versão 1.1

LIBERAÇÃO DA PASTA ARQUIVOS DE PROGRAMA

Criação de Formatos para detalhamento. Ambiente de trabalho no SOLIDWORKS

ROTEIRO DE INSTALAÇÃO

Introdução. Servidor de Tempo (SNTP) com opção de horário de verão automático; 1 Cadastro do novo modelo de equipamento Urano Topmax SS

Manual de criação de envios no BTG360

Display de Cristal Líquido

Exercícios Práticos Assunto: Criação de slots e instâncias da ontologia com o Protegé.

Serviço Seguro de Mensagens Instantâneas

1 UNIT Universidade do Trabalhador Dr. Abel dos Santos Nunes

Para participar de um mapa colaborativo usando o Cmap Tools

Manual do Visualizador NF e KEY BEST

Manual Captura S_Line

INSTALAÇÃO DO SISTEMA CONTROLGÁS

Procedimentos para Instalação do Sisloc

CAPÍTULO 35 Como utilizar os componentes ColdFusion

Moodle - CEAD Manual do Estudante

Manual de Configuração de Exportação/Importação de arquivos (MultiSET/SISCEL)

PROMOB ARCH PRIMEIROS PASSOS

Manual de Atualização MATERIAL DE APOIO - KB IMÓVEIS

TCI 7200-U USB-PPI Cable

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

Usando o simulador MIPS

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

Resolvendo problemas de conexão de rede wireless no pregão 83/2008

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

INTRODUÇÃO 12. DOCUMENTAÇÃO INTRODUÇÃO INTRODUÇÃO

SISTEMA INTEGRADO DE GESTÃO ÊXITO GESTÃO DE PROCESSOS. Dividir Arquivo com Winrar

PLATAFORMA DE DESENVOLVIMENTO PINHÃO PARANÁ MANUAL DE UTILIZAÇÃO DO CVS NO ECLIPSE

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Backup dos Trabalhos e Configurações

Manual de Utilização COPAMAIL. Zimbra Versão 8.0.2

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

ANDROID APPLICATION PROJECT

O Servidor de impressão DP-300U atende a seguinte topologia: Podem ser conectadas 2 impressoras Paralelas e 1 USB.

Manual de Instalação. SafeSign Standard (Para MAC OS 10.7)

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

TCI S5-USB. Cabo de Programação STEP5 - USB. Manual de Instalação

Slice Tool - Ferramenta Fatia

Índice: CMS 3 O que é Content Management System? Clientes 4 O que é o Cliente? 4 Configurando o i-menu/i-view para trabalhar. com o CMS.

O Oficina Integrada é um sistema completo para o controle e gerenciamento de oficinas mecânicas. É o primeiro e único software que controla o fluxo

MANUAL DO GERENCIADOR ESCOLAR WEB

SAJPG5. Primeiro Grau. Novidades das Versões a

Guia do Usuário. Versão Desenvolvido por ofcdesk, llc. Todos os direitos reservados.

Sistema Click Principais Comandos

Transcrição:

Sumário 1. StarUML - UML/MDA Plataform... 1 2. Criando Perfis no StarUML... 2 3. Criando o perfil GeoProfile... 5 4. Aplicando o Perfil GeoProfile... 12 1. StarUML - UML/MDA Plataform Star UML (STAR UML, 2010) é uma ferramenta CASE de código aberto (opensource) e está sob a licença GPL (General Public License). Ela dá suporte à modelagem de sistemas utilizando os diagramas da UML2 e também à MDA, com definições de transformações para algumas plataformas específicas. É permitida também a importação/exportação de modelos utilizando o formato XMI. Área de trabalho do StarUML A especificação de perfis UML na ferramenta é feita de forma diferente das outras ferramentas analisadas. Não há uma forma visual de se implementar perfis. É 1

necessário escrever o código do perfil em um documento XML, salvar o arquivo com a extensão.prf e colocá-lo em um dos diretórios de instalação da ferramenta. A seguir será mostrado passo a passo o processo de criação e um exemplo de utilização do perfil GeoProfile para modelagem de banco de dados geográficos. Lembrando que este tutorial foi feito utilizando a versão 5.0 da ferramenta. 2. Criando Perfis no StarUML Neste tutorial vamos focar apenas nos elementos XML que serão úteis na criação do perfil Geoprofile. A estrutura básica de um documento XML para se criar um perfil para o StarUML é mostrado a seguir: <?xml version= 1.0 encoding=...?> <PROFILE version="..."> <HEADER>... </HEADER> <BODY>... </BODY> </PROFILE> Onde a seção <HEADER> define a descrição do perfil e <BODY> é o corpo do perfil em si, onde serão definidos os estereótipos, classes, atributos e tipos de dados do perfil. A seção <HEADER> pode conter os seguintes elementos: <HEADER> <NAME>...</NAME> <DISPLAYNAME>...</DISPLAYNAME> <DESCRIPTION>... <AUTOINCLUDE>...</AUTOINCLUDE> </HEADER> NAME: Contêm o nome do perfil. DISPLAYNAME: Esta é a legenda usada no diálogo do perfil e outras interfaces com o usuário. DESCRIPTION: Contém a descrição do perfil. AUTOINCLUDE: Especifica se inclui o perfil automaticamente quando cria novo projeto. A seção <BODY> pode conter os seguintes elementos: <BODY> <STEREOTYPELIST>... </STEREOTYPELIST> <TAGDEFINITIONSETLIST> 2

... </TAGDEFINITIONSETLIST> </BODY> STEREOTYPELIST: Lista dos estereótipos do perfil. Para definição de estereótipos veja a seção de TAGDEFINITIONSETLIST: Define múltiplas definições de tag. Para definição de tag veja a seção <TAGDEFINITIONSET>. DATATYPELIST: Define múltiplos tipos de dados. Para definição de tipos de dados veja a seção <DATATYPE> A seção define as informações do estereótipo e a estrutura de herança, pode conter os seguintes elementos: <NAME>...</NAME> <DESCRIPTION>... <BASECLASS>...</BASECLASS>... <PARENT>...</PARENT> <RELATEDTAGDEFINITIONSET>...</RELATEDTAGDEFINITIONSET> <ICON>...</ICON> NAME: Nome do estereótipo. DESCRIPTION: Descrição do estereótipo. BASECLASSES: Pode conter nomes de múltiplos elementos UML que podem ser aplicados ao estereótipo. O nome dos elementos usados aqui <BASECLASS> são os nomes dos elementos UML (UMLClass, UMLAssociation, UMLClassifier, UMLAttribute, UMLPackage, UMLAbstractClass... ). Nota: Se o nome de uma classe abstrata como UMLClassifier é usado, todos os elementos herdados desta serão aplicados. Se o estereótipo de nível superior (elemento pai) é definido, esta seção não será definida; qualquer definição desta seção é ignorada e o valor BASECLASSES do estereótipo de nível superior é aplicado. PARENT: O estereótipo pode ter relacionamento do tipo herança. O elemento PARENT contêm o nome do elemento pai do estereótipo. RELATEDTAGDEFINITIONSET: Contém o nome do TagDefinitionSet relacionado com o estereótipo (nome do conjunto de atributos do estereótipo). 3

ICON: Um estereótipo pode também ser indicado por um ícone. Este elemento contêm o nome do arquivo do ícone para o estereótipo. O arquivo do ícone deve estar localizado no mesmo diretório que o documento do perfil. A seção <TAGDEFINITIONSET> define um conjunto de TaggedValues que poderão ser relacionados a um estereótipo, este possui a seguinte estrutura: <TAGDEFINITIONSET> <NAME>...</NAME> <BASECLASS>...</BASECLASS>... <TAGDEFINITIONLIST>... </TAGDEFINITIONLIST> </TAGDEFINITIONSET> NAME: Nome do conjunto de TagDefinition. Se a TagDefinition é interessada a um estereótipo específico, é aconselhado usar o nome do estereótipo. BASECLASSES: Contém os nomes dos elementos UML a serem aplicados no TagDefinitionSet. TAGDEFINITIONLIST: Contém múltiplas definições de tags incluídas no conjunto. Veja a seção <TAGDEFINITION>. A seção <TAGDEFINITION> define um TaggedValue de um conjunto de listas de tags. Possui a seguinte estrutura: <TAGDEFINITION lock=... > <NAME>...</NAME> <TAGTYPE>...</TAGTYPE> <DEFAULTDATAVALUE>...</DEFAULTDATAVALUE> <LITERALS> <LITERAL>...</LITERAL>... </LITERALS> </TAGDEFINITION> lock (Elemento de TAGDEFINITION): Define se o valor da tag pode ou não ser alterado pelo usuário. Pode ser True no caso de não poder sofrer alteração, ou False caso contrário. NAME: Nome da tag. Este tem que ser único dentro do conjunto de tags ao qual essa tag pertence (TagDefinitionSet). TAGTYPE: Define o tipo da tag. Este pode ser definido como sendo dos tipos: Integer, Boolean, Real, String, Enumeration, Reference ou Collection. DEFAULTDATAVALUE: Valor default da tag. 4

LITERALS: Define os literais <LITERAL> se o tipo da tag for Enumeration. Infelizmente, esta ferramenta não dá suporte à definição de constraints na linguagem OCL para os perfis. 3. Criando o perfil GeoProfile O perfil GeoProfile é mostrado na figura abaixo. Estereótipos do GeoProfile Com esta definição e os elementos XML definidos acima, podemos agora criar o perfil GeoProfile para ser utilizado na ferramenta StarUML. Lembrando que o arquivo com o código XML deve ser salvo com a extensão.prf O código XML do GeoProfile é mostrado abaixo. <?xml version="1.0" encoding="utf-8"?> <PROFILE version="1.0"> <HEADER> <NAME>GeoProfile</NAME> <DISPLAYNAME>GeoProfile</DISPLAYNAME> <DESCRIPTION>GeoDB conceptual modeling </HEADER> <BODY> <STEREOTYPELIST> <NAME>GeoObject</NAME> <DESCRIPTION>Object view. <BASECLASS>UMLAbstractClass</BASECLASS> 5

<NAME>Point</NAME> <DESCRIPTION>Indicate a Point. <PARENT>GeoObject</PARENT> <ICON>Point.bmp</ICON> <NAME>Line</NAME> <DESCRIPTION>Indicate a Line. <PARENT>GeoObject</PARENT> <ICON>Line.bmp</ICON> <NAME>Polygon</NAME> <DESCRIPTION>Indicate a Polygon. <PARENT>GeoObject</PARENT> <ICON>Polygon.bmp</ICON> <NAME>ComplexSpatialObj</NAME> <DESCRIPTION>Indicate a Complex Object. <PARENT>GeoObject</PARENT> <ICON>ComplexSpatialObj.bmp</ICON> <NAME>GeoField</NAME> <DESCRIPTION>Object view. <BASECLASS>UMLAbstractClass</BASECLASS> <NAME>TIN</NAME> <DESCRIPTION>Indicate a Triangular Irregular Network. <PARENT>GeoField</PARENT> <ICON>TIN.bmp</ICON> <NAME>Isolines</NAME> <DESCRIPTION>Indicate Isolines. 6

<PARENT>GeoField</PARENT> <ICON>Isolines.bmp</ICON> <NAME>GridOfCells</NAME> <DESCRIPTION>Indicate a Grid Of Cells. <PARENT>GeoField</PARENT> <ICON>GridOfCells.bmp</ICON> <NAME>GridOfPoints</NAME> <DESCRIPTION>Indicate a Grid Of Points. <PARENT>GeoField</PARENT> <ICON>GridOfPoints.bmp</ICON> <NAME>IrregularPoints</NAME> <DESCRIPTION>Indicate Irregular Points. <PARENT>GeoField</PARENT> <ICON>IrregularPoints.bmp</ICON> <NAME>AdjPolygons</NAME> <DESCRIPTION>Indicate Adjacent Polygons. <PARENT>GeoField</PARENT> <ICON>AdjPolygons.bmp</ICON> <NAME>NetworkObj</NAME> <DESCRIPTION>Object view. <BASECLASS>UMLAbstractClass</BASECLASS> <NAME>Node</NAME> <DESCRIPTION>Indicate a Node. <PARENT>NetworkObj</PARENT> <ICON>Node.bmp</ICON> 7

<NAME>Arc</NAME> <DESCRIPTION>Object view. <BASECLASS>UMLAbstractClass</BASECLASS> <PARENT>NetworkObj</PARENT> <NAME>UnidirectionalArc</NAME> <DESCRIPTION>Indicate an Unidirectional Arc. <PARENT>Arc</PARENT> <ICON>UnidirectionalArc.bmp</ICON> <NAME>BidirectionalArc</NAME> <DESCRIPTION>Indicate a Bidirectional Arc. <PARENT>Arc</PARENT> <ICON>BidirectionalArc.bmp</ICON> <NAME>Network</NAME> <DESCRIPTION>Indicate a network. <ICON>Network.bmp</ICON> <NAME>TemporalObj</NAME> <DESCRIPTION>Indicate a Temporal object. <RELATEDTAGDEFINITIONSET>TemporalObj </RELATEDTAGDEFINITIONSET> <ICON>Temporal.bmp</ICON> <NAME>Touch</NAME> <DESCRIPTION>Indicate a Touch relationship. <BASECLASS>UMLAssociation</BASECLASS> <ICON>Touch.bmp</ICON> <NAME>In</NAME> <DESCRIPTION>Indicate an In relationship. 8

<BASECLASS>UMLAssociation</BASECLASS> <ICON>In.bmp</ICON> <NAME>Cross</NAME> <DESCRIPTION>Indicate a Cross relationship. <BASECLASS>UMLAssociation</BASECLASS> <ICON>Cross.bmp</ICON> <NAME>Overlap</NAME> <DESCRIPTION>Indicate a Overlap relationship. <BASECLASS>UMLAssociation</BASECLASS> <ICON>Overlap.bmp</ICON> <NAME>Disjoint</NAME> <DESCRIPTION>Indicate a Disjoint relationship. <BASECLASS>UMLAssociation</BASECLASS> <ICON>Disjoint.bmp</ICON> <NAME>Temporal</NAME> <DESCRIPTION>Indicate a Temporal relationship. <BASECLASS>UMLAssociation</BASECLASS> <ICON>Temporal.bmp</ICON> </STEREOTYPELIST> <TAGDEFINITIONSETLIST> <TAGDEFINITIONSET> <NAME>TemporalObj</NAME> <BASECLASS>UMLAttribute</BASECLASS> <TAGDEFINITIONLIST> <TAGDEFINITION lock="false"> <NAME>temporalPrimitive</NAME> <TAGTYPE>Enumeration</TAGTYPE> <DEFAULTDATAVALUE>instant </DEFAULTDATAVALUE> <LITERALS> <LITERAL>instant</LITERAL> <LITERAL>interval</LITERAL> </LITERALS> </TAGDEFINITION> <TAGDEFINITION lock="false"> 9

<NAME>temporalType</NAME> <TAGTYPE>Enumeration</TAGTYPE> <DEFAULTDATAVALUE>valid_time </DEFAULTDATAVALUE> <LITERALS> <LITERAL>valid_time</LITERAL> <LITERAL>transaction_time </LITERAL> <LITERAL>bitemporal</LITERAL> </LITERALS> </TAGDEFINITION> </TAGDEFINITIONLIST> </TAGDEFINITIONSET> </TAGDEFINITIONSETLIST> </BODY> </PROFILE> Agora basta copiar o código XML acima para um editor de texto de sua preferência e salvá-lo com a extensão.prf para que este possa ser reconhecido pelo StarUML. Para o perfil ser reconhecido automaticamente, devemos colocá-lo em um subdiretório da ferramenta: <diretório de instalação>\modules. O StarUML procura e lê os perfis que estão na pasta modules no seu diretório de instalação e os registra automaticamente quando o programa é iniciado. Caso o arquivo do perfil seja inválido ou sua extensão não seja.prf, o programa irá ignorar o arquivo. É aconselhável criar-se uma nova pasta dentro do subdiretório modules contendo os arquivos do perfil, arquivo.prf e ícones. Note que na figura acima o caminho até o diretório desejado é: C:\Arquivos de Programas\StarUML\modules Que é o diretório padrão de instalação do sistema operacional utilizado. 10

Logo, para nosso perfil GeoProfile ser reconhecido pela ferramenta, basta criarmos uma nova pasta neste subdiretório, vamos chamá-la staruml-geoprofile. Agora, basta copiarmos os arquivos do perfil (.prf e ícones) para esta pasta do perfil. Agora basta iniciarmos o StarUML para que o perfil seja reconhecido automaticamente pela ferramenta. Note que, após iniciarmos o programa, na aba inferior Output, aparecerá a mensagem The Profile GeoProfile is loaded successfully informando que o perfil foi carregado corretamente. Se esta mensagem não aparecer é porque houve algum erro ao criar o perfil. 11

Perceba também que agora na opção de adição de perfis Model -> Profile -> Profile Manager, o GeoProfile estará disponível para ser adicionado à sua aplicação. 4. Aplicando o Perfil GeoProfile Com o perfil criado e disponível para uso na ferramenta, podemos utilizá-lo em nossa modelagem de classes geográficas. Para utilizar o perfil comece criando um novo modelo. Ao iniciar a ferramenta escolha a opção Empty Project. Caso a janela abaixo não apareça no inicio da aplicação você pode ir em: File -> New Project. 12

Para criarmos uma aplicação utilizando o GeoProfile precisamos primeiro adicioná-lo ao modelo, para isto, vá em Model -> Profiles e na janela que se segue adicione o perfil GeoProfile. Certifique-se também de que o perfil UML Standard Profile também esteja adicionado. Agora, na aba Model Explorer do lado superior direito selecione o objeto Untitled com um clique do botão direito do mouse e escolha a opção Add -> Design Model para criar um novo modelo de desenho em branco. 13

Para mudar o nome do modelo, selecione-o e utilize o campo Name da aba Properties. Agora vamos criar um novo diagrama de classes dentro deste modelo, para isto selecione o modelo criado anteriormente com o botão direito do mouse e escolha a opção Add Diagram -> Class Diagram. Dê um nome qualquer ao novo diagrama. 14

Agora é possível aplicarmos os estereótipos do GeoProfile nos elementos UML do diagrama criado anteriormente. Para testar o GeoProfile adicione um elemento Class, contido na aba Class do lado esquerdo, no diagrama. Tenha a classe selecionada, e na aba Properties vá em Stereotype. Uma janela com os estereótipos disponíveis para um elemento do tipo Class irá aparecer. Para esta aplicação apenas nos interessa os estereótipo do GeoProfile. 15

Note que, ao selecionarmos um estereótipo do GeoProfile, seu ícone será mostrado no campo Icon preview. Selecione um estereótipo qualquer e clique em OK para aplicá-lo a classe. Perceba que o nome do estereótipo será visualizado entre <<>> na parte superior da classe. 16

O StarUML só nos permite adicionar um estereótipo por elemento e nos permite visualizar os estereótipos na forma textual Textual, na forma de ícone Iconic ou ambos Decoration. Para alterar o tipo de visualização, selecione o objeto e na aba superior de opções selecione o tipo de visualização desejado na opção Stereotype Display. A visualização do estereótipo também pode ser alterada clicando com o botão direito do mouse sobre o objeto, na opção Format -> Stereotype Display. Como definido no perfil GeoProfile, estereótipos também podem ser aplicados a relacionamentos. Adicione mais uma classe ao modelo e um elemento Association entre elas. 17

Para aplicarmos um estereótipo a um elemento Association devemos proceder da mesma maneira descrita anteriormente para elementos do tipo Class. Perceba que agora os únicos estereótipos disponíveis são aqueles previamente definidos como sendo do tipo UMLAssociation no perfil. O StarUML só permite a visualização de estereótipos do tipo Association na forma textual, mesmo que tenham sido definidos ícones aos estereótipos. 18

Lembrando que o StarUML só permite a adição, e portanto visualização, de apenas um estereótipo por elemento, e também que esta ferramenta não dá suporte à definição de constraints na linguagem OCL para os perfis. Portanto, verificar a validade e consistência do modelo é de responsabilidade do projetista. Outro tipo de objeto geográfico que pode ser encontrado em nossas aplicações são os objetos temporais, definidos no GeoProfile como TemporalObj. Para este tipo de objeto foram definidos dois tagged values, temporaltype e temporalprimitive. Para definirmos seus valores, primeiro devemos adicionar uma classe no modelo com o estereótipo TemporalObj. O valor de cada tagged value para este tipo de objeto pode ser definido no campo Tagged Values com um clique do botão direito sobre a classe. 19

O valor de cada tagged value da classe poderá ser editado na janela Tagged Value Editor que aparece. Na definição do perfil mostrada anteriormente, foram escolhidos os valores instant como valor default para o campo temporalprimitive, e valid_time como valor default para o campo temporaltype. Por se tratar de uma ferramenta voltada para a criação de modelos utilizando a UML, outros elementos UML também podem ser adicionados ao modelo como pacotes, atributos, operações, tipos de dados, etc. As propriedades dos elementos adicionados no modelo podem ser alteradas na aba Properties, que contém todos os atributos do elemento selecionado na aba Model Explorer ou no próprio diagrama de desenho. 20

Com isto, já é possível criarmos um modelo UML para modelagem de banco de dados geográficos na ferramenta StarUML utilizando o GeoProfile. Um exemplo Escola utilizando este perfil é mostrado abaixo. Perceba que a as classes Cidade, Bairro e Escola possuem estereótipos do tipo <<point>> e <<polygon>>, isso mostra como a classe poderá ser representada em uma 21

aplicação geográfica. A classe Aluno, por sua vez, não possui estereótipo, por se tratar de uma classe sem representação geográfica, logo, será criada como um objeto Class comum sem aplicar nenhum estereótipo. Note que também foram aplicados estereótipos aos relacionamentos. O estereótipo <<in>> entre Bairro e Cidade mostra que topologicamente todo elemento Bairro está dentro de um elemento Cidade, o mesmo vale para o relacionamento entre Escola e Bairro. Não existe relacionamento topológico entre Aluno e Escola, logo, utilizamos apenas um relacionamento do tipo Association comum, sem aplicar nenhum estereótipo. O StarUML também permite a importação e exportação de modelos no formato XMI (XML Metadata Interchange). Na opção File -> Import/Export -> XMI o projetista pode exportar o modelo atual para o formato XMI ou importar um modelo já criado anteriormente. Mais informações sobre esta ferramenta podem ser encontradas no sítio: http://staruml.sourceforge.net 22