Uma abordagem apoiada por linguagens especificas de domínio para criação de linhas de produtos de software embarcado

Abstract

Sistemas embarcados são utilizados em vários dispositivos que fazem parte da vida cotidiana, de modo que o mercado de tais sistemas tem crescido de maneira expressiva. Esses sistemas sempre foram associados com código de baixo nível, no entanto, essa visão está desatualizada. Nas aplicações embarcadas correntes o software é a principal parcela, embora nenhuma técnica sistemática de reuso seja utilizada para sua concepção. Desse modo ocorre um atraso considerável na produtividade dos sistemas, uma vez que experiências anteriores bem sucedidas não são reaproveitadas, sendo necessário que o desenvolvedor comece do zero toda vez que um software for desenvolvido. Com a crescente complexidade dos sistemas embarcados é necessário utilizar técnicas de reuso para diminuir o atrasado da produção de tais sistemas. Nesse contexto, Linha de Produtos de Software (LPS) é definida como uma técnica de reuso que permite a construção de vários sistemas pertencentes a um mesmo domínio. LPS é aplicável para a geração de produtos específicos de um domínio, mas que possuem um conjunto de características comuns e pontos de variabilidades bem definidos. O Desenvolvimento de Software Orientado a Modelos (do inglês Model-Driven Development - MDD) é outra técnica de reuso na qual tem como principal objetivo reduzir a distância semântica entre o problema do domínio e solução/implementação, fazendo com que o engenheiro não precise interagir diretamente como o código-fonte, podendo se concentrar em modelos que possuem maiores níveis de abstração e posteriormente realizar transformações Model-To-Code e/ou Model-To-Model. A partir dessas técnicas de reuso é introduzido um processo para o desenvolvimento de linhas de produtos de software no domínio de Robôs Moveis. A fim de utilizar o processo proposto foi desenvolvida uma LPS intitulada LegoRobosMoveis Linha de Produtos de Software (LRMLPS). Adicionalmente, foi desenvolvida uma linguagem especifica de domínio denominada F2MoC que auxilia o engenheiro de aplicação na instanciação automática de membros da LRMLPS.Embedded systems have been used in a myriad of devices that are present in our daily lives, thereby the market for such sort of system has increased significantly over the last few years. These systems were once associated with low-level code, however, this is an outdated view of embedded systems technology. Although the current embedded systems are mostly composed of software, no systematic reuse technique is used in throughout their development. Thus, since previous successful experiences are not reused, forcing the developer to create some of the involved elements from the scratch, there is a considerable delay in the production of these systems. Due to the ever increasing complexity of embedded systems it is necessary to apply reuse techniques in order to lessen the effort needed to develop such systems. Within this context, software product lines (SPL) are reuse techniques that allow the creation of several systems belonging to a certain domain. SPL can be used to generate products of a specific domain that share common features but are each different in a specific way. Model-driven development is another reuse technique whose main objective is to reduce the semantic distance between the domain problem and its solution/implementation; thus, the developer does not need to direct interact with the solution source code, being able to focus on models and transforming those models in source code or yet other models. Based on these techniques, a process for the development of SPL in the domain of mobile robots was developed. In order to properly use the proposed process, a SPL called LegoMobileRobots Software Product Line (LMRSPL) was devised. Moreover, a domain specific language (DSL) was also developed. This DSL, called F2MoC, assists the application engineer in instantiating LMRSPL members

Similar works

Full text

thumbnail-image

RCAAP - Repositório Científico de Acesso Aberto de Portugal

redirect
Last time updated on 10/08/2016

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.