Please use this identifier to cite or link to this item:
https://hdl.handle.net/1822/82998
Title: | An HAROS extension for variability aware ROS code analysis |
Author(s): | Pereira, Ricardo Ribeiro |
Advisor(s): | Cunha, Alcino |
Keywords: | Formal methods High Assurance ROS (HAROS) JavaScript NodeJS Robot Operating System (ROS) Software Product Line (SPL) Text-based Variability Language (TVL) Variability Linha de Produtos de Software (LPS) Métodos formais Variabilidade |
Issue date: | 31-Jan-2022 |
Abstract(s): | Human kind has proven how challenging and volatile the technological market can be,
growing at an exponential rate. The benefits of such evolution are directly reflected in many
ways in our everyday life. Robots are a clear example of an advanced technology that may
be completely integrated in our societies in a near future, hopefully in such a way that their
actions will be considered as trustable as human actions are. These machines are permanently
relying on software, which has a development process that many times cannot be considered
trustworthy. This may cause the final product to have multiple malfunctions, which in turn
may result in tremendous economic losses or even harm human lives.
Bearing this in mind, software industry and academia have been trying to establish new
standards and techniques that considerably lower the occurrence of the latter problems.
The solution is to apply certain formal methodologies and tools when developing software,
namely when developing critical software that controls machinery used, for example, in
healthcare sector, aeronautical industry, or in military operations.
The present dissertation aims to explore and improve techniques and tools to help devel opers in the process of building robotic systems, namely those developed with the Robot
Operating System (ROS). The focus will be on a specific framework named HAROS, which
performs different types of analyses of ROS-based code. Although it has a solid set of useful
features, some need to be upgraded to enhance efficiency and also to promote a better experi ence to their users, in particular when the the software has many variants, as is often the case
with robotic applications.
The proposed extension offers ROS and HAROS users a practical methodology that, by
merging existing ROS and Software Product Line (SPL) development tools and concepts,
considerably improves the understanding of the variability in a robotic application, without
requiring a steep learning curve. A humanidade tem provado o quão desafiador e volátil consegue ser o mercado tecnológico, que cresce a um ritmo exponencial. Os benefícios dessa evolução refletem-se diretamente de várias formas no nosso quotidiano. Os robôs são um exemplo evidente de uma tecnolo gia vanguardista que num futuro próximo poderá estar totalmente integrada nas nossas sociedades, de tal forma que as suas ações serão consideradas tão confiáveis quanto as dos seres humanos. Não obstante, estas máquinas estão constantemente dependentes de software cujo processo de desenvolvimento é muitas vezes pouco credível. Isto leva a que o produto final tenha muitas anomalias, que por sua vez podem resultar em prejuízos económicos avultados ou até pôr em perigo vidas humanas. Tendo isso em conta, a indústria de software e a academia têm tentado estabelecer novos padrões e técnicas que reduzem consideravelmente a ocorrência de problemas futuros. A solução passa por aplicar determinadas metodologias e ferramentas formais durante o de senvolvimento de software, nomeadamente no desenvolvimento de software sensível que controla aparelhos usados, por exemplo, no setor da saúde, na indústria aeronáutica, ou até em operações militares. O propósito desta dissertação é explorar e melhorar técnicas e ferramentas que auxiliem os técnicos no processo de construção de sistemas robóticos, nomeadamente os desenvolvidos com o Robot Operating System (ROS). O foco vai para uma ferramenta chamada HAROS, que exerce diferentes tipos de análises em código ROS. Apesar da mesma já ter um conjunto consistente de funcionalidades, algumas precisam de ser otimizadas para melhorar a eficiência e também para promover uma melhor experiência aos seus utilizadores, em particular quando o software tem muitas variantes, como é frequentemente o caso nas aplicações robóticas. A extensão desenvolvida oferece aos utilizadores do ROS e do HAROS uma metodologia prática que, combinando ferramentas e conceitos já usados no ROS e no desenvolvimento de Linhas de Produtos de Software (LPSs), melhora consideravelmente a compreensão da variabilidade existente numa aplicação robótica, não requerendo uma curva de aprendizagem muito elevada. |
Type: | Master thesis |
Description: | Dissertação de mestrado integrado em Engenharia Informática |
URI: | https://hdl.handle.net/1822/82998 |
Access: | Open access |
Appears in Collections: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
Ricardo Ribeiro Pereira.pdf | 1,57 MB | Adobe PDF | View/Open |
This item is licensed under a Creative Commons License