1000 resultados para Linguagens informáticas
Resumo:
Abordagens clássicas de linguagens de consultas para bancos de dados possuem certas restrições ao serem usadas, diretamente, por aplicações que acessam dados cujo conteúdo não é completamente conhecido pelo usuário. Essas restrições geram um cenário onde argumentos de consultas, especificados com operadores boleanos, podem retornar resultados vazios. Desse modo, o usuário é forçado a refazer suas consultas até que os argumentos usados estejam idênticos aos dados armazenados no banco de dados. Em bases XML, este problema é reforçado pela heterogeneidade das formas em que a informação encontra-se armazenada em diferentes lugares. Como solução, uma alternativa seria o uso de funções de similaridade na substituição de operadores boleanos, a fim de que o usuário obtenha resultados aproximados para a consulta especificada. Neste trabalho é apresentada uma proposta para suporte a argumentos de consulta vagos através da extensão da linguagem XPath. Para isso, são utilizadas expressões XPath que utilizam novas funções, as quais são, diretamente, adicionadas ao processador da linguagem de consulta. Além disso, é apresentada uma breve descrição das métricas de similaridade utilizadas para a criação das funções. As funções que foram adicionadas a um processador XPath possuem uma ligação muito estreita com as métricas utilizadas. Como as métricas, as funções trabalham com valores simples (elementos atômicos) e compostos (elementos complexos). As funções que trabalham com elementos atômicos podem ser classificadas tanto pelo tipo de dado que será analisado, como pelo tipo de análise que será feita. As funções para elementos complexos comparam conjuntos de elementos atômicos de acordo com a forma do agrupamento (conjunto, lista ou tupla).
Resumo:
Devido ao aumento da complexidade dos circuitos integrados atuais, os projetos são desenvolvidos utilizando linguagens de descrição de hardware (por exemplo, VHDL) e os circuitos são gerados automaticamente a partir das descrições em alto nível de abstração. Embora o projeto do circuito seja facilitado pela utilização de ferramentas de auxílio ao projeto, o teste do circuito resultante torna-se mais complicado com o aumento da complexidade dos circuitos. Isto traz a necessidade de considerar o teste do circuito durante sua descrição e não somente após a síntese. O objetivo deste trabalho é definir uma relação entre o estilo da descrição VHDL e a testabilidade do circuito resultante, identificando formas de descrição que geram circuitos mais testáveis. Como estudo de caso, diferentes descrições VHDL de um mesmo algoritmo foram utilizadas. Os resultados mostram que a utilização de diferentes descrições VHDL tem grande impacto nas medidas de testabilidade do circuito final e que características de algumas descrições podem ser utilizadas para modificar outras descrições e com isso aumentar a testabilidade do circuito resultante.
Resumo:
Esta pesquisa desenvolve uma análise da formação de grupos educacionais que se estabeleceram fora do espaço instituído das faculdades de educação e passaram a ocupar um lugar nos institutos ou departamentos de bioquímica, configurando, desta forma, um novo lugar de saber que passou a ser chamado de Educação em Bioquímica. A proposta de análise é a busca de condições históricas para emergência desses grupos, bem como um entendimento de como essa formação se deu dentro das Sociedades que congregam os pesquisadores em bioquímica e, para operacioná-la, partiu-se de uma perspectiva pós-estruturalista e pós-moderna de investigação, inspirada nos entendimentos de história, ciências e educação de dois pensadores sociais que são Jean-François Lyotard e Michel Foucault. Em função da produtividade crescente no novo campo de saber da Educação em Bioquímica e das diferentes abordagens percebidas nas apresentações em eventos da comunidade de bioquímicos, passou-se a investigar três desses grupos no seu movimento diário de pesquisa, procurando perceber as estratégias de validação do conhecimento de cada grupo, suas semelhanças e diferenças no campo da Educação Bioquímica, seus possíveis embates e, principalmente, suas positividades em termos de produção do saber num campo de conhecimentos que se organiza entre dois estabelecidos e distintos campos de conhecimento: das ciências educacionais e das ciências da vida. Uma das questões importantes nas perspectivas pós-modernas e pós-estruturalistas em educação é a possibilidades de ler textos que estão visibilizados de outras formas que não as da fala e da escrita. A possibilidade de mostrar como os lugares podem dizer de seus ocupantes e das suas relações, também, é uma abordagem que esse trabalho de pesquisa evidencia, bem como, traz à discussão as diferenças das linguagens características de um fazer científico e de um fazer educacional tendo como pano de fundo as falas da Educação em Bioquímica. Pretende-se mostrar que as linguagens dos campos de origem - bioquímica e educação – conformam e determinam um modo de literatura que oscila entre esses dois saberes e que de alguma forma reproduz em microescala uma discussão maior que acontece entre as ciências da vida e as ciências humanas. Enfim, procurou-se mapear a emergência histórica, a produção e a produtividade de alguns grupos importantes na área, as formas de legitimação e os processos de construção e sobrevivência desses grupos que trabalham nos limiares do saber.
Resumo:
XML has become an important medium for data exchange, and is frequently used as an interface to - i.e. a view of - a relational database. Although lots of work have been done on querying relational databases through XML views, the problem of updating relational databases through XML views has not received much attention. In this work, we give the rst steps towards solving this problem. Using query trees to capture the notions of selection, projection, nesting, grouping, and heterogeneous sets found throughout most XML query languages, we show how XML views expressed using query trees can be mapped to a set of corresponding relational views. Thus, we transform the problem of updating relational databases through XML views into a classical problem of updating relational databases through relational views. We then show how updates on the XML view are mapped to updates on the corresponding relational views. Existing work on updating relational views can then be leveraged to determine whether or not the relational views are updatable with respect to the relational updates, and if so, to translate the updates to the underlying relational database. Since query trees are a formal characterization of view de nition queries, they are not well suited for end-users. We then investigate how a subset of XQuery can be used as a top level language, and show how query trees can be used as an intermediate representation of view de nitions expressed in this subset.
Resumo:
No momento em que a sociedade acompanha a evolução do sistema educacional e profissional com a educação a distância em ambiente virtual na Web cada vez mais presente em nosso cotidiano com as tecnologias de informação e comunicação chegando às escolas e universidades, exige-se uma mudança pedagógica na educação. Diretores, professores e toda a comunidade envolvida no processo precisam repensar o seu papel de orientadores e estimuladores e os conceitos sobre a sua prática pedagógica. O aluno tem que modificar a sua forma de agir: aprender por si próprio, ser criativo, saber trabalhar em grupo de modo cooperativo e ser capaz de organizar seu próprio trabalho. Esse tipo de abordagem contribuiu para a construção deste estudo, que tem como objetivo realizar uma análise investigativa sobre o conjunto de procedimentos que asseguram o processo de ensino-aprendizagem na prática pedagógica no ambiente de educação a distância (EAD), abordando e contextualizando as possíveis implicações dessa prática. Para tanto, faz-se necessário compreender a metodologia de interação, cooperação/colaboração e autonomia estabelecida entre as pessoas envolvidas no sistema de educação on-line com o intuito de contribuir para uma ação mais efetiva na organização e no planejamento desse sistema de ensino. Sabemos que a separação física entre o professor e o aluno é uma das peculiaridades do ensino a distância, o que provoca uma necessidade de construir novos conceitos para compreender as relações de mediação que se diferenciam dos parâmetros da sala de aula convencionais. Essa é uma preocupação deste trabalho, cuja intenção é identificar as características específicas que estão inseridas na Didática e como elas estão envolvidas no processo de comunicação e interação entre docentes e alunos nesse espaço de formação. Para desenvolver esta pesquisa, adota-se uma abordagem qualitativa, com a utilização de técnicas como questionários estruturados, fórum e relatos gravados das apresentações feitas pelos alunos participantes do workshop de encerramento do curso e no próprio ambiente. A partir da análise dos dados coletados, diante da multiplicidade de meios, materiais e linguagens disponibilizadas pela educação a distância, faz-se necessário discutir sistematicamente os pressupostos didáticos que interligam os indivíduos em rede de comunicação global proporcionada pelo ambiente tecnológico de aprendizagem – alunos/ professores, alunos/alunos e alunos/ambiente. Como professora/multiplicadora do Programa de Informática Educativa, o espaço escolhido para direcionar o olhar investigativo desta pesquisa foi o Curso de Especialização em Informática Educativa, realizado no ambiente e-ProInfo e oferecido pela Universidade Federal do Espírito Santo no período de 2002 a 2003, para formar novos multiplicadores que atuarão nos Núcleos de Tecnologia Educacional da Secretaria Estadual de Educação e professores facilitadores do laboratório de informática das escolas estaduais de vários municípios do Estado do Espírito Santo. Estes estudos apontaram a importância das estratégias didáticas na prática pedagógica em educação a distância em ambiente virtual na Web, aplicadas com o uso dos instrumentos interativos mediando os interlocutores, aproximando os indivíduos que estão fisicamente distantes e envolvidos nesse processo de ensino-aprendizagem. Considerando que o foco deste estudo é a educação a distância, modalidade de ensino desenvolvida pelo Programa de Pós-Graduação em Educação da Universidade Federal do Rio Grande do Sul, que hoje é uma referência em nível nacional de Educação a Distância, espero estar contribuindo para a inserção deste trabalho no contexto das Universidades e Instituições de Ensino que propõem consolidar esta modalidade de ensino usando como recurso um ambiente virtual de aprendizagem.
Resumo:
A comunicação é essencial para a vida em grupo, e se dá através da linguagem. Existem diversas formas de linguagem, porém a linguagem matemática vai além das demais, pois é universal. O advento dos aparelhos eletrônicos e, em especial, do computador, tornou possível o desenvolvimento de padrões e aplicativos que pudessem manipular símbolos matemáticos eletronicamente. A Web trouxe consigo a linguagem HTML para visualização de textos e, mais atualmente, o padrão de linguagem de marcação XML e seus aplicativos, que têm características melhores que o HTML quanto à estruturação, armazenamento e indexação de dados. Uma das aplicações advindas do XML foi a linguagem de marcação matemática MathML, que contribui para a manipulação e visualização de formalismos matemáticos na Web, e vem se tornando um padrão no meio acadêmico, educacional e comercial. As diversas aplicações matemáticas (editores, ambientes matemáticos) desenvolvidas para o computador geralmente não permitem a discussão em linguagem matemática de forma síncrona pela rede de computadores. Sabe-se que na Internet a conexão de pessoas num mesmo momento através de ferramentas síncronas é muito difundida, como é o caso de aplicativos do tipo bate-papo; no entanto, esses aplicativos não possuem funcionalidades que permitam a troca de textos matemáticos. Há, portanto, uma limitação em relação a ferramentas de comunicação síncrona para matemática na Web. Este trabalho quer oferecer uma alternativa ao público que deseje trocar formalismos matemáticos de forma síncrona pela Web, a fim de verificar se esse tipo de ferramenta é efetivamente usável para discussões matemáticas. Para isso, foi desenvolvido um protótipo que reúne as características de uma ferramenta típica de bate-papo com as vantagens advindas das linguagens de marcação: o ChatMath. O trabalho também aponta características de aplicativos matemáticos e de ferramentas síncronas textuais e descreve as linguagens de marcação matemática. Para fins de avaliação do protótipo desenvolvido, fez-se uma pesquisa a fim de verificar sua efetiva utilidade para troca de formalismos matemáticos, dentro do contexto educacional. Os resultados dessa pesquisa confirmam a hipótese levantada, embora identifiquem modificações funcionais e de uso da ferramenta, havendo necessidade de reaplicação da avaliação, para se obter resultados mais detalhados.
Resumo:
Esta dissertação faz parte das pesquisas realizadas pelo Grupo de Computação Musical da UFRGS e está baseada na crença que é possível fomentar cada vez mais o interesse das pessoas pela música, usando formas alternativas para experimentação sonora e incentivando a interação entre usuários. A partir desta idéia, chega-se ao projeto do CODES - Cooperative Sound Design, que é um ambiente baseado na Web para prototipação musical cooperativa e visa permitir que pessoas (músicos ou leigos em música) possam interagir com o ambiente e entre si para criar cooperativamente protótipos de peças musicais. O objetivo geral deste trabalho é criar um ambiente computacional que permita ao leigo realizar a tarefa de prototipação musical cooperativa na Web. Especificamente, também objetiva identificar e propor características importantes para a implementação de ambientes coletivos para criação sonora apoiados por computador e outras tecnologias disponíveis. Tradicionalmente, algumas barreiras dificultam o “fazer musical” das pessoas e grupos que desejam se reunir e interagir para troca de experiências sonoras. A distância física ou geográfica, a necessidade de posse de um instrumento musical e do domínio da notação musical tradicional (partitura) podem ser as principais barreiras nesse sentido. A principal motivação para este trabalho se apóia sobre este aspecto, no sentido de vencer o desafio para eliminar estas barreiras que afastam as pessoas interessadas da possibilidade de fazer experimentos musicais em grupo. Através do uso do computador como instrumento virtual, da Internet para encontros virtuais e de uma notação musical alternativa para a realização de tais experimentos é possível eliminar estas barreiras. A metodologia para o desenvolvimento desta pesquisa envolveu atividades como estudo e levantamento de características das principais linguagens / notações / representações para computação musical; estudo e levantamento de características dos aspectos de IHC; estudo e levantamento de características de aplicativos CSCW; estudo e levantamento de características de aplicativos de composição musical cooperativa na web; modelagem e construção do protótipo a partir dos levantamentos feitos e da solução proposta; avaliação, experimentação e revisão do protótipo em situações reais de uso; e avaliação do trabalho como um todo, incluindo suas contribuições e limitações. Dentre as principais contribuições deste trabalho salienta-se a prototipação musical cooperativa na web (termo proposto para as ações de manipulação sonora coletiva) realizada por meio de um protótipo desenvolvido; a integração de conceitos de Computação Musical, Interação Humano-computador e Trabalho Cooperativo; a criação de modelos de memória de grupo; a criação de mecanismo para permitir a manipulação sonora individual e coletiva e um modelo de justificativa e argumentação.
Resumo:
Com o objetivo de realizar consultas em diferentes fontes XML,é necessário que se escreva uma consulta específica para cada fonte XML. Uma solução mais adequada é fazer uma única consulta sobre um esquema conceitual e então traduzi-la automaticamente para consultas XML para cada fonte XML específica. CXPath é uma linguagem de consulta que foi proposta para consultar dados em nıvel conceitual. Este trabalho tem como objetivos formalizar a linguagem existente, estendê-la para permitir consultas que utilizem o conceito de herança e estender o mecanismo de tradução de consultas. A formalização da linguagem é feita por meio de um conjunto de regras que definem formalmente um critério para validar uma consulta escrita nessa linguagem sobre um esquema conceitual. Essa formalização permite estender a linguagem para que ela passe a tratar os relacionamentos de herança e especialização. Outra contribuição dessa formalização é que ela apresenta o primeiro passo rumo à verificação formal de que a avaliação da consulta global traz os mesmos resultados obtidos pela avaliação da consulta resultante do processo de mapeamento de consultas proposto. A extensão do mecanismo de tradução de consultas é necessária para traduzir relacionamentos representados no modelo conceitual para junções nas fontes de dados XML. Tal aspecto é fundamental para permitir a construção de modelos conceituais com relacionamentos semânticos e que não dependam de relacionamentos físicos existentes nos documentos fontes, mas apenas de junções tal como é feito em bases de dados relacionais.
Resumo:
Os sistemas computacionais estão tomando proporções cada vez maiores envolvendo situações bastante complexas, onde muitas vezes erros são inaceitáveis, como em sistemas bancários, sistemas de controle de tráfego aéreo, etc... Para obter software confiável e com desempenho aceitável, pode-se aliar técnicas de desenvolvimento formal de software a técnicas de simulação de sistemas. O ambiente PLATUS reúne essas duas áreas: modelos de simulação são descritos usando gramáticas de grafos uma linguagem de especificação formal. Gramáticas de grafos são uma generalização de gramáticas de Chomsky, substituindo strings por grafos. Neste trabalho, serão tratadas gramáticas de grafos baseados em objetos, um modelo onde vértices e arcos são tipados, e as especificações são modulares (a especificação de um sistema consiste em várias gramáticas de grafos combinadas). Assim, o modelo de um sistema pode ser descrito de forma precisa, e a linguagem de especificação é bastante abstrata e expressiva. Num ambiente de simulação a questão da recuperação de dados merece uma atenção especial, uma vez que a eficiência do simulador está diretamente ligada a agilidade na obtenção das informações. Neste trabalho, o objetivo principal é definir uma representação para gramáticas de grafos que facilite o armazenamento, a recuperação e análise das estruturas identificadas no ambiente PLATUS, ou seja, gramáticas de grafos baseadas em objetos. São definidas também funções que implementam os procedimentos necessários, para a recuperação de dados durante a simulação. A eficiência dessas funções é demonstrada através do cálculo de sua ordem de complexidade. As estruturas são validadas através da implementação de um protótipo de banco de dados.
Resumo:
Durante os últimos anos as áreas de pesquisa sobre Agentes Inteligentes, Sistemas Multiagentes e Comunicação entre Agentes têm contribuído com uma revolução na forma como sistemas inteligentes podem ser concebidos, fundamentados e construídos. Sendo assim, parece razoável supor que sistemas inteligentes que trabalhem com domínios probabilísticos de conhecimento possam compartilhar do mesmo tipo de benefícios que os sistemas mais tradicionais da Inteligência Artificial receberam quando adotaram as concepções de agência, de sistemas compostos de múltiplos agentes e de linguagens de comunicação entre estes agentes. Porém, existem dúvidas não só sobre como se poderia escalar efetivamente um sistema probabilístico para uma arquitetura multiagente, mas como se poderia lidar com as questões relativas à comunicação e à representação de conhecimentos probabilísticos neste tipo de sistema, principalmente tendo em vista as limitações das linguagens de comunicação entre agentes atuais, que não permitem comunicar ou representar este tipo de conhecimento. Este trabalho parte destas considerações e propõe uma generalização do modelo teórico puramente lógico que atualmente fundamenta a comunicação nos sistemas multiagentes, que será capaz de representar conhecimentos probabilísticos. Também é proposta neste trabalho uma extensão das linguagens de comunicação atuais, que será capaz de suportar as necessidades de comunicação de conhecimentos de natureza probabilísticas. São demonstradas as propriedades de compatibilidade do novo modelo lógico-probabilístico com o modelo puramente lógico atual, sendo demonstrado que teoremas válidos no modelo atual continuam válidos no novo modelo. O novo modelo é definido como uma lógica probabilística que estende a lógica modal dos modelos atuais. Para esta lógica probabilística é definido um sistema axiomático e são demonstradas sua correção e completude. A completude é demonstrada de forma relativa: se o sistema axiomático da lógica modal original for completo, então o sistema axiomático da lógica probabilística proposta como extensão também será completo. A linguagem de comunicação proposta neste trabalho é definida formalmente pela generalização das teorias axiomáticas de agência e comunicação atuais para lidar com a comunicação de conhecimentos probabilísticos e pela definição de novos atos comunicativos específicos para este tipo de comunicação. Demonstra-se que esta linguagem é compatível com as linguagens atuais no caso não-probabilístico. Também é definida uma nova linguagem para representação de conteúdos de atos de comunicação, baseada na lógica probabilística usada como modelo semântico, que será capaz de expressar conhecimentos probabilísticos e não probabilísticos de uma maneira uniforme. O grau de expressibilidade destas linguagens é verificado por meio de duas aplicações. Na primeira aplicação demonstra-se como a nova linguagem de conteúdos pode ser utilizada para representar conhecimentos probabilísticos expressos através da forma de representação de conhecimentos probabilísticos mais aceita atualmente, que são as Redes Bayesianas ou Redes de Crenças Probabilísticas. Na outra aplicação, são propostos protocolos de interação, baseados nos novos atos comunicativos, que são capazes de atender as necessidades de comunicação das operações de consistência de Redes Bayesianas secionadas (MSBNs, Multiple Sectioned Bayesian Networks) para o caso de sistemas multiagentes.
Resumo:
Na simulação heterogênea de um sistema eletrônico complexo, um mesmo modelo pode ser composto por partes distintas em relação às tecnologias ou linguagens utilizadas na sua descrição, níveis de abstração, ou pela combinação de partes de software e de hardware (escopo da co-simulação). No uso de modelos heterogêneos, a construção de uma ponte eficaz entre diferentes simuladores, em conjunto com a solução de problemas tais como sincronização e tradução de dados, são alguns dos principais desafios. No contexto do projeto de sistemas embarcados, a validação desses sistemas via co-simulação está sujeita a estes desafios na medida em que um mesmo modelo de representação precisa suportar a cooperação consistente entre partes de hardware e de software. Estes problemas tornam-se mais significativos quando abordados em ambientes distribuídos, o que aumenta a complexidade dos mecanismos que gerenciam os ítens necessários à correta cooperação entre partes diferentes. Contudo, embora existam abordagens e ferramentas voltadas para o tratamento de modelos heterogêneos, inclusive em ambientes distribuídos, ainda persiste uma gama de limitações causadas pela distribuição e heterogeneidade de simuladores. Por exemplo, restrições quanto à variedade de tecnologias (ou linguagens) utilizadas na descrição das partes de um modelo, flexibilidade para o reuso de partes existentes, ou em tarefas de gerenciamento de sincronização/dados/interface/distribuição. Além disso, em geral, nas soluções existentes para simulação heterogênea, alterações são necessárias sobre as partes do modelo, limitando a preservação de sua integridade. Esta é uma característica indesejável, por exemplo, no reuso de componentes IP (Intellectual Property) Neste contexto, esta tese apresenta o DCB (Distributed Co-simulation Backbone), cujo propósito geral é o suporte à execução distribuída dos modelos heterogêneos. Para isso, são observados de modo integrado quatro fatores básicos: a distribuição física; a independência dos componentes (partes); o encapsulamento das estratégias de gerenciamento de tempo, de dados e de comunicação; e a sincronização híbrida. Em geral, as soluções existentes valorizam um fator em detrimento dos demais, dependendo dos propósitos envolvidos e sua variação em relação ao grau de especificidade (soluções proprietárias ou restritas a um escopo de aplicações). O Tangram, também discutido nesta tese em termos de requisitos, é uma proposta de ambiente para projeto de modelos heterogêneos distribuídos. No contexto da especificação do DCB, esta proposta tem como objetivo geral agregar num mesmo ambiente funcionalidades de apoio para a busca e catalogação de componentes, seguidas do suporte à construção e à execução distribuída de modelos heterogêneos via DCB. À luz dos princípios de generalidade e flexibilidade da arquitetura do DCB, o Tangram visa permitir que o projetista reduza seu envolvimento com detalhes relacionados ao provimento de condições necessárias à cooperação entre componentes heterogêneos. No escopo desta tese, ênfase foi dada à co-simulação de sistemas embarcados, ênfase esta observada também na construção do protótipo do Tangram/DCB, e nos estudos de caso. Contudo, a estrutura do DCB é apropriada para qualquer domínio onde a simulação possa ser utilizada como instrumento de validação, entre outros propósitos.
Resumo:
Modelos de bancos de dados têm sido progressivamente estendidos a fim de melhor capturar necessidades específicas de aplicações. Bancos de dados versionados, por exemplo, provêm suporte a versões alternativas de objetos. Bancos de dados temporais, por sua vez, permitem armazenar todos os estados de uma aplicação, registrando sua evolução com o passar do tempo. Tais extensões sobre os modelos de dados se refletem nas respectivas linguagens de consulta, normalmente sob a forma de extensões a linguagens conhecidas, tais como SQL ou OQL. O modelo de banco de dados TVM (Temporal Versions Model ), definido sobre o modelo de banco de dados orientado a objetos, suporta simultaneamente versões alternativas e o registro de alterações de objetos ao longo do tempo. A linguagem de consulta TVQL (Temporal Versioned Query Language), definida a partir da linguagem de consulta SQL, permite recuperar informações do modelo de dados TVM. As construções introduzidas em TVQL têm como objetivo tornar simples a consulta do banco de dados em diversos pontos da linha temporal. Apesar das vantagens da utilização da linguagem TVQL para resgatar dados temporais do modelo TVM, existem algumas limitações importantes para seu aprimoramento. Uma delas é a alta complexidade do modelo TVM, proveniente da integração de conceitos variados como estados alternativos e rótulos temporais. Outro ponto é que, até o presente momento, não existe um interpretador para TVQL, impedindo uma experiência prática de programação de consultas. O objetivo principal deste trabalho é o desenvolvimento de uma especificação formal para a linguagem TVQL, tornando possível um estudo consistente de suas construções. Adicionalmente, uma especificação formal serve como documentação para futuras implementações de interpretadores. Neste trabalho foi desenvolvido um protótipo de avaliador de consultas e verificador de tipos para um núcleo funcional da linguagem TVQL, possibilitando também uma experimentação prática sobre os modelos propostos.