UMA FERRAMENTA WEB PARA INTERAÇÃO COM DEFICIENTES AUDITIVOS

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

Download "UMA FERRAMENTA WEB PARA INTERAÇÃO COM DEFICIENTES AUDITIVOS"

Transcrição

1 CENTRO UNIVERSITÁRIO VILA VELHA CURSO DE CIÊNCIA DA COMPUTAÇÃO FABIELY ANDRIOLE RIZZI WILLIAM ALVES ROSA UMA FERRAMENTA WEB PARA INTERAÇÃO COM DEFICIENTES AUDITIVOS VILA VELHA 2010

2 FABIELY ANDRIOLE RIZZI WILLIAM ALVES ROSA UMA FERRAMENTA WEB PARA INTERAÇÃO COM DEFICIENTES AUDITIVOS Trabalho de Conclusão de Curso apresentado ao Centro Universitário Vila Velha como requisito parcial para a obtenção do grau de Bacharel em Ciência da Computação. Orientador: Vinícius Rosalen da Silva VILA VELHA 2010

3 FABIELY ANDRIOLE RIZZI WILLIAM ALVES ROSA UMA FERRAMENTA WEB PARA INTERAÇÃO COM DEFICIENTES AUDITIVOS BANCA EXAMINADORA Prof. Msc. Vinícius Rosalen da Silva Centro Universitário Vila Velha Orientador Prof. Msc. Erlon Pinheiro Centro Universitário Vila Velha Prof. Msc. Hudson Ramos Centro Universitário Vila Velha Trabalho de Conclusão de Curso aprovado em 25/11/2010.

4 Nós, Fabiely Andriole Rizzi e William Alves Rosa, autorizamos que a UVV, sem ônus, promova a publicação de nossa monografia em página própria na Internet ou outro meio de divulgação de trabalho científico. Data: / / Assinaturas:

5 Aos nossos pais pelo apoio irrestrito em todos os momentos de nossa vida. Às pessoas com deficiência auditiva e seus familiares que lutam pela igualdade de oportunidades, e que têm muito a nos ensinar sobre persistência e confiança. A todos que buscam um novo olhar para a questão da pessoa com deficiência.

6 AGRADECIMENTOS Agradecemos primeiramente à Deus, pela vida, por estar sempre em nossos caminhos, iluminando e nos guiando às escolhas certas. Aos nossos pais, que foram a base de tudo, nos apoiando em momentos difíceis com força, confiança, amor, nos ensinando a persistir em nossos objetivos e ajudando a alcançá-los. Aos nossos familiares, amigos e a todos que nos incentivaram e ajudaram ao longo dessa trajetória.

7 A voz dos surdos são as mãos e os corpos que pensam, sonham e expressam. As línguas de sinais envolvem movimentos que podem parecer sem sentido para muitos, mas que significam a possibilidade de organizar as ideias, estruturar o pensamento e manifestar o significado da vida para os surdos. Pensar sobre a surdez requer penetrar no mundo dos surdos e ouvir as mãos que, com alguns movimentos, nos dizem que para tornar possível o contato entre os mundos envolvidos se faz necessário conhecer a língua de sinais. Ronice Müller de Quadros

8 LISTA DE TABELAS 1 Tradução texto fonte para texto parcial Palavra relacionada com seu respectivo vídeo Resultado da tradução Cores

9 LISTA DE FIGURAS 1 Tela do FALIBRAS Tela do Dicionário de LIBRAS Tela do Player Rybená Tela do SOTAC Alfabeto brasileiro em LIBRAS Sinais de DESCULPAR, EVITAR E IDADE Componentes de um sistema de recuperação de informação Visão lógica do documento ao longo das fases de pré-processamento do texto Fluxograma passos do algoritmo RSLP Exemplo de declaração de regra do algoritmo RSLP Funcionamento da tradução Plataforma Java e suas edições Representação da divisão em camadas através do JEE Relacionamento entre Servlets, container e servidor web Diagrama de Casos de Uso Diagrama de Classes Diagrama de Atividade Cadastrar Palavra Diagrama de Atividade Excluir Palavra Diagrama de Atividade Criar Tópico Diagrama de Atividade Enviar Mensagem

10 21 Diagrama de Atividade Executar tradução da mensagem de texto para LIBRAS Diagrama de Sequência Cadastrar Palavra Diagrama de Sequência Editar Palavra Diagrama de Sequência Excluir Palavra Diagrama de Sequência Criar Tópico Diagrama de Sequência Enviar Mensagem Diagrama de Sequência Executar tradução da mensagem de texto para LIBRAS Tela Principal do JUDE Community Tela Principal do NetBeans IDE Tela Principal do MySQL Workbench Diagrama de Pacotes Diagrama de Classes do Domínio do Problema Diagrama de Classes de Gerência de Tarefas Diagrama de Classes de Gerência de Dados parte I Diagrama de Classes de Gerência de Dados parte II Modelo de Entidade e Relacionamento Diagrama de Classes de Interface com Usuário Ícones Tela Visualizar Palavras Tela Cadastro de Palavras Tela Lista de Tópicos Tela Novo Tópico Tela Tópico Acessado Tela Envio Mensagem de Texto Tela Envio Mensagem em LIBRAS

11 46 Tela Tradução da Mensagem Regras para redução do plural Regras para redução do feminino Regras para redução adverbial Regras para redução aumentativo-diminutivo Regras para redução nominal parte I Regras para redução nominal parte II Regras para remoção de vogais Regras para redução verbal parte I Regras para redução verbal parte II

12 LISTA DE SIGLAS API AVA DAO EaD EJB Application Programming Interface Ambiente Virtual de Aprendizagem Data Access Object Educação a distância Enterprise JavaBeans HTML HyperText Markup Language IBGE Instituto Brasileiro de Geografia e Estatística JDBC Java Data Base Connectivity JEE JME JMF JSE JSP Java Enterprise Edition Java Micro Edition Java Media Framework Java Standard Edition JavaServer Pages JUDE Java and UML Developer Environment LGP Língua Gestual Portuguesa LIBRAS Língua Brasileira de Sinais MER Modelo de Entidade e Relacionamento MVC Model-View-Controller PLN RI Processamento de Linguagem Natural Recuperação de Informação

13 RSLP Removedor de Sufixos da Língua Portuguesa SGBD Sistema Gerenciador de Banco de Dados SRI TI TIC Sistema de Recuperação de Informação Tecnologia da Informação Tecnologias de Comunicação e Informação UML Linguagem de Modelagem Unificada WWW World Wide Web XHTML extensible Hypertext Markup Language XML extensible Markup Language

14 SUMÁRIO RESUMO ABSTRACT 1 INTRODUÇÃO JUSTIFICATIVA OBJETIVO ESTRUTURA DOS CAPÍTULOS TRABALHOS CORRELATOS FALIBRAS DICIONÁRIO DE LIBRAS PLAYER RYBENÁ SOTAC REFERENCIAL TEÓRICO AMBIENTE VIRTUAL DE APRENDIZAGEM LIBRAS RECUPERAÇÃO DE INFORMAÇÃO Técnica de Stemming Métodos de Stemming Stemmers para a Língua Portuguesa PROCESSO DE TRADUÇÃO DA MENSAGEM EM PORTUGUÊS PARA LIBRAS

15 4 TECNOLOGIAS LINGUAGEM JAVA Plataforma JEE Java Servlets e JavaServer Pages BIBLIOTECAS DE CLASSE DO JAVA ESTUDO DE CASO ESPECIFICAÇÃO DE REQUISITOS Descrição do Mini-Mundo Diagrama de Caso de Uso Descrições de Caso de Uso Manter Palavra Manter Tópico Manter Mensagem Traduzir mensagem textual para LIBRAS ESPECIFICAÇÃO DE ANÁLISE Diagrama de Classes Diagramas de Atividade Diagramas de Sequência ESPECIFICAÇÃO DE PROJETO Linguagens e Ferramentas utilizadas Arquitetura do Sistema Domínio do Problema (DP) Gerência de Tarefas (GT) Gerência de Dados (GD) Interface com Usuário (IU) Padrões de Interface

16 5.3.4 Protótipo CONCLUSÃO CONTRIBUIÇÃO DAS PESQUISAS RETORNO PARA O GRUPO E TRABALHOS FUTUROS REFERÊNCIAS 85 ANEXO A -- REGRAS DE REMOÇÃO DOS SUFIXOS 88

17 RESUMO Este trabalho apresenta o desenvolvimento de uma ferramenta web para interação entre pessoas surdas e ouvintes com a utilização da tradução de textos da Língua Portuguesa para a Língua Brasileira de Sinais. São apresentados alguns trabalhos correlatos, que em sua maioria se resumem apenas à tradução de textos em Português para LIBRAS. Dessa forma, esta proposta visa criar uma possibilidade de interação entre as pessoas surdas com os demais indivíduos da sociedade, buscando contribuir não só para a inclusão digital, como também para inclusão social desses indivíduos. Palavras-chave: Interação. Tradução. LIBRAS.

18 ABSTRACT This paper presents the development of a web tool for interaction between deaf people and listeners people using the translation of texts from the Portuguese for the Brazilian Sign Language. We present some related work, which mostly boil down only to the translation of texts into Portuguese to LIBRAS. Therefore, this proposal aims to create a possibility of interaction between deaf people with other individuals in society, seeking not only contribute to digital inclusion, but also for social inclusion of these individuals. Keywords: Interaction. Translation. LIBRAS.

19 18 1 INTRODUÇÃO A Língua Brasileira de Sinais (LIBRAS) é a língua adotada pelos surdos no Brasil. Trata-se da maneira com a qual os surdos se comunicam entre si e com os ouvintes. A aprendizagem e aquisição dela são necessárias não apenas por parte dos surdos, mas também dos ouvintes [1]. Segundo dados do IBGE (IBGE-2000) cerca de de brasileiros são portadores de deficiências auditivas, de uma forma geral, sendo que são surdos. Estima-se que cerca de 60% conhecem a Língua Brasileira de Sinais, mas a comunicação entre surdos e ouvintes é difícil, uma vez que a grande maioria da população não a conhece [2]. Sendo assim, essa falta de comunicação dificulta a integração dos surdos com as demais parcelas da população, como também, o seu processo de aprendizagem. Vale destacar que essa capacidade de comunicação linguística apresenta-se como um dos principais responsáveis pelo processo de desenvolvimento da pessoa surda em toda a sua potencialidade, para que ela possa desempenhar seu papel social e integrar-se verdadeiramente na sociedade. Ultimamente, promover a inclusão social dos surdos e demais portadores de necessidades especiais tem sido tema de debate e objeto de estudo por parte de professores e profissionais das mais diversas áreas, tais como: educação, assistência social, informática na educação, psicologia, dentre outras. Como em diversas outras situações, as Tecnologias de Comunicação e Informação, as chamadas TIC, se usadas de forma adequada, têm buscado contribuir para solucionar, ou ao menos minimizar, os problemas enfrentados pela sociedade atual. Em relação aos portadores de necessidades especiais, as iniciativas ainda têm sido muito tímidas, mas começam a surgir, sejam através do desenvolvimento de sistemas tradutores de LIBRAS ou de ambientes computacionais com preocupações de

20 19 acessibilidade. Em relação à área de informática na educação, algumas iniciativas têm surgido, como a criação de ambientes computacionais interativos para a aprendizagem e aquisição da LIBRAS. Esses ambientes visam contribuir para uma maior interação e convívio entre surdos e ouvintes. No entanto, as iniciativas ainda são poucas, fazendo-se necessário o desenvolvimento de mais ambientes dessa natureza. Diante desse cenário, será apresentada uma ferramenta web para interação entre pessoas surdas com a utilização da tradução da Língua Portuguesa para a Língua Brasileira de Sinais. Diferentemente das ferramentas encontradas na literatura, que em sua maioria se resumem à tradução de textos em Português para LIBRAS, essa proposta cria também a possibilidade de interação entre pessoas surdas com os demais indivíduos de nossa sociedade, buscando contribuir não só para a inclusão digital, como também para a inclusão social dessa parcela da sociedade. 1.1 JUSTIFICATIVA Todas as pessoas ditas normais, e também uma grande proporção das pessoas com dificuldades especiais, aprendem a linguagem de uma forma semelhante e em um mesmo período de tempo. No entanto, não se pode esquecer as diferenças individuais, seja de uma pessoa surda ou ouvinte, que é o caso específico em questão, pois existem pessoas que apresentam dificuldades seletivas no aprendizado da linguagem. Nesse caso surgem as seguintes questões: a dificuldade é inerente à discriminação auditiva; o indivíduo pode não só apresentar problemas de compreensão, mas também articular as palavras de forma inadequada [3]. A capacidade de processar rapidamente mensagens linguísticas depende de um lóbulo temporal esquerdo intacto. Assim, danos a esta zona neural ou o seu desenvolvimento com algum tipo de anomalia, em geral, são suficientes para produzir problemas de linguagem [4]. Mesmo que muitos indivíduos apresentem dificuldades de inteligência linguística, esta não é simplesmente uma forma de inteligência auditiva, pois pessoas surdas podem adquirir a linguagem, dominando sistemas alternativos de comunicação. Desse modo, diz-se que a comunicação dos surdos se dá por sistemas de comunicação não-verbais, classificados em não-auxiliares e auxiliares. Os não-auxiliares baseiam-se em recursos do próprio indivíduo, sem outro suporte além do gesto, que

21 20 faz uso da anatomia visual e da anatomia da mão e do braço (línguas de sinais). Em contrapartida, sistemas auxiliares são todas as ajudas técnicas que servem de suporte à comunicação, seja um simples papel até as máquinas de escrever, chegando aos computadores e a outras tecnologias relacionadas, como sintetizadores de voz [4]. A Língua Brasileira de Sinais é considerada a linguagem natural dos surdos, na qual eles aprendem com mais facilidade e rapidez, além de terem acesso a uma linguagem completa, o que possibilita um desenvolvimento cognitivo e social adequado, entre outros tipos de desenvolvimento, adquirindo, assim, a língua materna do seu país como sua segunda língua [5]. É importante salientar que os surdos têm maiores dificuldades nos processos de interação. De um modo geral, o surdo não acessa a informação escrita como as pessoas ouvintes e apresenta muita resistência à escrita de textos e leitura de informações, devido ao fato da Língua Portuguesa não ser considerada sua língua materna. Acredita-se que a produção de um texto significativo pode ocorrer a par de um lento e cumulativo domínio gráfico, ou seja, essa produção é um meio de relação afetiva do indivíduo com a palavra escrita [6]. Portanto, a possibilidade da pessoa surda ter como fonte de apoio um sistema de tradução da Língua Portuguesa para LIBRAS visa à autonomia e pode trazer resultados significativos no que diz respeito ao processo de construção de conhecimento da linguagem. Esta capacidade também proporciona condições para o seu desenvolvimento cognitivo, além de aumentar as possibilidades de interação com outras pessoas e possibilitar o desenvolvimento social dos portadores de deficiência auditiva. Se essa interação for suportada por tecnologias, além da inclusão social pode-se também incluir digitalmente tais indivíduos, o que na sociedade atual torna-se algo, além de desejável, imprescindível. 1.2 OBJETIVO A partir das pesquisas realizadas foi possível perceber o quão escassos são os softwares voltados para auxiliar os deficientes auditivos no que diz respeito à sua forma de comunicação. São visíveis as dificuldades que os surdos têm para ler, escrever e compreender a Língua Portuguesa, já que sua língua materna é a Língua Brasileira de Sinais.

22 21 Dessa forma, o objetivo deste trabalho é o desenvolvimento de uma ferramenta web, um fórum de discussão que permite não só a tradução de mensagens na Língua Portuguesa para a Língua Brasileira de Sinais, como também o envio de vídeos contendo a mensagem em LIBRAS, funcionalidade esta que não foi observada em nenhum dos sistemas estudados. 1.3 ESTRUTURA DOS CAPÍTULOS A seguir é apresentada uma breve descrição sobre a organização dos próximos capítulos deste trabalho. No capítulo 2 são expostos alguns sistemas computacionais que serviram de apoio para a construção das ideias, contribuindo no desenvolvimento da ferramenta. O capítulo 3 contém um referencial teórico, apresentando a definição de Ambiente Virtual de Aprendizagem e os principais conceitos da Língua Brasileira de Sinais e suas representações. Também é feito um estudo sobre a área de Recuperação de Informação, dando ênfase em um dos processos realizados nos Sistemas de Recuperação de Informação - a etapa de pré-processamento do texto. Além disso, é explicado como será feita a tradução no fórum, da mensagem de texto em Português para LIBRAS, seguindo os conceitos mencionados anteriormente. O capítulo 4 relata um estudo das tecnologias que foram necessárias para o desenvolvimento do sistema, incluindo as bibliotecas de classe do Java que fornecem um conjunto de funções que serviram de suporte na construção da ferramenta. No capítulo 5 é feito um estudo de caso sobre o sistema proposto, envolvendo as fases de especificação de requisitos, de análise e de projeto, a fim de compreender o problema e obter um maior conhecimento a respeito das particularidades do negócio. O capítulo 6 contém a conclusão do trabalho, mostrando os pontos que foram abordados durante o mesmo. Além de serem apresentadas algumas sugestões de trabalhos futuros. Por fim, são apresentadas as referências dos trabalhos e conceitos que nortearam o desenvolvimento desta monografia.

23 22 2 TRABALHOS CORRELATOS Neste capítulo serão apresentadas algumas ferramentas computacionais, encontradas na literatura especializada, que promovem a tradução de textos do Português para a LIBRAS. 2.1 FALIBRAS O projeto FALIBRAS [2] foi concebido, inicialmente, como um sistema que ao captar a fala no microfone exibe, no monitor de um computador, a tradução do que foi dito em LIBRAS, na sua forma gestual, animada e em tempo real. O ambiente FALIBRAS possui recursos de autoria de tradutores e de tradução de textos na Língua Portuguesa para apresentações na forma gestual animada da Língua Brasileira de Sinais. O objetivo desse sistema é facilitar a comunicação entre ouvintes e surdos, além de facilitar a aprendizagem da Língua Portuguesa para portadores de deficiência auditiva, bem como o aperfeiçoamento dos conhecimentos de LIBRAS do usuário surdo ou ouvinte (por exemplo: intérpretes). Nesse ambiente existe um recurso para permitir a edição de textos a partir do reconhecimento da voz de uma pessoa no idioma Português. De uma maneira geral, o sistema capta a voz e a transforma em texto usando recursos do IBM Via voice [7]. Em seguida, esse texto é analisado por um interpretador que, além de corrigir a ortografia, definirá o contexto em que as palavras estão inseridas na frase, a fim de mostrar a tradução adequada em LIBRAS. Uma tarefa complexa desse processo é a tradução de Português para LIBRAS, pois, envolvendo duas línguas naturais, com todas as suas particularidades, faz-se necessário o uso de técnicas de processamento de linguagem natural. A Figura 1 apresenta o ambiente FALIBRAS.

24 23 Figura 1: Tela do FALIBRAS 2.2 DICIONÁRIO DE LIBRAS O site Acessibilidade Brasil [8] disponibiliza um dicionário on-line, feito em Flash, para divulgar, difundir e capacitar as pessoas para o uso da Língua Brasileira de Sinais, que é muito utilizada por grande parte dos deficientes auditivos, por suas famílias, amigos e profissionais de ensino e saúde. Este dicionário permite consultar palavras em Português, na qual são apresentados: o significado da palavra, um exemplo em uma frase, um exemplo em LIBRAS, o vídeo em LIBRAS e a classe gramatical da palavra. Consultas por assunto, onde é escolhida a palavra desejada, permitem a apresentação de diversas informações, tais como na consulta por palavras. Consultas por sinais de mão, em que é necessário escolher um dos 73 sinais mostrados na tela, permite visualizar uma lista de palavras para as quais o mesmo sinal é utilizado. E por fim, podem ser feitas consultas através de palavras-chave. A Figura 2 apresenta o Dicionário on-line disponibilizado pelo site Acessibilidade Brasil.

25 24 Figura 2: Tela do Dicionário de LIBRAS 2.3 PLAYER RYBENÁ O Player Rybená [9] é uma ferramenta proprietária e funciona como um tradutor que auxilia na compreensão do conteúdo de textos em Português. Este sistema é capaz de converter qualquer página da Internet ou texto escrito em Português para a Língua Brasileira de Sinais. Com este recurso no site os usuários podem selecionar com o mouse qualquer parte do texto do site e ver a tradução em LIBRAS por intermédio de um desenho animado. A Figura 3 apresenta um site que utiliza a ferramenta Player Rybená.

26 25 Figura 3: Tela do Player Rybená 2.4 SOTAC O SOTAC [10] é um ambiente desktop, que foi desenvolvido como uma dissertação de Mestrado do Programa de Pós-Graduação do Departamento de Informática da UFES. O ambiente apresenta uma proposta de tradução automática baseada em conhecimento, um sistema de autoria 1 e uso de tradutores automatizados para apoio à tradução, tendo como estudo de caso a tradução de Português para LIBRAS. Esse sistema possui um ambiente para manipulação dos elementos utilizados no processo de tradução automática e um para tradução automática de textos de uma língua-fonte, em forma de texto, para uma língua-alvo, em forma de texto, vídeo e/ou áudio. A Figura 4 apresenta a tela principal do SOTAC. 1 Um sistema de autoria possibilta a simplificação do processo de criação de um programa multimídia.

27 Figura 4: Tela do SOTAC 26

28 27 3 REFERENCIAL TEÓRICO Neste capítulo será apresentado um pequeno estudo sobre Ambiente Virtual de Aprendizagem, no qual pretende-se, como um projeto futuro, implantar a ferramenta desenvolvida. Além disso, serão apresentados alguns conceitos que são importantes para o entendimento do trabalho, definindo LIBRAS, algumas de suas características e um estudo sobre a área de Recuperação de Informação, contendo as etapas de pré-processamento de um texto e a técnica de stemming que será aplicada no desenvolvimento da ferramenta. A partir desses temas, será explicado como é feita a tradução no fórum, da mensagem em Português para LIBRAS. 3.1 AMBIENTE VIRTUAL DE APRENDIZAGEM É notável que o avanço tecnológico possibilitou uma nova realidade educacional: o ensino mediado por computador. A inserção do computador na educação provoca uma mudança de comportamento dos participantes do processo ensino-aprendizagem. Um de seus efeitos é o aumento crescente da quantidade de informação disponível e acessível aos alunos e professores. Paralelamente, surge a possibilidade de contato remoto entre os participantes do processo através da comunicação pela Internet. Desta forma, a sala de aula perde gradativamente suas fronteiras de tempo e espaço. Esse novo ambiente de aprendizagem favorece também a reflexão e a reformulação das metodologias de ensino praticadas nas escolas e nas universidades. Ambientes Virtuais de Aprendizagem são softwares educativos que permitem que ocorra o processo ensino-aprendizagem, através da mediação pedagógica entre alunos e professor ou um grupo de professores que se encontram geograficamente dispersos. Como ferramenta para Educação a distância (EaD), também podem ser utilizados para complementar aulas presenciais [11]. Os exemplos mais conhecidos destes tipos de ambientes são Moodle [12] e TelEduc [13].

29 28 No ensino a distância, o AVA é o espaço que organiza os recursos e ferramentas para acesso aos cursos e permite a interação com os conteúdos, realização de atividades de aprendizagem e a interação com o professor e colegas. Para ocorrer essa interação o AVA possui ferramentas de comunicação síncronas ou assíncronas. A comunicação assíncrona é aquela onde o receptor recebe a informação num tempo posterior, como exemplo tem-se as listas e os fóruns de discussão. Já a síncrona é a que possibilita que as pessoas se comuniquem em tempo real, como nos chats [11]. 3.2 LIBRAS A LIBRAS, língua materna dos surdos brasileiros, é uma língua visual-espacial articulada através das mãos, das expressões faciais e do corpo. A figura 5 representa o alfabeto brasileiro em LIBRAS. Figura 5: Alfabeto brasileiro em LIBRAS A LIBRAS, teve sua origem através do Alfabeto Manual Francês que chegou ao Brasil em 1856, sendo que estudos sobre essa língua foram iniciados no Brasil em Como é derivada tanto de uma Língua de Sinais autóctone quanto da língua gestual francesa, é semelhante a outras Línguas de Sinais da Europa e da América. A LIBRAS não é a simples gestualização da Língua Portuguesa, e sim uma língua à parte, como comprova o fato de que em Portugual usa-se uma Língua de Sinais diferente, a Língua Gestual Portuguesa (LGP) [1]. Ao contrário do que muitos imaginam, as Línguas de Sinais não são simplesmente mímicas e gestos soltos, utilizados pelos surdos para facilitar a comunicação. São

30 29 línguas com estruturas gramaticais próprias. A LIBRAS, como as Línguas de Sinais utilizadas em outros países ou como diversas línguas naturais e humanas existentes, apresenta organização, estrutura formal e gramatical próprias, e é composta pelos níveis linguísticos: fonologia, morfologia, sintaxe e semântica [14] [15]. Da mesma forma que nas línguas orais-auditivas existem palavras, nas Línguas de Sinais também existem itens lexicais, que recebem o nome de sinais. Assim sendo, para se comunicar em LIBRAS, não basta apenas conhecer sinais, é necessário conhecer a sua gramática para combinar as frases, estabelecendo a comunicação. Os sinais surgem da combinação de configurações de mão, movimentos e de pontos de articulação - locais no espaço ou no corpo onde os sinais são feitos, os quais, juntos compõem as unidades básicas dessa língua e expressam diferentes significados [16]. Logo, podem ser encontrados os seguintes parâmetros que formarão os sinais [1]: Configuração das mãos: são formas das mãos que podem ser da datilologia (alfabeto manual) ou outras formas feitas pela mão predominante (mão direita para os destros ou esquerda para os canhotos), ou pelas duas mãos. Os sinais DES- CULPAR, EVITAR e IDADE, apresentados na imagem 6, por exemplo, possuem a mesma configuração de mão (com a letra y). A diferença é que cada uma é produzida em um ponto diferente no corpo. Figura 6: Sinais de DESCULPAR, EVITAR E IDADE. Ponto de articulação: é o lugar onde incide a mão predominante configurada, ou seja, local onde é feito o sinal, podendo tocar alguma parte do corpo ou estar em um espaço neutro. Movimento: os sinais podem ter um movimento ou não. Por exemplo, os sinais PENSAR e EM-PÉ não têm movimento; já os sinais EVITAR e TRABALHAR possuem movimento.

31 30 Expressão facial e/ou corporal: as expressões faciais/corporais são de fundamental importância para o entendimento real do sinal, sendo que a entonação em Língua de Sinais é feita pela expressão facial. Orientação/Direção: os sinais têm uma direção com relação aos parâmetros acima. Assim, os verbos IR e VIR se opõem em relação à direcionalidade. A LIBRAS não dispõe de sinais para artigos, para a maior parte das preposições e conjunções do Português, já que o significado expresso por tais elementos está contido no próprio sinal. Os modos e tempos verbais, assim como os sufixos e prefixos, são produzidos por movimentos das mãos no espaço [16]. Dessa forma, a LIBRAS é representada na Língua Portuguesa a partir de regras básicas, que serão utilizadas no sistema desenvolvido. A seguir são apresentadas essas convenções [1]: Os sinais em LIBRAS são representados na Língua Portuguesa em letra maiúscula. Exemplo: CASA, INSTRUTOR; A datilologia usada para expressar nomes de pessoas, lugares e outras palavras que não possuem sinal, é representada pelas palavras separadas por hífen. Exemplo: M-A-R-I-A, H-I-P-Ó-T-E-S-E; Um sinal, que é traduzido por duas ou mais palavras em Língua Portuguesa, é representado pelas palavras correspondentes separadas por hífen. Exemplo: CORTAR-COM-FACA, QUERER-NÃO não querer, MEIO-DIA, AINDA-NÃO etc; Os verbos são apresentados no infinitivo. Todas as concordâncias e conjugações são feitas no espaço. Exemplo: EU QUERER CURSO; As frases obedecem à estrutura da LIBRAS, e não à do Português. Exemplo: VOCÊ GOSTAR CURSO? (Você gosta do curso?);

32 31 Na LIBRAS não há desinências para gêneros (masculino e feminino) e número (plural), o sinal, representado por palavra da Língua Portuguesa que possui estas marcas, termina com o para reforçar a ideia de ausência e não haver confusão. Exemplo: AMIG@ amiga(s) e amigo(s), MUIT@ muita(s) e muito(s), EL@ ela(s), ele(s), ME@ minha(s) e meu(s), etc. 3.3 RECUPERAÇÃO DE INFORMAÇÃO Recuperação de Informação (RI) é uma área da Ciência da Computação que lida com o armazenamento de documentos e a recuperação automática de informação associada a eles. É uma área de pesquisa relacionada à busca por informações em documentos, busca por documentos propriamente ditos e buscas em banco de dados [17]. Um sistema de Recuperação de Informação (SRI) pode ser estruturado conforme a figura 7 [18]. Figura 7: Componentes de um sistema de recuperação de informação O objetivo principal de um SRI é, basicamente, organizar uma coleção de documentos, receber do usuário consultas (que exprimem textualmente sua necessidade

33 32 de informação), processá-las e retornar ao usuário o máximo de documentos relevantes, ou seja, que contenham a informação desejada pelo mesmo [19]. A recuperação eficaz de informações relevantes está diretamente ligada tanto pela tarefa do usuário, quanto pela visão lógica dos documentos. Nem todas as palavras num texto são igualmente importantes para representá-lo semanticamente. Geralmente substantivos (ou grupos de substantivos) são mais representativos do conteúdo de um documento. Por isso, usar um conjunto de todas as palavras numa coleção para indexar os documentos gera muito ruído para a tarefa de recuperação. A fim de reduzir este problema, deve-se diminuir o conjunto de palavras usadas na representação do documento. Para tanto, uma das técnicas que pode ser utilizada é a de pré-processamento dos documentos numa coleção, que tem por objetivo diminuir o tamanho do vocabulário, o que leva a um melhor desempenho dos Sistemas de Recuperação de Informação. O pré-processamento pode ser dividido basicamente em cinco operações sobre os textos, que serão listadas logo abaixo [17]. Sendo que o sistema computacional proposto abordará as três primeiras operações. Análise Léxica: nesta etapa busca-se fazer um tratamento dos caracteres do texto, eliminando, por exemplo, espaços em branco, hífens, acentos, pontuações, etc. Eliminação de stopwords: as stopwords são palavras com pouco significado, tais como artigos, preposições, etc. Aplicação da técnica de Stemming das palavras restantes: a técnica de stemming busca reduzir uma palavra a sua raiz, eliminando seus sufixos e prefixos, permitindo a recuperação de variações sintáticas das palavras. Seleção de termos de indexação: nesta etapa são escolhidos os termos de indexação que melhor representarão um documento. Podem ser usadas todas as palavras ou escolher algumas mais significativas e isso pode ser feito de forma manual ou automática.

34 33 Construção de estruturas de categorização de termos: essa etapa é importante para a classificação de documentos. Estas construções, tais como thesaurus, tem como objetivo extrair estruturas diretamente representadas no texto, para permitir, por exemplo, a expansão de consultas. Thesaurus é uma lista précompilada de palavras importantes num determinado domínio de conhecimento, sendo que para cada palavra dessa lista, é criado um conjunto de outras palavras relacionadas. A figura 8 representa uma visão lógica do documento com o resultado obtido quando cada uma das fases acima está concluída. Conclui-se que ao utilizar as operações de pré-processamento em um texto é possível transformar a visão lógica dos documentos a partir de sua representação total do texto (full text) para a de um conjunto de termos de indexação de alto nível [17]. Figura 8: Visão lógica do documento ao longo das fases de pré-processamento do texto

35 Técnica de Stemming Stemmers são programas ou algoritmos que têm por objetivo reduzir palavras a uma forma comum de representação, chamada de stem (ou radical) através do processo de conflação, que significa fundir ou combinar as formas morfologicamente variantes de um termo [17]. A técnica de stemming consiste em reduzir as palavras aos seus radicais, através da remoção de seus afixos (sufixos e prefixos), de forma que palavras morfologicamente relacionadas sejam representadas por uma única forma comum, permitindo assim serem combinadas. Por exemplo, as palavras aprendo, aprendeu e aprendendo (todas formas derivadas do verbo aprender ) poderiam, através da remoção de seus sufixos, ser reduzidas ao stem aprend. Este radical não faz sentido como palavra na Língua Portuguesa, pois não é necessariamente o mesmo radical linguístico da palavra. Apesar disso, é possível manter informação suficiente sobre as palavras que o originaram, não perdendo precisão e permitindo recuperá-las em uma pesquisa [17]. Apesar das vantagens citadas, o uso de stemming pode causar erros que são divididos em duas categorias [20]: Overstemming ou excesso de radicalização: ocorre quando parte do stem também é removido na extração do sufixo, podendo resultar na conflação de palavras não relacionadas. Um exemplo é a remoção do sufixo inho (indicando diminutivo), que é correta na palavra filhinho, mas incorreta na palavra linho. Understemming: este erro ocorre quando o sufixo não é completamente removido da palavra, resultando em um stem incorreto. Por exemplo, a palavra referência cujo stem obtido é referênc, em vez de refer, que seria considerado o correto Métodos de Stemming São citados na literatura três métodos de stemming de palavras. Estes métodos são brevemente descritos a seguir [17]:

36 35 Consulta de dicionários: a ideia deste método é possuir um dicionário com todas as palavras de determinada língua e seus respectivos radicais. A palavra a ser processada é procurada no dicionário, e quando encontrada, consulta-se seu stem. Uma grande falha neste método é que obviamente não é viável identificar absolutamente todas as palavras e suas variantes de uma língua, além do ônus que representa armazenar tal dicionário, devido as suas dimensões. Se fosse possível criar este dicionário, este método de stemming certamente apresentaria os melhores resultados, pois seria exato. Variedade de sucessores: necessita de um corpus 3 definido antes do processamento das palavras. Este método utiliza substrings de uma palavra, contabilizando o número de caracteres que a sucedem nas palavras do corpus. Este número é a chamada variedade de sucessores, que será cada vez menor quanto mais longa for a substring utilizada. Este método é divido em três etapas distintas: determinação da variedade de sucessores, segmentação da palavra e, finalmente, a seleção do stem. Remoção de afixos (sufixos/prefixos): este método baseia-se na remoção de afixos das palavras, que resultam em seus respectivos radicais. Estes afixos são definidos em um conjunto de regras pré-definidas, que é verificado a cada palavra processada. Caso a palavra possua o prefixo ou sufixo definido na regra, ele é removido (ou substituído por outro, para remoção em uma regra posterior). Ao contrário do método de Variedade de Sucessores, a Remoção de afixos é dependente do vocabulário da língua, pois os afixos mais conhecidos devem ser definidos nas regras citadas. Além destas, podem existir também listas de exceções, que contêm palavras que não devem ter seus afixos removidos, evitando-se assim erros de overstemming. A maioria dos stemmers em uso baseiam-se neste método. 3 Uma coletânea de textos em formato eletrônico, compilada segundo critérios específicos, considerada representativa de uma língua (ou da parte que se pretende estudar), destinada à pesquisa.

37 Stemmers para a Língua Portuguesa Uma das características dos algoritmos de stemming que utilizam remoção de afixos é que estes são extremamente dependentes das línguas para as quais foram escritas, pois baseiam-se diretamente nas regras de formação de palavras de cada língua para detectá-los e removê-los [21]. A maioria destes algoritmos por terem sido desenvolvidos para a Língua Inglesa não apresentam um desempenho tão bom quanto o obtido sobre a língua original, quando aplicados a línguas derivadas do latim como o Português, pois estas são mais complexas gramaticamente. Além disso, a Língua Portuguesa apresenta inflexões que geralmente causam alterações profundas no radical das palavras, impedindo seu processo de conflação, no qual o stemming é baseado. Por este motivo, há a necessidade de se utilizar um stemmer especialmente projetado para o processamento de palavras escritas em Português. Dentre os algoritmos propostos para a Língua Portuguesa, três se destacam: a versão para o Português do algoritmo de Porter (2005); o algoritmo STEMBR, proposto por Alvares, Garcia e Ferraz (2005) e o Removedor de Sufixos da Língua Portuguesa (RSLP), proposto por Orengo e Huyck (2001). Sendo estes baseados no método de remoção de afixos. O desempenho desses três algoritmos foram medidos e comparados em vários trabalhos. O algoritmo RSLP, ao ser comparado com a versão para Português do algoritmo de Porter, é considerado mais eficiente, por cometer um número menor de erros de overstemming e de understemming. Ao ser comparado com o algoritmo de STEMBR, estes mostraram-se equivalentes, apresentando resultados praticamente idênticos na maioria das avaliações. Portanto, para a Língua Portuguesa, o algoritmo mais moderno e mais completo é o proposto por Orengo [22]. Dessa forma, a seguir apresenta-se um breve estudo sobre esses algoritmos, sendo que o algoritmo implementado por Orengo é o que será utilizado na ferramenta proposta neste trabalho Algoritmo de Porter O algoritmo original de Porter (1980) [23], projetado para a Língua Inglesa, é baseado em uma série de regras e condições aplicadas sequencialmente. Uma regra é definida na forma

38 37 (condição) sufixo1 -> sufixo2 onde: a) (condição) é uma condição a ser testada (por exemplo, tamanho da palavra restante após a remoção do sufixo1). b) sufixo1 é o sufixo a ser procurado na palavra sendo processada. c) sufixo2 é o sufixo a ser adicionado à palavra resultante da remoção de sufixo1. As regras são aplicadas caso o item b seja encontrado na palavra analisada e as condições definidas no item a sejam atendidas, sendo então o sufixo1 removido da palavra e substituído por sufixo2, caso este esteja definido. Assim, aplicando-se estas regras em uma sequência pré-definida, a palavra resultante será o stem da palavra original. São definidas ao total cinco regras, responsáveis pela remoção de sufixos de plural, sufixos de verbo e sufixos comuns [23]. A implementação do algoritmo de Porter para Português, apresentada posteriormente, segue o mesmo modelo do algoritmo original, possuindo também cinco regras básicas [23]: a) Regra de remoção dos sufixos comuns. b) Regra de remoção de sufixos verbais, executado caso a regra em a não tenha modificado a palavra. c) Regra de remoção da vogal i, caso precedida da consoante c no final da palavra. d) Regra de remoção de sufixos residuais ( os, a, i, o, á, í, ó ), executada caso ambas as regras a e b não tenham alterado a palavra. e) Regra de remoção dos sufixos e, é e ê, tratamento da cedilha e tratamento das sílabas gue, gué e guê. Antes das aplicações das regras, as vogais nasalizadas ã e õ são substituídas no termo por a~ e o~. Após a aplicação das regras, essas vogais nasalizadas são retornadas à sua forma original Algoritmo STEMBR O algoritmo STEMBR [24] foi proposto baseado em um estudo estatístico de onde

39 38 se obteve uma lista mostrando a frequência da última letra das palavras processadas. Ele se diferencia dos outros dois algoritmos analisados, pois realiza também a redução de prefixos. O algoritmo possui basicamente três módulos aos quais a palavra a ser processada é submetida [24]: a) Tratamento de casos específicos, onde os módulos b e c não devem ser aplicados, como verbos em suas formas irregulares de conjugação e palavras muito comuns (conhecidas como stopwords). b) Redução de prefixos, a partir de uma lista de prefixos conhecidos e suas execeções. c) Redução de sufixos, considerado o processo mais importante a ser executado. Consiste em um conjunto de regras, onde cada regra indica o sufixo a ser removido, o tamanho mínimo do stem resultante e uma lista de exceções, de forma similar ao algoritmo RSLP. Como será visto, este algoritmo guarda várias semelhanças como o RSLP apresentado a seguir Algoritmo Removedor de Sufixos da Língua Portuguesa (RSLP) Foi proposto por Orengo e Huyck (2001) [20] um algoritmo especialmente projetado para o Português, chamado de Removedor de Sufixos da Língua Portuguesa, ou RSLP. Sua arquitetura é similar a do algoritmo de Porter, no sentido de aplicar sucessivos passos de remoção de sufixos sobre uma palavra, definidos através de regras. A diferença é que, além de utilizar regras específicas para o Português, conta também com um dicionário de exceções, evitando assim remover sufixos de palavras cuja terminação é somente similar a um sufixo (por exemplo, o sufixo de diminutivo inho pode ser removido de passarinho, mas não da palavra linho, apesar desta terminar com uma sequência de caracteres idêntica ao sufixo em questão). O processo de stemming do RSLP é definido com uma sequência de oito passos de redução executados em uma determinada ordem. A figura 9 apresenta um fluxograma com estes passos [20].

40 Figura 9: Fluxograma passos do algoritmo RSLP 39

41 40 Cada passo possui um conjunto de regras (descritas no anexo A) que são examinadas em sequência, de forma que o maior sufixo possível é testado antes de um sufixo menor. Isso garante que, por exemplo, o sufixo s, pertencente a redução de plural, não seja incorretamente removido de uma palavra antes do sufixo es ser testado. Cada regra contém os seguintes itens [20]: a) O sufixo a ser removido; b) O tamanho mínimo para o stem resultante após a remoção do sufixo. Desta forma, evita-se assim remover sufixos de palavras muito pequenas, que resultariam em stems incorretos; c) O sufixo de substituição; d) E uma lista de exceções. Cada regra é declarada na forma apresentada na figura 10 [20]. Figura 10: Exemplo de declaração de regra do algoritmo RSLP As regras de um passo são testadas sucessivamente, verificando-se o sufixo da palavra processada. Se o sufixo da regra for encontrado, é conferido se a palavra não consta na lista de exceções daquela regra. Caso não conste, é verificado se o stem resultante da remoção do sufixo possui o tamanho mínimo requerido pela regra. Se possuir, o sufixo é removido, adiciona-se o sufixo de substituição e a execução deste passo é encerrada passando para o próximo. Caso a palavra conste na regra de exceções passa-se diretamente para a próxima regra. A seguir é descrito cada um dos oitos passos do algoritmo RSLP [20]: a) Redução de plural: com raras exceções, as formas em plural na Língua Portuguesa terminam em s. Entretanto, nem todas as palavras terminadas em s denotam plural, por exemplo lápis. Esta etapa consiste basicamente em remover o caracter s das palavras que não são listadas nas exceções. Outra exceção ocorre

42 41 com as palavras terminas em ns, onde seu sufixo é modificado para m, como bombons - bombom. b) Redução de feminino: esta etapa consiste em transformar as formas femininas para o seu correspondente no masculino, uma vez que todos os nomes e adjetivos da Língua Portuguesa possuem gênero. Somente as palavras terminadas em a são testadas nesta etapa, mas nem todas são convertidas, somente as que terminam nos sufixos mais comuns, por exemplo chinesa - chinês. c) Redução adverbial: esta é a menor de todas as etapas, só existe um único sufixo que denota advérbio - mente. Como nem todas as palavras terminadas com este sufixo são advérbios, então, uma lista de exceções também é necessária. d) Redução de aumentativo e diminutivo: nomes e adjetivos da Língua Portuguesa apresentam muito mais formas variantes do que seus equivalentes da Língua Inglesa. As palavras possuem formas aumentativas, diminutivas e superlativas. Esta etapa trata casos como a palavra cachorrinho, onde o seu sufixo inho é retirado. e) Redução nominal: este passo define 61 sufixos para substantivos e adjetivos. Caso a palavra seja reduzida neste passo, os passos indicados por f e g não são executados. f) Redução verbal: esta etapa reflete a complexidade da Língua Portuguesa em relação à Inglesa. São definidas 101 regras diferentes, pois os verbos regulares em Português têm mais de 50 formas, cada uma com um sufixo específico. Após a execução desta etapa o verbo é reduzido a sua raiz. g) Remoção de vogais: este passo consiste em remover a última vogal ( a, e ou o ) das palavras que ainda não passaram pelas etapas e e f, por exemplo a palavra menino não sofre modificações pelas etapas precedentes. Neste caso o final o é removido para que a palavra possua o radical menin. h) Remoção de acentos: a remoção de acentos é necessária porque existem casos em que algumas formas variantes de palavras são acentuadas e algumas outras não, como psicólogo e psicologia, depois desta etapa ambas as formas são reduzidas ao radical psicolog. É importante que esta etapa seja a última pois existem alguns casos que a presença da acentuação é significante para algumas regras, a exemplo da transformação óis para ol.

43 3.4 PROCESSO DE TRADUÇÃO DA MENSAGEM EM POR- TUGUÊS PARA LIBRAS 42 O diferencial desta ferramenta com relação aos sistemas estudados está em possibilitar a interação entre usuários que falam as línguas Português e LIBRAS, ao invés de permitir apenas a tradução de textos em Português para LIBRAS, oferecendo assim, uma participação mais ativa do usuário surdo, já que esse tipo de usuário poderá não só receber mensagens e traduzi-las, como também enviar mensagens em vídeo, funcionalidade esta que não foi observada em nenhum dos sistemas estudados. Dessa forma, esta seção apresenta como será realizado o processo de tradução da mensagem em Português para LIBRAS a partir das pesquisas realizadas sobre a estruturação da Língua Brasileira de Sinais e as operações de pré-processamento, descritos nas seções anteriores. No momento em que o usuário solicitar a tradução da mensagem em Português para LIBRAS, haverá uma recuperação dessas informações que serão transformadas no texto parcial pré-processado, ou seja, será feito um tratamento deste texto para que ele seja representado na estrutura de LIBRAS. Depois deste tratamento é que irão ocorrer as consultas das palavras no banco de dados, que retornarão os vídeos com os gestos em LIBRAS. Finalmente, em uma nova janela será apresentada uma sequência de vídeos em LIBRAS que corresponde à representação do texto parcial. Esse procedimento é retratado na Figura 11: Figura 11: Funcionamento da tradução Os elementos do processo apresentado na Figura 11 são descritos a seguir: Texto fonte: é o texto em Português a ser traduzido; Texto parcial: é o texto pré-processado, traduzido do texto-fonte, com as estruturas frasais em LIBRAS;

44 43 Vídeos: uma sequência de vídeos que corresponde à apresentação do texto parcial em LIBRAS, na forma gestual animada. A estruturação das frases em LIBRAS é diferente do Português, ou seja, não há desinências para gênero e número. Além disso, todos os verbos são no infinitivo. Portanto, assim como nos Sistemas de Recuperação de Informação, haverá um pré-processamento do texto fonte para transformá-lo em texto parcial. O préprocessamento aplicará todas as etapas vistas na seção 3.3, com exceção da quarta e quinta etapas. A primeira etapa é o tratamento da sequência de caracteres do texto, eliminando acentos, espaços em branco, pontuações, etc. A segunda etapa será a eliminação de stopwords, que tem por objetivo filtrar as palavras do texto em Português que sejam irrelevantes para a construção da frase em LIBRAS, como artigos, preposições e até algumas conjunções e verbos. A terceira etapa é a aplicação da técnica de stemming. Neste passo será aplicado o algoritmo RSLP descrito na seção Após o pré-processamento, as palavras restantes serão utilizadas para fazer a tradução do texto original para LIBRAS. A Tabela 1 apresenta um exemplo de resultado do tratamento do texto fonte para o texto parcial, após aplicadas as etapas de pré-processamento do texto, descritas anteriormente. Tabela 1: Tradução texto fonte para texto parcial Sentença em Português (Texto fonte) Sentença em LIBRAS (Texto parcial) O meu carro é verde. MEU CARR VERD Minha bicicleta é nova. MEU BICICLET NOV Eu gosto de sair. EU GOST SAIR A partir do texto parcial é que serão realizadas as consultas das palavras, no banco de dados, que retornará o seu respectivo vídeo, como mostra a Tabela 2. Caso a palavra não tenha uma ligação direta com um vídeo, ela será soletrada, ou seja, será apresentada uma sequência de vídeos em LIBRAS correspondente a cada letra da palavra.

45 44 Tabela 2: Palavra relacionada com seu respectivo vídeo Símbolo em LIBRAS Vídeo em LIBRAS MEU meu.avi CARR carro.avi VERD verde.avi BICICLET bicicleta.avi NOV nova.avi EU eu.avi GOST gostar.avi SAIR sair.avi O resultado da tradução do texto em Português para LIBRAS será apresentado como uma sequência de vídeos correspondente ao texto parcial em LIBRAS, como mostra a Tabela 3. Tabela 3: Resultado da tradução Sentença em Português Sentença em LIBRAS Sequência de Vídeos O meu carro é verde. MEU CARR VERD meu.avi carro.avi verde.avi Minha bicicleta é nova. MEU BICICLET NOV meu.avi bicicleta.avi nova.avi Eu gosto de sair. EU GOST SAIR eu.avi gostar.avi sair.avi

46 45 4 TECNOLOGIAS Neste capítulo serão apresentadas as tecnologias escolhidas como base para o desenvolvimento do sistema proposto, relatando as principais definições do estudo realizado. 4.1 LINGUAGEM JAVA Java é uma linguagem de programação orientada a objetos, desenvolvida por uma pequena equipe de pessoas na Sun Microsystems, na década de Inicialmente elaborada para ser a linguagem-base de projetos de software para produtos eletrônicos, Java teve seu grande boom em 1995, devido ao sucesso mundial da World Wide Web (WWW) [25]. A tecnologia Java começou a ser criada em 1991 com o nome de Green Project, nele trabalhavam James Gosling, Mike Sheridan e Patrik Naughton, e tinham como objetivo principal criar um interpretador para dispositivos eletrônicos [26]. No verão de 1992 eles emergiram de um escritório de Sand Hill Road no Menlo Park com uma demonstração funcional da ideia inicial. O protótipo se chamava *7 (StarSeven), um controle remoto com uma interface gráfica touchscreen, que tinha a habilidade de controlar diversos dispositivos e aplicações. James Gosling especificou uma nova linguagem de programação para o *7 e decidiu batizá-la de Oak, que quer dizer carvalho, uma árvore que ele podia observar quando olhava pela sua janela [26]. O próximo passo era encontrar um mercado para o *7. A ideia que o *7 tentava vender, hoje já é realidade em programas interativos e também na televisão digital. Permitir ao telespectador interagir com a emissora e com a programação em uma grande rede a cabos, era algo muito visionário e estava muito longe do que as empresas de TV a cabo tinham capacidade de entender e comprar. A ideia era certa, mas na época errada [26].

47 46 A sorte é que o boom da Internet aconteceu, e rapidamente uma grande rede interativa estava se estabelecendo. Era este tipo de rede interativa que a equipe do *7 estava tentando vender para as empresas de TV a cabo. Então, Gosling foi incumbido de adaptar o Oak para a Internet e em janeiro de 1995 foi lançada uma nova versão do Oak que foi rebatizada para Java. A partir daí, a plataforma foi crescendo e ganhando força tornando-se hoje uma das mais usadas no mundo [27]. Este sucesso ocorre por ser uma linguagem de programação de alto nível e possuir diversas características que a tornaram tão popular. A seguir são descritas as suas principais características [26]: Orientação a objetos: programas em Java são baseados na composição e interação entre diversas unidades de software chamadas de objetos. Independente de platarforma: O byte-code gerado pelo compilador para uma aplicação específica pode ser transportado entre plataformas distintas que suportam Java (Solaris, Windows, Mac OS, Linux etc). Não é necessário recompilar um programa para que ele rode entre máquinas com sistemas diferentes. Segura: A presença de coleta automática de lixo (garbage collection) evita erros comuns que os programadores comentem quando são obrigados a gerenciar diretamente a memória. Os mecanismos de tratamento de exceções tornam as aplicações mais robustas. Suporte à concorrência: Permite de maneira fácil a criação de vários threads de execução amplamente usados em animações e processamento paralelo. Suporte para programação de sistemas distribuídos: Java fornece facilidades para programação de sockets, TCP/IP, chamadas de métodos remotamente, entre outras. Com o tempo, o Java foi amadurecendo e vislumbrando possibilidades em outros setores da indústria além da Internet e, reconhecendo a impossibilidade de criar uma plataforma única capaz de abranger completamente as demais áreas de mercado, a

48 47 Sun 2 dividiu a tecnologia em três edições, cada uma visando segmentos específicos de negócio [28]: JSE (Java Standard Edition): projetada para rodar em computadores pessoais (desktops) e estações de trabalho. JME (Java Micro Edition): especializada em pequenos dispositivos com memória, tela e poder de processamento limitados. JEE (Java Enterprise Edition): projetada com foco em aplicações para serem executadas no servidor. A figura 12 apresenta um diagrama com uma visão geral da plataforma Java: Figura 12: Plataforma Java e suas edições Plataforma JEE A arquitetura JEE foi desenvolvida sobre a plataforma JSE utilizando assim as APIs básicas para o desenvolvimento de programas e aplicações. Logo, herda todas as características que difundiram e consolidaram a tecnologia pela indústria de TI [29]. 2 A empresa Sun Microsystems foi comprada pela Oracle em janeiro de O acordo dá à Oracle a propriedade sobre a linguagem de programação Java e o sistema operacional Solaris.

49 48 JEE faz uso do modelo de aplicação multicamadas onde cada aplicação lógica é dividida em componentes de acordo com sua funcionalidade e vários componentes das aplicações podem ser instalados em diferentes máquinas dependendo da camada em que ele se encontra. Os componentes do JEE estão divididos em [30]: Aplicações cliente e applets: esses componentes encontram-se na camada do cliente. São eles os responsáveis pela interação do usuário com o sistema. Java Servlets e JavaServer Pages (JSP): ambas desenvolvidas em classes Java. Elas recebem uma requisição dinamicamente para depois construir a resposta para o navegador; normalmente, essas respostas geram páginas dinâmicas. Essas classes são gerenciadas por um container localizado na camada web. Enterprise JavaBeans (EJB): e o componente de negócio que roda no servidor JEE. Os componentes de negócios funcionam da seguinte forma: primeiro recebem uma requisição da aplicação cliente, processam essa requisição se necessário, e enviam uma resposta para as aplicações cliente. Esses componentes também podem recuperar dados armazenados, processá-los e enviá-los para as aplicações. A figura 13 ilustra o funcionamento da arquitetura JEE com suas camadas e componentes [30]. Figura 13: Representação da divisão em camadas através do JEE

50 Java Servlets e JavaServer Pages Servlets e JavaServer Pages são duas tecnologias criadas pela Sun para desenvolvimento de aplicações na web a partir de componentes Java que executam no lado servidor. Elas fazem parte da plataforma JEE que fornece um conjunto de tecnologias para o desenvolvimento de soluções escaláveis e robustas para a web [31]. No relacionamento cliente-servidor, o cliente solicita que alguma ação seja executada e o servidor a realiza e responde para o cliente. Esse modelo de comunicação solicitação-resposta é a base para as visualizações de nível mais alto de rede no Java Servlets e JavaServer Pages. As JSP s são uma maneira eficiente de implementar o mecanismo de solicitação-resposta da web sem entrar nos detalhes de nível mais baixo dos Servlets [32]. Os Servlets são classes Java responsáveis por receber requisições de formulários proveniente de uma página HTML (HyperText Markup Language), tratando os atributos passados por parâmetro e realizando a lógica apropriada para àquela requisição. Por fim, os Servlets ou geram uma nova página HTML de resposta para o usuário ou redirecionam o fluxo para uma nova página JSP [33]. Servlets não possuem interface gráfica e suas instâncias são executadas dentro de um ambiente Java denominado Container. O container gerencia as instâncias dos Servlets e provê os serviços de rede necessários para as requisições e respostas e atua em associação com servidores web recebendo as requisições reencaminhada por eles. Tipicamente existe apenas uma instância de cada Servlet, no entando, o container pode criar vários threads de modo a permitir que uma única instância atenda mais de uma requisição simultaneamente. A figura 14 fornece uma visão do relacionamento destes componentes [31]. Figura 14: Relacionamento entre Servlets, container e servidor web

51 50 As páginas JSP, foram criadas para contornar algumas das limitações no desenvolvimento com Servlets: se em um Servlets a formatação da página HTML resultante do processamento de uma requisição se mistura com a lógica da aplicação em si, dificultando a alteração dessa formatação, em uma página JSP essa formatação se encontra separada da programação, podendo ser modificada sem afetar o restante da aplicação [33]. Assim, um JSP consiste de uma página HTML com alguns elementos especiais, que conferem o caráter dinâmico da página. Esses elementos podem tanto realizar um processamento por si, como podem recuperar o resultado do processamento realizado em um Servlets, por exemplo, e apresentar esse conteúdo dinâmico junto a página JSP [33]. Na maioria dos casos as tecnologias de Servlets e JSP são intercambiáveis. Os Servlets fazem a comunicação entre clientes e servidores através do protocolo HTTP. Um cliente faz uma solicitação de HTTP ao servidor. O container de Servlets recebe a solicitação e a redireciona para ser processada pelo Servlet apropriado. O Servlet faz seu processamento, que pode interagir com o banco de dados ou com outros Servlets ou JSP no servidor. O Servlet retorna seus resultados ao cliente, normalmente na forma de documentos HTML, XHTML ou XML para exibir em um navegador. 4.2 BIBLIOTECAS DE CLASSE DO JAVA Esta seção tem como objetivo apresentar as bibiliotecas de classe do Java, também conhecidas como APIs Java (Application Programming Interface) que serviram de suporte na construção da ferramenta. Na maioria dos sistemas operacionais modernos, um corpo formado por código reusável é organizado e disponibilizado para simplificar o trabalho do programador. Este código encontra-se, normalmente, na forma de bibliotecas dinâmicas que a aplicação utiliza durante a sua execução. Como a plataforma Java não é dependente de qualquer sistema operacional, as aplicações não podem depender das bibliotecas destes sistemas. Ao contrário, a plataforma Java disponibiliza um grande conjunto padronizado de bibliotecas de classe, que contém praticamente o mesmo número de funções encontradas nos sistemas operacionais modernos [34]. Uma classe de biblioteca serve a três propósitos dentro da plataforma Java. Como

52 51 outras bibliotecas padrão, elas disponibilizam ao programador um conjunto de funções bem conhecidas que realizam tarefas comuns, como a manutenção de listas de elementos ou manipulação de strings. Em adição, a biblioteca contém uma interface para tarefas que dependem do hardware e do sistema operacional. Tarefas como acesso a rede e a arquivos são altamente dependentes das capacidades nativas do ambiente. Finalmente, se alguma plataforma não suportar alguma função que uma aplicação Java necessita, as bibliotecas implementam esta funcionalidade usando os recursos disponíveis, ou disponibilizam um meio consistente para que a aplicação verifique a presença de determinada funcionalidade [34]. Na ferramenta desenvolvida existe um módulo que permite ao usuário enviar um vídeo contendo a sua mensagem em LIBRAS, para isso ele irá fazer o upload de um arquivo de vídeo para postar no fórum. Para implementação do upload optou-se por utilizar a biblioteca Commons FileUpload do projeto Jakarta disponibilizado pela organização Apache. A API Commons FileUpload tornou fácil e robusta a capacidade de realizar uploads através de Servlets e aplicações web. O projeto Jakarta é um conjunto de componentes desenvolvidos em Java para auxiliar no desenvolvimento de aplicativos web [35]. Também foi empregada a API MySQL Connector, um driver nativo do Java que converte as chamadas geradas pelo JDBC (Java Data Base Connectivity) no protocolo de rede que utiliza a base de dados MySQL. Foi possível então interagir com a base de dados, de forma a ser feita as conexões necessárias para inserções e consultas dos dados armazenadas no SGBD [36]. Por fim, para a manipulação e exibição dos vídeos utilizados em alguns módulos da ferramenta, foi necessário fazer uso da API Java Media Framework (JMF). Esta biblioteca permite criar aplicativos Java que reproduzem, editam e capturam muitos tipos populares de mídia, além de ser uma arquitetura unificada e multiplataforma [37].

53 52 5 ESTUDO DE CASO Este capítulo tem como objetivo apresentar o sistema proposto como estudo de caso, um fórum de discussão que traduz mensagens de texto em Português para LIBRAS. Neste sistema serão utilizados os conceitos da Linguagem de Modelagem Unificada (UML). Esta linguagem é constituída de elementos gráficos (visuais) utilizados na modelagem que permitem representar os conceitos do paradigma da orientação a objetos. Através dos elementos gráficos definidos nesta linguagem pode-se construir diagramas que representam diversas perspectivas do sistema [38]. Desta forma, serão descritos os principais processos e etapas envolvidos no desenvolvimento deste fórum. Dentro dos processos citados incluem-se a fase de levantamento de requisitos, análise e projeto, responsáveis por estabelecer um conhecimento maior a respeito das particularidades do negócio. 5.1 ESPECIFICAÇÃO DE REQUISITOS A especificação de requisitos busca compreender o problema e levantar todas as necessidades do futuro sistema a ser desenvolvido, tendo como objetivo obter produtos de software de melhor qualidade que satisfaçam as reais necessidades do cliente. Esta seção foi desenvolvida usando a técnica de modelagem de casos de uso apresentando os diagramas de caso de uso, descrição dos casos de usos identificados e o mini-mundo, sendo este uma breve descrição do domínio do problema [38] Descrição do Mini-Mundo O administrador do sistema precisa manter os dados cadastrais das palavras e para isso deve-se armazenar os seguintes dados: nome da palavra e o nome do seu

54 53 respectivo vídeo em LIBRAS, contendo o sinal da palavra determinada. Estes dados ainda poderão ser visualizados, editados ou excluídos. O usuário da ferramenta irá usufruir das mesmas funcionalidades comum a qualquer outro fórum. Será possível criar um tópico contendo um título como tema e uma mensagem, sendo responsabilidade do sistema armazenar o usuário e data/hora de criação deste tópico. Existem duas maneiras de interação no fórum, através do envio de uma mensagem de texto ou o envio de um vídeo contendo a mensagem em LIBRAS, sendo que para essas duas formas de envio deverão ser informados o assunto da mensagem, destacando que será feito um upload da mensagem em vídeo a fim de realizar o seu envio. As mensagens que forem enviadas ao fórum poderão ser excluídas a qualquer momento pelo usuário que a enviou ou pelo administrador. Já os tópicos só poderão ser excluídos pelo administrador por uma questão de segurança. O diferencial deste fórum se encontra na possibilidade de tradução de uma mensagem de texto na Língua Portuguesa para Língua Brasileira de Sinais. Desta forma, cabe ao usuário escolher uma das mensagens de texto que foi enviada ao fórum e optar por traduzi-la. Em seguida, será apresentada uma sequência de vídeos em LIBRAS correspondente à tradução do texto Diagrama de Caso de Uso Um diagrama de caso de uso representa graficamente os atores, casos de uso e relacionamentos entre esses elementos e tem o objetivo de ilustrar quais elementos externos interagem com determinadas funcionalidades do sistema [38]. A figura 15 ilustra o diagrama de casos de uso referente ao sistema. Os atores desta ferramenta estarão divididos em dois perfis: o administrador, responsável pela manutenção das palavras cadastradas com seus respectivos vídeos em LIBRAS e a exclusão de um tópico ou uma mensagem; e o usuário, que utilizará as operações básicas da ferramenta, como criar um tópico, enviar uma mensagem textual ou em vídeo, excluir uma mensagem e traduzir uma mensagem de texto para LIBRAS.

55 54 Figura 15: Diagrama de Casos de Uso De acordo com a figura acima a ferramenta terá as seguintes funcionalidades: Cadastrar, editar, excluir e visualizar palavra: A fim de possuir um banco de palavras para a tradução do texto em Português para LIBRAS, será permitido ao administrador manter uma palavra em Português e associá-la ao seu respectivo vídeo, contendo os gestos em LIBRAS. Sendo operações possíveis: o cadastro, a visualização, edição ou exclusão desta palavra. Criar e excluir um tópico: Será possível ao usuário da ferramenta criar um tópico de acordo com o assunto que desejar, sendo que cada tópico terá suas respectivas mensagens. E por uma questão de segurança este tópico só poderá ser excluído pelo administrador do sistema. Enviar mensagem de texto: Será permitido ao usuário enviar uma mensagem de texto, que poderá ser visualizada por todos os participantes do fórum. Enviar mensagem em forma de vídeo: Será permitido ao usuário enviar o seu próprio vídeo contendo a mensagem em LIBRAS. Esta mensagem poderá ser visualizada por todos os participantes do fórum.

56 55 Excluir mensagem: A exclusão das mensagens do fórum, tanto textual, quanto em vídeo, só poderão ser efetuadas pelo administrador do sistema ou pelo usuário que enviou a respectiva mensagem. Traduzir mensagem textual para LIBRAS: Com esta funcionalidade na ferramenta, usuários surdos, ou até mesmo ouvintes, poderão escolher uma mensagem que foi enviada ao fórum e selecionar a opção para traduzi-la do Português para LIBRAS. Em uma nova janela será apresentada uma sequência de vídeos em LIBRAS que corresponde à tradução Descrições de Caso de Uso Nesta seção é feita uma descrição dos casos de uso apresentados no diagrama da seção Manter Palavra Sumário: Ator realiza a manutenção (inclusão, edição, exclusão e visualização) dos dados necessários para fazer a ligação entre cada palavra da LIBRAS escrita e seu respectivo vídeo na forma de representação em LIBRAS. Ator: Administrador. Pré-Condições: Ator deverá estar logado no sistema. 1. Fluxo Básico - Visualizar Palavra 1.1. Este caso de uso inicia quando o ator opta por visulizar as palavras cadastradas no sistema; 1.2. O ator pode escolher por incluir, editar ou excluir alguma palavra; ( A1 ) ( A2 ) ( A3 ) 1.3. Este caso de uso se encerra. 2. Fluxos Alternativos 2.1. (A1) - Cadastrar Palavra Este caso de uso inicia quando o ator opta por incluir uma nova palavra;

57 O ator insere os dados da palavra (Palavra e o arquivo de vídeo); O sistema faz a validação dos dados; ( E1 ) ( E2 ) O ator salva os dados da palavra; O sistema retorna uma mensagem de sucesso; O ator confirma a mensagem; Este caso de uso se encerra (A2) - Editar Palavra O ator opta por editar uma palavra já cadastrada; O ator insere os dados que deseja alterar; O sistema faz a validação dos dados; ( E1 ) ( E2 ) O ator salva os dados da palavra; O sistema retorna uma mensagem de sucesso; O ator confirma a mensagem; Este caso de uso se encerra (A3) - Excluir Palavra O ator opta por excluir uma palavra já cadastrada; O sistema solicita a confirmação da exclusão; O ator confirma; O sistema exclui os dados; O sistema retorna uma mensagem de sucesso; Este caso de uso se encerra. 3. Fluxos de Exceções 3.1. (E1) - Dados Obrigatórios Caso os dados obrigatórios não sejam fornecidos, é emitida uma men-

58 57 sagem de erro informando Retornar ao ponto em que foi chamado (E2) - Palavra já cadastrada O ator fornece os dados de uma palavra já cadastrada no sistema, é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado. Pós-condições: Uma palavra foi inserida, editada ou excluída Manter Tópico Sumário: Ator realiza a manutenção (inclusão e exclusão) dos tópicos criados ao fórum. Ator: Usuário ou admistrador. Pré-Condições: Ator deverá estar logado no sistema. 1. Fluxo Básico - Criar tópico 1.1. Este caso de uso inicia quando usuário opta por criar um novo tópico; 1.2. O usuário informa o assunto e a mensagem do tópico; 1.3. O usuário salva o novo tópico; ( E2 ) 1.4. O sistema retorna uma mensagem de sucesso; 1.5. O usuário confirma a mensagem; 1.6. Este caso de uso se encerra. 2. Fluxo Básico - Excluir Tópico 2.1. Este caso de uso inicia quando o administrador optar por excluir um tópico que foi criado; ( E1 ) 2.2. O sistema solicita a confirmação da exclusão; ( E2 )

59 O administrador confirma; 2.4. O sistema exclui o tópico; 2.5. O sistema retorna uma mensagem de sucesso; 2.6. Este caso de uso se encerra. 3. Fluxos de Exceções 3.1. (E1) - Tópico ainda tem mensagens Caso o ator tente excluir um tópico que ainda possui mensagens é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado (E2) - Erro no sistema Caso ocorra um erro no sistema e ele não consiga realizar a operação que foi pedida, é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado. Pós-condições: Um tópico foi criado ou excluído Manter Mensagem Sumário: Ator realiza a manutenção (inclusão e exclusão) das mensagens enviadas ao fórum. Ator: Usuário. Pré-Condições: Ator deverá estar logado no sistema. 1. Fluxo Básico - Enviar Mensagem 1.1. Este caso de uso inicia quando o ator está acessando um tópico e opta por enviar uma mensagem; ( A1 ) ( A2 ) 1.2. O ator envia a mensagem ao fórum; ( E1 )

60 O sistema retorna uma mensagem de sucesso; 1.4. O ator confirma a mensagem; 1.5. Este caso de uso se encerra. 2. Fluxo Básico - Excluir Mensagem 2.1. Este caso de uso inicia quando o ator opta por excluir uma mensagem que foi enviada ao fórum; 2.2. O sistema solicita a confirmação da exclusão; ( E1 ) ( E2 ) 2.3. O ator confirma; 2.4. O sistema exclui a mensagem; 2.5. O sistema retorna uma mensagem de sucesso; 2.6. Este caso de uso se encerra. 3. Fluxos Alternativos 3.1. (A1) - Enviar Mensagem Textual O ator opta por enviar uma mensagem textual em Português; O sistema exibe uma caixa de texto; O ator digita a mensagem; Retorna ao ponto em que foi chamado (A2) - Enviar mensagem em forma de vídeo O ator opta por enviar uma mensagem em forma de vídeo; O sistema exibe uma lista com os documentos que estão armazenados no computador local; O ator escolhe um vídeo da lista exibida; Retorna ao ponto em que foi chamado. 4. Fluxos de Exceções

61 (E1) - Erro no sistema Caso ocorra um erro no sistema e ele não consiga realizar a operação que foi pedida, é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado (E2) - Usuário não permitido Caso o ator que esteja tentando excluir a mensagem não seja o autor da mesma e nem o administrador do sistema, é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado. Pós-condições: Uma mensagem foi enviada ou excluída ou um tópico foi criado ou excluído Traduzir mensagem textual para LIBRAS Sumário: Realiza tradução de uma mensagem do fórum na Língua Portuguesa para LIBRAS. Ator: Usuário. Pré-Condições: Ator deverá estar logado no sistema. 1. Fluxo Básico - Executar Tradução de um Texto 1.1. Este caso de uso inicia quando o ator opta por traduzir uma mensagem de texto que foi enviada ao fórum; 1.2. O sistema faz um tratamento do texto (Descrito na seção 3.4); 1.3. O sistema faz uma consulta no banco de dados de acordo com as palavras da mensagem; ( E1 ) 1.4. O sistema traduz o texto para LIBRAS gerando uma sequência de vídeos; (RN01) 1.5. O sistema apresenta sequência de vídeos para o usuário contendo a

62 61 tradução da mensagem; 1.6. Este caso de uso se encerra. 2. Fluxos de Exceções 2.1. (E1) - Erro no sistema Caso ocorra um erro no sistema e ele não consiga realizar a operação que foi pedida, é emitida uma mensagem de erro informando Retornar ao ponto em que foi chamado. Pós-condições: Um texto em Língua Portuguesa foi traduzido para LIBRAS. Regras de Negócio Relacionadas: RN01 - Caso a palavra que deseja ser traduzida não seja cadastrada ela será soletrada, através de vídeos das letras do alfabeto em LIBRAS. 5.2 ESPECIFICAÇÃO DE ANÁLISE A análise corresponde à fase onde é realizado um estudo detalhado dos requisitos levantados e então são construídos os modelos que representam o sistema [38]. No sistema proposto será utilizada a abordagem da Análise Orientada a Objetos. Esta seção será dividida em três partes: na apresentação do diagrama de classes, dos driagramas de atividade e dos diagramas de sequência Diagrama de Classes O diagrama de classes representa a estrutura das classes de objetos do sistema e suas relações. Vale ressaltar que os dados relativos às classes usuário e tipo de usuário serão importados do Ambiente Virtual de Aprendizagem em que a ferramenta estiver inserida. A figura 16 ilustra o diagrama de classes do sistema.

63 Diagramas de Atividade Figura 16: Diagrama de Classes Um diagrama de atividade é um tipo especial de diagrama de estados, em que são representados os estados de uma atividade, em vez dos estados de um objeto. Os diagramas de atividade são orientados a fluxos de controle e podem ser vistos como uma extensão dos fluxogramas [38]. As figuras 17, 18, 19, 20, 21, ilustram os respectivos diagramas de atividade dos casos de uso cadastrar e excluir palavra, criar tópico, enviar mensagem e executar tradução da mensagem de texto.

64 63 Figura 17: Diagrama de Atividade Cadastrar Palavra Figura 18: Diagrama de Atividade Excluir Palavra

65 64 Figura 19: Diagrama de Atividade Criar Tópico Figura 20: Diagrama de Atividade Enviar Mensagem

66 65 Figura 21: Diagrama de Atividade Executar tradução da mensagem de texto para LIBRAS Diagramas de Sequência O diagrama de sequência descreve a maneira como os grupos de objetos colaboram em algum comportamento ao longo do tempo. Ele registra o comportamento de um único caso de uso e exibe os objetos e as mensagens passadas entre eles no caso de uso. Este diagrama dá ênfase à ordenação temporal em que as mensagens são trocadas entre os objetos de um sistema. Entende-se por mensagens os serviços solicitados de um objeto a outro, e as respostas desenvolvidas para as solicitações [38]. As figuras 22, 23, 24, 25, 26, 27 ilustram os diagramas de sequência dos casos de uso cadastrar, editar e excluir palavra, criar tópico, enviar mensagem e executar tradução da mensagem de texto.

67 66 Figura 22: Diagrama de Sequência Cadastrar Palavra Figura 23: Diagrama de Sequência Editar Palavra Figura 24: Diagrama de Sequência Excluir Palavra

68 67 Figura 25: Diagrama de Sequência Criar Tópico Figura 26: Diagrama de Sequência Enviar Mensagem Figura 27: Diagrama de Sequência Executar tradução da mensagem de texto para LIBRAS

69 ESPECIFICAÇÃO DE PROJETO Esta seção contém a Especificação de Projeto para o sistema proposto. Sendo ela divida em três partes: a primeira parte apresenta uma visão das tecnologias e ferramentas utilizadas pelo sistema. A segunda parte apresenta a arquitetura do sistema e sua divisão em camadas, além da discussão sobre cada uma delas e seus respectivos diagramas de classe. E por fim, a última parte, demonstra um protótipo com as telas da ferramenta Linguagens e Ferramentas utilizadas Para o desenvolvimento do sistema proposto foram analisadas algumas ferramentas consideradas importantes à construção, e dentre elas escolhidas as seguintes tecnologias que mais se apropriavam ao objetivo do sistema. Ainda na fase inicial do projeto foi utilizada a Linguagem de Modelagem Unificada (UML) para especificação, documentação, visualização e desenvolvimento do sistema. A UML é composta por muitos elementos de modelo que são usados para criar diagramas, que representam uma determinada parte, ou um ponto de vista do sistema. Dessa forma, foi possível fazer uma modelagem visual de maneira que os relacionamentos entre os componentes do sistema fossem melhor visualizados, compreendidos e documentados. Em um sentido mais amplo, o modelo é uma simplificação da realidade, o que torna a arquitetura do sistema mais tangível, permitindo a avaliação em dimensões múltiplas. Como editor de UML, foi utilizada a ferramenta JUDE Community, a escolha do JUDE teve como incentivo o fato da ferramenta ser bastante intuitiva e fácil de utilizar, além de ser disponibilizada de forma gratuita e possuir características que não são encontradas em outras ferramentas gratuitas. A figura 28 apresenta a tela principal do JUDE Community. A linguagem de programação Java foi empregada no desenvolvimento da ferramenta por ser uma linguagem orientada à objetos, independente de plataforma, gratuita, robusta e segura, além de ser distribuída com um vasto conjunto de bibliotecas. Sendo assim, é possível criar um sistema altamente flexível, extensível, de fácil manutenção e entendimento.

70 69 Figura 28: Tela Principal do JUDE Community A utilização do padrão de arquitetura MVC na concepção do protótipo, e a utilização da linguagem de programação Java permitiu o uso de ferramentas para programação orientadas à objetos. Assim, a programação do sistema foi feita com o auxílio do NetBeans IDE, um ambiente de desenvolvimento integrado, multiplataforma, fortemente utilizado por desenvolvedores Java, que visa simplificar o desenvolvimento e aumentar a produtividade. A figura 29 apresenta a tela principal do NetBeans IDE versão 6.8. Figura 29: Tela Principal do NetBeans IDE

71 70 O GlassFish foi utilizado como servidor de aplicação, por ser baseado na Plataforma Java Enterprise Edition e possuir código aberto, oferecendo desempenho e praticidade. O GlassFish, no ambiente do desenvolvedor, já vem integrado ao NetBeans IDE, o que facilitou a configuração do mesmo como servidor de aplicação do projeto. O banco de dados adotado foi o MySQL, que apresenta as vantagens de ser leve, rápido, seguro, prático, além de ser gratuito e inscrito no tipo de licenciamento GNU. O MySQL é considerado o banco de dados mais rápido do mercado e fornece suporte a diversas linguagens de programação incluindo o Java [39]. E por fim, quanto à modelagem do banco de dados, foi escolhida a ferramenta MySQL Workbench por ser de fácil utilização, intuitiva, autoexplicativa e trabalhar com diversas entidades e relacionamentos. Também possui a vantagem de ser uma ferramenta de modelagem MySQL, o que torna fácil a interação com o banco de dados, permitindo a exportação da modelagem diretamente do banco. A figura 30 apresenta a tela principal do MySQL Workbench versão 5.2 CE. Figura 30: Tela Principal do MySQL Workbench Arquitetura do Sistema A arquitetura de um sistema pode ser estudada de acordo com diversas perspectivas. Uma delas permite visualizar o sistema de software como um conjunto de camadas, sendo cada camada uma coleção de unidades de software que podem ser

72 71 executadas ou acessadas [38]. A divisão de um sistema de software em camadas permite que este seja mais portável e modificável. Uma mudança em uma camada mais baixa que não afete a sua interface não implicará em mudanças nas camadas mais altas. E vice-versa, uma mudança em uma camada mais alta que não implica na criação de um novo serviço em uma camada mais baixa não afetará esta última [38]. Uma das formas de dividir o sistema em camadas é através da utilização do padrão arquitetural MVC Estendido (Model-View-Controller), que tem como objetivo criar uma independência e divisão de responsabilidades entre as partes que envolvem o sistema [40]. Dessa forma, o sistema proposto será dividido nos seguintes pacotes: Domínio do Problema (DP), Gerência de Tarefas (GT), Gerência de Dados (GD) e Interface com o Usuário (IU) de acordo com o modelo MVC Estendido e tendo suas classes identificadas por estereótipos. A figura 31 ilustra o diagrama de pacotes do sistema de acordo com o modelo MVC Estendido. A dependência entre os pacotes representa a requisição de serviços para realização das funcionalidades do sistema. Figura 31: Diagrama de Pacotes Nas próximas seções serão explicados com mais detalhes quais as responsabilidades dos seguintes pacotes citados nesta seção: domínio do problema, gerência de tarefas, gerência de dados e interface com o usuário.

73 Domínio do Problema (DP) O pacote de domínio do problema é o local onde estão contidas as classes, suas multiplicidades e associações que modelam o domínio do problema. Esta camada contém todos os requisitos dos usuários. A figura 32 representa o diagrama de classes do domínio do problema. Figura 32: Diagrama de Classes do Domínio do Problema Gerência de Tarefas (GT) No pacote de gerência de tarefas estão as classes que lidam com as regras de negócio do sistema. Esta camada tem como finalidade controlar as interações que ocorram a partir do usuário. A figura 33 representa as classes para o pacote de gerência de tarefas.

74 73 Figura 33: Diagrama de Classes de Gerência de Tarefas Gerência de Dados (GD) No pacote gerência de dados estão as classes responsáveis por realizar a persistência das informações do sistema em um banco de dados. Para isso será utilizado o padrão de projeto chamado DAO (Data Access Object). Este é um padrão para persistência de dados que permite separar as regras de negócio das regras de acesso a banco de dados, sendo o seu principal objetivo promover isolamento e flexibilidade do banco de dados [41]. Sendo assim, todas as funcionalidades relacionadas ao banco de dados serão feitas por classes DAO. As figuras 34 e 35 representam as classes para o pacote de gerência de dados. Figura 34: Diagrama de Classes de Gerência de Dados parte I

75 74 Figura 35: Diagrama de Classes de Gerência de Dados parte II Modelo de Entidade e Relacionamento O Modelo de Entidade e Relacionamento (MER) é um modelo abstrato cuja finalidade é descrever, de maneira conceitual, os dados a serem utilizados em um sistema de informações ou que pertencem a um domínio [42]. O sistema proposto utilizará um banco de dados relacional para a persistência de dados e, assim, foi necessário realizar o mapeamento Objeto-Relacional. A figura 36 ilustra o modelo de entidade e relacionamento. Figura 36: Modelo de Entidade e Relacionamento Interface com Usuário (IU) Esta camada será responsável por implementar as interfaces com o usuário. A figura 37 representa o diagrama de classe referente ao componente de interface com o usuário.

76 75 Figura 37: Diagrama de Classes de Interface com Usuário Padrões de Interface Para auxiliar na usabilidade do sistema por parte do usuário, textos, ícones, cores podem ser utilizados em uma forma padrão. Esta seção mostrará os itens, citados anteriormente, que foram utilizados na ferramenta. A figura 38 apresenta os ícones utilizados na interface, que ajudam o usuário a identificar as funcionalidades do sistema. Esses ícones são, respectivamente, de edição de palavras e de exclusão, tanto de palavras, quanto de tópicos e mensagens. Figura 38: Ícones A tabela 4 apresenta a lista de cores, no padrão RGB, empregadas na interface do sistema. Tabela 4: Cores Item Código Hexadecimal Plano de fundo #F5F5F5 Plano de fundo das tabelas #F1F1F1 e #FCFCFC Texto padrão # Título das páginas e links #1B6633 Demais textos #333333

77 Protótipo Um protótipo pode ser considerado uma implementação concreta, embora parcial, de um programa. Eles podem ser criados para explorar múltiplas questões durante o desenvolvimento do software. O protótipo de uma interface com o usuário tem como principal objetivo conseguir captar as necessidades efetivas e concretas do usuário [43]. Sendo assim, a seguir serão apresentadas as telas do sistema contemplando as funcionalidades discutidas na seção A figura 39 apresenta a tela de visualização das palavras cadastradas no sistema, sendo possível removê-las ou editá-las. Além disso, é permitido cadastrar uma nova palavra. Figura 39: Tela Visualizar Palavras

78 77 A figura 40 apresenta a tela na qual é realizado o cadastro de palavras associando ao seu respectivo sinal em LIBRAS. Figura 40: Tela Cadastro de Palavras A figura 41 apresenta a tela contendo a listagem dos tópicos que já foram criados no fórum. Nela são exibidos o assunto e a quantidade de postagens dos tópicos, além de especificar o último usuário que enviou uma mensagem. As operações possíveis nessa tela são: criar um novo tópico e acessar ou excluir um existente. Figura 41: Tela Lista de Tópicos

79 78 A figura 42 apresenta a tela de criação de um novo tópico, sendo necessário informar qual o assunto e a mensagem. Figura 42: Tela Novo Tópico A figura 43 apresenta a tela com as respectivas mensagens do tópico: O que é LIBRAS?. As duas primeiras mensagens foram enviadas em forma de texto e a última como um vídeo em LIBRAS, sendo que para assistí-lo é necessário clicar no botão ao lado da frase Esta é uma mensagem de vídeo, clique no botão ao lado para vê-la:, na qual é aberto uma nova janela onde este será exibido. As operações possíveis nessa tela são: o envio de uma nova mensagem em texto ou em vídeo para este tópico e a tradução para LIBRAS de uma mensagem de texto.

80 Figura 43: Tela Tópico Acessado 79

81 80 As figuras 44 e 45 apresentam, respectivamente, as telas que tornam possível enviar uma mensagem em texto ou em vídeo para o tópico Windows ou Linux?, sendo que nestas duas telas é exibido uma lista com as últimas mensagens do tópico. Figura 44: Tela Envio Mensagem de Texto Para que o usuário possa enviar um vídeo contendo a sua mensagem em LIBRAS é necessário fazer o upload do arquivo, como mostra a figura 45. Figura 45: Tela Envio Mensagem em LIBRAS

82 81 A figura 46 apresenta a tela do tópico Windows ou Linux?, na qual está sendo traduzida a mensagem de texto para LIBRAS. Para isso é apresentado em uma nova janela a sequência de vídeos correspondente à tradução. Figura 46: Tela Tradução da Mensagem

83 82 6 CONCLUSÃO Na maioria das vezes, as pessoas com deficiência são tratadas diferentemente das outras, sofrem com os preconceitos e são privadas de suas liberdades. Isto porque a sociedade os encara como seres diferentes dos outros. Considerando esses fatos, um assunto de grande importância e que vem sendo constantemente discutido, é a inclusão social desses indivíduos. A sociedade, embora tenha um discurso que prega a inclusão social de pessoas com deficiência, ainda vê esses indivíduos pelo que não tem, ou pelo que não são. Não é de costume olhá-los pelo que são ou pelo que podem oferecer. Nesta medida, a pessoa com deficiência auditiva é censurada como aquela que não ouve, sendo omitido as suas qualidades. Dessa forma, esse sentimento pressupõe sempre uma atitude e um comportamento de negação que traz para essas pessoas sérias consequências como discriminação, marginalização e principalmente a exclusão. Dessa maneira, devem ser criados mecanimos que adaptem os deficientes aos sistemas sociais comuns e, em caso de incapacidade por parte de alguns deles, criarlhes sistemas especiais em que possa, participar ou tentar acompanhar o ritmo dos que não tenham alguma deficiência específica. Sendo analisadas todas essas questões e com base nos estudos realizados, foi possível amadurecer a ideia para a construção de uma ferramenta computacional que promove o desenvolvimento social dos portadores de deficiência auditiva, diminuindo assim a exclusão social desses indivíduos. Portanto, a finalidade deste trabalho foi o desenvolvimento de uma ferramenta web, um fórum de discussão que permite não só a tradução de mensagens na Língua Portuguesa para a Língua Brasileira de Sinais, como também o envio de vídeos contendo a mensagem em LIBRAS. Sendo que, na implementação do projeto estes objetivos foram alcançados com sucesso.

84 CONTRIBUIÇÃO DAS PESQUISAS Após as pesquisas realizadas sobre os softwares de tradução Português-LIBRAS, foi possível concluir que estes possuem apenas algumas propriedades diferentes entre si. O Dicionário de LIBRAS é um sistema web que só possibilita a tradução de uma palavra, e não de um texto. O FALIBRAS e o SOTAC são sistemas desktop isolados de qualquer outro ambiente, que para serem utilizados exigiria que um usuário copiasse e colasse o texto em Português para ver sua tradução em LIBRAS, o que muitas vezes pode se tornar um impedimento para sua utilização. Já o Player Rybená é uma ferramenta web, que pode ser acoplada a qualquer página da Internet, porém não é distribuída de forma gratuita. Além disso, em todos os trabalhos encontrados não foi observada a possibilidade de interação entre as pessoas surdas e ouvintes e sim apenas uma forma de consultar, traduzir ou aprender a Língua Brasileira de Sinais. Dessa forma, as características desses sistemas não permitem que esses indivíduos acessem a informação e interajam com outras pessoas da mesma forma, sejam elas surdas ou ouvintes. No fórum construído, as formas de comunicação são: por mensagem de texto, sendo opcional traduzir a mensagem para LIBRAS; ou por mensagem em forma de vídeo, na qual o usuário surdo poderá gravar seu próprio vídeo, contendo a mensagem em LIBRAS e disponibilizar para todos os participantes do fórum. Essas estratégias de comunicação possibilitam a interação não apenas no sentido ouvinte/surdo, mas também no sentido surdo/ouvinte. Sendo assim, o principal diferencial desta ferramenta é ajudar no processo de inclusão social das pessoas portadoras de deficiência auditiva. 6.2 RETORNO PARA O GRUPO E TRABALHOS FUTUROS O desenvolvimento deste projeto teve como grande benefício o aprendizado para o complemento da grade acadêmica e profissional, pois foi possível aplicar uma gama considerável de conhecimentos adquiridos durante o curso, praticando as atividades de analista de sistemas e programador. Como trabalhos futuros, pretende-se aplicar este sistema no contexto de um Ambiente Virtual de Aprendizagem, para ser utilizado como uma ferramenta assíncrona,

85 84 com o objetivo de promover a interação dos usuários em uma comunidade virtual, sem diferenças. E como continuidade das pesquisas e desenvolvimento é possível adicionar posteriormente a funcionalidade inversa de tradução, ou seja, traduzir a mensagem em LIBRAS para a Língua Portuguesa. Além disso, pode-se ainda aperfeiçoar o modo de tradução que já existe, aplicando métodos de Processamento de Linguagem Natural (PLN) junto com o conceito de ontologias. Os métodos de Processamento de Linguagem Natural fornecem ao computador a capacidade de entender e compor textos. E entender um texto significa reconhecer o contexto, fazer análise léxica, sintática, semântica e morfológica, interpretar os sentidos e até aprender conceitos com os textos processados. Uma ontologia é um conjunto de termos ordenados hierarquicamente para descrever um domínio que pode ser usado como um esqueleto para uma base de conhecimentos. Dessa forma, ontologias fornecem um vocabulário para representação do conhecimento. Esse vocabulário tem por trás uma conceitualização que o sustenta, evitando assim interpretações ambíguas. Na tarefa de processar linguagem natural, o conhecimento do domínio é muito importante para uma compreensão coerente do texto. Esse conhecimento do domínio pode ser dado por meio de uma ontologia sobre o domínio de discurso do texto. Por fim, com o objetivo de analisar a viabilidade da ferramenta, deseja-se realizar uma série de testes com portadores de deficiência auditiva, correlacionando as funcionalidades do sistema em casos reais.

86 85 REFERÊNCIAS [1] LIBRAS. Língua Brasileira de Sinais. Disponível em: < Acessado em: mar/2010. [2] TAVARES, O. L.; CORADINE, L. C.; BREDA, W. L. Falibras-mt. autoria de tradutores automáticos de textos do português para libras, na forma gestual animada: Uma abordagem com memória de tradução. XXV Congresso da Sociedade Brasileira de Computação, [3] SANTAROSA, L. M.; THEMIS, A. S. Telemática: Um novo canal de comunicação para deficientes auditivos. [S.l.]: Universidade Federal do Rio Grande do Sul, [4] LIMA, D. M. C. A. Educação infantil: Saberes e práticas da inclusão: Dificuldades de comunicação e sinalização: Surdez. 4. ed. [S.l.]: MEC, Secretaria do Estado de Educação do Distrito Federal, [5] GOMES, D.; NETO, V. L. Falibras e sign webmessage: Novas tecnlogias para tradução língua portuguesa-libras. 2 o Simpósio Hipertexto e Tecnologias na Educação, [6] REDONDO, M. C. F.; CARVALHO, J. M. Deficiência Auditiva. [S.l.]: MEC, Secretaria de Educação a Distância, [7] IBM. Embedded ViaVoice. Disponível em: < 01.ibm.com/software/pervasive/embedded_viavoice>. Acessado em: abr/2010. [8] BRASIL, A. Acesso Brasil. Disponível em: < Acessado em: abr/2010. [9] RYBENÁ. Player Rybená. Disponível em: < Acessado em: abr/2010. [10] BREDA, W. L. Um ambiente para apoio à tradução baseado em conhecimento - Estudo de caso com Português-LIBRAS. Dissertação (Mestrado) Universidade Federal do Espírito Santo, [11] WIKIPÉDIA. Ambiente Virtual de Aprendizagem. Disponível em: < Acessado em: out/2010. [12] MOODLE. Disponível em: < Acessado em: out/2010. [13] TELEDUC. O que é TelEduc? Disponível em: < Acessado em: out/2010.

87 86 [14] INES. Instituto Nacional de Educação dos Surdos - INES. Disponível em: < Acessado em: out/2010. [15] WIKIPÉDIA. Língua Brasileira de Sinais. Disponível em: <URL: Acessado em: mar/2010. [16] ALMEIDA, E. O. C. Leitura e Surdez - Um estudo com adultos não oralizados. [S.l.]: Revinter, [17] BAEZA-YATES, R.; RIBEIRO-NETO, B. Modern Information Retrieval. 1. ed. New York: Addison-Wesley, [18] GEY, F. Models in Information Retrieval. [S.l.]: Tutorial Presented at the 19th ACM Conference on Research and Development in Information Retrieval (SIGIR), [19] CARDOSO, O. N. Recuperação de informação. Infocomp - Journal of Computer Science, [20] ORENGO, V. M.; HUYCK, C. A stemming algorithm for portuguese language. Symposium on String Processing and Information Retrieval, [21] HONRADO, A. A word stemming algorithm for spanish language. Symposium on String Processing and Information Retrieval, [22] VIERA, A. F. G.; VIRGIL, J. Uma revisão dos algoritmos de radicalização em língua portuguesa. Information Research, [23] PORTER, M. F. The Stemming Algorithm. Disponível em: < martin/porterstemmer/def.txt>. Acessado em: out/2010. [24] ALVARES, R. V.; GARCIA, A. C. B.; FERRAZ, I. Stembr: A stemming algorithm for the brazilian portuguese language. Portuguese Conference on Artificial Intelligence, [25] JAVAFREE.ORG. Tutorial Java. Disponível em: < Acessado em: out/2010. [26] WESTER, I. Linguagem Java. Disponível em: < Acessado em: out/2010. [27] SOFTWARE, T. Visual Programming Languages Popular. URL:. Acessado em: out/2010. [28] ORACLE. Java Technology. Disponível em: < Acessado em: out/2010. [29] ORACLE. Java EE at a Glance. Disponível em: < Acessado em: out/2010. [30] MICROSYSTEMS, S. Java EE Tutorial. Disponível em: < Acessado em: out/2010.

88 87 [31] OLIVEIRA, A. de P. Apostila Servlet/JSP. [S.l.]: Universidade Federal de Viçosa - Departamento de Informática, [32] DEITEL. Java Como programar. 6. ed. [S.l.]: Pearson Prentice Hall, [33] TEMPLE, A.; FERNANDES, R. JSP, Servlets e J2EE. [S.l.: s.n.], [34] WIKIPÉDIA. Plataforma Java. Disponível em: < Acessado em: nov/2010. [35] COMMONS, A. Commons FileUpload. Disponível em: < Acessado em: nov/2010. [36] MYSQL. Conectividade Java ao MySQL. Disponível em: < Acessado em: nov/2010. [37] ORACLE. Java Media Framework API (JMF). Disponível em: < Acessado em: out/2010. [38] BEZERRA, E. Princípios de Análise e Projeto de Sistemas com UML. [S.l.]: Elsevier, [39] CORRÊA, E. Principais Vantagens do MySQL. Disponível em: < Acessado em: nov/2010. [40] MACORATTI.NET. Padrões de Projeto - O modelo MVC. Disponível em: < Acessado em: nov/2010. [41] MICROSYSTEMS, S. Data Access Object Disponível em: < Acessado em: nov/2010. [42] WIKIPÉDIA. Modelo de Entidades e Relacionamentos. Disponível em: < Acessado em: nov/2010. [43] ROSSON, M.; CARROLL, J. Usability Engineering: Scenario-Based Development of Human Computer Interaction. [S.l.]: Morgan Kaufmann Publishers, 2002.

89 88 ANEXO A -- REGRAS DE REMOÇÃO DOS SUFIXOS Segue abaixo uma listagem das regras de remoção de sufixos de todos os passos do algoritmo RSLP descrito na seção [20]. Regras para redução do plural Figura 47: Regras para redução do plural Regras para redução do feminino Figura 48: Regras para redução do feminino

90 89 Regras para redução adverbial Figura 49: Regras para redução adverbial Regras para redução aumentativo-diminutivo Figura 50: Regras para redução aumentativo-diminutivo Regras para redução nominal Figura 51: Regras para redução nominal parte I

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Curso de atualização Educação Integral e Integrada. Tutorial Moodle. Belo Horizonte, 2013.

Curso de atualização Educação Integral e Integrada. Tutorial Moodle. Belo Horizonte, 2013. Curso de atualização Educação Integral e Integrada Tutorial Moodle Belo Horizonte, 2013. 1. INTRODUÇÃO... 3 2. ACESSANDO O AMBIENTE... 4 3. CONHECENDO O AMBIENTE... 5 3.1. CAIXAS DE UTILIDADES... 5 4.

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

Glossários em Moodle (1.6.5+)

Glossários em Moodle (1.6.5+) Glossários em Moodle (1.6.5+) Athail Rangel Pulino 2 Ficha Técnica Título Glossários em Moodle Autor Athail Rangel Pulino Filho Copyright Creative Commons Edição Agosto 2007 Glossários em Moodle 3 Índice

Leia mais

CENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA PRÓ-REITORIA ACADÊMICA NÚCLEO DE EDUCAÇÃO EM AMBIENTES DIGITAIS NEAD

CENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA PRÓ-REITORIA ACADÊMICA NÚCLEO DE EDUCAÇÃO EM AMBIENTES DIGITAIS NEAD 0 CENTRO UNIVERSITÁRIO CATÓLICA DE SANTA CATARINA PRÓ-REITORIA ACADÊMICA NÚCLEO DE EDUCAÇÃO EM AMBIENTES DIGITAIS NEAD ORIENTAÇÕES SOBRE USO DO AMBIENTE VIRTUAL DE APRENDIZAGEM (MOODLE) PARA DISPONIBILIZAÇÃO

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008 3º PERÍODO - 5º MÓDULO AVALIAÇÃO A4 DATA 23/04/2009 ENGENHARIA DE SOFTWARE Dados de identificação do Acadêmico: Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA

Leia mais

Utilizando a ferramenta de criação de aulas

Utilizando a ferramenta de criação de aulas http://portaldoprofessor.mec.gov.br/ 04 Roteiro Utilizando a ferramenta de criação de aulas Ministério da Educação Utilizando a ferramenta de criação de aulas Para criar uma sugestão de aula é necessário

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA. Guia rápido

INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA. Guia rápido INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA Guia rápido A PLATAFORMA MOODLE Moodle (Modular Object Oriented Distance LEarning) é um Sistema para Gerenciamento de Cursos (SGC). Trata-se de um programa para computador

Leia mais

Microsoft Office PowerPoint 2007

Microsoft Office PowerPoint 2007 INTRODUÇÃO AO MICROSOFT POWERPOINT 2007 O Microsoft Office PowerPoint 2007 é um programa destinado à criação de apresentação através de Slides. A apresentação é um conjunto de Sides que são exibidos em

Leia mais

Fóruns em Moodle (1.6.5+)

Fóruns em Moodle (1.6.5+) (1.6.5+) Ficha Técnica Título Fóruns em Moodle Autor Athail Rangel Pulino Filho Copyright Creative Commons Edição Agosto 2007 Athail Rangel Pulino 2 Índice O que são Fóruns 4 Criando um fórum 5 Nome do

Leia mais

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2

Leia mais

Documento de Análise e Projeto VideoSystem

Documento de Análise e Projeto VideoSystem Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.

Leia mais

Manual do Ambiente Moodle para Professores

Manual do Ambiente Moodle para Professores UNIVERSIDADE FEDERAL DA FRONTEIRA SUL Manual do Ambiente Moodle para Professores Tarefas Versão 1.0b Setembro/2011 Direitos Autorais: Essa apostila está licenciada sob uma Licença Creative Commons 3.0

Leia mais

Conceitos de Banco de Dados

Conceitos de Banco de Dados Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR 1 Índice: 01- Acesso ao WEBMAIL 02- Enviar uma mensagem 03- Anexar um arquivo em uma mensagem 04- Ler/Abrir uma mensagem 05- Responder uma mensagem

Leia mais

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

1.1. Organização de um Sistema Computacional

1.1. Organização de um Sistema Computacional 1. INTRODUÇÃO 1.1. Organização de um Sistema Computacional Desde a antiguidade, o homem vem desenvolvendo dispositivos elétricoeletrônicos (hardware) que funciona com base em instruções e que são capazes

Leia mais

PAINEL GERENCIADOR DE E-MAILS

PAINEL GERENCIADOR DE E-MAILS Este manual foi criado com o objetivo de facilitar o gerenciamento de suas contas de e-mail. Com ele, o administrador poderá criar e excluir e-mails, alterar senha, configurar redirecionamento de contas,

Leia mais

Introdução à Linguagem Java

Introdução à Linguagem Java Introdução à Linguagem Java Histórico: Início da década de 90. Pequeno grupo de projetos da Sun Microsystems, denominado Green. Criar uma nova geração de computadores portáveis, capazes de se comunicar

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica

Leia mais

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES [Observação: O template a seguir é utilizado como roteiro para projeto de sistemas orientado

Leia mais

PARANÁ GOVERNO DO ESTADO

PARANÁ GOVERNO DO ESTADO A COMUNICAÇÃO NA INTERNET PROTOCOLO TCP/IP Para tentar facilitar o entendimento de como se dá a comunicação na Internet, vamos começar contando uma história para fazer uma analogia. Era uma vez, um estrangeiro

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Wilson Moraes Góes. Novatec

Wilson Moraes Góes. Novatec Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1

Desenvolvimento Web TCC-00.226 Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Introdução ao Ambiente de Desenvolvimento Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

Operador de Computador. Informática Básica

Operador de Computador. Informática Básica Operador de Computador Informática Básica Instalação de Software e Periféricos Podemos ter diversos tipos de software que nos auxiliam no desenvolvimento das nossas tarefas diárias, seja ela em casa, no

Leia mais

Programação de Computadores II TCC-00.309 Turma A-1

Programação de Computadores II TCC-00.309 Turma A-1 Material elaborado pelo prof. Leandro A. F. Fernandes com contribuições dos profs. Anselmo A. Montenegro e Marcos Lage Programação de Computadores II TCC-00.309 Turma A-1 Conteúdo Introdução ao Ambiente

Leia mais

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado Escola Básica e Secundária de Velas Planificação de TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC Curso Profissional de Técnico de Secretariado 10º C MÓDULO 1 FOLHA DE CÁLCULO Microsoft Excel Conteúdos

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

EQUIPE: ANA IZABEL DAYSE FRANÇA JENNIFER MARTINS MARIA VÂNIA RENATA FREIRE SAMARA ARAÚJO

EQUIPE: ANA IZABEL DAYSE FRANÇA JENNIFER MARTINS MARIA VÂNIA RENATA FREIRE SAMARA ARAÚJO UNIVERSIDADE FEDERAL DA PARAIBA DEPARTAMENTO DE CIÊNCIA DA INFORMAÇÃO CENTRO DE CIÊNCIAS SOCIAIS APLICADAS CURSO DE GRADUAÇÃO EM BIBLIOTECONOMIA DISCIPLINA: TECNOLOGIA DA INFORMAÇÃO II PROFESSORA: PATRÍCIA

Leia mais

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO Santa Maria, 01 de Novembro de 2013. Revisão aula passada Projeto de Arquitetura Decisões de projeto de Arquitetura

Leia mais

Deficiência auditiva parcial. Annyelle Santos Franca. Andreza Aparecida Polia. Halessandra de Medeiros. João Pessoa - PB

Deficiência auditiva parcial. Annyelle Santos Franca. Andreza Aparecida Polia. Halessandra de Medeiros. João Pessoa - PB 1 UNIVERSIDADE FEDERAL DA PARAÍBA COMITÊ DE INCLUSÃO E ACESSIBILIDADE MATERIAL DIDÁTICO- ORIENTAÇÕES AOS DOCENTES Deficiência auditiva parcial Annyelle Santos Franca Andreza Aparecida Polia Halessandra

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Manual de Integração

Manual de Integração Manual de Integração Versão 3.10 Conteúdo 1 Obtendo e Instalando o Emissor... 4 1.1 Obtendo o instalador... 4 1.2 Instalando o JAVA e o Framework.NET 2.0... 4 1.3 Instalando o Emissor... 5 2 Padrões de

Leia mais

Guia de Especificação de Caso de Uso Metodologia CELEPAR

Guia de Especificação de Caso de Uso Metodologia CELEPAR Guia de Especificação de Caso de Uso Metodologia CELEPAR Agosto 2009 Sumário de Informações do Documento Documento: guiaespecificacaocasouso.odt Número de páginas: 10 Versão Data Mudanças Autor 1.0 09/10/2007

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais.

Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais. Desenvolvimento de um CMS 1 para a criação e publicação de web sites acessíveis por deficientes visuais. Tales Henrique José MOREIRA 1 ; Gabriel da SILVA 2 ; 1 Estudante de Tecnologia em Sistemas para

Leia mais

Manual do Painel Administrativo

Manual do Painel Administrativo Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...

Leia mais

Sistema de Gestão de Recursos de Aprendizagem

Sistema de Gestão de Recursos de Aprendizagem Sistema de Gestão de Recursos de Aprendizagem Ambiente Virtual de Aprendizagem (Moodle) - - Atualizado em 29/07/20 ÍNDICE DE FIGURAS Figura Página de acesso ao SIGRA... 7 Figura 2 Portal de Cursos... 8

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

A Educação Bilíngüe. » Objetivo do modelo bilíngüe, segundo Skliar:

A Educação Bilíngüe. » Objetivo do modelo bilíngüe, segundo Skliar: A Educação Bilíngüe Proposta de educação na qual o bilingüismo atua como possibilidade de integração do indivíduo ao meio sociocultural a que naturalmente pertence.(eulália Fernandes) 1 A Educação Bilíngüe»

Leia mais

Em que consiste o DOSVOX O programa é composto por:

Em que consiste o DOSVOX O programa é composto por: Projeto DOSVOX O que é o DOSVOX O DOSVOX é um sistema para microcomputadores que se comunica com o usuário através de síntese de voz, viabilizando, deste modo, o uso de computadores por deficientes visuais,

Leia mais

Guia do professor. Introdução

Guia do professor. Introdução Guia do professor Introdução Essa atividade oferece aos professores do Ensino Fundamental II, de Língua Espanhola e de Língua Portuguesa, novos recursos didáticos em forma de módulos, pois eles podem vir

Leia mais

UTILIZANDO PROGRAMAS EDUCACIONAIS

UTILIZANDO PROGRAMAS EDUCACIONAIS LINUX EDUCACIONAL UTILIZANDO PROGRAMAS EDUCACIONAIS PROFESSOR GERSON VALENCIO Caro professor: As novas Tecnologias de Informação e Comunicação(TICs) estão mudando nossa forma de pensar, agir, relacionar-se,

Leia mais

IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR

IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR IMPLEMENTAÇÃO DAS CAMADAS Inference Machine e Message Service Element PARA UM SERVIDOR DE SISTEMA DE GERENCIAMENTO DE Workflow HOSPITALAR Jeferson J. S. Boesing 1 ; Manassés Ribeiro 2 1.Aluno do Curso

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA

1. NÍVEL CONVENCIONAL DE MÁQUINA 1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0

Leia mais

Plano de Gerenciamento do Projeto

Plano de Gerenciamento do Projeto Projeto para Soluções Contábeis 2015 Plano de Gerenciamento do Projeto Baseado na 5ª edição do Guia PMBOK Brendon Genssinger o e Elcimar Silva Higor Muniz Juliermes Henrique 23/11/2015 1 Histórico de alterações

Leia mais

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2

A Linguagem Algorítmica Estrutura de Repetição. Ex. 2 Estrutura de Repetição. Ex. 2 A ESTRUTURA Enquanto faça{} É MELHOR UTILIZADA PARA SITUAÇÕES ONDE O TESTE DE CONDIÇÃO (V OU F) PRECISA SER VERIFICADO NO INÍCIO DA ESTRUTURA DE REPETIÇÃO.

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007 ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007 CURITIBA 2015 2 SUMÁRIO INTRODUÇÃO AO MICROSOFT POWERPOINT 2007... 3 JANELA PRINCIPAL... 3 1 - BOTÃO OFFICE... 4 2 - FERRAMENTAS DE ACESSO

Leia mais

Introdução ao EBSCOhost 2.0

Introdução ao EBSCOhost 2.0 Introdução ao EBSCOhost 2.0 Tutorial support.ebsco.com O que é? O EBSCO Host é um poderoso sistema de referência on-line acessível através da Internet, e oferece uma variedade de bases de dados de texto

Leia mais

Manual UNICURITIBA VIRTUAL para Professores

Manual UNICURITIBA VIRTUAL para Professores Manual UNICURITIBA VIRTUAL para Professores 1 2 2015 Sumário 1 Texto introdutório... 3 2 Como Acessar o UNICURITIBA VIRTUAL... 3 3 Tela inicial após login... 3 3.1) Foto do perfil... 4 3.2) Campo de busca...

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

EDITORA FERREIRA MP/RJ_EXERCÍCIOS 01

EDITORA FERREIRA MP/RJ_EXERCÍCIOS 01 EDITORA FERREIRA MP/RJ NCE EXERCÍCIOS 01 GABARITO COMENTADO 01 Ao se arrastar um arquivo da pasta C:\DADOS para a pasta D:\TEXTOS utilizando se o botão esquerdo do mouse no Windows Explorer: (A) o arquivo

Leia mais

COORDENAÇÃO DE ENSINO A DISTÂNCIA - EaD

COORDENAÇÃO DE ENSINO A DISTÂNCIA - EaD COORDENAÇÃO DE ENSINO A DISTÂNCIA - EaD TUTORIAL MOODLE VERSÃO ALUNO Machado/MG 2013 SUMÁRIO 1. INTRODUÇÃO... 4 2. EDITANDO O PERFIL... 5 2.1 Como editar o perfil?... 5 2.2 Como mudar a senha?... 5 2.3

Leia mais

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 Prezados Senhores da comissão de licitação da UENF, seguem alguns questionamentos acerca do edital de concorrência 01/2013 para esclarecimentos: 1. ANEXO

Leia mais

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 1. Introdução ao Java. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 1 Introdução ao Java Objetivos do Capítulo Compor uma visão histórica mínima para a compreensão da origem do Java. Compreender o que é o Java e para que finalidades ele é empregado. Delinear algumas

Leia mais

Prof. Marcelo Henrique dos Santos

Prof. Marcelo Henrique dos Santos ORIENTAÇÃO A OBJETOS COM PROTOTIPAÇÃO CAPÍTULO 02 CONCEITOS FUNDAMENTAIS OBJETIVOS Definiremos alguns conceitos fundamentais de forma a não deixar dúvidas básicas ou interpretações que nos coloquem em

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Tutorial 5 Questionários

Tutorial 5 Questionários Tutorial 5 Questionários A atividade Questionário no Moodle pode ter várias aplicações, tais como: atividades de autoavaliação, lista de exercícios para verificação de aprendizagem, teste rápido ou ainda

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Programação Servidor para Sistemas Web 1 Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Objetivo: Apresentar a teoria por trás dos padrões na construção de aplicações Web. INTRODUÇÃO Nas aulas anteriores

Leia mais

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO

PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO Compra Direta - Guia do Fornecedor PORTAL DE COMPRAS SÃO JOSÉ DO RIO PRETO Página As informações contidas neste documento, incluindo quaisquer URLs e outras possíveis referências a web sites, estão sujeitas

Leia mais

PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO

PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO PROPOSTA DE UM MODELO DE SISTEMA HIPERMÍDIA PARA APRESENTAÇÃO DO CURSO DE CIÊNCIA DA COMPUTAÇÃO Fabiana Pacheco Lopes 1 1 Universidade Presidente Antônio Carlos (UNIPAC) fabipl_21@yahoo.com.br Resumo.Este

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

REFORÇO DE PROGRAMAÇÃO ESTRUTURADA EM LINGUAGEM C PARA GRADUAÇÃO EM ENGENHARIA ELÉTRICA

REFORÇO DE PROGRAMAÇÃO ESTRUTURADA EM LINGUAGEM C PARA GRADUAÇÃO EM ENGENHARIA ELÉTRICA REFORÇO DE PROGRAMAÇÃO ESTRUTURADA EM LINGUAGEM C PARA GRADUAÇÃO EM ENGENHARIA ELÉTRICA Andréa Willa Rodrigues Villarim (Voluntário) Marcelo Pereira Rufino (Bolsista) Larissa Aguiar (Bolsista) Nady Rocha

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais