Understanding Factors and Practices of Software Security and Performance Verification
Autores
6790 |
296,2504,3037
|
|
6791 |
296,2504,3037
|
|
6792 |
296,2504,3037
|
Informações:
Publicações do PESC
As atividades diárias da sociedade são fortemente apoiadas por sistemas de software. Assim, falhas de software podem trazer grandes perdas. Por isso, as atividades de verificação são essenciais e devem avaliar as funcionalidades do software e também as propriedades representadas pelos requisitos não-funcionais. Desta forma, esse trabalho torna disponível um corpo de conhecimento contendo a caracterização dos requisitos não-funcionais mais relevantes para os sistemas de software e as abordagens de teste que podem ser utilizadas para avaliar esses requisitos. Particularmente, o trabalho aprofunda-se na caracterização das práticas de verificação de segurança e desempenho utilizadas por organizações de desenvolvimento de software e os fatores que apoiam as tomadas de decisão relacionadas à essas práticas. Adicionalmente, são apresentados fatores moderadores das atividades de verificação de segurança e desempenho bem como ações que podem ser realizadas para promovê-los. A organização desse corpo de conhecimento fez uso de revisões estruturadas da literatura, estudos de caso, rapid reviews e survey, os quais permitiram gerar resultados baseados em evidência que podem ser utilizados com mais confiança pela indústria para aprimorar suas práticas de verificação de requisitos não-funcionais e pela academia para identificação de desafios de pesquisas na área.
Software systems strongly support the daily activities of society. Thus, software failures can bring huge losses. Therefore, verification activities are essential and should evaluate not only the functionality of the software but also its properties represented by the non-functional requirements. Thus, this work proposes a body of knowledge containing the characterization of the most relevant non-functional requirements for software systems. Besides, the body of knowledge includes the testing approaches that can be used to verify these requirements. In particular, the work goes more in-depth into characterizing security and performance verification practices used by software development organizations and the factors that support decision-making related to these practices. Additionally, moderating factors of security and performance verification activities are presented, as well as actions to their promotion. The organization of this body of knowledge made use of structured literature reviews, case studies, rapid reviews, and surveys. Such investigation strategies enabled the generation of evidence-based results, which can support the software practitioners to improve their non-functional requirement verification practices and software researchers to identify research challenges in the area.