masterThesis
NFR4ES : um Catálogo de Requisitos Não-Funcionais para Sistemas Embarcados
Autor
SILVA, Reinaldo Antônio da
Institución
Resumen
Sistemas embarcados se tornaram cada vez mais importantes no dia a dia das pessoas. Mesmo que sua presença não seja percebida, eles estão embutidos em diversos aparelhos eletrônicos que utilizamos no nosso cotidiano, tais como: smartphones, smartwatches e diversos outros. Eles estão presentes em aplicações de diversas áreas tais como: a médica, veicular, dentre outras. Nos últimos anos tem crescido o interesse recíproco entre as comunidades de Engenharia de Software e sistemas embarcados. Devido a complexidade no desenvolvimento desses sistemas, engenheiros de Sistemas Embarcados buscam na Engenharia de Requisitos métodos e técnicas que forneçam apoio a construção destes sistemas. Da mesma forma a comunidade de Engenharia de Software percebeu a necessidade de se adaptar a este domínio e propor novas abordagens que atendam as particularidades desta área. Em particular foi observado, após pesquisa na literatura, que há uma escassez de métodos, técnicas e ferramentas de Engenharia de Requisitos específicas para sistemas embarcados. No domínio de sistemas embarcados, 50% dos problemas são detectados apenas após a entrega do produto. Contudo, grande parte dos problemas relatados não são relacionados a erros de programação do sistema, mas dizem respeito à requisitos inadequados. No processo de desenvolvimento de um sistema embarcado, várias questões devem ser levadas em consideração no que diz respeito ao tratamento dos Requisitos Não-Funcionais. Vários trabalhos relatam a dificuldade com a Elicitação e Especificação de Requisitos Não-funcionais para Sistemas Embarcados. Desta forma, esta dissertação visa tratar a dificuldade para identificar, inter-relacionar e documentar Requisitos Não-Funcionais em projetos de Sistemas Embarcados. Neste trabalho foi desenvolvido um Catálogo de Requisitos Não Funcionais para Sistemas Embarcados chamado NFR4ES. Com este catálogo o conhecimento foi organizado, facilitando o compartilhamento, gerenciamento, e evolução das informações sobre os requisitos não-funcionais em sistemas embarcados. Posteriormente o catálogo NFR4ES foi avaliado através de uma Prova de Conceito, onde esse artefato se mostrou útil e colaborou com o processo de elicitação e especificação do sistema proposto, e um questionário para obter a opinião de especialistas onde o catálogo foi bem avaliado sobre perspectivas relevantes da pesquisa. Como contribuições apresentamos um conjunto de Requisitos Não-Funcionais que podem ser levados em consideração em projetos de Sistemas Embarcados e estão organizados através de um catálogo. Também apresentamos os inter-relacionamentos entre os Requisitos Não-Funcionais obtidos, e um processo dividido em 3 fases e 8 atividades com o qual o catálogo foi construído. Portanto, com a utilização do catálogo NFR4ES, será possível apoiar as etapas de elicitação e especificação em projetos de sistemas embarcados. Embedded systems have become increasingly important in people’s day-to-day lives. Even if their presence is not perceived, they are embedded in several electronic devices that we use in our daily lives, such as smartphones, smartwatches and several others. They are present in applications of several areas such as the medical, vehicular, among others. In recent years mutual interest has grown among Software Engineering communities and embedded systems. Due to the complexity in the development of these systems, Embedded Systems Engineers seek in Requirements Engineering methods and techniques that support the construction of these systems. In the same way, the Software Engineering community realized the need to adapt to this domain and to propose new approaches that meet the particularities of this area. In particular, it was observed, after research in the literature, that there is a shortage of methods, techniques, and tools of Specific Requirements Engineering for embedded systems. In the embedded systems domain, 50% of problems are detected only after product delivery. However, most of the reported issues are not related to system programming errors but relate to inadequate requirements. In the process of developing an embedded system, several issues need to be taken into account when dealing with Non-Functional Requirements. Several papers report the difficulty with the Elicitation and Specification of Non-functional Requirements for Embedded Systems. Thus, this dissertation aims to address the challenge to identify, interrelate and document Non-Functional Requirements in Embedded Systems projects. In this work, a Catalog of Non-Functional Requirements for Embedded Systems called NFR4ES was developed. With this catalog, the knowledge was organized, facilitating the sharing, management, and evolution of the information about the nonfunctional requirements in embedded systems. Subsequently, the NFR4ES catalog was evaluated through a Proof of Concept, where this artifact proved useful and cooperated with the elicitation process and specification of the proposed system, and a questionnaire to obtain the opinion of experts where the catalog was well evaluated on important perspectives the research. As contributions we present a set of Non-Functional Requirements that can be taken into account in Embedded Systems projects and are organized through a catalog. We also show the interrelations between the Non-Functional Requirements obtained, and a process divided into 3 phases and 8 activities with which the catalog was constructed. Therefore, with the use of the NFR4ES catalog, it will be possible to support the elicitation and specification stages in embedded systems projects.