PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+

Tamanho: px
Começar a partir da página:

Download "PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+"

Transcrição

1 TURNO: MATUTINO VERSÃO: 1 ANO / SEMESTRE: N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO DE CONCLUSÃO DE CURSO PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO TÍTULO: FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+ ÁREA: Linguagens de Programação Palavras-chave: Delphi. GTK+. GUI. Glade. 1 IDENTIFICAÇÃO 1.1 ALUNO Nome: Josimar Zimermann Código/matrícula: Endereço residencial: Rua: Centenário n : 400 Complemento: Bairro: Valparaíso CEP: Cidade: Blumenau UF: SC Telefone fixo: Celular: Endereço comercial: Empresa: Uninformare Informática Ltda. Rua: Ângelo Dias n : 207 Bairro: Centro CEP: Cidade: Blumenau UF: SC Telefone: FURB: josimar@inf.furb.br alternativo: josimar@unimestre.com 1.2 ORIENTADOR Nome: Joyce Martins FURB: joyce@furb.br alternativo:

2 2 DECLARAÇÕES 2.1 DECLARAÇÃO DO ALUNO Declaro que estou ciente do Regulamento do Trabalho de Conclusão de Curso de Ciência da Computação e que a proposta em anexo, a qual concordo, foi por mim rubricada em todas as páginas. Ainda me comprometo pela obtenção de quaisquer recursos necessários para o desenvolvimento do trabalho, caso esses recursos não sejam disponibilizados pela Universidade Regional de Blumenau (FURB). Assinatura: Local/data: 2.2 DECLARAÇÃO DO ORIENTADOR Declaro que estou ciente do Regulamento do Trabalho de Conclusão do Curso de Ciência da Computação e que a proposta em anexo, a qual concordo, foi por mim rubricada em todas as páginas. Ainda me comprometo a orientar o aluno da melhor forma possível de acordo com o plano de trabalho explícito nessa proposta. Assinatura: Local/data:

3 3 AVALIAÇÃO DA PROPOSTA 3.1 AVALIAÇÃO DO(A) ORIENTADOR(A) Acadêmico(a): Orientador(a): Josimar Zimermann Joyce Martins ASPECTOS TÉCNICOS ASPECTOS METODOLÓGICOS ASPECTOS AVALIADOS 1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado? 1.2. O problema está claramente formulado? 2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado? 2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco. 3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o desenvolvimento do TCC? 4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC? 4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta? 4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível? 5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC? 5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos? 6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram claramente descritos? 7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica com a realização do TCC? 8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT? 8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)? 9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT? 9.2. As informações retiradas de outros autores estão devidamente citadas? 10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) O texto obedece ao formato estabelecido? A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)? atende atende parcialmente A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: qualquer um dos itens tiver resposta NÃO ATENDE; pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE. PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO não atende Assinatura do(a) avaliador(a): Local/data:

4 CONSIDERAÇÕES DO(A) ORIENTADOR(A): Caso o(a) orientador(a) tenha assinalado em sua avaliação algum item como atende parcialmente, devem ser relatos os problemas/melhorias a serem efetuadas. Na segunda versão, caso as alterações sugeridas pelos avaliadores não sejam efetuadas, deve-se incluir uma justificativa. Assinatura do(a) avaliador(a): Local/data:

5 3.2 AVALIAÇÃO DO(A) COORDENADOR DE TCC Acadêmico(a): Avaliador(a): Josimar Zimermann José Roque Voltolini da Silva ASPECTOS TÉCNICOS ASPECTOS METODOLÓGICOS ASPECTOS AVALIADOS 1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado? 1.2. O problema está claramente formulado? 2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado? 2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco. 3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o desenvolvimento do TCC? 4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC? 4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta? 4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível? 5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC? 5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos? 6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram claramente descritos? 7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica com a realização do TCC? 8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT? 8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)? 9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT? 9.2. As informações retiradas de outros autores estão devidamente citadas? 10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) O texto obedece ao formato estabelecido? A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)? atende atende parcialmente A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: qualquer um dos itens tiver resposta NÃO ATENDE; pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE. PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO OBSERVAÇÕES: não atende Assinatura do(a) avaliador(a): Local/data:

6 3.3 AVALIAÇÃO DO(A) PROFESSOR(A) DA DISCIPLINA DE TCCI Acadêmico(a): Avaliador(a): Josimar Zimermann Sérgio Stringari ASPECTOS TÉCNICOS ASPECTOS METODOLÓGICOS ASPECTOS AVALIADOS 1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado? 1.2. O problema está claramente formulado? 2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado? 2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco. 3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o desenvolvimento do TCC? 4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC? 4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta? 4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível? 5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC? 5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos? 6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram claramente descritos? 7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica com a realização do TCC? 8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT? 8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)? 9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT? 9.2. As informações retiradas de outros autores estão devidamente citadas? 10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) O texto obedece ao formato estabelecido? A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)? PONTUALIDADE NA ENTREGA atende atende parcialmente não atende atraso de dias A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: qualquer um dos itens tiver resposta NÃO ATENDE; pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE. PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO OBSERVAÇÕES: Assinatura do(a) avaliador(a): Local/data:

7 3.4 AVALIAÇÃO DO(A) PROFESSOR(A) ESPECIALISTA NA ÁREA Acadêmico(a): Avaliador(a): Josimar Zimermann ASPECTOS TÉCNICOS ASPECTOS METODOLÓGICOS ASPECTOS AVALIADOS 1. INTRODUÇÃO 1.1. O tema de pesquisa está devidamente contextualizado/delimitado? 1.2. O problema está claramente formulado? 2. OBJETIVOS 2.1. O objetivo geral está claramente definido e é passível de ser alcançado? 2.2. São apresentados objetivos específicos (opcionais) coerentes com o objetivo geral? Caso não sejam apresentados objetivos específicos, deixe esse item em branco. 3. RELEVÂNCIA 3.1. A proposta apresenta um grau de relevância em computação que justifique o desenvolvimento do TCC? 4. METODOLOGIA 4.1. Foram relacionadas todas as etapas necessárias para o desenvolvimento do TCC? 4.2. Os métodos e recursos estão devidamente descritos e são compatíveis com a metodologia proposta? 4.3. A proposta apresenta um cronograma físico (período de realização das etapas) de maneira a permitir a execução do TCC no prazo disponível? 5. REVISÃO BIBLIOGRÁFICA 5.1. As informações apresentadas são suficientes e têm relação com o tema do TCC? 5.2. São apresentados trabalhos correlatos, bem como comentadas as principais características dos mesmos? 6. REQUISITOS DO SISTEMA A SER DESENVOLVIDO 6.1. Os requisitos funcionais e não funcionais do sistema a ser desenvolvido foram claramente descritos? 7. CONSIDERAÇÕES FINAIS 7.1. As considerações finais relacionam os assuntos apresentados na revisão bibliográfica com a realização do TCC? 8. REFERÊNCIAS BIBLIOGRÁFICAS 8.1. As referências bibliográficas obedecem às normas da ABNT? 8.2. As referências bibliográficas contemplam adequadamente os assuntos abordados na proposta (são usadas obras atualizadas e/ou as mais importantes da área)? 9. CITAÇÕES 9.1. As citações obedecem às normas da ABNT? 9.2. As informações retiradas de outros autores estão devidamente citadas? 10. AVALIAÇÃO GERAL (organização e apresentação gráfica, linguagem usada) O texto obedece ao formato estabelecido? A exposição do assunto é ordenada (as idéias estão bem encadeadas e a linguagem utilizada é clara)? atende atende parcialmente A proposta de TCC deverá ser revisada, isto é, necessita de complementação, se: qualquer um dos itens tiver resposta NÃO ATENDE; pelo menos 4 (quatro) itens dos ASPECTOS TÉCNICOS tiverem resposta ATENDE PARCIALMENTE; ou pelo menos 4 (quatro) itens dos ASPECTOS METODOLÓGICOS tiverem resposta ATENDE PARCIALMENTE. PARECER: ( ) APROVADA ( ) NECESSITA DE COMPLEMENTAÇÃO OBSERVAÇÕES: não atende Assinatura do(a) avaliador(a): Local/data:

8 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+ JOSIMAR ZIMERMANN BLUMENAU 2011

9 JOSIMAR ZIMERMANN FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+ Proposta de Trabalho de Conclusão de Curso submetida à Universidade Regional de Blumenau para a obtenção dos créditos na disciplina Trabalho de Conclusão de Curso I do curso de Ciência da Computação Bacharelado. Profa. Joyce Martins - Orientadora BLUMENAU 2011

10 2 1 INTRODUÇÃO Em face do crescimento no uso do Linux, os desenvolvedores de software notaram a necessidade de adequar seu produto com o objetivo de atender os usuários de diferentes sistemas operacionais. Esta adequação pode ser realizada através do uso de linguagens de programação e bibliotecas portáveis. Contudo, ainda existe uma grande quantidade de software desenvolvido em ambientes de programação que geram código executável específico para um sistema operacional. Em especial, o ambiente de desenvolvimento integrado Delphi é amplamente utilizado na construção e manutenção de software (ANTUNES, 2008). Esta ferramenta é conhecida por oferecer ao construtor do software um ambiente para fácil e rápida criação de interfaces gráficas com o usuário. Porém, as interfaces gráficas desenhadas com o auxílio do Delphi são interpretadas apenas pelo sistema operacional Microsoft Windows. Por isso, muitas vezes opta-se pela migração de aplicativos escritos em Delphi para uma linguagem de programação portável como o Java. A etapa de migração inclui redesenhar as interfaces gráficas confeccionadas com o auxílio do Delphi, para uma equivalente na linguagem de programação para a qual se está migrando. Trata-se de um processo que exige um grande esforço e demanda tempo considerável no processo da migração. Ainda assim, o que se obtém é um software migrado para uma nova linguagem de programação e a interface gráfica do aplicativo continuará inerente à linguagem adotada. Tendo em vista os fatores supracitados, pretende-se através deste trabalho desenvolver uma ferramenta para auxílio na tradução de interfaces gráficas criadas no Delphi para o formato GladeXML (THE GLADE PROJECT, 2009), legível à biblioteca gráfica GTK+ 1 (GALE et al., 2010). Além da portabilidade oferecida pela GTK+, a interface gráfica especificada no formato GladeXML poderá ser utilizada por qualquer linguagem de programação que implementa a mesma. 1 GIMP Toolkit (GTK+).

11 3 1.1 OBJETIVOS DO TRABALHO O objetivo deste trabalho é desenvolver uma ferramenta para auxiliar na conversão de interfaces gráficas desenvolvidas no ambiente de desenvolvimento integrado Delphi, para um formato legível à biblioteca gráfica GTK+. Os objetivos específicos do trabalho são: a) identificar os componentes visuais mais comumente utilizados na construção de interfaces gráficas em Delphi e verificar os componentes similares oferecidos pela biblioteca GTK+; b) extrair informações dos componentes visuais que compõem uma interface gráfica desenvolvida em Delphi, através do uso de técnicas de análise léxica e sintática; c) gerar um arquivo GladeXML para criar a definição de uma interface gráfica para a GTK+ semelhante à desenvolvida no Delphi; d) traduzir a assinatura dos eventos dos componentes gráficos do Delphi para os componentes gráficos da biblioteca GTK+; e) exibir a interface gráfica convertida para a biblioteca GTK RELEVÂNCIA DO TRABALHO Um dos objetos de estudo, a biblioteca gráfica GTK+, apresenta conceitos novos na criação de interfaces gráficas com o usuário, como por exemplo, a possibilidade de reutilização de uma mesma Graphical User Interface (GUI) em diferentes linguagens de programação ou sua alteração sem a necessidade de recompilar e redistribuir o software. Para apresentar este recurso da GTK+, o presente documento propõe o desenvolvimento de uma ferramenta para conversão de interfaces gráficas construídas no Delphi para um formato legível a esta biblioteca. Neste contexto serão abordados conceitos sobre a migração de software, mais especificamente migração de interfaces gráficas. Como já mencionado, o Delphi é um ambiente de desenvolvimento largamente utilizado para a construção de aplicativos que possuem uma interface gráfica com o usuário, mas o código fonte nele produzido não é portável a outros sistemas operacionais, resultando em aplicativos exclusivos ao Microsoft Windows. A GTK+, por sua vez, é uma biblioteca

12 4 multi-plataforma podendo ser compilado e executado nos diferentes sistemas operacionais que a suportam. Portanto, o desenvolvimento do trabalho engloba a utilização de técnicas da área de compiladores, como a análise léxica e sintática para leitura do recurso de entrada (o código fonte da interface Delphi). Ademais, o trabalho envolverá a manipulação de arquivos extensible Markup Language (XML) e técnicas de geração automática de código. 1.3 METODOLOGIA Abaixo são listados os passos que serão executados para a realização do trabalho, bem como o cronograma a ser respeitado: a) levantamento bibliográfico: estudar documentação sobre desenvolvimento de geradores de interfaces gráficas com o usuário, GUI e desenvolvimento de interfaces gráficas em Delphi, além de material relacionado à biblioteca gráfica GTK+; b) elicitação de requisitos: detalhar e reavaliar os requisitos, observando as necessidades levantadas durante o levantamento bibliográfico; c) definição de componentes gráficos e respectivos eventos a converter: estudar aplicações desenvolvidas em Delphi, observando quais componentes gráficos são mais comumente utilizados na criação de interfaces gráficas, bem como os eventos suportados por tais componentes; d) criação da tabela de equivalência: efetuar um estudo comparativo entre Delphi e GTK+, a fim de identificar as equivalências entre os componentes gráficos e os eventos disponibilizados pelos componentes. Ainda, verificar quais componentes gráficos do Delphi não possuem um similar na GTK+ e definir que estratégia será adotada para conversão de tais componentes; e) especificação: especificar a ferramenta com análise orientada a objeto utilizando a Unified Modeling Language (UML). Será utilizado o Enterprise Architecht para a elaboração dos diagramas de casos de uso, de classes e de estado; f) desenho da interface gráfica: projetar a interface gráfica da ferramenta com o Glade (THE GLADE PROJECT, 2009); g) especificação do analisador dos arquivos de entrada: especificar definições regulares e gramática para desenvolver os analisadores léxico e sintático,

13 5 quadro 1. responsáveis por efetuar a leitura dos arquivos de definição de interfaces gráficas do Delphi, os arquivos.dfm. Na especificação será utilizado o GALS 2 (GESSER, 2003); h) implementação: implementar e integrar os seguintes módulos da ferramenta: - interface gráfica: processar a interface desenhada na etapa (f) com a biblioteca GTK+ para Pascal, - analisador dos arquivos de entrada: gerar os analisadores léxico e sintático para efetuar a leitura dos arquivos.dfm a partir das especificações feitas na etapa (g). Para gerar o código dos analisadores léxico e sintático será utilizado o GALS e a linguagem de programação Pascal/Object Pascal para o compilador Free Pascal, - gerador do arquivo GladeXML: implementar o gerador do arquivo GladeXML levando em consideração as equivalências estabelecidas na etapa (d). Utilizarse-á a linguagem Pascal/Object Pascal em conjunto com o compilador Free Pascal, - exibição da interface gráfica gerada: processar o arquivo gerado na etapa anterior resultando na exibição da interface gráfica Delphi convertida para GTK+. Será utilizada a linguagem Pascal/Object Pascal em conjunto com o compilador Free Pascal, bem como a biblioteca gráfica GTK+; i) testes: desenvolver interfaces gráficas no Delphi e executar testes durante toda a etapa de implementação para validar o resultado. Os períodos adotados para a realização das etapas supracitadas estão relacionadas no 2011 jul. ago. set. out. nov. etapas / quinzenas levantamento bibliográfico elicitação de requisitos definição de componentes gráficos e respectivos eventos a converter criação da tabela de equivalência especificação desenho da interface gráfica especificação do analisador dos arquivos de entrada implementação teste Quadro 1 Cronograma 2 Gerador de Analisadores Léxicos e Sintáticos (GALS).

14 6 2 REVISÃO BIBLIOGRÁFICA Neste capítulo são apresentados aspectos teóricos pertinentes ao trabalho, sendo que inicialmente são abordadas técnicas de geração de interfaces gráficas. A seção 2.2 apresenta um breve conceito sobre interfaces gráficas do usuário e sobre bibliotecas para criação dessas interfaces. A seção seguinte traz uma rápida explanação sobre criação de interfaces gráficas no ambiente de desenvolvimento Delphi. A seção 2.4 e suas subseções falam sobre o toolkit GTK+: origem, comportamento, aspectos e uma ferramenta auxiliar, o Glade. A seção posterior apresenta trabalhos correlatos, dentre os quais alguns serviram como fonte de inspiração para a elaboração do proposto. 2.1 GERADORES DE INTERFACES GRÁFICAS COM O USUÁRIO Segundo Herrington (2003, p. 3), geradores de código são programas criados para escrever outros programas. Geradores de interfaces gráficas são igualmente geradores de código. Contudo, o resultado não é necessariamente um programa ou aplicação, mas sim uma interface gráfica para o usuário final do produto, o software. Um gerador de interface gráfica do usuário recebe sua entrada de um arquivo de definição de interface gráfica e de uma definição de Application Programming Interface (API). Como apresentado em tópicos posteriores, alguns programas especialistas na criação de interfaces gráficas utilizam um arquivo com um formato distinto para construir interfaces gráficas, ao passo que outros utilizam formatos consagrados como o XML. A adoção desta abordagem no processo de desenvolvimento de software possibilita a criação de uma camada de abstração entre as regras de negócio para a interface e sua implementação (HERRINGTON, 2003, p. 100). Para Herrington (2003, p ), alguns benefícios chaves na utilização de geradores de interfaces gráficas são: a) consistência: geração em massa de formulários criam formulários consistentes e que apresentam padrões de usabilidade; b) flexibilidade: usando ferramentas para desenhar interfaces, pode-se rapidamente efetuar modificações requeridas para esta interface. Modificações nas regras de

15 7 segurança podem destacar esta flexibilidade; ao modificar e melhorar a API de segurança da aplicação pode-se alterar os modelos para recriar as interfaces que estarão em conformidade com as novas regras de segurança; c) portabilidade: tão bom quanto as ferramentas hoje disponíveis para criação de interfaces gráficas, esta técnica permite vincular a lógica de negócio da interface aos detalhes da implementação. Proporcionando um alto nível de representação dos requisitos de negócio da interface gráfica na aplicação, permite reproduzir código executável da aplicação para diferentes tecnologias de interface gráfica. 2.2 GUI Uma GUI é um tipo de interface do utilizador que permite a interação com dispositivos digitais através de elementos gráficos como ícones e outros indicadores visuais [...] (INTERFACE..., 2010). Segundo Preece, Rogers e Sharp (2005, p. 29), a necessidade do desenvolvimento de interfaces para interação com dispositivos digitais, em especial os computadores, passou a surgir no final dos anos 70 e início dos [anos] 80 [com o] advento dos monitores e estações de trabalho pessoais. A construção de interfaces gráfica é uma etapa comumente presente no processo de desenvolvimento de software aplicativo. Através do uso de componentes gráficos, os desenvolvedores de software procuram criar interfaces que tornam o uso do seu produto uma tarefa simples e intuitiva. Um exemplo claro é apresentado na figura abaixo, onde a GUI de um software reprodutor de mídia tenta imitar o painel de funções de um aparelho de som. Fonte: NullSoft (2010). Figura 1 Exemplo de software reprodutor de mídia com interface gráfica do usuário

16 8 Para auxiliar os desenvolvedores de software na confecção das interfaces dos seus produtos, têm-se as bibliotecas para criação de interfaces gráficas com o usuário. Estas bibliotecas costumam fornecer aos seus utilizadores um conjunto de componentes gráficos e funções para criação de interfaces gráficas. Um exemplo bastante conhecido é a Visual Component Library (VCL). Criada para ser disponibilizada junto ao Delphi, esta biblioteca oferece ao desenvolvedor uma camada de abstração para as funções gráficas do sistema operacional Microsoft Windows (VISUAL..., 2010). Outros exemplos são as bibliotecas Qt 3 e GTK+, ambas multi-plataforma. São utilizadas no desenvolvimento dos ambientes de desktop KDE 4 e GNOME 5, respectivamente. 2.3 DESENVOLVIMENTO DE INTERFACES GRÁFICAS EM DELPHI O Delphi é uma ferramenta Rapid Application Development (RAD) construída sobre a linguagem de programação Object Pascal e largamente utilizada para o desenvolvimento de aplicações com interface gráfica de usuário na plataforma Microsoft Windows (EMBARCADERO..., 2010). Esta ferramenta oferece um ambiente prático e de fácil utilização para a criação de interfaces gráficas. O desenho das interfaces gráficas no Delphi é baseado em formulários, ou janelas, nos quais o desenvolvedor utiliza o recurso drag-and-drop (arrastar-e-soltar) para adicionar os componentes que irão compor a interface. É possível ainda definir as propriedades e comportamentos destes componentes. O Delphi utiliza a VCL, que fornece uma grande quantidade de componentes visuais para auxiliar na criação de interfaces gráficas. Esta biblioteca foi escrita em Object Pascal e é utilizada para desenvolvimento de aplicações para o sistema operacional Microsoft Windows. Alguns dos componentes gráficos que integram a VCL são: botões, caixas de seleção, caixas de checagem, listas, janelas, painéis, barras de ferramentas, barras de status, barras de progresso, barras de rolagem, entre outros. As definições de um formulário ou janela desenvolvido no Delphi ficam armazenadas em um arquivo com a extensão dfm. Este arquivo possui uma formatação distinta para 3 Framework multiplataforma para desenvolvimento de aplicativos com interface gráfica (QT, 2010). 4 Ambiente gráfico de desktop e plataforma desenvolvimento para o sistema operacional Linux (KDE, 2010). 5 GNU Network Object Model Environment (GNOME, 2010).

17 9 identificar os componentes que compõem a interface, armazenando informações sobre o seu posicionamento no formulário, seu tamanho em pixels, comportamento e funções associadas a seus eventos. A figura 2 exibe uma interface gráfica simples produzida no Delphi e, na seqüência, o quadro 2 apresenta o arquivo DFM correspondente à interface. Figura 2 Uma interface simples produzida no ambiente Delphi object Form1: TForm1 Left = 0 Top = 0 Caption = 'Produzido no Delphi' ClientHeight = 172 ClientWidth = 314 Color = clbtnface Font.Charset = DEFAULT_CHARSET Font.Color = clwindowtext Font.Height = -11 Font.Name = 'Tahoma' Font.Style = [] OldCreateOrder = False PixelsPerInch = 96 TextHeight = 13 object Button1: TButton Left = 104 Top = 56 Width = 105 Height = 41 Caption = 'Confirmar' Font.Charset = DEFAULT_CHARSET Font.Color = clwindowtext Font.Height = -13 Font.Name = 'Tahoma' Font.Style = [fsbold] ParentFont = False TabOrder = 0 end end Quadro 2 Um arquivo dfm correspondente à interface apresentada na Figura 2 Os componentes gráficos da VCL foram desenvolvidos com a capacidade de disparar eventos em resultado à ação do usuário. Por exemplo, ao clicar com o cursor do mouse sobre um botão, um evento é disparado e enviado para a aplicação. A aplicação, por sua vez, verificará se existe algum procedimento associado àquele evento e irá executá-lo. A VCL prédefine uma série de eventos para o seu conjunto de componentes. Alguns eventos são comuns a diferentes componentes, enquanto outros são eventos específicos (FONSECA, 2005, p. 15). 2.4 GTK+ A GTK+ foi originalmente desenvolvida para auxiliar na criação de um novo aplicativo para editoração de imagens chamado GNU Image Manipulator Program (GIMP).

18 10 O toolkit foi criado por Peter Mattis, Spencer Kimball e Josh MacDonald no ano de 1997, na Universidade da Califórnia (KRAUSE, 2007, p. 2). Harlow (1999, p. 3) afirma que a GTK+ é uma biblioteca para desenvolvimento de aplicações com interface gráfica do usuário, extensivamente utilizada na confecção de aplicações Linux com GUI, com destaque para os ambientes de desktop GNOME e Xfce 6. Apesar da sua origem no sistema operacional Linux, a biblioteca tem sido expandida para suportar outros sistemas operacionais, tais como: Microsoft Windows, BeOS, Solaris, Mac OS X e outros (KRAUSE, 2007, p. 2). A GTK+ é constituída por bibliotecas, cada uma fornecendo ao desenvolvedor uma classe de funcionalidades específicas. As seis bibliotecas da GTK+ são: a) GLib: constitui-se de estruturas e funções para manipulação de listas encadeadas, árvores, exceções, gerenciadores de memória e temporizadores, podendo ser usada sem a GTK+ para desenvolvimento de aplicações sem interface gráfica (HARLOW, 1999, p. 7). A GLib fornece uma interface multi-plataforma que permite que o código fonte produzido possa ser executado em qualquer sistema operacional por ela suportado (KRAUSE, 2007, p. 5); b) GLib Object System ou GObject: foi criada para permitir o fácil acesso aos objetos da GTK+ a partir de outras linguagens de programação. Esta habilidade facilitou a criação da larga variedade de bindings disponíveis para outras linguagens acessarem os objetos da GTK+ (KRAUSE, 2007, p. 6); c) GIMP Drawing Kit (GDK): é uma camada intermediária entre a GTK+ e o sistema gerenciador de janelas ou interfaces gráficas do sistema operacional, efetuando chamadas às funções de manipulação de janelas do sistema operacional (HARLOW, 1999, p. 209). É responsável por apresentar desenhos, gráficos, cursores e fontes de todas as aplicações GTK+ (KRAUSE, 2007, p. 7); d) GdkPixbuf: fornece funções para manipulação de imagens do lado cliente (GALE et al., 2010), oferecendo uma grande variedade de funções para manipulação e exibição de imagens (KRAUSE, 2007, p. 7-8); e) Pango: ao passo que a GDK manipula a apresentação de imagens e janelas, esta biblioteca controla a saída de texto e fonte internacionalizados (KRAUSE, 2007, p. 8); f) Accessibility Toolkit (ATK): fornece aos componentes gráficos da GTK+ construções integradas para criação de interfaces gráficas para usuários com 6 Ambiente gráfico de desktop para sistemas baseados em UNIX e similares (XFCE, 2010).

19 11 problemas de acessibilidade. Algumas funções que a ATK oferece são: leitor de tela, temas de alto contraste visual, modificador de comportamento de teclado, entre outros (KRAUSE, 2007, p. 9). A GTK+ é um sistema baseado em sinais e funções de callback. Um sinal é uma notificação para a aplicação na qual o usuário efetuou alguma ação. É possível executar uma função para responder a este sinal através da GTK+. Estas funções são conhecidas como funções de callback (KRAUSE, 2007, p. 27). Uma aplicação GTK+ é iniciada por uma chamada à função gtk_main(). A partir deste ponto o programa entra no laço principal e fica em estado de espera até receber um sinal, como o clique do mouse sobre um botão, por exemplo. Os sinais são emitidos pelo sistema gerenciador de janelas do sistema operacional, responsável pelo controle dos componentes gráficos da aplicação, e capturados pela GDK, que por sua vez repassa para a GTK+. A GTK+ procura uma função de callback associada ao sinal ou evento e efetua a sua chamada (LIRA, 2010). Embora o toolkit GTK+ ofereça ao desenvolvedor de software um conjunto completo de funcionalidades para criação de interfaces gráficas, realizar esta tarefa manualmente escrever as instruções para criação da interface gráfica com todos os seus componentes, incluindo seu comportamento e disposição na tela é um processo moroso e desgastante, e muitas vezes o resultado é longe do esperado. Ademais, caso seja necessário alterar qualquer aspecto da interface mover, alterar a dimensão ou comportamento de um componente; adicionar um novo componente; remover um componente o novo código precisará ser recompilado. O Glade surgiu da necessidade da criação de uma ferramenta para facilitar a criação de interfaces gráficas para a biblioteca GTK+. É uma ferramenta da espécie RAD, usada no desenvolvimento rápido e fácil de interfaces gráficas para o toolkit GTK+ e para o ambiente de desktop GNOME (THE GLADE PROJECT, 2009). As interfaces gráficas desenhadas com o Glade são salvas em arquivos no formato XML que descrevem a estrutura dos componentes que integram a interface, suas propriedades, comportamento e eventos associados. Esta abordagem permite ao desenvolvedor manter as definições da interface gráfica separadamente do código fonte da aplicação. Qualquer alteração na interface pode ser efetuada sem a necessidade de alterar o código fonte da aplicação (KRAUSE, 2007, p. 359). Os arquivos XML gerados pelo Glade recebem a extensão.glade. Estes arquivos podem ser carregados dinamicamente para aplicações GTK+ utilizando o objeto auxiliar GtkBuilder. Isto permite que uma mesma interface gráfica possa ser carregada para

20 12 aplicações GTK+ nas diferentes linguagens de programação que possuem binding para a GTK+ (THE GLADE PROJECT, 2010). Um exemplo de arquivo.glade é apresentado no quadro 3, ao passo que a figura 3 exibe a interface gráfica correspondente. <?xml version="1.0" encoding="utf-8" standalone="no"?> <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd"> <!--Generated with glade on Tue Sep 7 21:21: > <glade-interface> <widget class="gtkwindow" id="window1"> <property name="width_request">300</property> <property name="height_request">300</property> <property name="visible">true</property> <property name="title" translatable="yes">desenvolvido para GTK+</property> <property name="resizable">false</property> <property name="window_position">gtk_win_pos_center</property> <child> <widget class="gtkvbuttonbox" id="vbuttonbox1"> <property name="visible">true</property> <child> <widget class="gtkbutton" id="button1"> <property name="visible">true</property> <property name="can_focus">true</property> <property name="receives_default">true</property> <property name="label" translatable="yes">confirmar</property> <property name="response_id">0</property> </widget> </child> </widget> </child> </widget> </glade-interface> Quadro 3 Arquivo GladeXML com as definições de uma interface gráfica construída no Glade Figura 3 Interface gráfica simples para GTK+ produzida pelas definições apresentadas no quadro TRABALHOS CORRELATOS Durante a elaboração deste documento foram identificados alguns trabalhos correlatos que possuem características semelhantes ao trabalho proposto. Foram selecionados três projetos: DelphiToWeb (SOUZA, 2005), a extensão da ferramenta Delphi2Java-II

21 13 desenvolvida por Silveira (2006) e ScriptCase (NETMAKE, 2010), os quais são apresentados mais detalhadamente nas próximas seções DelphiToWeb Desenvolvida no ano de 2005, a ferramenta DelphiToWeb converte formulários desenhados no Delphi para páginas HyperText Markup Language (HTML) (SOUZA, 2005). A ferramenta consiste numa primeira etapa de interpretação do arquivo.dfm com as definições do formulário Delphi e depois na sua conversão para uma interface em outro formato, neste caso páginas HTML. A ferramenta converte uma grande quantidade de componentes gráficos Delphi, sendo que foram considerados os componentes mais utilizados e com equivalentes em HTML. Os componentes convertidos pela ferramenta são: TForm, TMainMenu, TMenuItem, TToolBar, TToolButton, TLabel, TEdit, TButton, TSpeedButton, TBitBtn, TComboBox, TMemo, TRichEdit, TListBox, TGroupBox, TRadioGroup, TRadioButton, TPanel, TCheckBox, TPopupMenu, TPageControl e TTabSheet (SOUZA, 2005, p ). Para o desenvolvimento foram utilizados analisadores léxico, sintático e semântico para efetuar a interpretação dos arquivos.dfm que contém as definições da interface gráfica desenhada no Delphi (SOUZA, 2005, p. 37) Extensão da ferramenta Delphi2Java-II para suportar componentes de banco de dados Silveira (2006, p. 13) diz que a ferramenta Delphi2Java-II é utilizada para migração de aplicações desenvolvidas em Delphi para a plataforma Java, efetuando a leitura de formulários Delphi e gerando classes Java, preservando a estrutura originalmente desenhada. No entanto, uma limitação de Delphi2Java-II é a quantidade restrita de componentes que são convertidos. Sendo assim, Silveira (2006, p. 13) propôs a melhoria da ferramenta por permitir também a conversão de componentes visuais para acesso a banco de dados, além da conversão da forma de conexão ao banco utilizando a Java Data Base Connectivity (JDBC).

22 14 A extensão contempla a conversão dos seguintes componentes de visualização de dados: TDBCheckBox, TDBComboBox, TDBEdit, TDBGrid, TDBMemo, TDBRadioGroup e TDBText (SILVEIRA, 2006, p ). Além dos componentes de visualização de dados, responsáveis por apresentar os dados do banco de dados ao usuário, os seguintes componentes de acesso a dados também são convertidos pela ferramenta: TDatabase, TDataSource, TTable e TQuery (SILVEIRA, 2006, p. 43). O trabalho foi desenvolvido sobre o padrão de projeto MVC 7, a fim de dividir as camadas de saída geradas pela ferramenta, entre componentes de visualização, componentes de visualização de dados e componentes de acesso a banco de dados. A análise da entrada, arquivo.dfm, foi efetuada pela utilização de analisadores léxico, sintático e semântico ScriptCase O ScritpCase é um gerador de aplicações web baseadas em banco de dados Structured Query Language (SQL). As aplicações geradas pela ferramenta utilizam as linguagens de programação PHP e JavaScript, as mesmas linguagens utilizadas no desenvolvido do software (NETMAKE, 2010). As aplicações resultantes do ScriptCase rodam sobre qualquer servidor capaz de interpretar o PHP. Portanto, segundo NetMake (2010), os aplicativos gerados pelo ScriptCase podem ser executados em uma grande quantidade de sistemas operacionais, tais como: Linux, Windows, IBM I5 e outros sistemas UNIX. A construção de aplicações com o ScriptCase é efetuada através de um navegador com acesso ao servidor no qual a ferramenta está instalada. A criação é baseada em formulários web que efetuarão a manipulação dos dados no banco de dados. A ferramenta fornece recursos como (SCRIPTCASE, 2010): validação de campos (data, moeda, número, entre outros); validação de chaves (primárias, únicas, estrangeiras); possibilidade de geração de relatórios baseados em consultas SQL definidas pelo usuário; execução de consultas complexas com subselects, joins e stored procedures; suporte a vários bancos de dados conhecidos (Oracle, MS-SQL Server, DB2, MySQL, Informix, PostGreSQL, Access, Interbase, Firebird) e criação de aplicações que se interligam com o Delphi e o Visual Basic, através da instanciação do Component Object Model (COM). 7 Model-View-Controller (MVC).

23 15 O software é desenvolvido pela empresa brasileira NetMake e atualmente encontra-se na sua versão 5.1, sendo utilizada por diversos clientes no território nacional (NETMAKE, 2010).

24 16 3 REQUISITOS DO SISTEMA A SER DESENVOLVIDO Abaixo são relacionados os requisitos que o trabalho deverá atender, classificados em Requisitos Funcionais (RF) e Requisitos Não Funcionais (RNF): a) o sistema deverá permitir ao usuário selecionar os arquivos.dfm que deseja converter (RF); b) o sistema deverá efetuar a conversão dos arquivos.dfm selecionados pelo usuário para arquivos GladeXML correspondentes (RF); c) o sistema deverá permitir ao usuário selecionar o diretório de saída dos arquivos convertidos (RF); d) o sistema deverá permitir ao usuário solicitar a visualização da interface gráfica convertida para GTK+ (RF); e) o sistema deverá gerar código Pascal/Object Pascal para carregar as interfaces GTK+ (RNF); f) o sistema deverá traduzir os eventos dos componentes Delphi para GTK+ (RNF); g) o sistema deverá ser codificado em Pascal/Object Pascal para o compilador Free Pascal (RNF); h) a interface gráfica do sistema deverá ser desenvolvida para a biblioteca GTK+ utilizando o Glade (RNF); i) a leitura do arquivo de entrada (.DFM) deverá ser realizada utilizando técnicas de compiladores como análise léxica e sintática (RNF).

25 17 4 CONSIDERAÇÕES FINAIS Levando em consideração a crescente necessidade de ferramentas que auxiliem no desenvolvimento de software cujo código fonte possa ser portável entre diferentes plataformas e/ou sistemas operacionais, mas ciente da grande quantidade de aplicativos construídos para um sistema operacional específico, o presente trabalho propõe criar uma solução para conversão da interface gráfica de tais aplicativos para uma solução portável. Utilizando técnicas de geração de código, mais especificamente geração de interface gráfica com o usuário, pretende-se criar uma ferramenta capaz de traduzir as interfaces construídas em Delphi para um formato legível à biblioteca GTK+. Esta tradução engloba também a utilização de analisadores léxicos e sintáticos, a fim de interpretar a entrada ou código a ser traduzido. A biblioteca GTK+ será estudada em conjunto com o Delphi, a fim de detectar a semelhança entre os componentes gráficos fornecidos por ambas as ferramentas, bem como os eventos que se equivalem entre estes. O resultado desta análise será um mapa de componentes entre Delphi e GTK+. O toolkit GTK+ será utilizado para a leitura e apresentação da interface gráfica convertida e definida no formato XML no arquivo GladeXML. O uso deste formato permite que uma mesma interface gráfica seja interpretada por diferentes linguagens que implementam a biblioteca GTK+, além de possibilitar a sua utilização em diferentes sistemas operacionais, visto que esta biblioteca é multi-plataforma. Serão utilizados funções e objetos auxiliares desta biblioteca para ajudar na construção da ferramenta que apresentará o resultado final, ou seja, a interface gráfica já convertida para a biblioteca GTK+. As três ferramentas apresentadas como trabalhos correlatos são geradores de código. Mas, diferentemente das duas primeiras, o ScriptCase não efetua a análise de um arquivo de entrada, mas sim da estrutura de um banco de dados para gerar uma saída, neste caso um aplicativo para manipulação de dados. As ferramentas DelphiToWeb e Delphi2Java-II se assemelham ao trabalho proposto no que diz respeito à sua entrada: o arquivo de definição de interfaces.dfm, sendo a diferença a saída por elas geradas. Ao passo que as ferramentas ScriptCase e DelphiToWeb concentram-se na geração de código para a web, a ferramenta aprimorada por Silveira (2006) dá ênfase à conversão de código Delphi para uma tecnologia portável, o Java.

26 18 REFERÊNCIAS BIBLIOGRÁFICAS ANTUNES, Jonathan L. Conhecendo o Delphi. [S.l.], Disponível em: < Acesso em: 25 set EMBARCADERO Delphi. In: WIKIPÉDIA, a enciclopédia livre. [S.l.]: Wikimedia Foundation, Disponível em: < Acesso em: 26 set FONSECA, Fabricio. Ferramenta conversoras de interfaces gráficas: Delphi2Java-II f. Trabalho de Conclusão de Curso (Bacharelado em Ciências da Computação) Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau. GALE, Tony et al. GTK+ 2.0 tutorial. [S.l.], Disponível em: < Acesso em: 02 set GESSER, Carlos E. GALS: gerador de analisadores léxicos e sintáticos f. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) Centro Tecnológico, Universidade Federal de Santa Catarina, Florianópolis. Disponível em: < Acesso em: 26 set GNOME. In: WIKIPÉDIA, a enciclopédia livre. [S. l.]: Wikimedia Foundation, Disponível em: < Acesso em: 25 set HARLOW, Eric. Developing Linux applications with GTK+ and GDK. Indianapolis: New Riders, HERRINGTON, Jack. Code generation in action. Greenwich: Manning, INTERFACE gráfica do utilizador. In: WIKIPÉDIA, a enciclopédia livre. [S.1.]: Wikimedia Foundation, Disponível em: < Acesso em: 02 set KDE. In: WIKIPÉDIA, a enciclopédia livre. [S.l.]: Wikimedia Foundation, Disponível em: < Acesso em: 25 set KRAUSE, Andrew. Foundations of GTK+ development. New York: Apress, LIRA, Marcelo. Mantendo a sanidade com o Glade. [Recife], Disponível em: < e#programa.c3.a7.c3.a3o_orientada_a_eventos>. Acesso em: 04 set

27 19 NETMAKE. ScriptCase. [Recife], Disponível em: < Acesso em: 20 set NULLSOFT. Winamp. [S.l.], Disponível em: < Acesso em: 25 set PREECE, Jennifer; ROGERS, Yvonne; SHARP, Helen. Design de interação: além da interação homem-computador. Porto Alegre: Bookman, QT. In: WIKIPÉDIA, a encyclopedia livre. [S.l.]: Wikimedia Foundation, Disponível em: < Acesso em: 25 set SCRIPTCASE. In: WIKIPÉDIA, the free encyclopedia. [S.l.]: Wikimedia Foundation, Disponível em: < Acesso em: 20 set SILVEIRA, Janira. Extensão da ferramenta Delphi2Java-II para suportar componentes de banco de dados f. Trabalho de Conclusão de Curso (Bacharelado em Sistemas de Informação) Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau. SOUZA, Ariana. Ferramenta para conversão de formulários Delphi em páginas HTML f. Trabalho de Conclusão de Curso (Bacharelado em Sistemas de Informação) Centro de Ciências Exatas e Naturais, Universidade Regional de Blumenau, Blumenau. THE GLADE PROJECT. Glade: a user interface designer. [S.l.], Disponível em: < Acesso em: 04 set VISUAL component library. In: WIKIPÉDIA, the free encyclopedia. [S.1.]: Wikimedia Foundation, Disponível em: < Acesso em: 05 set XFCE. In: WIKIPÉDIA, a encyclopedia livre. [S. l.]: Wikimedia Foundation, Disponível em: < Acesso em: 25 set

Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann

Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann Ferramenta para conversão de interfaces gráficas desenvolvidas em Delphi para a biblioteca GTK+ Acadêmico: Josimar Zimermann Orientadora: Joyce Martins Roteiro Introdução Objetivos Fundamentação teórica

Leia mais

FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+

FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA GTK+ UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO FERRAMENTA PARA CONVERSÃO DE INTERFACES GRÁFICAS DESENVOLVIDAS EM DELPHI PARA A BIBLIOTECA

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO (TCC)

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO (TCC) CURSO: SIS VERSÃO: 03 N o 15 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE SISTEMAS DE INFORMAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS Algoritmos e Programação

Leia mais

Algoritmos e Programação

Algoritmos e Programação ESTADO DE MATO GROSSO SECRETARIA DE ESTADO DE CIÊNCIA E TECNOLOGIA UNIVERSIDADE DO ESTADO DE MATO GROSSO CAMPUS UNIVERSITÁRIO DE SINOP FACULDADE DE CIÊNCIAS EXATAS E TECNOLÓGICAS CURSO DE ENGENHARIA ELÉTRICA

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO IMPLEMENTAÇÃO DA TÉCNICA TEXT MINING VIA WEB APLICADO NO AMBIENTE DO EMPREENDEDOR.

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO IMPLEMENTAÇÃO DA TÉCNICA TEXT MINING VIA WEB APLICADO NO AMBIENTE DO EMPREENDEDOR. TURNO: VERSÃO: N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO DE CONCLUSÃO

Leia mais

Delphi2Java-II: ferramenta para conversão de formulários Delphi em código Java

Delphi2Java-II: ferramenta para conversão de formulários Delphi em código Java Delphi2Java-II: ferramenta para conversão de formulários Delphi em código Java Mauro Marcelo Mattos, Joyce Martins, Israel Damásio Medeiros, Janira Silveira Departamento de Sistemas e Computação Universidade

Leia mais

GERAÇÃO DE ARQUIVOS DE SCRIPT EM PHP. Acadêmico: Leonardo Sommariva Orientador: Alexander Roberto Valdameri

GERAÇÃO DE ARQUIVOS DE SCRIPT EM PHP. Acadêmico: Leonardo Sommariva Orientador: Alexander Roberto Valdameri FERRAMENTA VISUAL PARA GERAÇÃO DE ARQUIVOS DE SCRIPT EM PHP Acadêmico: Leonardo Sommariva Orientador: Alexander Roberto Valdameri ROTEIRO Introdução Objetivos Motivação Fundamentação Teórica Desenvolvimento

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA DE GESTÃO ESCOLAR ORIENTADO A OBJETO UTILIZANDO BANCO DE DADOS CACHÉ

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA DE GESTÃO ESCOLAR ORIENTADO A OBJETO UTILIZANDO BANCO DE DADOS CACHÉ TURNO: Noturno VERSÃO: 01 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

Componentes gráficos para prototipagem e documentação rápid a em Delphi. Aluno: Reinoldo Krause Junior Orientadora: Luciana Pereira de Araújo

Componentes gráficos para prototipagem e documentação rápid a em Delphi. Aluno: Reinoldo Krause Junior Orientadora: Luciana Pereira de Araújo Componentes gráficos para prototipagem e documentação rápid a em Delphi Aluno: Reinoldo Krause Junior Orientadora: Luciana Pereira de Araújo Roteiro Introdução Objetivos Fundamentação Teórica Trabalhos

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO PROTÓTIPO DE UM VISUALIZADOR DE MODELOS 3D PARA DISPOSITIVOS MÓVEIS UTILIZANDO A PLATAFORMA.NET CF 2.

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO PROTÓTIPO DE UM VISUALIZADOR DE MODELOS 3D PARA DISPOSITIVOS MÓVEIS UTILIZANDO A PLATAFORMA.NET CF 2. TURNO: noturno VERSÃO: 01 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO COMPILADOR JAVA 5.0 PARA GERAR EXECUTÁVEL NATIVO PARA PLATAFORMA PALM OS

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO COMPILADOR JAVA 5.0 PARA GERAR EXECUTÁVEL NATIVO PARA PLATAFORMA PALM OS TURNO: NOTURNO VERSÃO: 1 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

1) DADOS DA OBRA: Programando em Java 2 Teoria e Aplicações Rui Rossi dos Santos 2004 Axcel Books (

1) DADOS DA OBRA: Programando em Java 2 Teoria e Aplicações Rui Rossi dos Santos 2004 Axcel Books ( 1) DADOS DA OBRA: Título: Programando em Java 2 Teoria e Aplicações Autor: Rui Rossi dos Santos Ano: 2004 Editora: Axcel Books (http://www.axcel.com.br) Páginas: 580 Encadernação: Capa dura 2) DESCRIÇÃO

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA GERENCIAL DE CONTROLE ESTATÍSTICO PARA FACÇÃO

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA GERENCIAL DE CONTROLE ESTATÍSTICO PARA FACÇÃO TURNO: NOTURNO VERSÃO: 1 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

5 Implementação 5.1 Plataforma 5.2 Arquitetura

5 Implementação 5.1 Plataforma 5.2 Arquitetura 5 Implementação Neste capítulo são apresentados os detalhes sobre a implementação da ferramenta. São discutidas as tecnologias envolvidas, assim como as limitações e problemas encontrados durante o desenvolvimento.

Leia mais

2

2 ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1 2 Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO JOGO DE XADREZ PARA CELULAR ENTRE DOIS PARTICIPANTES. alternativo:

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO JOGO DE XADREZ PARA CELULAR ENTRE DOIS PARTICIPANTES.  alternativo: TURNO: Noturno VERSÃO: 2 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

SOFTWARE DE APOIO A GESTÃO DE SOLICITAÇÃO DE MUDANÇAS

SOFTWARE DE APOIO A GESTÃO DE SOLICITAÇÃO DE MUDANÇAS Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Trabalho de Conclusão de Curso Ciências da Computação SOFTWARE DE APOIO A GESTÃO DE SOLICITAÇÃO DE MUDANÇAS AS Acadêmico: Fabricio

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO TURNO: NOTURNO VERSÃO: 2.0 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA GERENCIAL PARA AUTOMAÇÃO DE FORÇA DE VENDAS USANDO DISPOSITIVOS MÓVEIS BASEADOS EM PALM OS

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA GERENCIAL PARA AUTOMAÇÃO DE FORÇA DE VENDAS USANDO DISPOSITIVOS MÓVEIS BASEADOS EM PALM OS TURNO: NOTURNO VERSÃO: 02 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

GERAÇÃO DE INTERFACES ANDROID A PARTIR DO DELPHI

GERAÇÃO DE INTERFACES ANDROID A PARTIR DO DELPHI UNIVERSIDADE REGIONAL DE BLUMENAU CURSO DE CIÊNCIA DA COMPUTAÇÃO GERAÇÃO DE INTERFACES ANDROID A PARTIR DO DELPHI DOUGLAS JÚLIO REZINI PROF. MARCEL HUGO, MESTRE Roteiro: Introdução e Objetivos Fundamentação

Leia mais

FERRAMENTA DE APOIO À AUTOMATIZAÇÃO DE TESTES ATRAVÉS DO TESTCOMPLETE PARA PROGRAMAS DESENVOLVIDOS EM DELPHI

FERRAMENTA DE APOIO À AUTOMATIZAÇÃO DE TESTES ATRAVÉS DO TESTCOMPLETE PARA PROGRAMAS DESENVOLVIDOS EM DELPHI UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO FERRAMENTA DE APOIO À AUTOMATIZAÇÃO DE TESTES ATRAVÉS DO TESTCOMPLETE PARA PROGRAMAS DESENVOLVIDOS

Leia mais

Análise e projeto de sistemas

Análise e projeto de sistemas Análise e projeto de sistemas Conteúdo: UML O processo de desenvolvimento de software Prof. Patrícia Lucas A linguagem de modelagem unificada (UML) A UML teve origem em uma tentativa de se unificar os

Leia mais

Figura 16 Niagara - Visão de grupos de notas.

Figura 16 Niagara - Visão de grupos de notas. Conclusão 6 Conclusão 6.1 Trabalhos Relacionados Dentre as funcionalidades fornecidas pela interface gerada pelo framework, em destaque está a possibilidade do zoom livre. Disponibilizar esta funcionalidade

Leia mais

Padrão para Especificação de Requisitos de Produto de Multimídia

Padrão para Especificação de Requisitos de Produto de Multimídia Padrão para Especificação de Requisitos de Produto de Multimídia 1 Introdução 1.1 Escopo do documento Sugere-se aqui uma estrutura para a Especificação de Requisitos de Produto de Multimídia (ERPM). Esta

Leia mais

Curso online de. Formação em Front-End. Plano de Estudo

Curso online de. Formação em Front-End. Plano de Estudo Curso online de Formação em Front-End Plano de Estudo Descrição do programa O Programa de Desenvolvimento Web lhe oferece conhecimentos para desenvolver habilidades necessárias para se tornar um Desenvolvedor

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO TÍTULO: DISTRIBUIÇÃO OTIMIZADA DE POLÍGONOS EM UM PLANO BIDIMENSIONAL

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO TÍTULO: DISTRIBUIÇÃO OTIMIZADA DE POLÍGONOS EM UM PLANO BIDIMENSIONAL TURNO: NOTURNO VERSÃO: 1 ANO / SEMESTRE: 2010.2 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIA DA COMPUTAÇÃO BACHARELADO

Leia mais

TURNO: Matutino VERSÃO: 1 N o

TURNO: Matutino VERSÃO: 1 N o TURNO: Matutino VERSÃO: 1 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas

Leia mais

Prof. Esp. Fabiano Taguchi SOFTWARES

Prof. Esp. Fabiano Taguchi  SOFTWARES 1 ELEMENTOS DE COMPUTADORES Prof. Esp. Fabiano Taguchi fabianotaguchi@gmail.com http://fabianotaguchi.wordpress.com SOFTWARES 2 2 SOFTWARES CONCEITO Conjunto alterável de instruções ordenadas e lógicas

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SOFTWARE PARA MONITORAÇÃO DO CONTEÚDO DO TRÁFEGO DE REDE EM AMBIENTE CORPORATIVO

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SOFTWARE PARA MONITORAÇÃO DO CONTEÚDO DO TRÁFEGO DE REDE EM AMBIENTE CORPORATIVO TURNO: NOTURNO VERSÃO: 01 N o 03 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE

Leia mais

Dreamweaver CC_15x21.indd 1 06/04/ :04:22

Dreamweaver CC_15x21.indd 1 06/04/ :04:22 Dreamweaver CC_15x21.indd 1 06/04/2015 11:04:22 SUMÁRIO INTRODUÇÃO... 3 CAPÍTULO 1 Iniciando e conhecendo o Dreamweaver... 8 Interfaces... 21 Criando e configurando sites... 22 CAPÍTULO 2 Criando arquivos...

Leia mais

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli Técnico em Informática Web JavaScript Profª Ana Paula Mandelli anapaula_mandelli@hotmail.com Para o JavaScript - NetBeans O NetBeans é um ambiente de desenvolvimento integrado (IDE) Java desenvolvido pela

Leia mais

Desenvolvimento de Aplicações Desktop

Desenvolvimento de Aplicações Desktop Desenvolvimento de Aplicações Desktop Conceitos Básicos de Programação Professor: Charles Leite O Desenvolvimento de Programas A programação consiste em indicar como o computador (hardware) deve trabalhar

Leia mais

FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS

FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS FERRAMENTA DE AUXÍLIO AO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE INTEGRANDO TECNOLOGIAS OTIMIZADORAS Acadêmico: Roger Anderson Schmidt Orientador : Marcel Hugo Supervisor : Ricardo de Freitas Becker Empresa

Leia mais

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO Sumário PREFÁCIO...3 MODELO DA DOCUMENTAÇÃO...3 1. INTRODUÇÃO AO DOCUMENTO...3 1.1. Tema...3 2. DESCRIÇÃO

Leia mais

Evento: XXV SEMINÁRIO DE INICIAÇÃO CIENTÍFICA

Evento: XXV SEMINÁRIO DE INICIAÇÃO CIENTÍFICA INTEGRAÇÃO DE APLICAÇÕES APLICADA À EXTRAÇÃO E QUALIFICAÇÃO AUTOMÁTICA DE PUBLICAÇÕES DE PESQUISADORES: UM CASO BASEADO NO CURRÍCULO LATTES 1 APPLICATION INTEGRATION APPLIED TO AUTOMATIC EXTRACTION AND

Leia mais

Sérgio Koch Van-Dall

Sérgio Koch Van-Dall PROTÓTIPO PARA ATUALIZAÇÃO ASSÍNCRONA DE DADOS UTILIZANDO WEB SERVICES Sérgio Koch Van-Dall sergiod@inf.furb.br Orientador: Prof. Paulo Fernando da Silva UNIVERSIDADE REGIONAL DE BLUMENAU CURSO DE CIÊNCIAS

Leia mais

Curso Online de E-commerce. Plano de Estudo

Curso Online de E-commerce. Plano de Estudo Curso Online de E-commerce Plano de Estudo Descrição do programa O programa oferece metodologias e técnicas necessárias para a implementação de soluções web baseadas no CMS para o suporte, estratégias

Leia mais

1. IDENTIFICAÇÕES 1. ALUNO

1. IDENTIFICAÇÕES 1. ALUNO TURNO: Noturno VERSÃO: 3 N o 8 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORD. DE ESTÁGIO

Leia mais

PROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA AGÊNCIA DE TRANSPORTES INTERNACIONAIS

PROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA AGÊNCIA DE TRANSPORTES INTERNACIONAIS Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Bacharelado em Ciências da Computação Estágio supervisionado de Conclusão de Curso PROTÓTIPO DE UM SISTEMA DE IMPORTAÇÃO PARA UMA

Leia mais

Acadêmica: Giselle Mafra Schlosser Orientador: Everaldo Artur Grahl

Acadêmica: Giselle Mafra Schlosser Orientador: Everaldo Artur Grahl AVALIAÇÃO DA QUALIDADE DO CÓDIGO FONTE ESCRITO EM PL/SQL Acadêmica: Giselle Mafra Schlosser Orientador: Everaldo Artur Grahl Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Laboratório 01 NetBeans

Laboratório 01 NetBeans Universidade Federal de Uberlândia Faculdade de Computação GGI030 Programação Orientada a Objetos 2o. Semestre de 2017 Prof. Renato Pimentel Atividade individual. Laboratório 01 NetBeans 1 Introdução Os

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO (TCC)

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO (TCC) 1 TURNO: Noturno VERSÃO: 03 N o 06 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORD. DE ESTÁGIO

Leia mais

Gerenciador de ambientes para testes manuais

Gerenciador de ambientes para testes manuais Curso de Sistemas de Informação Bacharelado Gerenciador de ambientes para testes manuais Acadêmico: Alexandre Gielow Orientador: Alexander Roberto Valdameri Roteiro 1. Introdução 2. Objetivos 3. Fundamentação

Leia mais

Software Para Geração de Consultas e Relatórios

Software Para Geração de Consultas e Relatórios Software Para Geração de Consultas e Relatórios Características e Funcionalidades Versão 1.1 Iniview é marca registrada da Projedata Informática Ltda. Todos os direitos reservados à Projedata Informática

Leia mais

Guia de Instalação e Inicialização. Para DataPage+ 2012

Guia de Instalação e Inicialização. Para DataPage+ 2012 Para DataPage+ 2012 Última revisão: 29 de agosto de 2012 Índice Instalando componentes de pré-requisito... 1 Visão geral... 1 Passo 1: Execute o setup.exe e inicie o assistente... 1 Passo 2: Aceite os

Leia mais

SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD

SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD Fundação Centro de Análise, Pesquisa e Inovação Tecnológica Instituto de Ensino Superior - FUCAPI SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD Disciplina: Banco de Dados Prof: Márcio Palheta, Esp

Leia mais

Ferramenta para criaçã. ção o e execuçã

Ferramenta para criaçã. ção o e execuçã Ferramenta para criaçã o e execuçã o visual de algoritmos em grafos Susan Braun Paulo César Rodacki Gomes Orientador Roteiro da apresentaçã Introdu Objetivos do trabalho Fundamenta teórica Principais conceitos

Leia mais

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan Introdução aos computadores, à Internet e à World Wide Web Prof. Marcelo Roberto Zorzan História do Java Origem Linguagem desenvolvida pela Sun Microsystems Sintaxe similar ao C++ Inicialmente chamada

Leia mais

FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR

FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR Departamento de Sistemas e Computação FURB Curso de Ciência da Computação Trabalho de Conclusão de Curso 2016/1 FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR Acadêmico:

Leia mais

Criação de Aplicações GUI. Java JFC / Swing

Criação de Aplicações GUI. Java JFC / Swing Criação de Aplicações GUI Java JFC / Swing JFC Java Foundation Classes Inclui um conjunto de funcionalidades para desenvolver graphical user interfaces (GUIs) e adicionar funcionalidades gráficas e interativas

Leia mais

AULA 1 INTRODUÇÃO AO JAVA

AULA 1 INTRODUÇÃO AO JAVA AULA 1 INTRODUÇÃO AO JAVA Ao término dessa aula você terá aprendido: História e características do Java Ambientes e plataformas Java O Java é a base para praticamente todos os tipos de aplicações em rede

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

[versão para impressão] Link original: comp=24763 Conhecendo o PL/SQL

[versão para impressão] Link original:  comp=24763 Conhecendo o PL/SQL www.devmedia.com.br [versão para impressão] Link original: http://www.devmedia.com.br/articles/viewcomp.asp? comp=24763 Conhecendo o PL/SQL Veja neste artigo o que é PL/SQL, quando utilizá-la e uma breve

Leia mais

Proposta de Trabalho de Conclusão de Curso

Proposta de Trabalho de Conclusão de Curso UNIVERSIDADE FEDERAL DE SANTA CATARINA CENTRO TECNOLÓGICO CURSO DE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO Proposta de Trabalho de Conclusão de Curso Gerador de Código Automático Baseado em Diagramas de

Leia mais

Leia-me do monitor do Veritas System Recovery 16

Leia-me do monitor do Veritas System Recovery 16 Leia-me do monitor do Veritas System Recovery 16 Sobre este Leia-me Recursos não mais suportados no Veritas System Recovery 16 Monitor Sobre o Veritas System Recovery 16 Monitor Requisitos do sistema Pré-requisitos

Leia mais

Ferramenta para auxílio na análise de impacto e rastreabilidade de requisitos na gestão de mudanças

Ferramenta para auxílio na análise de impacto e rastreabilidade de requisitos na gestão de mudanças Ferramenta para auxílio na análise de impacto e rastreabilidade de requisitos na gestão de mudanças Aluno: José Alberto Zimermann Orientador: Marcel Hugo Banca: Everaldo Artur Grahl Joyce Martins Roteiro

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA DE PEDIDOS PARA REPRESENTANTES DE CONFECÇÕES

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SISTEMA DE PEDIDOS PARA REPRESENTANTES DE CONFECÇÕES TURNO: NOTURNO VERSÃO: 02 N o 07 UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE

Leia mais

Instruções de Operação

Instruções de Operação Serviços de Impressão de Produção Xerox e Drivers de Impressora Windows CentreWare para a Impressora/Copiadora Nuvera 100/120 da Xerox e Sistema de Produção Digital Nuvera 100/120 da Xerox Instruções de

Leia mais

Ferramenta para Manutenção, Interfaces. Rodrigo Zimmermann

Ferramenta para Manutenção, Interfaces. Rodrigo Zimmermann Ferramenta para Manutenção, Documentação e Padronização de Interfaces Rodrigo Zimmermann 1 Sequência da apresentação Introdução Objetivos Requisitos Sequencia de uso da Ferramenta Diagrama entidade relacionamento

Leia mais

Introdução ao Desenvolvimento de

Introdução ao Desenvolvimento de Introdução ao Desenvolvimento de Aplicações Web com JSF e PrimeFaces Marcelo Vinícius Cysneiros Aragão ICC Inatel Competence Center marcelovca90@inatel.br Santa Rita do Sapucaí, 15 de março de 2016 Conteúdo

Leia mais

Capítulo 1. Aspectos Preliminares

Capítulo 1. Aspectos Preliminares Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de

Leia mais

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan Introdução aos computadores, à Internet e à World Wide Web Prof. Marcelo Roberto Zorzan História do Java Origem Linguagem desenvolvida pela Sun Microsystems Sintaxe similar ao C++ Inicialmente chamada

Leia mais

CENTRO DE SUPORTE À DECISÃO. Manual de Instalação

CENTRO DE SUPORTE À DECISÃO. Manual de Instalação CENTRO DE SUPORTE À DECISÃO Manual de Instalação AVISO O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Inteligência Educacional e está sujeito a alterações sem aviso prévio.

Leia mais

GERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS

GERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS GERADOR DE INTERFACES GRÁFICAS PARA IOS GABRIEL SEBASTIAN RAMIREZ JOYCE MARTINS Introdução Objetivos Fundamentação teórica Especificação Implementação Operacionalidade Resultados e discussão Conclusão

Leia mais

Estruturas de Sistemas Operacionais

Estruturas de Sistemas Operacionais Estruturas de Sistemas Operacionais Sistemas Operacionais - Tópicos Componentes do Sistema Serviços de Sistemas Operacionais Chamadas ao Sistema Estrutura do Sistema Máquinas Virtuais Chamadas ao Sistema

Leia mais

Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação

Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação Especificação da Projeto de Laboratório de Programação Parte 1 Salvador, 2009 Universidade Federal da Bahia Instituto

Leia mais

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias 1 IDES E PROGRAMAÇÃO Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias {claudio,macdias}@icmc.usp.br 2 Agenda Conceitos Instalação e Configuração Compilação e Execução de Código IDEs Exemplo

Leia mais

UML Unified Modeling Language Linguagem de Modelagem Unificada

UML Unified Modeling Language Linguagem de Modelagem Unificada UML Unified Modeling Language Linguagem de Modelagem Unificada Prof. Gilberto Porto e-mail: porto@gilbertoporto.com.br A linguagem UML n UML (Unified Modeling Language) Linguagem de Modelagem Unificada

Leia mais

COBOL Query 1.0. Ferramenta para extração de dados em arquivos COBOL. Aluno: André Luiz Jacinto Orientador: Adilson Vahldick

COBOL Query 1.0. Ferramenta para extração de dados em arquivos COBOL. Aluno: André Luiz Jacinto Orientador: Adilson Vahldick COBOL Query 1.0 Ferramenta para extração de dados em arquivos COBOL Aluno: André Luiz Jacinto Orientador: Adilson Vahldick Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD Banco de Dados (BD) é o arquivo físico, em dispositivos periféricos, onde estão armazenados os dados de diversos sistemas, para

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Aula 3 http://www.ic.uff.br/~bianca/introinfo/ Aula 3-12/09/2007 1 Objetivo da disciplina O objetivo dessa disciplina é dar ao aluno noções básicas de computação. Serão apresentados

Leia mais

3. Linguagem de Programação C

3. Linguagem de Programação C Introdução à Computação I IBM1006 3. Linguagem de Programação C Prof. Renato Tinós Departamento de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 3. Linguagem de programação C 3.1. Conceitos

Leia mais

Atividade prática orientada: delimitação de bacias hidrográficas usando o QGIS

Atividade prática orientada: delimitação de bacias hidrográficas usando o QGIS Relatório Técnico GPDEN No. 06. Atividade prática orientada: delimitação de bacias hidrográficas usando o QGIS Fernando Mainardi Fan www.ufrgs.br/gpden 1 1. Introdução Agora que já estudamos a teoria,

Leia mais

INFORMÁTICA. 04. Pode-se dizer que tanto o Windows, quanto o Linux possuem o kernel aberto, podendo ser facilmente customizados pelos usuários.

INFORMÁTICA. 04. Pode-se dizer que tanto o Windows, quanto o Linux possuem o kernel aberto, podendo ser facilmente customizados pelos usuários. INFORMÁTICA 01. Ao contrário de um software proprietário, o software livre, ou de código aberto, permite que o usuário tenha acesso ao código-fonte do programa, o que torna possível estudar sua estrutura

Leia mais

Elaboração de uma metodologia para o desenvolvimento de interfaces com o

Elaboração de uma metodologia para o desenvolvimento de interfaces com o Daniel Delatorre Vanzin Elaboração de uma metodologia para o desenvolvimento de interfaces com o usuário Orientador: Professor Dr. Raul Sidnei Wazlawick Universidade Federal de Santa Catarina Centro Tecnológico

Leia mais

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SOFTWARE DE INVENTÁRIO DE SOFTWARE DE EQUIPAMENTOS DE REDE UTILIZANDO SESSION MESSAGE BLOCK

PROPOSTA PARA O TRABALHO DE CONCLUSÃO DE CURSO SOFTWARE DE INVENTÁRIO DE SOFTWARE DE EQUIPAMENTOS DE REDE UTILIZANDO SESSION MESSAGE BLOCK TURNO: noturno VERSÃO: 2 N o UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS DEPARTAMENTO DE SISTEMAS E COMPUTAÇÃO CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO COORDENAÇÃO DE TRABALHO

Leia mais

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG Instalação JDK Joyce França Professora de Ciência da Computação - IFNMG Máquina Virtual Java utiliza-se do conceito de máquina virtual, onde existe uma camada extra entre o sistema operacional e a aplicação,

Leia mais

Professor Emiliano S. Monteiro

Professor Emiliano S. Monteiro Professor Emiliano S. Monteiro To-Do Doing Done Conhecer os processos de desenvolvimento habilita o aluno a realizar uma melhor escolha de processo para uso em projetos futuros. A vantagem de conhecer

Leia mais

DOCUMENTAÇÃO SISTEMA DE ADMINISTRAÇÃO DE CONSULTÓRIO MÉDICO

DOCUMENTAÇÃO SISTEMA DE ADMINISTRAÇÃO DE CONSULTÓRIO MÉDICO DOCUMENTAÇÃO SISTEMA DE ADMINISTRAÇÃO DE CONSULTÓRIO MÉDICO SUMÁRIO Parte I Modelagem do Software Documento de Requisitos 1. Introdução 2. Descrição Geral do Sistema 3. Requisitos Funcionais 4. Requisitos

Leia mais

VisEdu-MAT: Visualizador de material educacional, módulo de matemática

VisEdu-MAT: Visualizador de material educacional, módulo de matemática VisEdu-MAT: Visualizador de material educacional, módulo de matemática José Ricardo Krauss Orientador: Dalton Solano dos Reis FURB Universidade Regional de Blumenau DSC Departamento de Sistemas e Computação

Leia mais

Curso online de Fundamentos em Android. Plano de Estudo

Curso online de Fundamentos em Android. Plano de Estudo Curso online de Fundamentos em Android Plano de Estudo Descrição do programa A Certificação Android ensina como usar as ferramentas necessárias para projetar e implantar aplicativos Android para dispositivos

Leia mais

ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO DE APLICATIVOS MÓVEIS MULTIPLATAFORMA

ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO DE APLICATIVOS MÓVEIS MULTIPLATAFORMA ANÁLISE COMPARATIVA DE FERRAMENTAS DE DESENVOLVIMENTO DE APLICATIVOS MÓVEIS MULTIPLATAFORMA Aluno: Nikson Barth Orientador: Marcel Hugo Roteiro Introdução Objetivos Fundamentação Teórica Trabalhos Correlatos

Leia mais

SIGERIS SISTEMA DE GESTÃO DE REDES DE INFRAESTRUTURAS PREDIAIS 1 SIGERIS - SYSTEM OF MANAGEMENT OF PREDIAL INFRASTRUCTURE NETWORKS

SIGERIS SISTEMA DE GESTÃO DE REDES DE INFRAESTRUTURAS PREDIAIS 1 SIGERIS - SYSTEM OF MANAGEMENT OF PREDIAL INFRASTRUCTURE NETWORKS SIGERIS SISTEMA DE GESTÃO DE REDES DE INFRAESTRUTURAS PREDIAIS 1 SIGERIS - SYSTEM OF MANAGEMENT OF PREDIAL INFRASTRUCTURE NETWORKS Rafael Marisco Bertei 2, Héber Martins Oliveira 3, Josué Toebe 4 1 Projeto

Leia mais

M V C, J S O N E X M L P R O F. M E. H É L I O E S P E R I D I Ã O

M V C, J S O N E X M L P R O F. M E. H É L I O E S P E R I D I Ã O M V C, J S O N E X M L P R O F. M E. H É L I O E S P E R I D I Ã O A P L I C A Ç Õ E S M O N O L Í T I C A S Na época dos computares independentes um aplicativo era desenvolvido para ser usado em uma única

Leia mais

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO CONCEITO DE SOFTWARE PROFESSOR CARLOS MUNIZ INTRODUÇÃO À TECNOLOGIA DA PROFESSOR CARLOS MUNIZ Software é um conjunto de programas de computador, que realiza procedimentos, dotado de regras, documentos e dados associados que fazem parte das operações

Leia mais

FERRAMENTA CONVERSORA DE INTERFACES GRÁFICAS DELPHI2JAVA-II

FERRAMENTA CONVERSORA DE INTERFACES GRÁFICAS DELPHI2JAVA-II UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO FERRAMENTA CONVERSORA DE INTERFACES GRÁFICAS DELPHI2JAVA-II FABRICIO FONSECA BLUMENAU

Leia mais

CP Introdução à Informática Prof. Msc. Carlos de Salles

CP Introdução à Informática Prof. Msc. Carlos de Salles CP 1015.1 Prof. Msc. Carlos de Salles PROGRAMA 1. CONCEITO DE SISTEMAS 1.1 Sistemas e sua classificação 1.2 Informações e Dados 1.3 O Processamento de Dados 1.4 O Computador e sua História 2. ESTRUTURA

Leia mais

Informática I. Aula 2. Ementa

Informática I. Aula 2.  Ementa Informática I Aula 2 http://www.ic.uff.br/~bianca/informatica1/ Aula 2-29/08/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

UTILIZAÇÃO DE TECNOLOGIAS MODERNAS PARA CADASTRAMENTO DAS FAMÍLIAS DA ATENÇÃO BÁSICA DE SAÚDE DO MUNICÍPIO DE COARI

UTILIZAÇÃO DE TECNOLOGIAS MODERNAS PARA CADASTRAMENTO DAS FAMÍLIAS DA ATENÇÃO BÁSICA DE SAÚDE DO MUNICÍPIO DE COARI UTILIZAÇÃO DE TECNOLOGIAS MODERNAS PARA CADASTRAMENTO DAS FAMÍLIAS DA ATENÇÃO BÁSICA DE SAÚDE DO MUNICÍPIO DE COARI Adrya da Silva Neres 1 Elionai de Souza Magalhães 2 1 Discente do Curso Técnico Integrado

Leia mais

Mestrado em Engenharia Física Tecnológica

Mestrado em Engenharia Física Tecnológica 21 a Aulas - Ambiente de Janelas: GTK+ Programação Mestrado em Engenharia Física Tecnológica Samuel M. Eleutério sme@tecnico.ulisboa.pt Departamento de Física Instituto Superior Técnico Universidade de

Leia mais

26 a 29 de novembro de 2013 Campus de Palmas

26 a 29 de novembro de 2013 Campus de Palmas Um Sistema para o Gerenciamento de Documentos e Processos das Coordenações de Curso Nome dos autores: Francisco Glaubos Nunes Clímaco 1 ; Marcelo Leineker Costaor 2 1 Aluno do Curso de Ciência da Computação;

Leia mais

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente

Leia mais

SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA

SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA SISTEMA DE INFORMAÇÃO GEOGRÁFICA APLICADA À GESTÃO PÚBLICA Julio Cesar do Carmo Junior 1, Osvaldo Cesar Pinheiro de Almeida 2 1 Informática para Gestão, Faculdade de Tecnologia, Botucatu, SP, Brasil. E-mail:

Leia mais

Delphi 2010 Plano de Aula 24 Aulas (Aulas de 1 Hora)

Delphi 2010 Plano de Aula 24 Aulas (Aulas de 1 Hora) 4596 - Delphi 2010 Plano de Aula 24 Aulas (Aulas de 1 Hora) Aula 1 Capítulo 1 - Introdução aodelphi 2010 1.1. O IDE do Delphi......... 21 1.1.1. Barra de Menus...... 22 1.1.2. Barras de Ferramentas.........

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 2 Princípios de Programação Prof. Belarmino Linguagem de Computadores Internamente os computadores usam instruções e armazenam os dados no formato numérico binário

Leia mais

DESENVOLVIMENTO DE UM APLICATIVO WEB DE GERENCIAMENTO E AUTOMAÇÃO DE PEDIDOS PARA EMPRESAS PRESTADORAS DE SERVIÇO NO RAMO ALIMENTÍCIO

DESENVOLVIMENTO DE UM APLICATIVO WEB DE GERENCIAMENTO E AUTOMAÇÃO DE PEDIDOS PARA EMPRESAS PRESTADORAS DE SERVIÇO NO RAMO ALIMENTÍCIO DESENVOLVIMENTO DE UM APLICATIVO WEB DE GERENCIAMENTO E AUTOMAÇÃO DE PEDIDOS PARA EMPRESAS PRESTADORAS DE SERVIÇO NO RAMO ALIMENTÍCIO Helen Glaucia Nunes Dias¹, Jean Victor Mendes dos Santos², Marco Antonio

Leia mais