Advances in building computer systems allowed the development of increasingly sophisticated software. In this context, software developers are faced with complex problems that can be difficult to resolve. One of the fundamental steps to build a software is to define its main features, that is, define the requirements that can be satisfied, which is not an easy task. Typically, requirements are classified as functional and non-functional. The non-functional requirements define system’s properties or how it should operate. They are also called quality requirements, since they are important to ensure that the system is feasible to use and meets the needs of users. Despite their importance, they are difficult to assess and be measured in order to generate evidence of its full service. One reason for this difficulty is the need to evaluate the software at run-time, which is a complex task
that involves large volumes of data to be analyzed. This work aims to systematize and facilitate the monitoring of quality requirements from characteristics of architectural styles used in the software architecture design. In this sense, the research question that guided this study was “how to monitor and analyse quality requirements for a software system”. On that basis, it was proposed a process, called ArMoni, for monitoring quality requirements using architectural information, such as architectural styles. To assess the practical use of the proposed process, an evaluation experiment with students from the Computer Science course was performed. Students performed the monitoring of a real application called Falibras. This target system performs online text translation from Portuguese to the Brazilian Sign Language (Libras). Through the experiment, it was observed that the students considered the proposed process feasible to direct monitoring decisions. On the
other hand, students who did not have access to the proposed process and do not know the architecture of Falibras have related more difficult to analyze the system. Thus, we have realized that it is important for the software developer to have guidelines that assist him/her in understanding the relevant quality requirements for the software that is being monitored, such as a processes that address the monitoring of these requirements. Preliminary results indicate that the ArMoni process contributes to guide the monitoring and analysis of the system based on architectural information, such as the architectural styles and we have noticed that it benefits mainly less experienced developers. Thus, this work presents academic relevance in software engineering and can assist developers and software engineers to monitor quality requirements, such as reliability and efficiency, as well as to identify possible structural bottlenecks that could compromise the satisfaction
of these requirements. / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior / Os avanços na construção de sistemas computacionais possibilitaram que sistemas cada vez mais sofisticados surgissem. Nesse contexto, os desenvolvedores de software deparam-se com problemas complexos que podem ser difíceis de solucionar. Um dos passos fundamentais ao construir um software é definir as principais características dele, isto é, definir os requisitos. Contudo, nem sempre é trivial definir quais são esses requisitos. Normalmente, os requisitos são classificados como funcionais e não-funcionais. Os requisitos não-funcionais definem propriedades do sistema ou como esse deve operar. Eles também são chamados de requisitos de qualidade, pois são importantes para garantir que o sistema seja viável para uso e atenda às necessidades dos usuários. Apesar da sua importância, eles são difíceis de serem avaliados e mensurados de forma a gerar evidências do seu pleno atendimento. Uma das razões para essa dificuldade é a necessidade de se avaliar o software em tempo de execução, o que é uma tarefa complexa que envolve grandes volumes de dados a serem analisados. O objetivo dessa dissertação é sistematizar e viabilizar a monitoração de requisitos de qualidade a partir de características dos estilos arquiteturais utilizados no projeto da arquitetura de software. Nesse sentido, a questão de pesquisa que direcionou esse estudo foi “como monitorar e analisar requisitos de qualidade em um sistema de software”. Com base nisso, foi proposto um processo de monitoração de requisitos de qualidade utilizando informações arquiteturais, tais como estilos arquiteturais, denominado ArMoni. Para avaliar a utilização prática do referido processo foi realizado um experimento avaliativo com alunos do curso de Ciência da Computação. Os alunos realizaram a monitoração de uma aplicação real denominada Falibras. Esse sistema realiza tradução online de textos em língua portuguesa para a Língua Brasileira de Sinais (LIBRAS). Através do experimento, foi possível perceber que os alunos consideraram o processo proposto viável para direcionar as decisões de monitoração. Por outro lado, os alunos que não tiveram acesso ao processo proposto e não conheciam a arquitetura do Projeto Falibras sentiram mais dificuldades para analisar o sistema. Desse modo, é importante para o(a) desenvolvedor(a) de software ter recursos que o(a) auxiliem na compreensão dos requisitos de qualidade relevantes para o software que está sendo monitorado, bem como processos que direcionem a monitoração desses requisitos. Os resultados preliminares apontam que o processo ArMoni contribui para guiar a monitoração e analisar os requisitos de qualidade a partir de informações arquiteturais, tais como os estilos arquiteturais que compõem o sistema e nota-se que ele beneficia principalmente desenvolvedores menos experientes. Assim, essa dissertação apresenta relevância acadêmica na área de engenharia de software e poderá auxiliar desenvolvedores(as) e engenheiros(as) de software a monitorar requisitos de qualidade, tais como confiabilidade e eficiência, além de identificar possíveis gargalos estruturais que podem comprometer a satisfação desses requisitos.
Identifer | oai:union.ndltd.org:IBICT/oai:www.repositorio.ufal.br:riufal/1594 |
Date | 16 December 2016 |
Creators | Menezes, Suzy Kamylla de Oliveira |
Contributors | Brito, Patrick Henrique da Silva, http://lattes.cnpq.br/4155051332618408, Costa, Evandro de Barros, http://lattes.cnpq.br/5760364940162939, Rubira, Cecília Mary Fischer, http://lattes.cnpq.br/1396497553199632 |
Publisher | Universidade Federal de Alagoas, Brasil, Programa de Pós-Graduação em Informática, UFAL |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Repositório Institucional da UFAL, instname:Universidade Federal de Alagoas, instacron:UFAL |
Rights | info:eu-repo/semantics/openAccess |
Relation | bitstream:http://www.repositorio.ufal.br:8080/bitstream/riufal/1594/2/license.txt, bitstream:http://www.repositorio.ufal.br:8080/bitstream/riufal/1594/1/Um+processo+para+monitora%C3%A7%C3%A3o+de+requisitos+de+qualidade+de+software.pdf |
Page generated in 0.0019 seconds