33
Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e Relatórios

Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Embed Size (px)

Citation preview

Page 1: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Universidade Estadual de CampinasFaculdade de Engenharia MecânicaDepartamento de Projeto Mecânico

Usando o SoDA na geração automática de Documentos e Relatórios

Page 2: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Universidade Estadual de CampinasFaculdade de Engenharia MecânicaDepartamento de Projeto Mecânico

Wallace Gusmão Ferreira, Eng. Mec.

Marco Lúcio Bittencourt, Ph.D.

COMET- Computational Mechanics Tools Group

http:\\www.fem.unicamp.br\~comet

Page 3: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Sumário

Sumário

• Introdução;

• Conceitos básicos;

• Personalizando modelos;

Page 4: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Introdução

Introdução

O SoDA é uma ferramenta CASE (Engenharia de Software Auxiliada por Computador) do Rational Unified Process (RUP) que tem como função básica obter informações de diversas fontes (domínios) e usá-las na geração automática de documentos e relatórios durante um processo de desenvolvimento de software, através de modelos que podem ser personalizados.

Page 5: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Iniciando o SoDA

O SoDA não possui uma interface gráfica própria. As funcionalidades do SoDA podem ser acessadas através do Microsoft Word ou de macros previamente definidas na ferramentas do RUP (Rose, RequisitePro, etc.)

Page 6: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Iniciando o SoDA

O SoDA pode ser iniciado de três maneiras:

• Através de macros em programas do RUP;

• Utilizando o tutorial Getting Started Wizard no menu do SoDA pelo atalho da área de trabalhos;

• Criando um novo documento do Word com o modelo “soda.dot”.

Page 7: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Iniciando o SoDA

Quando um novo documento baseado no “soda.dot” é criado no Word ou um documento pré-exeistente é aberto, um menu “SoDA” é habilitado na barra de ferramentas, permitindo acessar suas funcionalidades.

Page 8: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Obtenção de Informações

A obtenção de informações é baseada em conceitos de Orientação por Objetos. O SoDA define o conceito de Domínio.

Cada domínio representa uma fonte de informações que se deseja documentar, por exemplo um modelo do Rose, um projeto do RequisitePro ou o próprio Sistema de Arquivos do Windows.

Page 9: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Obtenção de Informações

As informações nos domínios são representadas de maneira genérica por classes, atributos e relações.

Exemplos de classes do Sistema de Arquivos do Windows podem ser os diretórios ou os arquivos.

Já no Rose exemplos de classe podem ser os modelos de usecases ou os diagramas de classes.

O SoDA permite a geração de documentos e relatórios utilizando vários domínios simultaneamente.

Page 10: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Geração de Documentos

O SoDA permite que a geração e a manutenção das informações contidas nos documentos seja consistente.

Se as informações forem alteradas ou exculídas nos domínios fontes, os documentos podem ser gerados novamente, sendo automaticamente atualizados.

Outra característica é que informações extras (comentários, formatos, diagramas e figuras) podem ser inseridas nos documentos e o SoDA permite que estes dados também sejam gerenciados.

Page 11: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Documentos e Relatórios

Uma desvantagem desse processo interativo e consistente de obtenção de informações e geração de documentos é o excessivo custo computacional.

Em função disso o SoDA faz uma diferenciação entre Documentos e Relatórios.

Os Documentos contém as informações obtidas nos domínios fonte e as informações extras incluídas pelo usuário.

Já os Relatórios são documentos simplificados contendo apenas as informações dos domínios fonte.

Page 12: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Conceitos Básicos

Documentos e Relatórios

A diferenciação entre documentos e relatórios permite o processo de geração seja menos lento.

Como o SoDA não precisa gerenciar as informações extras nos relatórios, a sua geração é menos lenta.

A recomendação é que os documentos sejam gerados apenas em fases finais do processo e os relatórios sejam gerados em fases intermediárias.

Page 13: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Modelos de Relatórios

O SoDA disponibiliza diversos modelos de relatórios que são sugeridos pelo RUP.

Entretanto esses modelos podem ser amplamente personalizados pelo usuário. Novos modelos também podem ser criados.

Ao contrário dos modelos do Word (*.dot) os modelos do SoDA são documentos (*.doc) contendo macros que permitem a obtenção de informações dos domínios e a geração dos relatórios.

Page 14: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Modelos Padrão

Alguns modelos de relatórios disponibilizados pelo SoDA são:

• ClassesAttrsOps.doc: uma lista de todas as classes em um modelo do Rose contendo atributos e relações;

• LogicalViewFull.doc: uma lista de todos os módulos (packages) em um modelo do Rose, incluindo todas as classes em cada módulo, seus atributos e relações, divididos em públicos, protegidos e privados;

Page 15: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Modelos Padrão

• DocsReqts.doc: uma lista de todos os requerimentos em um projeto do RequisitePro e os atributos dos requerimentos presentes em cada documento;

• ReqtsAttrs.doc: uma lista de todos os requerimentos e seus atributos em um projeto do RequisitePro.

Page 16: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comandos do SoDA

Cada modelo de relatórios do SoDA é formado por um conjunto de comandos “ocultos”. Esses comandos não aparecem na impressão do documento.

O SoDA utiliza 4 comandos básicos:

• OPEN;

• REPEAT;

• DISPLAY e

• LIMIT.

Page 17: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comando OPEN

O comando OPEN é utilizado para identificar um um objeto particular em um domínio fonte. Ou seja, cria um acesso direto a um determinado objeto.

O OPEN pode acessar por exemplo:

• Diretórios ou arquivos do Sistema de Arquivos do Windows;

• Um modelo do Rose;

• Um projeto do RequisitePro.

Page 18: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comando REPEAT

Repete todas as informações pertinentes a uma determinada classe de objetos.

Permite documentar de maneira uniforme um conjunto de objetos similares. Por exemplo, cada classe em em modelo do Rose será documentada da mesma maneira (Atributos, relações, etc.) seguindo uma mesma seqüência.

Page 19: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comando DISPLAY

Insere os atributos do objeto acessado no documento que está sendo gerado (cópia das informações).

O comando DISPLAY permite inserir no documento:

• Textos (descrições, comentários, etc);

• Gráficos (diagramas, figuras, etc).

Page 20: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comando LIMIT

Funciona como um operador condicional. Define critérios para a inclusão de atributos de objetos em um documento. Retorna um valor TRUE ou FALSE, de modo que uma seção no documento pode ser gerada ou não.

Page 21: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Comandos do SoDA

O SoDA utiliza outros comandos complementares como o LINK, que serve para definir uma ligação direta (hiperlink) entre o documento e o domínio fonte e o MASTER, que é um comando interno do SoDA, usado para identificar qual comando LINK está associado com um comando REPEAT particular.

O comando LIMIT pode ser complementado com os comandos OTHERWISE e OMIT em função do resultado condicional retornado em LIMIT.

Page 22: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Fluxo Básico de Geração de Documentos

Quando um documento ou relatório é gerado o SoDA percorre os domínios em busca das informações a serem geradas com base nos comandos inseridos no modelo. Esse processo segue o seguinte fluxo de execução:

• O SoDA utiliza os argumentos do comando OPEN para estabelecer um acesso a determinados objetos do domínio referenciado;

Page 23: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Fluxo Básico de Geração de Documentos

• Para cada objeto retornado pelo comando REPEAT é criada uma seção no documento;

• O comando DYSPLAY faz uma cópia do conteúdo especificado em seus argumentos no documento gerado;

• Com base no comando LIMIT as seções podem ser criadas, excluídas ou substituídas no documento gerado.

Page 24: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelo

Gerenciando Comandos

Os comando no modelo podem ser adicionados, modificados ou excluídos de duas maneiras:

• Diretamente no texto do modelo;

• Interativamente, através de caixas de diálogo disponibilizadas pelo SoDA.

Page 25: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Exemplo de ModeloAo abrir o DocRqts.doc, o seguinte texto é visualizado:

Project: <Project.Name>

Document: <Document.Name>

<Document.Description>

– Requirement: <Requirement.FullTag>

<Requirement.Text>

Page 26: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Gerenciando ComandosAcesso direto aos comandos ocultos através de “duplo clique” do mouse:[OPEN] C: project:ReqPro:CProject:RQSfilename = req.rqs

Project:[DISPLAY] <Project.Name> [ENDDISP]

[RPEAT]Document: [DISPLAY] <Document.Name> [ENDDISP]

[DISPLAY] <Document.Description> [ENDDISP]

[RPEAT]Requirement: [DISPLAY] <Requirement.FullTag> [ENDDISP] [DISPLAY] <Requirement.Text> [ENDDISP]

Page 27: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Gerenciando ComandosAtravés de caixas de diálogo:

Page 28: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Definindo DomíniosO SoDA permite o acesso aos seguintes domínios:

• File System Domain;

• RequisitePro Domain;

• Rose Domain;

• SQA Domain;

• Word Domain.

Page 29: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Definindo DomíniosCada domínio tem suas classes, atributos e relações que podem se acessados através dos comandos do SoDA. No caso do RequisitePro Domain, as seguintes classes são disponíveis:

• ReqPro Project Class;

• ReqPro Document Class;

• ReqPro Requirement Class;

• ReqPro Attribute Class;

• ReqPro DocumenteType Class;

• ReqPro RequierementType Class;

Page 30: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Definindo Domínios• ReqPro User Class;

• ReqPro UserGroup Class;

• ReqPro ProjectRevision Class;

• ReqPro Document Revision Class;

Cada classe por sua vez tem seus atributos e relações particulares que podem ser acessados através dos comandos do

SoDA.

Page 31: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Definindo DomíniosNo caso da ReqPro Project Class os seguintes atributos e relações estão disponívies disponíveis:

Atributos:

• Description (text);

• Name (text).

Relações:

• Author (Class User);

• Documents (Class Document);

• Requirements (Class Requirement).

Page 32: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Tutoriais e Caixas de DiálogoO SoDA disponibiliza também vários tutoriais e caixas de diálogo, para facilitar o processo de criação, personalização e manutenção de modelos, entre eles:

Tutoriais:

• Getting Started Wizard (Tutorial de Inicialização ao SoDA);

• Template Wizard (Criação e modificação de Modelos);

• RequisitePro Wizard (Criação de modelos do RequisitePro );

Page 33: Universidade Estadual de Campinas Faculdade de Engenharia Mecânica Departamento de Projeto Mecânico Usando o SoDA na geração automática de Documentos e

Personalizando Modelos

Tutoriais e Caixas de Diálogo

E as caixas de diálogo:

• Generate Dialog Box (Geração de Relatórios e Documentos)

• “Commands” Dialog Box (Edição de comandos do SoDA);

• Edit Links Dialog Box (Edição de Links entre os modelos );