Abordagem para criação de linguagens específicas de domínio para robótica móvel

Detalhes bibliográficos
Autor(a) principal: Conrado, Daniel Bruno Fernandes
Data de Publicação: 2012
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFSCAR
Texto Completo: https://repositorio.ufscar.br/handle/ufscar/513
Resumo: Autonomous mobile robots are machines capable of executing repetitive/dangerous tasks more efficiently. Most of them have an embedded software which is responsible for their execution. Over the last years, the complexity of these applications has continuously growing and they are presenting challenges that are uncommon to traditional information systems development. Therefore, any technique that can support their development is a great contribution. A technique that improves the productivity is to use domain-specific languages (DSLs). These are modeling and programming languages whose constructs are concepts and abstractions of a particular domain. It frees developers from worrying about generic programming concepts (classes, objects, attributes, etc.) and allows them to focus on the problem to be solved. As creating a DSL is not a trivial task and pointing the idiosyncrasies of mobile robots, this dissertation presents an approach for engineering DSLs to mobile robots. The aim is to make the activity of creating DSLs to this domain more systematic and controlled. In this approach, an application is taken as input and a series of domain statements is extracted from it. These statements are classified into categories and each one of them are analized in order to extract commonalities and variabilities, wich are transformed into components of a DSL. An important characteristic of the approach is that it asks for just one application to reach a first version of a running DSL. We suggest that the same DSL can be evolved just by applying the approach again using another application as input. So new components could be created and the existing ones could be modified. We also present a generic language model providing a foundation architecture that allows one to easily create new DSLs by extending it. Two proofs of concept are presented in order to exemplify the application of our approach.
id SCAR_5f05580ef2878cfdae4b0abced81ae26
oai_identifier_str oai:repositorio.ufscar.br:ufscar/513
network_acronym_str SCAR
network_name_str Repositório Institucional da UFSCAR
repository_id_str 4322
spelling Conrado, Daniel Bruno FernandesCamargo, Valter Vieira dehttp://lattes.cnpq.br/6809743774407662http://lattes.cnpq.br/44699346966239081033cb39-f1b8-4f20-9618-c3c73704f8662016-06-02T19:06:01Z2012-12-212016-06-02T19:06:01Z2012-11-12CONRADO, Daniel Bruno Fernandes. Abordagem para criação de linguagens específicas de domínio para robótica móvel. 2012. 93 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2012.https://repositorio.ufscar.br/handle/ufscar/513Autonomous mobile robots are machines capable of executing repetitive/dangerous tasks more efficiently. Most of them have an embedded software which is responsible for their execution. Over the last years, the complexity of these applications has continuously growing and they are presenting challenges that are uncommon to traditional information systems development. Therefore, any technique that can support their development is a great contribution. A technique that improves the productivity is to use domain-specific languages (DSLs). These are modeling and programming languages whose constructs are concepts and abstractions of a particular domain. It frees developers from worrying about generic programming concepts (classes, objects, attributes, etc.) and allows them to focus on the problem to be solved. As creating a DSL is not a trivial task and pointing the idiosyncrasies of mobile robots, this dissertation presents an approach for engineering DSLs to mobile robots. The aim is to make the activity of creating DSLs to this domain more systematic and controlled. In this approach, an application is taken as input and a series of domain statements is extracted from it. These statements are classified into categories and each one of them are analized in order to extract commonalities and variabilities, wich are transformed into components of a DSL. An important characteristic of the approach is that it asks for just one application to reach a first version of a running DSL. We suggest that the same DSL can be evolved just by applying the approach again using another application as input. So new components could be created and the existing ones could be modified. We also present a generic language model providing a foundation architecture that allows one to easily create new DSLs by extending it. Two proofs of concept are presented in order to exemplify the application of our approach.Robôs móveis autônomos são máquinas com potencial para realizar atividades repetitivas ou de alta periculosidade com mais eficácia. Muitos possuem um software embarcado responsável pelo seu funcionamento. Nos últimos anos, a complexidade dessas aplicações robóticas embarcadas tem crescido continuamente e apresentam desafios que são incomuns ao desenvolvimento dos tradicionais sistemas de informação. Portanto, toda técnica que dê suporte a esse tipo de desenvolvimento pode contribuir significativamente. Uma técnica que permite o aumento de produtividade é a utilização de linguagens específicas de domínio (DSLs). Essas são linguagens de modelagem e programação cujas construções são conceitos e abstrações de um domínio de aplicação em particular. Isso desobriga o desenvolvedor de se preocupar com conceitos genéricos de programação (classes, objetos, atributos, etc.) para focar-se no problema a ser resolvido. Como o desenvolvimento de uma DSL não é uma tarefa trivial e tendo em vista as idiossincrasias dos robôs móveis autônomos, esta dissertação apresenta uma abordagem para construção de DSLs para robôs móveis. O objetivo é deixar mais sistemática e controlada a criação de DSLs para esse domínio. Nessa abordagem, uma aplicação é tomada como entrada e dela extraem-se declarações a respeito do domínio. Essas declarações são categorizadas e, para cada categoria, são levantadas partes comuns e variáveis. Então, essas partes são transformadas em componentes de uma DSL. Uma característica importante da abordagem apresentada é que uma versão inicial da DSL pode ser alcançada tendo apenas uma aplicação como base. Sugere-se que essa mesma DSL possa evoluir pela reaplicação da abordagem tendo uma nova aplicação como entrada. Dessa forma, novos componentes podem ser criados e os existentes, modificados. Também é apresentado um modelo genérico de linguagem que fornece uma arquitetura básica, permitindo que novas DSLs sejam facilmente construídas pela extensão da mesma. Duas provas de conceito são apresentadas com a intenção de exemplificar a aplicação da abordagem.Universidade Federal de Sao Carlosapplication/pdfporUniversidade Federal de São CarlosPrograma de Pós-Graduação em Ciência da Computação - PPGCCUFSCarBREngenharia de softwareModelagemRobôs móveisProcesso de software orientado a objetosLinguagens Específicas de DomínioEngenharia de DSLsDomain-Specific LanguagesMobile RobotsDSL EngineeringCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOAbordagem para criação de linguagens específicas de domínio para robótica móvelinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesis-1-1ad3905d4-abda-4f95-bc76-08abe5ed17a7info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFSCARinstname:Universidade Federal de São Carlos (UFSCAR)instacron:UFSCARORIGINAL4765.pdfapplication/pdf5526051https://repositorio.ufscar.br/bitstream/ufscar/513/1/4765.pdfeca7635e3ad1f0a28a9f3871c97aac57MD51TEXT4765.pdf.txt4765.pdf.txtExtracted texttext/plain0https://repositorio.ufscar.br/bitstream/ufscar/513/2/4765.pdf.txtd41d8cd98f00b204e9800998ecf8427eMD52THUMBNAIL4765.pdf.jpg4765.pdf.jpgIM Thumbnailimage/jpeg7950https://repositorio.ufscar.br/bitstream/ufscar/513/3/4765.pdf.jpged51bed653771a423d7073add3f5cf2bMD53ufscar/5132023-09-18 18:31:27.458oai:repositorio.ufscar.br:ufscar/513Repositório InstitucionalPUBhttps://repositorio.ufscar.br/oai/requestopendoar:43222023-09-18T18:31:27Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)false
dc.title.por.fl_str_mv Abordagem para criação de linguagens específicas de domínio para robótica móvel
title Abordagem para criação de linguagens específicas de domínio para robótica móvel
spellingShingle Abordagem para criação de linguagens específicas de domínio para robótica móvel
Conrado, Daniel Bruno Fernandes
Engenharia de software
Modelagem
Robôs móveis
Processo de software orientado a objetos
Linguagens Específicas de Domínio
Engenharia de DSLs
Domain-Specific Languages
Mobile Robots
DSL Engineering
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
title_short Abordagem para criação de linguagens específicas de domínio para robótica móvel
title_full Abordagem para criação de linguagens específicas de domínio para robótica móvel
title_fullStr Abordagem para criação de linguagens específicas de domínio para robótica móvel
title_full_unstemmed Abordagem para criação de linguagens específicas de domínio para robótica móvel
title_sort Abordagem para criação de linguagens específicas de domínio para robótica móvel
author Conrado, Daniel Bruno Fernandes
author_facet Conrado, Daniel Bruno Fernandes
author_role author
dc.contributor.authorlattes.por.fl_str_mv http://lattes.cnpq.br/4469934696623908
dc.contributor.author.fl_str_mv Conrado, Daniel Bruno Fernandes
dc.contributor.advisor1.fl_str_mv Camargo, Valter Vieira de
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/6809743774407662
dc.contributor.authorID.fl_str_mv 1033cb39-f1b8-4f20-9618-c3c73704f866
contributor_str_mv Camargo, Valter Vieira de
dc.subject.por.fl_str_mv Engenharia de software
Modelagem
Robôs móveis
Processo de software orientado a objetos
Linguagens Específicas de Domínio
Engenharia de DSLs
topic Engenharia de software
Modelagem
Robôs móveis
Processo de software orientado a objetos
Linguagens Específicas de Domínio
Engenharia de DSLs
Domain-Specific Languages
Mobile Robots
DSL Engineering
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
dc.subject.eng.fl_str_mv Domain-Specific Languages
Mobile Robots
DSL Engineering
dc.subject.cnpq.fl_str_mv CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
description Autonomous mobile robots are machines capable of executing repetitive/dangerous tasks more efficiently. Most of them have an embedded software which is responsible for their execution. Over the last years, the complexity of these applications has continuously growing and they are presenting challenges that are uncommon to traditional information systems development. Therefore, any technique that can support their development is a great contribution. A technique that improves the productivity is to use domain-specific languages (DSLs). These are modeling and programming languages whose constructs are concepts and abstractions of a particular domain. It frees developers from worrying about generic programming concepts (classes, objects, attributes, etc.) and allows them to focus on the problem to be solved. As creating a DSL is not a trivial task and pointing the idiosyncrasies of mobile robots, this dissertation presents an approach for engineering DSLs to mobile robots. The aim is to make the activity of creating DSLs to this domain more systematic and controlled. In this approach, an application is taken as input and a series of domain statements is extracted from it. These statements are classified into categories and each one of them are analized in order to extract commonalities and variabilities, wich are transformed into components of a DSL. An important characteristic of the approach is that it asks for just one application to reach a first version of a running DSL. We suggest that the same DSL can be evolved just by applying the approach again using another application as input. So new components could be created and the existing ones could be modified. We also present a generic language model providing a foundation architecture that allows one to easily create new DSLs by extending it. Two proofs of concept are presented in order to exemplify the application of our approach.
publishDate 2012
dc.date.available.fl_str_mv 2012-12-21
2016-06-02T19:06:01Z
dc.date.issued.fl_str_mv 2012-11-12
dc.date.accessioned.fl_str_mv 2016-06-02T19:06:01Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv CONRADO, Daniel Bruno Fernandes. Abordagem para criação de linguagens específicas de domínio para robótica móvel. 2012. 93 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2012.
dc.identifier.uri.fl_str_mv https://repositorio.ufscar.br/handle/ufscar/513
identifier_str_mv CONRADO, Daniel Bruno Fernandes. Abordagem para criação de linguagens específicas de domínio para robótica móvel. 2012. 93 f. Dissertação (Mestrado em Ciências Exatas e da Terra) - Universidade Federal de São Carlos, São Carlos, 2012.
url https://repositorio.ufscar.br/handle/ufscar/513
dc.language.iso.fl_str_mv por
language por
dc.relation.confidence.fl_str_mv -1
-1
dc.relation.authority.fl_str_mv ad3905d4-abda-4f95-bc76-08abe5ed17a7
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de São Carlos
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Ciência da Computação - PPGCC
dc.publisher.initials.fl_str_mv UFSCar
dc.publisher.country.fl_str_mv BR
publisher.none.fl_str_mv Universidade Federal de São Carlos
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFSCAR
instname:Universidade Federal de São Carlos (UFSCAR)
instacron:UFSCAR
instname_str Universidade Federal de São Carlos (UFSCAR)
instacron_str UFSCAR
institution UFSCAR
reponame_str Repositório Institucional da UFSCAR
collection Repositório Institucional da UFSCAR
bitstream.url.fl_str_mv https://repositorio.ufscar.br/bitstream/ufscar/513/1/4765.pdf
https://repositorio.ufscar.br/bitstream/ufscar/513/2/4765.pdf.txt
https://repositorio.ufscar.br/bitstream/ufscar/513/3/4765.pdf.jpg
bitstream.checksum.fl_str_mv eca7635e3ad1f0a28a9f3871c97aac57
d41d8cd98f00b204e9800998ecf8427e
ed51bed653771a423d7073add3f5cf2b
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFSCAR - Universidade Federal de São Carlos (UFSCAR)
repository.mail.fl_str_mv
_version_ 1813715503400615936