40 resultados para Interface de programação de aplicações
em Repositório Científico do Instituto Politécnico de Lisboa - Portugal
Resumo:
Os sistemas de redes de campo ligando componentes de automação e máquinas possuem uma performance muito elevada, relativamente à sua velocidade e capacidade de funcionamento em tempo-real. Estes apresentam também uma variedade de funcionalidades tais como comunicação cruzada, protocolos de segurança e endereçamento automático. Além disso, definem também aproximações lógicas ao tipo de máquinas em questão, de acordo com o seu perfil de funcionamento. No entanto, todas estas funcionalidades tornam a configuração e programação de aplicações comunicando nestas redes de campo extremamente complexa. Para além da complexidade existente na configuração e programação de um único sistema de redes de campo, existe também uma panóplia de diferentes sistemas de redes de campo, totalmente incompatíveis entre si. Contudo, estes pouco se diferenciam relativamente às suas funcionalidades e performance. Neste trabalho é elaborada uma comparação entre 4 diferentes perfis de accionamentos (CiA 402, CIP Motion, FSP Drive e PROFIdrive) para sistemas de redes de campo baseados em Ethernet (Ethercat, Ethernet/IP, PROFInet e SERCOS. Com este resultado, o acesso aos diferentes sistemas de redes de campo poderá ser generalizado, de forma que a aplicação a desenvolver seja independente do sistema localizado nas camadas OSI inferiores.
Resumo:
O desenvolvimento actual de aplicações paralelas com processamento intensivo (HPC - High Performance Computing) para alojamento em computadores organizados em Cluster baseia-se muito no modelo de passagem de mensagens, do qual é de realçar os esforços de definição de standards, por exemplo, MPI - Message - Passing Interface. Por outro lado, com a generalização do paradigma de programação orientado aos objectos para ambientes distribuídos (Java RMI, .NET Remoting), existe a possibilidade de considerar que a execução de uma aplicação, de processamento paralelo e intensivo, pode ser decomposta em vários fluxos de execução paralela, em que cada fluxo é constituído por uma ou mais tarefas executadas no contexto de objectos distribuídos. Normalmente, em ambientes baseados em objectos distribuídos, a especificação, controlo e sincronização dos vários fluxos de execução paralela, é realizada de forma explicita e codificada num programa principal (hard-coded), dificultando possíveis e necessárias modificações posteriores. No entanto, existem, neste contexto, trabalhos que propõem uma abordagem de decomposição, seguindo o paradigma de workflow com interacções entre as tarefas por, entre outras, data-flow, control-flow, finite - state - machine. Este trabalho consistiu em propor e explorar um modelo de execução, sincronização e controlo de múltiplas tarefas, que permita de forma flexível desenhar aplicações de processamento intensivo, tirando partido da execução paralela de tarefas em diferentes máquinas. O modelo proposto e consequente implementação, num protótipo experimental, permite: especificar aplicações usando fluxos de execução; submeter fluxos para execução e controlar e monitorizar a execução desses fluxos. As tarefas envolvidas nos fluxos de execução podem executar-se num conjunto de recursos distribuídos. As principais características a realçar no modelo proposto, são a expansibilidade e o desacoplamento entre as diferentes componentes envolvidas na execução dos fluxos de execução. São ainda descritos casos de teste que permitiram validar o modelo e o protótipo implementado. Tendo consciência da necessidade de continuar no futuro esta linha de investigação, este trabalho é um contributo para demonstrar que o paradigma de workflow é adequado para expressar e executar, de forma paralela e distribuída, aplicações complexas de processamento intensivo.
Resumo:
Trabalho Final de Mestrado para obtenção do grau de Mestre em Engenharia de redes de Comunicação e Multimédia
Resumo:
Relatório de estágio apresentado à Escola Superior de Comunicação Social como parte dos requisitos para obtenção de grau de mestre em Audiovisual e Multimédia.
Resumo:
Dissertação apresentada à Escola Superior de Educação de Lisboa para obtenção de grau de mestre em Ciências da Educação - Especialidade Educação Especial
Resumo:
O projecto apresentado neste relatório consiste na implementação de uma plataforma de desenvolvimento de aplicações Web orientada a mensagens, capaz de facilitar a construção de páginas Web e de automatizar o acesso a dados com base nos requisitos do problema. O foco da solução é baseado nos requisitos que forem definidos, de modo a desenvolver uma aplicação Web que responda a esses requisitos. A estratégia adoptada visa reduzir o acoplamento e aumentar a coesão dos módulos funcionais. Para reduzir o acoplamento e aumentar a coesão dos módulos funcionais separou-se a apresentação dos dados, permitindo assim que o desenvolvimento e os testes sejam realizados independentemente um do outro. O desenvolvimento é baseado em normas padronizadas (standards) de modo a facilitar a integração com outras tecnologias. Para o desenvolvimento do trabalho foi adoptada uma metodologia ágil. A gestão de projecto foi realizada com recurso a uma plataforma de gestão de projecto, que permitiu registar e organizar todas as informações e tarefas realizadas ao longo do projecto. Após a conclusão da plataforma e como caso de estudo, foi realizada uma aplicação baseada num cenário real de gestão académica (Portal Académico) para aferir os conceitos envolvidos.
Resumo:
O instrumento World Health Organization Quality of Life (WHOQOL) destina-se à avaliação da qualidade de vida (QdV), tendo sido desenvolvido em coerência com a definição assumida pela Organização Mundial de Saúde (OMS), isto é como a percepção do indivíduo sobre a sua posição na vida, dentro do contexto dos sistemas de cultura e valores nos quais está inserido e em relação aos seus objectivos, expectativas, padrões e preocupações. Trata-se de uma definição que resulta de um consenso internacional, representando uma perspectiva transcultural, bem como multidimensional, que contempla a complexa influência da saúde física e psicológica, nível de independência, relações sociais, crenças pessoais e das suas relações com características salientes do respectivo meio na avaliação subjectiva da qualidade de vida individual.
Resumo:
A investigação de novos compostos macrocíclicos tetraaza tem sido intensificada ao longo das últimas décadas, uma vez que estes estão entre os melhores ligandos para complexação de iões metálicos. Desta forma, tanto a síntese destes compostos, como as propriedades dos seus complexos com iões metálicos provocaram o seu crescente interesse em variadíssimas áreas, das quais são exemplo a medicina, a biologia, a catálise, e a química analítica. Procuram-se ligandos específicos para determinados iões metálicos, mas que ao mesmo tempo se preparem por processos de síntese simples e eficazes que permitam uma maior utilização ao nível industrial. Com este trabalho procurou-se dar continuidade aos estudos desenvolvidos nesta área desde 1980 pelo grupo de investigação onde me encontro inserida e assim obter ligandos novos com vista à formação de complexos com iões metálicos estáveis e aplicáveis ao nível da medicina e da farmacologia, com destaque para as aplicações relacionadas com o diagnóstico e a terapia de tumores. Assim, foram sintetizados quatro novos ligandos derivados de macrociclos tetraaza com 12 átomos no anel, dois deles com ponte cruzada curta tipo etano. A síntes baseou-se na funcionalização destes macrociclos com braços pendentes metilnitrofenol ou metilfenol, originando assim os seguintes compostos: cb-do2nph, do2nph, cb-do2ph e do do2ph. Todos os compostos sintetizados foram caracterizados por diversas técnicas analíticas. Os compostos cb-do2nph e do2nph mostraram reduzida solubilidade em água e em metanol:água, pelo que não foi possível a determinação de constantes por potenciometria. Preparam-se alguns complexos que se estudaram em solução por espectroscopia electrónica e no estado sólido por difracção de raios X. O composto do2ph só se obteve em pequena quantidade sem revelar a pureza necessária e, a sua síntese ainda terá de ser optimizada. Finalmente, o composto cb-do2ph foi sintetizado em quantidade suficiente para se poderem determinar as suas constantes de protonação e as constantes de estabilidade dos seus complexos com Cu 2+ e Zn 2+, pelo método potenciomátrico, em solução aquosa, à temperatura de 298,2 K e à força iónica 0,10M em N(CH 3)4NO3. Determinaram-se ainda por potenciometria as constantes de protonação bem como as constantes de estabilidade dos complexos com Mg2+, Cu2+, Zn 2+, Fe3+, Ga3+, In3+, Gd3+, do composto cbdbf-do2a, igualmente em solução aquosa, à temperatura de 298,2K e à força iónica 0,10M em N(CH 3)4NO3. Para ambos os compostos, cb-do2ph e cbdbf-do2a, recorreu-se a titulações por espectroscopia de RMN de 1H para a determinação da primeira constante, por esta ter um valor muito elevado (log K1 ≥ 14), ou seja, estes compostos comportaram-se como “esponjas de protão”. Para obter informações estruturais dos complexos de alguns ligandos com cobre (II) realizaram-se estudos por espectroscopia de absorção de UV-Vis e de RPE, tendo-se ainda obtido cristais de tamanho suficiente para a determinação de estruturas por difracção de raios X de alguns compostos e complexos de cobre (II) e Zinco(II).
Resumo:
Actualmente tem-se observado um aumento do volume de sinais de fala em diversas aplicações, que reforçam a necessidade de um processamento automático dos ficheiros. No campo do processamento automático destacam-se as aplicações de “diarização de orador”, que permitem catalogar os ficheiros de fala com a identidade de oradores e limites temporais de fala de cada um, através de um processo de segmentação e agrupamento. No contexto de agrupamento, este trabalho visa dar continuidade ao trabalho intitulado “Detecção do Orador”, com o desenvolvimento de um algoritmo de “agrupamento multi-orador” capaz de identificar e agrupar correctamente os oradores, sem conhecimento prévio do número ou da identidade dos oradores presentes no ficheiro de fala. O sistema utiliza os coeficientes “Mel Line Spectrum Frequencies” (MLSF) como característica acústica de fala, uma segmentação de fala baseada na energia e uma estrutura do tipo “Universal Background Model - Gaussian Mixture Model” (UBM-GMM) adaptado com o classificador “Support Vector Machine” (SVM). No trabalho foram analisadas três métricas de discriminação dos modelos SVM e a avaliação dos resultados foi feita através da taxa de erro “Speaker Error Rate” (SER), que quantifica percentualmente o número de segmentos “fala” mal classificados. O algoritmo implementado foi ajustado às características da língua portuguesa através de um corpus com 14 ficheiros de treino e 30 ficheiros de teste. Os ficheiros de treino dos modelos e classificação final, enquanto os ficheiros de foram utilizados para avaliar o desempenho do algoritmo. A interacção com o algoritmo foi dinamizada com a criação de uma interface gráfica que permite receber o ficheiro de teste, processá-lo, listar os resultados ou gerar um vídeo para o utilizador confrontar o sinal de fala com os resultados de classificação.
Resumo:
Neste trabalho são descritas as sínteses de novos copolímeros do tipo p-fenileno-etinileno (PPE’s) contendo unidades de calix[4]areno com potencial aplicação em electrónica molecular. A preparação destes copolímeros envolveu a síntese e caracterização de duas unidades monoméricas distintas. O 1,4-bis-25-(oximetil) - 26,26,28-tripropoxi-2,5-di-iodo-benzeno-p-terc-butilcalix[4]areno e diferentes 1,4-di-etinil-2,5-bis(alcoxi)benzenos. Os materiais sintesidados foram analisados e caracterizados por espectroscopia de infravermelho por transformada de Fourier (FTIR), ressonância magnética nuclear de protão e de carbono (1H e 13C RMN), análise elementar (AE) e cromatografia de permeação em gel (GPC). Com o objectivo de estudar as suas propriedades espectroscópicas recorreu-se a técnicas de absorção de estado fundamental e luminescência de estado estacionário. O estudo das propriedades quirópticas do CALIX-p-PPE-C5q demonstrou que a homoquiralidade presente nas cadeias laterais de um dos componentes do copolímero é transferida para a cadeia principal do polímero conjugado, originando um polímero quiral. A realização de estudos electroquímicos por voltametria cíclica permitiu identificar nos diferentes polímeros processos oxidativos a potenciais semelhantes; o processo redutivo apenas foi observado no CALIX-p-PPE-C6. Os polímeros sintetizados foram posteriormente testados em duas aplicações de electrónica molecular. Num dos casos, a sua capacidade de funcionar com sensores químicos na detecção de explosivos nitroaromáticos foi avaliada usando técnicas de fotoluminescência enquanto a sua utilização como filmes emissivos em diodos emissores de luz foi avaliada por estudos de electroluminescência.
Resumo:
No campo da investigação das células fotovoltaicas orgânicas, a obtenção da camada activa com morfologia “ideal” através de técnicas baratas é ainda um marco não atingido. Este trabalho visa ultrapassar as baixas eficiências que são características destas células, através do desenvolvimento de um método rápido e de baixo custo para preparar camadas activas com morfologia próxima da “ideal”. Tal método permitiu obter filmes estruturados de polímeros conjugados reticulados que constituem um dos componentes da camada activa. O método é baseado no controlo da separação de fases que ocorre durante a deposição de misturas em solução, contendo um polímero conjugado reticulável, um polímero isolador “inerte” e um agente iniciador da reacção de reticulação, por spin coating (técnica rápida e de baixo custo), sobre um substrato que poderá servir de um dos eléctrodos na célula. A posterior irradiação do filme com luz Ultravioleta e o seu aquecimento conduzem à formação de uma “rede” reticulada e insolúvel do polímero conjugado que permite remover o polímero inerte e o agente iniciador por dissolução. Sendo o filme resultante insolúvel, o outro(s) componente(s) da camada activa da célula podem ser também depositados sobre ele a partir de soluções. Foram usados três polímeros conjugados reticuláveis dreivados do poli(dioctil-fluoreno) e um polímero “inerte”, o poliestireno, com diversos pesos moleculares. Demonstrou-se que a variação de condições durante a deposição das misturas e das características das mesmas permite obter filmes com diferentes tipos de morfologia - colunar, bicontínua e porosa - com diferentes dimensões dos “motivos” de polímero. Em particular, obtiveram-se filmes com morfologia colunar, com diâmetro médio de coluna da ordem de 150-200 nm e com morfologia bicontínua com “largura” média de grão de cerca de 200 nm. Demonstrou-se que a utilização dos filmes estruturados é mais vantajosa que a de filmes não estruturados (“planos”), tendo-se obtido valores de 90 a 95% de extinção de fotoluminescência para filmes colunares de um dos polímeros, em que o aceitador de electrões foi depositado em solução. Estes valores são indicativos de um processo de dissociação dos excitões gerados no polímero conjugado muito eficiente, o que permite antever que as camadas activas preparadas possam ser aplicadas em células fotovoltaicas com morfologia optimizada.
Resumo:
De sua definição, um condutor molecular é “ uma molécula dimensional” que permite a troca de um electrão entre as extremidades através de uma ponte, sendo elas mesmas capazes de trocar electrões com o exterior. Os condutores moleculares envolvendo centros metálicos podem ser constituídos por um sistema orgânico deslocalizado que estabelece a ponte entre os centros metálicos terminais, sendo ambas as partes responsáveis pelo desempenho final do condutor molecular. Os espaçadores orgânicos são responsáveis pelas propriedades electrónicas e pelo comprimento do condutor, enquanto que os centros metálicos, ao introduzirem electrões no sistema, aumentam a condutividade. No capítulo 1 faz-se uma breve introdução aos condutores moleculares, como podem ser avaliados segundo a sua estrutura. Outro assunto abordado é a influência de compostos, mostrando deste modo a interferência do tipo de espaçadores utilizados. Faz-se ainda uma breve apresentação sobre os compostos homo e heterobimetálicos. Finalmente, apresenta-se uma pequena revisão sobre os compostos organometálicos σ-metálicos. No capítulo 2 apresenta-se a síntese e caracterização dos compostos orgânicos, nomeadamente ρ-NΞCC6H4CCSiMe3, ρ-NΞCC6H4CCH e ρ-HCΞCC6H4CCH. No capítulo 3 descreve-se a síntese de diversos complexos monometálicos de Ferro (II) e ruténio (II) com os ligandos acima referidos e diferentes fragmentos metálicos [FeCp(CO)2]+, [FeCp(dppe)]+, [RuCp(dppe)]+ e [RuCp(PPh3)2]+. Os complexos obtidos foram caracterizados utilizando as técnicas espectroscópicas usuais: RMN, IV, UV-vis. A eficiência da interacção electrónica entre os centros, ao longo do sistema тт, foi avaliada por estudos electroquímicos (voltametria cíclica). No capítulo 4 encontram-se descritas as diversas tentativas de síntese dos compostos homo e heterobimetálicos. Os ligandos e fragmentos utilizados foram os mesmos que no capítulo anterior. O capítulo 5 descreve os pormenores experimentais da síntese e a caracterização espectroscópica dos compostos apresentados nos capítulos anteriores, bem como as condições gerais em que foram obtidos.
Resumo:
A rápida evolução dos dispositivos móveis e das tecnologias de comunicação sem fios transformou o telemóvel num poderoso dispositivo de computação móvel. A necessidade de estar sempre contactável, comum à civilização moderna, tem aumentado a dependência deste dispositivo, sendo transportado pela maioria das pessoas num ambiente urbano e assumindo um papel talvez mais importante que a própria carteira. A ubiquidade e capacidade de computação dos telemóveis aumentam o interesse no desenvolvimento de serviços móveis, além de tradicionais serviços de voz. Um telemóvel pode em breve tornar-se um elemento activo nas nossas tarefas diárias, servindo como um instrumento de pagamento e controlo de acessos, proporcionando assim novas interfaces para serviços existentes. A unificação de vários serviços num único dispositivo é um desafio que pode simplificar a nossa rotina diária e aumentar o conforto, no limite deixaremos de necessitar de dinheiro físico, cartões de crédito ou débito, chaves de residência e de veículos automóveis, ou inclusive documentos de identificação como bilhetes de identidade ou passaportes. O interesse demonstrado pelos intervenientes, desde os fabricantes de telemóveis e operadores de rede móvel até às instituições financeiras, levaram ao aparecimento de múltiplas soluções de serviços móveis. Porém estas soluções respondem geralmente a problemas específicos, apenas contemplando um fornecedor de serviços ou uma determinada operação de pagamento, como seja a compra de bilhetes ou pagamento de estacionamento. Estas soluções emergentes consistem também tipicamente em especificações fechadas e protocolos proprietários. A definição de uma arquitectura genérica, aberta interoperável e extensível é necessária para que os serviços móveis possam ser adoptados de uma forma generalizada por diferentes fornecedores de serviços e para diversos tipos de pagamento. A maior parte das soluções actuais de pagamento móvel depende de comunicações através da rede móvel, algumas utilizam o telemóvel apenas como uma interface de acesso à internet enquanto outras possibilitam o envio de um SMS (Short Message Service) para autorizar uma transacção, o que implica custos de comunicação em todas as operações de pagamento. Este custo de operação torna essas soluções inadequadas para a realização de micropagamentos e podem por isso ter uma aceitação limitada por parte dos clientes. As soluções existentes focam-se maioritariamente em pagamentos à distância, não tirando partido das características do pagamento presencial e não oferecendo por isso uma verdadeira alternativa ao modelo actual de pagamento com cartões de crédito/débito. As capacidades computacionais dos telemóveis e suporte de diversos protocolos de comunicação sem fio local não têm sido aproveitadas, vendo o telemóvel apenas como um terminal GSM (Global System for Mobile Communications) e não oferecendo serviços adicionais como seja a avaliação dinâmica de risco ou controlo de despesas. Esta dissertação propõe e valida, através de um demonstrador, uma aquitectua aberta para o pagamento e controlo de acesso baseado em dispositivos móveis, intitulada WPAC (Wireless Payment and Access Control). Para chegar à solução apresentada foram estudadas outras soluções de pagamento, desde o aparecimento dos cartões de débito até a era de pagamentos electrónicos móveis, passando pelas soluções de pagamento através da internet. As capacidades dos dispositivos móveis, designadamente os telemóveis, e tecnologias de comunicação sem fios foram também analisadas a fim de determinar o estado tecnológico actual. A arquitectura WPAC utiliza padrões de desenho utilizados pela indústria em soluções de sucesso, a utilização de padrões testados e a reutilização de soluções com provas dadas permite aumentar a confiança nesta solução, um destes exemplos é a utilização de uma infra-estrutura de chave pública para o estabelecimento de um canal de comunicação seguro. Esta especificação é uma arquitectura orientada aos serviços que utiliza os Web Services para a definição do contracto do serviço de pagamento. A viabilidade da solução na orquestração de um conjunto de tecnologias e a prova de conceito de novas abordagens é alcançada com a construção de um protótipo e a realização de testes. A arquitectura WPAC possibilita a realização de pagamentos móveis presenciais, isto é, junto do fornecedor de bens ou serviços, seguindo o modelo de pagamento com cartões de crédito/débito no que diz respeito aos intervenientes e relações entre eles. Esta especificação inclui como aspecto inovador a avaliação dinâmica de risco, que utiliza o valor do pagamento, a existência de pagamentos frequentes num período curto de tempo, e a data, hora e local do pagamento como factores de risco; solicitando ao cliente o conjunto de credenciais adequado ao risco avaliado, desde códigos pessoais a dados biométricos. É também apresentada uma alternativa ao processo normal de pagamento, que apesar de menos cómoda permite efectuar pagamentos quando não é possível estabelecer um canal de comunicação sem fios, aumentando assim a tolerância a falhas. Esta solução não implica custos de operação para o cliente na comunicação com o ponto de venda do comerciante, que é realizada através de tecnologias de comunicação local sem fios, pode ser necessária a comunicação através da rede móvel com o emissor do agente de pagamento para a actualização do agente de software ou de dados de segurança, mas essas transmissões são ocasionais. O modelo de segurança recorre a certificados para autenticação dos intervenientes e a uma infra-estrutura de chave pública para cifra e assinatura de mensagens. Os dados de segurança incluídos no agente de software móvel, para desabilitar a cópia ou corrupção da aplicação mas também para a comparação com as credenciais inseridas pelo cliente, devem igualmente ser encriptados e assinados de forma a garantir a sua confidencialidade e integridade. A arquitectura de pagamento utiliza o standard de Web Services, que é amplamente conhecido, aberto e interoperável, para definição do serviço de pagamento. Existem extensões à especificação de Web Services relativas à segurança que permitem trocar itens de segurança e definem o modo de cifra e assinatura de mensagens, possibilitando assim a sua utilização em aplicações que necessitem de segurança como é o caso de serviços de pagamento e controlo de acesso. O contracto de um Web Service define o modo de invocação dos serviços, transmissão de informação e representação de dados, sendo normalmente utilizado o protocolo SOAP que na prática não é mais que um protocolo de troca de mansagens XML (eXtensible Markup Language). O envio e recepção de mensagens XML; ou seja, a transmissão de simples sequências de caracteres, é suportado pela maioria dos protocolos de comunicação, sendo portanto uma solução abrangente que permite a adopção de diversas tecnologias de comunicação sem fios. O protótipo inclui um agente de software móvel, implementado sobre a forma de uma MIDlet, aplicação Java para dispositivos móveis, que implementa o protocolo de pagamento comunicando sobre uma ligação Bluetooth com o ponto de venda do comerciante, simulado por uma aplicação desenvolvida sobre a plataforma .NET e que por isso faz prova da heterogeneidade da solução. A comunicação entre o comerciante e o seu banco para autorização do pagamento e transferência monetária utiliza o protocolo existente para a autorização de pagamentos, com base em cartões de crédito/débito. A definição desta especificação aberta e genérica em conjunto com o forte interesse demonstrado pelos intervenientes, proporciona uma boa perspectiva em termos de adopção da solução, o que pode impulsionar a implementação de serviços móveis e dessa forma simplificar as rotinas diárias das pessoas. Soluções móveis de pagamento reduzem a necessidade de transportar vários cartões de crédito/débito na nossa carteira. A avaliação dinâmica de risco permite aumentar a segurança dos pagamentos, com a solicitação de mais credenciais ao cliente para pagamentos com um maior risco associado, sendo um ponto importante quer para os clientes quer para as instituições financeiras pois diminui o risco de fraude e aumenta a confiança no sistema. Esta solução de pagamento electrónico pode também facilitar a consulta de pagamentos efectuados e saldos, mantendo um histórico dos movimentos, o que não é possível nos cartões de crédito/débito sem uma visita a uma ATM (Automated Teller Machine) ou utilização de homebanking.
Resumo:
O presente projecto tem como objectivo a disponibilização de uma plataforma de serviços para gestão e contabilização de tempo remunerável, através da marcação de horas de trabalho, férias e faltas (com ou sem justificação). Pretende-se a disponibilização de relatórios com base nesta informação e a possibilidade de análise automática dos dados, como por exemplo excesso de faltas e férias sobrepostas de trabalhadores. A ênfase do projecto está na disponibilização de uma arquitectura que facilite a inclusão destas funcionalidades. O projecto está implementado sobre a plataforma Google App Engine (i.e. GAE), de forma a disponibilizar uma solução sob o paradigma de Software as a Service, com garantia de disponibilidade e replicação de dados. A plataforma foi escolhida a partir da análise das principais plataformas cloud existentes: Google App Engine, Windows Azure e Amazon Web Services. Foram analisadas as características de cada plataforma, nomeadamente os modelos de programação, os modelos de dados disponibilizados, os serviços existentes e respectivos custos. A escolha da plataforma foi realizada com base nas suas características à data de iniciação do presente projecto. A solução está estruturada em camadas, com as seguintes componentes: interface da plataforma, lógica de negócio e lógica de acesso a dados. A interface disponibilizada está concebida com observação dos princípios arquitecturais REST, suportando dados nos formatos JSON e XML. A esta arquitectura base foi acrescentada uma componente de autorização, suportada em Spring-Security, sendo a autenticação delegada para os serviços Google Acounts. De forma a permitir o desacoplamento entre as várias camadas foi utilizado o padrão Dependency Injection. A utilização deste padrão reduz a dependência das tecnologias utilizadas nas diversas camadas. Foi implementado um protótipo, para a demonstração do trabalho realizado, que permite interagir com as funcionalidades do serviço implementadas, via pedidos AJAX. Neste protótipo tirou-se partido de várias bibliotecas javascript e padrões que simplificaram a sua realização, tal como o model-view-viewmodel através de data binding. Para dar suporte ao desenvolvimento do projecto foi adoptada uma abordagem de desenvolvimento ágil, baseada em Scrum, de forma a implementar os requisitos do sistema, expressos em user stories. De forma a garantir a qualidade da implementação do serviço foram realizados testes unitários, sendo também feita previamente a análise da funcionalidade e posteriormente produzida a documentação recorrendo a diagramas UML.
Resumo:
A presente dissertação apresenta o desenvolvimento de um medidor de componentes passivos RLC. Este medidor baseia-se num protótipo desenvolvido para possibilitar a medição da impedância de um dispositivo em teste. Tendo uma carta de aquisição de sinal como interface, o protótipo comunica com um computador que controla todo o processo de medição desde a aquisição e processamento de sinais ao cálculo e visualização dos parâmetros. A topologia de medição implementada é a da ponte auto-balanceada e no processamento recorre-se ao método da desmodulação síncrona ou coerente. A sua viabilidade é suportada por um estudo teórico prévio, pela discussão das opções tomadas no projecto e pelos resultados obtidos através do algoritmo desenvolvido utilizando o software LabVIEW de programação gráfica.