15 resultados para Non-functional requirement. Software architecture. NFR-framework. Architectural pattern
em Repositório Institucional da Universidade de Aveiro - Portugal
Resumo:
When developing software for autonomous mobile robots, one has to inevitably tackle some kind of perception. Moreover, when dealing with agents that possess some level of reasoning for executing their actions, there is the need to model the environment and the robot internal state in a way that it represents the scenario in which the robot operates. Inserted in the ATRI group, part of the IEETA research unit at Aveiro University, this work uses two of the projects of the group as test bed, particularly in the scenario of robotic soccer with real robots. With the main objective of developing algorithms for sensor and information fusion that could be used e ectively on these teams, several state of the art approaches were studied, implemented and adapted to each of the robot types. Within the MSL RoboCup team CAMBADA, the main focus was the perception of ball and obstacles, with the creation of models capable of providing extended information so that the reasoning of the robot can be ever more e ective. To achieve it, several methodologies were analyzed, implemented, compared and improved. Concerning the ball, an analysis of ltering methodologies for stabilization of its position and estimation of its velocity was performed. Also, with the goal keeper in mind, work has been done to provide it with information of aerial balls. As for obstacles, a new de nition of the way they are perceived by the vision and the type of information provided was created, as well as a methodology for identifying which of the obstacles are team mates. Also, a tracking algorithm was developed, which ultimately assigned each of the obstacles a unique identi er. Associated with the improvement of the obstacles perception, a new algorithm of estimating reactive obstacle avoidance was created. In the context of the SPL RoboCup team Portuguese Team, besides the inevitable adaptation of many of the algorithms already developed for sensor and information fusion and considering that it was recently created, the objective was to create a sustainable software architecture that could be the base for future modular development. The software architecture created is based on a series of di erent processes and the means of communication among them. All processes were created or adapted for the new architecture and a base set of roles and behaviors was de ned during this work to achieve a base functional framework. In terms of perception, the main focus was to de ne a projection model and camera pose extraction that could provide information in metric coordinates. The second main objective was to adapt the CAMBADA localization algorithm to work on the NAO robots, considering all the limitations it presents when comparing to the MSL team, especially in terms of computational resources. A set of support tools were developed or improved in order to support the test and development in both teams. In general, the work developed during this thesis improved the performance of the teams during play and also the e ectiveness of the developers team when in development and test phases.
Resumo:
During the last decades, we assisted to what is called “information explosion”. With the advent of the new technologies and new contexts, the volume, velocity and variety of data has increased exponentially, becoming what is known today as big data. Among them, we emphasize telecommunications operators, which gather, using network monitoring equipment, millions of network event records, the Call Detail Records (CDRs) and the Event Detail Records (EDRs), commonly known as xDRs. These records are stored and later processed to compute network performance and quality of service metrics. With the ever increasing number of collected xDRs, its generated volume needing to be stored has increased exponentially, making the current solutions based on relational databases not suited anymore. To tackle this problem, the relational data store can be replaced by Hadoop File System (HDFS). However, HDFS is simply a distributed file system, this way not supporting any aspect of the relational paradigm. To overcome this difficulty, this paper presents a framework that enables the current systems inserting data into relational databases, to keep doing it transparently when migrating to Hadoop. As proof of concept, the developed platform was integrated with the Altaia - a performance and QoS management of telecommunications networks and services.
Resumo:
Call Level Interfaces (CLI) play a key role in business tiers of relational and on some NoSQL database applications whenever a fine tune control between application tiers and the host databases is a key requirement. Unfortunately, in spite of this significant advantage, CLI are low level API, this way not addressing high level architectural requirements. Among the examples we emphasize two situations: a) the need to decouple or not to decouple the development process of business tiers from the development process of application tiers and b) the need to automatically adapt business tiers to new business and/or security needs at runtime. To tackle these CLI drawbacks, and simultaneously keep their advantages, this paper proposes an architecture relying on CLI from which multi-purpose business tiers components are built, herein referred to as Adaptable Business Tier Components (ABTC). Beyond the reference architecture, this paper presents a proof of concept based on Java and Java Database Connectivity (an example of CLI).
Resumo:
A glicosilação não-enzimática e o stress oxidativo representam dois processos importantes visto desempenharem um papel importante no que respeita às complicações de vários processos patofisiológicos. No presente, a associação entre a glicosilação não-enzimática e a oxidação de proteínas é reconhecida como sendo um dos principais responsáveis pela acumulação de proteínas não-funcionais que, por sua vez, promove uma contínua sensibilização para um aumento do stress oxidativo ao nível celular. Embora esteja disponível bastante informação no que respeita aos dois processos e suas consequências ao nível estrutural e funcional, permanecem questões por esclarecer acerca do que se desenvolve ao nível molecular. Com o objectivo de contribuir para uma melhor compreensão da relação entre a glicosilação não-enzimática e a oxidação, proteínas modelo (albumina, insulina e histonas H2B e H1) foram submetidas a sistemas in vitro de glicosilação não-enzimática e oxidação em condições controladas e durante um período de tempo específico. A identificação dos locais de glicosilação e oxidação foi realizada através de uma abordagem proteómica, na qual após digestão enzimática se procedeu à análise por cromatografia líquida acoplada a espectrometria de massa tandem (MALDI-TOF/TOF). Esta abordagem permitiu a obtenção de elevadas taxas de cobertura das sequências proteicas, permitindo a identificação dos locais preferenciais de glicosilação e oxidação nas diferentes proteínas estudadas. Como esperado, os resíduos de lisina foram os preferencialmente glicosilados. No que respeita à oxidação, além das modificações envolvendo hidroxilações e adições de oxigénio, foram identificadas deamidações, carbamilações e conversões oxidativas específicas de vários aminoácidos. No geral, os resíduos mais afectados pela oxidação foram os resíduos de cisteína, metionina, triptofano, tirosina, prolina, lisina e fenilalanina. Ao longo do período de tempo estudado, os resultados indicaram que a oxidação teve início em zonas expostas da proteína e/ou localizadas na vizinhança de resíduos de cisteína e metionina, ao invés de exibir um comportamente aleatório, ocorrendo de uma forma nãolinear por sua vez dependente da estabilidade conformacional da proteína. O estudo ao longo do tempo mostrou igualmente que, no caso das proteínas préglicosiladas, a oxidação das mesmas ocorreu de forma mais rápida e acentuada, sugerindo que as alterações estruturais induzidas pela glicosilação promovem um estado pro-oxidativo. No caso das proteínas pré-glicosiladas e oxidadas, foi identificado um maior número de modificações oxidativas assim como de resíduos modificados na vizinhança de resíduos glicosilados. Com esta abordagem é realizada uma importante contribuição na investigação das consequências do dano ‘glico-oxidativo’ em proteínas ao nível molecular através da combinação da espectrometria de massa e da bioinformática.
Resumo:
No atual contexto de disseminação e uso das tecnologias da comunicação para a geração de conteúdo não especializado, igualmente partilhado e utilizado, torna-se pertinente sublinhar a participação dos recursos humanos na cocriação da marca organizacional. Esta participação, todavia, encontra alguns constrangimentos e necessidades, tais como a falta de orientação no uso devido da marca gráfica, e a adequação das ferramentas comunicacionais e de gestão do conhecimento de que estes indivíduos são portadores. Neste enquadramento, pretende-se validar um modelo heurístico que explique, satisfatoriamente, de que forma as organizações podem envolver os seus recursos humanos em atividades de valorização da marca, em contextos de informação e comunicação tecnologicamente mediados, e que possa assumirse como um impulsionador da adoção destas práticas. A abordagem metodológica é de natureza exploratória, iterativa e qualitativa, assentando na Grounded Theory e, portanto, num processo indutivo de produção de conhecimento, reconhecendo a existência de momentos de descoberta e, aproximando-se do paradigma construtivista. O estudo que conduz à proposta final de um modelo de comunicação mediada por computador para a valorização da marca assenta, essencialmente, na revisão da literatura através da pesquisa bibliográfica, e num estudo de caso, que assume como procedimentos técnicos os inquéritos por entrevista, para uma primeira verificação dos pressupostos do modelo, a construção de um protótipo não-funcional de uma Central Participativa de Marca (CPM), capaz de expressar a componente tecnológica presente no modelo, e a realização de grupos focais, com o intuito de alcançar a sua validação não-experimental. O estudo de caso realizado debruça-se sobre a Universidade de Aveiro (UA) e sobre o uso e apropriação da sua marca, por parte dos membros da sua comunidade docente e não-docente. Os resultados das entrevistas exploratórias, para as quais se recorre a uma amostra por conveniência composta por entidades relevantes no que à promoção da marca da UA concerne, são combinados com os conteúdos extraídos do levantamento bibliográfico, de modo a serem contemplados tanto na aferição dos domínios de interação que informam o modelo, como na conceção do protótipo de uma plataforma de colaboração online, especificamente orientada à marca, apresentado a cinco grupos focais que neles integram a população-alvo estudada. Este estudo empírico permite uma primeira validação do modelo heurístico proposto, confirmando que a participação na cocriação de artefactos de marca tende a acontecer de forma não oficial, por falta de iniciativas organizacionais que valorizem o capital humano, e que a orientação para o uso e apropriação da marca é fundamental na concretização deste tipo de contributos, dados por indivíduos não especializados em branding, design, comunicação ou estratégia de marketing. Os resultados permitem validar ainda a configuração e a estrutura de interação propostas para o sistema subjacente ao protótipo da CPM, assim como a generalidade das suas funcionalidades, permitindo a proposta de uma heurística focada na experimentação da marca no seio organizacional. Finalmente, são identificadas linhas de investigação futura nesta área, decorrentes dos resultados alcançados e das limitações do estudo realizado.
Resumo:
Database schemas, in many organizations, are considered one of the critical assets to be protected. From database schemas, it is not only possible to infer the information being collected but also the way organizations manage their businesses and/or activities. One of the ways to disclose database schemas is through the Create, Read, Update and Delete (CRUD) expressions. In fact, their use can follow strict security rules or be unregulated by malicious users. In the first case, users are required to master database schemas. This can be critical when applications that access the database directly, which we call database interface applications (DIA), are developed by third party organizations via outsourcing. In the second case, users can disclose partially or totally database schemas following malicious algorithms based on CRUD expressions. To overcome this vulnerability, we propose a new technique where CRUD expressions cannot be directly manipulated by DIAs any more. Whenever a DIA starts-up, the associated database server generates a random codified token for each CRUD expression and sends it to the DIA that the database servers can use to execute the correspondent CRUD expression. In order to validate our proposal, we present a conceptual architectural model and a proof of concept.
Resumo:
Fault tolerance allows a system to remain operational to some degree when some of its components fail. One of the most common fault tolerance mechanisms consists on logging the system state periodically, and recovering the system to a consistent state in the event of a failure. This paper describes a general fault tolerance logging-based mechanism, which can be layered over deterministic systems. Our proposal describes how a logging mechanism can recover the underlying system to a consistent state, even if an action or set of actions were interrupted mid-way, due to a server crash. We also propose different methods of storing the logging information, and describe how to deploy a fault tolerant master-slave cluster for information replication. We adapt our model to a previously proposed framework, which provided common relational features, like transactions with atomic, consistent, isolated and durable properties, to NoSQL database management systems.
Resumo:
To store, update and retrieve data from database management systems (DBMS), software architects use tools, like call-level interfaces (CLI), which provide standard functionalities to interact with DBMS. However, the emerging of NoSQL paradigm, and particularly new NoSQL DBMS providers, lead to situations where some of the standard functionalities provided by CLI are not supported, very often due to their distance from the relational model or due to design constraints. As such, when a system architect needs to evolve, namely from a relational DBMS to a NoSQL DBMS, he must overcome the difficulties conveyed by the features not provided by NoSQL DBMS. Choosing the wrong NoSQL DBMS risks major issues with components requesting non-supported features. This paper focuses on how to deploy features that are not so commonly supported by NoSQL DBMS (like Stored Procedures, Transactions, Save Points and interactions with local memory structures) by implementing them in standard CLI.
Resumo:
Call Level Interfaces (CLI) are low level API that play a key role in database applications whenever a fine tune control between application tiers and the host databases is a key requirement. Unfortunately, in spite of this significant advantage, CLI were not designed to address organizational requirements and contextual runtime requirements. Among the examples we emphasize the need to decouple or not to decouple the development process of business tiers from the development process of application tiers and also the need to automatically adapt to new business and/or security needs at runtime. To tackle these CLI drawbacks, and simultaneously keep their advantages, this paper proposes an architecture relying on CLI from which multi-purpose business tiers components are built, herein referred to as Adaptable Business Tier Components (ABTC). This paper presents the reference architecture for those components and a proof of concept based on Java and Java Database Connectivity (an example of CLI).
Resumo:
Esta tese aborda o problema de optimização de recursos de rede, na entrega de Serviços de Comunicação em Grupo, em Redes de Próxima Geração que suportem tecnologias de difusão. De acordo com esta problemática, são feitas propostas que levam em atenção a evolução espectável das redes 3G em Redes Heterogéneas de Próxima Geração que incluam tecnologias de difusão tais como o DVB. A optimização de recursos em Comunicações em Grupo é apresentada como um desafio vertical que deve cruzar diversas camadas. As optimizações aqui propostas cobrem tanto a interface entre Aplicação e a Plataforma de Serviços para a disponibilização de serviços de comunicação em grupo, como as abstracções e mapeamentos feitos na interface entre a Rede Central e a Rede de Acesso Rádio. As optimizações propostas nesta tese, assumem que o caminho evolutivo na direcção de uma Rede de Próxima Geração é feito através do IP. Em primeiro lugar são endereçadas as optimizações entre a Aplicação e a Plataforma de Serviços que já podem ser integradas nas redes 3G existentes. Estas optimizações podem potenciar o desenvolvimento de novas e inovadoras aplicações, que através do uso de mecanismos de distribuição em difusão podem fazer um uso mais eficiente dos recursos de rede. De seguida são apresentadas optimizações ao nível da interface entre a Rede Central e a Rede de Acesso Rádio que abordam a heterogeneidade das redes futuras assim como a necessidade de suportar tecnologias de difusão. É ainda considerada a possibilidade de aumentar a qualidade de serviço de serviços de difusão através do mapeamento do IP multicast em portadoras unidireccionais. Por forma a validar todas estas optimizações, vários protótipos foram desenvolvidos com base num router avançado para redes de acesso de próxima geração. As funcionalidades e arquitectura de software desse router são também aqui apresentadas.
Resumo:
In database applications, access control security layers are mostly developed from tools provided by vendors of database management systems and deployed in the same servers containing the data to be protected. This solution conveys several drawbacks. Among them we emphasize: 1) if policies are complex, their enforcement can lead to performance decay of database servers; 2) when modifications in the established policies implies modifications in the business logic (usually deployed at the client-side), there is no other possibility than modify the business logic in advance and, finally, 3) malicious users can issue CRUD expressions systematically against the DBMS expecting to identify any security gap. In order to overcome these drawbacks, in this paper we propose an access control stack characterized by: most of the mechanisms are deployed at the client-side; whenever security policies evolve, the security mechanisms are automatically updated at runtime and, finally, client-side applications do not handle CRUD expressions directly. We also present an implementation of the proposed stack to prove its feasibility. This paper presents a new approach to enforce access control in database applications, this way expecting to contribute positively to the state of the art in the field.
Resumo:
In database applications, access control security layers are mostly developed from tools provided by vendors of database management systems and deployed in the same servers containing the data to be protected. This solution conveys several drawbacks. Among them we emphasize: (1) if policies are complex, their enforcement can lead to performance decay of database servers; (2) when modifications in the established policies implies modifications in the business logic (usually deployed at the client-side), there is no other possibility than modify the business logic in advance and, finally, 3) malicious users can issue CRUD expressions systematically against the DBMS expecting to identify any security gap. In order to overcome these drawbacks, in this paper we propose an access control stack characterized by: most of the mechanisms are deployed at the client-side; whenever security policies evolve, the security mechanisms are automatically updated at runtime and, finally, client-side applications do not handle CRUD expressions directly. We also present an implementation of the proposed stack to prove its feasibility. This paper presents a new approach to enforce access control in database applications, this way expecting to contribute positively to the state of the art in the field.
Resumo:
As tecnologias de informação e comunicação na área da saúde não são só um instrumento para a boa gestão de informação, mas antes um fator estratégico para uma prestação de cuidados mais eficiente e segura. As tecnologias de informação são um pilar para que os sistemas de saúde evoluam em direção a um modelo centrado no cidadão, no qual um conjunto abrangente de informação do doente deve estar automaticamente disponível para as equipas que lhe prestam cuidados, independentemente de onde foi gerada (local geográfico ou sistema). Este tipo de utilização segura e agregada da informação clínica é posta em causa pela fragmentação generalizada das implementações de sistemas de informação em saúde. Várias aproximações têm sido propostas para colmatar as limitações decorrentes das chamadas “ilhas de informação” na saúde, desde a centralização total (um sistema único), à utilização de redes descentralizadas de troca de mensagens clínicas. Neste trabalho, propomos a utilização de uma camada de unificação baseada em serviços, através da federação de fontes de informação heterogéneas. Este agregador de informação clínica fornece a base necessária para desenvolver aplicações com uma lógica regional, que demostrámos com a implementação de um sistema de registo de saúde eletrónico virtual. Ao contrário dos métodos baseados em mensagens clínicas ponto-a-ponto, populares na integração de sistemas em saúde, desenvolvemos um middleware segundo os padrões de arquitetura J2EE, no qual a informação federada é expressa como um modelo de objetos, acessível através de interfaces de programação. A arquitetura proposta foi instanciada na Rede Telemática de Saúde, uma plataforma instalada na região de Aveiro que liga oito instituições parceiras (dois hospitais e seis centros de saúde), cobrindo ~350.000 cidadãos, utilizada por ~350 profissionais registados e que permite acesso a mais de 19.000.000 de episódios. Para além da plataforma colaborativa regional para a saúde (RTSys), introduzimos uma segunda linha de investigação, procurando fazer a ponte entre as redes para a prestação de cuidados e as redes para a computação científica. Neste segundo cenário, propomos a utilização dos modelos de computação Grid para viabilizar a utilização e integração massiva de informação biomédica. A arquitetura proposta (não implementada) permite o acesso a infraestruturas de e-Ciência existentes para criar repositórios de informação clínica para aplicações em saúde.
Resumo:
The artefact and techno-centricity of the research into the architecture process needs to be counterbalanced by other approaches. An increasing amount of information is collected and used in the process, resulting in challenges related to information and knowledge management, as this research evidences through interviews with practicing architects. However, emerging technologies are expected to resolve many of the traditional challenges, opening up new avenues for research. This research suggests that among them novel techniques addressing how architects interact with project information, especially that indirectly related to the artefacts, and tools which better address the social nature of work, notably communication between participants, become a higher priority. In the fields associated with the Human Computer Interaction generic solutions still frequently prevail, whereas it appears that specific alternative approaches would be particularly in demand for the dynamic and context dependent design process. This research identifies an opportunity for a process-centric and integrative approach for architectural practice and proposes an information management and communication software application, developed for the needs discovered in close collaboration with architects. Departing from the architects’ challenges, an information management software application, Mneme, was designed and developed until a working prototype. It proposes the use of visualizations as an interface to provide an overview of the process, facilitate project information retrieval and access, and visualize relationships between the pieces of information. Challenges with communication about visual content, such as images and 3D files, led to a development of a communication feature allowing discussions attached to any file format and searchable from a database. Based on the architects testing the prototype and literature recognizing the subjective side of usability, this thesis argues that visualizations, even 3D visualizations, present potential as an interface for information management in the architecture process. The architects confirmed that Mneme allowed them to have a better project overview, to easier locate heterogeneous content, and provided context for the project information. Communication feature in Mneme was seen to offer a lot of potential in design projects where diverse file formats are typically used. Through empirical understanding of the challenges in the architecture process, and through testing the resulting software proposal, this thesis suggests promising directions for future research into the architecture and design process.
Resumo:
The main motivation for the work presented here began with previously conducted experiments with a programming concept at the time named "Macro". These experiments led to the conviction that it would be possible to build a system of engine control from scratch, which could eliminate many of the current problems of engine management systems in a direct and intrinsic way. It was also hoped that it would minimize the full range of software and hardware needed to make a final and fully functional system. Initially, this paper proposes to make a comprehensive survey of the state of the art in the specific area of software and corresponding hardware of automotive tools and automotive ECUs. Problems arising from such software will be identified, and it will be clear that practically all of these problems stem directly or indirectly from the fact that we continue to make comprehensive use of extremely long and complex "tool chains". Similarly, in the hardware, it will be argued that the problems stem from the extreme complexity and inter-dependency inside processor architectures. The conclusions are presented through an extensive list of "pitfalls" which will be thoroughly enumerated, identified and characterized. Solutions will also be proposed for the various current issues and for the implementation of these same solutions. All this final work will be part of a "proof-of-concept" system called "ECU2010". The central element of this system is the before mentioned "Macro" concept, which is an graphical block representing one of many operations required in a automotive system having arithmetic, logic, filtering, integration, multiplexing functions among others. The end result of the proposed work is a single tool, fully integrated, enabling the development and management of the entire system in one simple visual interface. Part of the presented result relies on a hardware platform fully adapted to the software, as well as enabling high flexibility and scalability in addition to using exactly the same technology for ECU, data logger and peripherals alike. Current systems rely on a mostly evolutionary path, only allowing online calibration of parameters, but never the online alteration of their own automotive functionality algorithms. By contrast, the system developed and described in this thesis had the advantage of following a "clean-slate" approach, whereby everything could be rethought globally. In the end, out of all the system characteristics, "LIVE-Prototyping" is the most relevant feature, allowing the adjustment of automotive algorithms (eg. Injection, ignition, lambda control, etc.) 100% online, keeping the engine constantly working, without ever having to stop or reboot to make such changes. This consequently eliminates any "turnaround delay" typically present in current automotive systems, thereby enhancing the efficiency and handling of such systems.