109 resultados para Computação gráfica
Resumo:
A elicitação de requisitos é uma das primeiras actividades do processo de Engenharia de Requisitos. Através desta etapa é possível capturar e estruturar os requisitos dos stakeholders e do sistema a ser implementado. Tipicamente esta estruturação é representada através de notação gráfica com o auxílio de ferramentas CASE. Estas ferramentas tornam esta actividade exclusiva, em termos de acessibilidade, a engenheiros sem deficiências físicas devido à complexidade das funcionalidades oferecidas pelas mesmas que permitem construir estes modelos. Nesta dissertação de mestrado é proposto desenvolver uma abordagem com suporte de uma ferramenta para melhorar a acessibilidade, e consequentemente,integrar um engenheiro de requisitos com limitações físicas na actividade de elicitação de requisitos. A ferramenta também possibilita uma alternativa para os stakeholders em geral para produzir modelos sem usar as mãos quando for mais conveniente. Esta abordagem propõe usar mecanismos de voz na geração de modelos de requisitos, mais concretamente modelos de requisitos orientados a objectivos, modelos de objectos e modelos de features usando técnicas de Model-Driven Development (MDD) (e.g., metamodelos). O stakeholder assim irá capturar os seus requisitos através de mecanismos de reconhecimento de voz, sendo automaticamente realizada uma transformação do seu discurso para um modelo KAOS, para um modelo conceptual ou para um modelo de features.
Resumo:
Na atualidade existe a necessidade de produzir novos aviões de forma rápida, eficiente e económica com o objetivo de abrir novas rotas de voo, expansão das já existentes e substituição de aviões em fim de vida útil. Neste contexto, e sem nunca deixar de cumprir os apertados requisitos do domínio que incluem a exigência de elevada qualidade, a indústria adotou a arquitetura IMA que permite executar várias aplicações aviónicas num único sistema de computação partilhado. Com esta arquitetura, o desenvolvimento do software para as aeronaves ganhou uma elevada relevância, sendo necessário gerar código automaticamente, reutilizar código já testado proveniente de outras aplicações anteriormente desenvolvidas e garantir o mais cedo possível que o software desenvolvido se encontra de acordo com os standards. Apesar da complexidade do domínio, desenvolveu-se uma ferramenta que permite produzir a estrutura do código de novas aplicações para a aviónica. Aferramenta lida com a variabilidade das diversas linhas de produto e reduz o tempo de desenvolvimento. Uma DSL poderia ser uma solução apropriada, pois permite cobrir diversos requisitos exigidos, no entanto, esta solução não é exequível porque seria necessário produzir uma linguagem para cada configuração de software aviónico diferente se pretendêssemos tirar partido da especificidade. Com esta dissertação, solucionou-se esta dificuldade com recurso à noção de família de DSLs. Trata-se de um conjunto de linguagens para um domínio específico, que apresentam um conjunto comum de conceitos chave, mas que adaptam alguns desses conceitos para cumprir a variabilidade dos requisitos. Utilizou-se a abordagem MDD para desenvolver um gerador automático de DSLs que é capaz de produzir a linguagem desejada de acordo com a configuração de software pretendida para a partição pertencente a um módulo aviónico. As linguagens geradas apresentam um nível de usabilidade adequada para o domínio, bem como têm a capacidade de validar as construções efetuadas usando a DSL e produzir os artefactos pretendidos.
Resumo:
As simulações que pretendam modelar fenómenos reais com grande precisão em tempo útil exigem enormes quantidades de recursos computacionais, sejam estes de processamento, de memória, ou comunicação. Se até há pouco tempo estas capacidades estavam confinadas a grandes supercomputadores, com o advento dos processadores multicore e GPUs manycore os recursos necessários para este tipo de problemas estão agora acessíveis a preços razoáveis não só a investigadores como aos utilizadores em geral. O presente trabalho está focado na otimização de uma aplicação que simula o comportamento dinâmico de materiais granulares secos, um problema do âmbito da Engenharia Civil, mais especificamente na área da Geotecnia, na qual estas simulações permitem por exemplo investigar a deslocação de grandes massas sólidas provocadas pelo colapso de taludes. Assim, tem havido interesse em abordar esta temática e produzir simulações representativas de situações reais, nomeadamente por parte do CGSE (Australian Research Council Centre of Excellence for Geotechnical Science and Engineering) da Universidade de Newcastle em colaboração com um membro da UNIC (Centro de Investigação em Estruturas de Construção da FCT/UNL) que tem vindo a desenvolver a sua própria linha de investigação, que se materializou na implementação, em CUDA, de um algoritmo para GPUs que possibilita simulações de sistemas com um elevado número de partículas. O trabalho apresentado consiste na otimização, assente na premissa da não alteração (ou alteração mínima) do código original, da supracitada implementação, de forma a obter melhorias significativas tanto no tempo global de execução da aplicação, como no aumento do número de partículas a simular. Ao mesmo tempo, valida-se a formulação proposta ao conseguir simulações que refletem, com grande precisão, os fenómenos físicos. Com as otimizações realizadas, conseguiu-se obter uma redução de cerca de 30% do tempo inicial cumprindo com os requisitos de correção e precisão necessários.
Resumo:
Os controladores lógicos programáveis (PLC) são muito ,e cada vez mais, utilizados na indústria. Este tipo de equipamento, além de ser inerentemente caro, pode causar situações perigosas e perda de produtividade caso sejam incorretamente programados. Existem programas de alguns fabricantes que permitem a simulação de linguagens utilizadas na programação de autómatos (segundo a norma internacional IEC 61131-3), mas uma simulação da linguagem em Texto Estruturado (ST) em particular, é complicada e de difícil acesso. O principal objetivo deste projeto é a realização de um simulador em tempo real, capaz de realizar testes e simulações prévias de código de Texto Estruturado, a testar posteriormente no autómato TSX Micro 3721 da Schneider. É necessário a construção de um compilador e interpretador de linguagens de programação, para realização do simulador e interface gráfica. Os dois sistemas utilizados para gerar as regras formais gramaticais e de produção em linguagens de programação são o Lex e o Yacc. O Lex gera um analisador léxico dividindo o ficheiro de linguagem em texto estruturado em tokens (símbolos significativos). O Yacc, através desses símbolos recebidos, forma as regras de produção e a respetiva estrutura hierárquica do programa. A partir da interpretação desta estrutura gerada é possível traduzir ou compilar qualquer linguagem de programação, neste caso o texto estruturado, e criar um simulador correspondente numa outra linguagem. O simulador recebe o código ST e através de funções definidas pelo sistema de compilação, interpretação e tradução, reconhece as instruções em linguagem de texto estruturado correspondente e realiza o conjunto de ações propostas. Analisando os testes no autómato e os resultados apresentados pela interface, podemos concluir que é possível realizar compiladores e respetivos simuladores, utilizando análises gramaticais das linguagens de programação, em particular, podemos concluir que o simulador para linguagem em Texto Estruturado foi realizado com sucesso.
Resumo:
Devido à crescente popularização dos computadores pessoais, estes encontram-se fortemente enraizados na nossa vida quotidiana. Para muitas pessoas, em particular as mais jovens, o computador já se tornou uma ferramenta de trabalho, uma fonte de informação ou até uma forma de entretenimento indispensável ao seu dia-a-dia. Por estas razões os computadores oferecem-nos boas oportunidades de expansão em diversos contextos, nomeadamente no ensino escolar e na inclusão social. Vários estudos afirmam que o uso de vídeo jogos na educação traria muitos benefícios ao processo de aprendizagem, pois permitiriam formas de ensino mais motivadoras e adaptáveis aos comportamentos sociais das crianças e jovens de hoje. No entanto há que ter diversos cuidados, caso contrário, corre-se o sério risco de tornar o jogo um motivo de desconcentração e não numa ferramenta de estudo. Para tal é importante encontrar métodos que façam a distinção entre os alunos que decoraram as soluções do jogo por jogarem frequentemente, dos que arriscam nas respostas sempre que jogam e dos alunos que vão adquirindo conhecimentos de cada vez que jogam, premiando estes últimos em detrimento dos dois primeiros. A forte presença do computador no dia-a-dia torna-o também um importante veículo para a inclusão de pessoas com deficiências visuais. No entanto como a interacção com o computador é normalmente muito exigente a nível visual, se as aplicações não forem bem desenhadas podem aumentar a disparidade entre os utilizadores visuais e os utilizadores invisuais. Assim é fundamental perceber o impacto das diferenças individuais e a sua relação com as exigências das interfaces, sobretudo nos vídeo jogos onde a principal forma de output é visual. Isto permitirá o desenvolvimento de soluções de interacção adequadas aos utilizadores invisuais, conferindo-lhes assim uma melhor forma de inclusão. Nesta dissertação desenvolveu-se um vídeo jogo educativo para a aprendizagem de matemática, adaptado para ser jogado por alunos cegos e amblíopes do 9º ano de escolaridade. O jogo reúne elementos apropriados para a idade dos jogadores, tal como a história de aventura/caça ao tesouro e personagens com quem se podem identificar, contribuindo para uma maior motivação dos alunos ao jogarem “O Código Pitágoras”. Apesar de se tratar de um jogo acessível para jovens invisuais, este também pode ser jogado por alunos normovisuais devido à sua componente gráfica. Desta forma contribui-se para uma maior integração dos alunos cegos e amblíopes nas suas turmas e na sociedade em geral, permitindo-lhes em simultâneo acesso às mesmas oportunidades que os colegas normovisuais. Os principais objectivos a atingir são: que o jogo seja de facto uma ferramenta útil ao ensino; que todos os seus conteúdos jogáveis possam ser acedidos por crianças com deficiência visual e que o mesmo seja considerado pelos seus utilizadores como um vídeo jogo normal.
Resumo:
Os serviços inicialmente idealizados para o mundo dos negócios, têm actualmente um espectro de utilização muito mais lato, facilitando assim a incorporação de software do exterior, sob a representação de serviço, por parte das aplicações. Os principais contribuidores para a emergente utilização de serviços são a proliferação dos dispositivos móveis, a crescente popularidade da computação da nuvem e a ubiquidade da Internet. Apesar deste estado da arte, a abstracção dos serviços continua, maioritariamente, a ser relegada para a camada do middleware. Consequentemente, este confinamento obstem o programador de ter privilégios para interagir com os serviços ao nível da linguagem. A inexistência deste nível de abstracção dificulta o deployment de aplicações dinâmicas. Como medida para tal, o objectivo do nosso trabalho é garantir suporte ao dinamismo e deployment de arquitecturas orientadas a serviços. Com esse propósito, vamos endereçar os problemas de incorporação dos serviços acessíveis pela Web e permitir operações de reconfiguração dos mesmos, nomeadamente, a ligação dinâmica, substituição do fornecedor de serviços e a gestão dinâmica de conjuntos de fornecedores de serviços.
Resumo:
O presente projeto que aqui se apresenta ganhou o concurso “Passaporte para o Empreendedorismo”
Resumo:
Nos anos mais recentes tem sido feita investigação no uso da Programação Orientada a Aspectos no suporte a computação paralela, nomeadamente para conseguir guardar as funcionalidades da mesma em módulos, algo que não é possível quando se utiliza Programação Orientada a Objectos. Um resultado desta investigação foi o desenvolvimento de uma aplicação, o ParJECoLi, desenvolvida usando a linguagem Java e recorrendo ao AspectJ para paralelizar a mesma. No entanto, durante essa mesma investigação, chegou-se à conclusão que o AspectJ apresenta algumas limitações na reutilização de módulos. Tendo em conta isso, surgiu a ideia de estudar uma outra linguagem de programação, conceptualmente diferente da usada na investigação. A linguagem Scala é conhecida por ter uma capacidade de composição modular flexível. Como tal parece interessante entender até que ponto é capaz de substituir AspectJ no suporte modular à computação paralela. Este projecto pretende aferir essa capacidade. Neste contexto, pretende-se usar o ParJECoLi como caso de estudo para dirigir comparações entre Scala e AspectJ.
Resumo:
Alguns jogos têm como objectivo a competição, outros a aprendizagem, uns jogam-se em grupo, outros individualmente. No entanto, todos têm um factor comum, ou seja, a experiência que se retira do momento é única. Seja esta experiência positiva ou negativa vai servir de aprendizagem nem que seja apenas das regras e mecânicas do dispositivo. Os Serious Games simulam situações ou processos do mundo real que são elaborados com o propósito de resolver um problema. Muitas vezes estes sacrificam o divertimento e o entretenimento com o objectivo de alcançar um tipo de progresso desejado para o jogador. Tal como no passado, e tendo em conta o desenvolvimento exponencial da tecnologia, os Serious Games podem agora ter um papel fundamental no desenvolvimento de novas terapias e ferramentas de saúde. É precisamente a olhar para o presente, e com os olhos no futuro dos Serious Games aplicados à saúde, que foi desenvolvida esta investigação. Como complemento, é também apresentado o projecto Typlife. Destinado a jovens com diabetes, é um projecto académico que tem como objectivo o desenvolvimento de uma aplicação para smartphone para o controlo da diabetes, enquanto envolve o utilizador numa experiência interactiva de recompensas pelas boas práticas no dia-a-dia.
Resumo:
Este estudo, sob o tema “Abordagem do Léxico Toponímico Municipal do Cuito da Província do Bié: Caso de Bairros, Comunas, Embalas e Aldeias”, teve os seguintes objectivos: identificar e inventariar os topónimos do município do Cuito e harmonizar a sua ortografia; analisar os topónimos que apresentam variações e mudanças ortográficas, e propor a sua harmonização ortográfica, assim como os gentílicos; descrever a origem etimológica, a formação lexical, a pronúncia/transcrição fonética e a motivação dos topónimos. A metodologia de trabalho foi baseada na pesquisa bibliográfica e de campo, que foi concretizada através de entrevista aos regedores, aos sobas e aos anciãos, bem como através de conversas informais. Portanto, o objectivo principal foi propor a harmonização ortográfica e criar uma base de dados de topónimos do município do Cuito.
Resumo:
O presente trabalho oferece contribuições no campo da Onomástica, ciência que se encarrega do estudo dos nomes próprios, na vertente toponímica relativa ao estudo dos nomes geográfico, num enfoque etnolinguístico que apresenta as motivações toponímicas e a grafia correcta do topónimo na fonologia da língua do denominador. Atendendo às diferentes grafias que apresentam os nomes de lugares em diversas partes do território angolano, nas línguas em que estes nomes se apresentam, esta dissertação centra-se na análise dos principais motivadores de variação gráfica dos topónimos do município de Saurimo, apresentados em sua maioria na língua Cokwe em contacto com o Português. Apresenta-se a história e fixação da etnia Cokwe, os fundamentos morfofonológicos do Ucokwe, algumas influências sofridas pelo Português, diferenças com o Português, classificações taxonómicas, essenciais para análise e reformulação da grafia dos topónimos escritos, na sua maioria, em Ucokwe.
Resumo:
A presente dissertação foi desenvolvida em colaboração com o Instituto de Biofísica e Engenharia Biomédica (IBEB/FCUL) e com o serviço de Neurologia do Hospital de Santa Maria (HSM)
Resumo:
A espectroscopia de fotoelectrões de raios-X (XPS - X-ray Photoelectron Spectroscopy)é uma das técnicas de análise de superfícies mais importantes e mais usadas em diversasáreas científico-tecnológicas e industriais. Com ela é possível determinar quantitativa equalitativamente a composição elementar e a composição química aproximada, respectivamente,e estrutura electrónica dos elementos presentes para diferentes tipos de materiais. O laboratório de ciência de superfícies do Departamento de Física da FCT-UNL encontra-se equipado com um sistema de ultra-alto vácuo Kratos XSAM 800 contendo a instrumentação necessária para se realizar XPS. No entanto, o equipamento precisava de uma requalificação. O controlo e aquisição de dados do espectrómetro era feito por um computador PDP11 de 16-bits que actualmente não é comercializado e não tem qualquer suporte técnico por parte do fabricante. Foi substituído por um computador moderno e por uma placa genérica de aquisição de dados. Para que a análise quantitativa pela técnica de XPS seja precisa, é necesssário fazer a caracterização do sistema. Isso implica o conhecimento de parâmetros como a função de transmissão do espectrómetro e a linearidade da resposta do sistema de detecção. Foi feito um estudo da linearidade da resposta do sistema de detecção e determinou-se experimentalmente a função de transmissão do espectrómetro. Os resultados obtidos para a função de transmissão mostraram estar qualitativamente de acordo com os resultados obtidos por outros na literatura. A transmissão da coluna óptica do analisador de energia de electrões foi posteriormente submetida a um processo de optimização, através da implementação de um algoritmo evolutivo diferencial para optimização de funções, recorrendo a linguagem de programação gráfica LabVIEWTM.
Resumo:
O revestimento com laser permite criar revestimentos localizados pela adição de uma liga similar ou dissimilar. O revestimento visa melhorar as características da superfície metálica, tais como a dureza, a resistência ao desgaste por atrito, à corrosão e à fadiga térmica dos componentes sujeitos a condições adversas de trabalho por prolongados períodos de tempo. Esta dissertação tem como objetivo o melhoramento da configuração, a automatização do sistema de revestimento com laser do Laboratório de Laser do Instituto Superior Técnico (IST) da Universidade de Lisboa, utilizado pelo Centro de Física e Engenharia de Materiais Avançados do Instituto Superior Técnico – CeFEMA e a realização de ensaios de deposições com o fim de validação. Foram estudadas as configurações possíveis para o sistema de posicionamento da amostra, do laser e a configuração para o posicionamento com precisão do bocal de adição de pós ao banho de fusão. Após este estudo foram apresentadas e implementadas as propostas de melhoria do sistema inicial. Para tornar o sistema funcional, foi desenvolvido um controlador para comandar as três guias motorizadas de movimento linear OWIS, o laser IPG YLR e o alimentador de pós PLASMA-TECHNIK. Para simplificar a utilização aos investigadores do CeFEMA foi ainda desenvolvida uma interface gráfica que permite ao utilizador definir os principais parâmetros do processo Para a validação do trabalho desenvolvido foram realizados diversos ensaios de deposição da liga Ti52Ta num substrato de titânio. Através dos ensaios de deposição foi estudada a influência de alguns parâmetros do processo na geometria do revestimento obtido, como a altura, a profundidade, o ângulo do cordão, a diluição entre o material de adição e o substrato, tendo ainda sido estudada a influência dos parâmetros do processo na eficiência de deposição.
Resumo:
Esta dissertação tem por objetivo ser um contributo para o dimensionamento de placas de ancoragem dispostas verticalmente em solos respondendo em condições drenadas. Para tal, recorre-se a um programa de elementos fnitos que implementa os teoremas estático e cinemático da análise limite para o cálculo da carga última de uma placa de ancoragem. O documento mostra o estudo efetuado sobre a infuência dos parâmetros, quer geométricos, quer mecânicos, tanto do maciço como da placa, sobre a capacidade de carga registada. Do ponto de vista geométrico foi estudada em condições bidimensionais a infuência da profundidade relativa da colocação da placa. Em condições tridimensionais, para além deste aspeto, foi também estudada a infuência da largura da placa. Do ponto de vista mecânico estudou-se a infuência na capacidade de carga do ângulo de resistência ao corte assim como da rugosidade da placa. Os resultados deste estudo são apresentados sob a forma de fatores de arrancamento em função dos diversos parâmetros estudados. Os resultados obtidos são comparados com os resultados de carácter experimental e numérico teórico de outros autores encontrados na literatura. No final do trabalho, apresenta-se uma proposta sob forma gráfica de uma relação entre as capacidades de carga de uma placa finita e de uma placa corrida.