Os seguintes procedimentos explicam como criar um modelo de UML e transformá-lo no código C++ para um projeto de amostra.
Para criar um modelo de UML:
No Rational Software Architect, alterne para a perspectiva Modelagem.
Clique em Arquivo > Novo > Modelo de UML.
Aceite os valores padrão, clique em Concluir.
Na visualização Explorador de Modelos, clique com o botão direito do mouse no novo modelo de UML (marcado por este ícone: ); em seguida, clique em Incluir
UML > Classe
O modelo que você criou possui uma classe: Class1.
Para transformar o modelo em código C++:
Na visualização Explorador de Modelos, clique com o botão direito do mouse no modelo de UML; em seguida, clique em Transformar > Executar Transformação > UML em C++.
Na caixa de diálogo Executar Transformação, na página de Destino, clique em Novo Projeto para criar um novo projeto C++ de destino.
No assistente do Novo Projeto, no campo Nome do projeto, digite Hello World e clique em Concluir.
Na caixa de diálogo Executar Transformação, clique em Executar.
O projeto Hello World tem dois novos arquivos: Class1.h e Class1.cpp. Esses arquivos têm código C++ de estrutura que pode ser utilizado para iniciar seu projeto C++. Para visualizar esses arquivos no editor, dê um clique duplo na visualização Explorador de Modelos.
A seguinte tabela lista quais elementos de modelo de UML são transformados em quais elementos de código C++. Para obter uma descrição mais detalhada, consulte "Interpretação de objetos de UML."
UML |
C++ |
Pacote |
Pasta |
Classe |
Classe (arquivos .h e .cpp) |
Relação de generalização |
Herança de classe |
Relação de associação |
Atributo de classe |
Propriedade |
Atributo de classe |
Enumeração | Enum (arquivo .h) |
Operação |
Operação |
Parâmetro |
Argumento de operação |
Relação de "uso" |
Inclusão |
Parâmetro de gabarito |
Parâmetro para a classe parametrizada |
Relação de "ligação" |
Classe instanciada (arquivo .h) |
É possível personalizar o código gerado, aplicando o formulário de estereótipos ao perfil de Transformação C++. Por exemplo, para especificar a operação UML como operação seqüencial:
Aplique o perfil de Transformação C++ ao modelo.
Aplique o estereótipo cpp_operation à operação.
Na visualização Propriedades, na página Avançado, configure isInline como True.
Execute a transformação UML para C++.
Além dos estereótipos, é possível personalizar o código gerado por meio das propriedades de transformação e os gabaritos de código.
Para especificar as propriedades de transformação:
Clique em Janela > Preferências.
Expanda Modelagem, expanda Transformações e clique em Transformação UML para C++.
É possível utilizar essas preferências para alterar a aparência do código gerado e especificar as operações C++ padrão.