English

CIn - Centro de Informática UFPE




Eventos Relacionados

Defesa de Tese de Doutorado Nº 362: "ASSESSING SECURITY IN SOFTWARE PRODUCT LINES: A MAINTENANCE ANALYSIS"

O aluno Paulo Anselmo da Mota Silveira Neto irá defender sua pesquisa no dia 2 de junho, às 8h, no Auditório Início: 02/06/2017 às 08:00 Término: 02/06/2017 às 00:00 Local: Auditório do CIn

Pós-Graduação em Ciência da Computação – UFPE
Defesa de Tese de Doutorado Nº 362


Aluno: Paulo Anselmo da Mota Silveira Neto
Orientador: Prof. Vinicius Cardoso Garcia
Co-orientador:  Prof. Eduardo Santana de Almeida (DCC/UFBA)
Título: ASSESSING SECURITY IN SOFTWARE PRODUCT LINES: A MAINTENANCE ANALYSIS
Data: 02/06/2017
Hora/Local: 8h – Centro de Informática - Auditório
Banca Examinadora:

Prof. Paulo Henrique Monteiro Borba (UFPE / Centro de Informática)
Prof. Nelson Souto Rosa  (UFPE / Centro de Informática)
Prof. Marco Tulio de Oliveira Valente (UFMG / Departamento de Ciência da Computação)
Prof. Uirá Kulesza (UFRN / Dep. Informática e Matemática Aplicada.)
Prof. Vander Ramos Alves (UnB / Departamento de Ciência da Computação.)

ABSTRACT:

Different terms such as "the real-time enterprise", "software infrastructures", "service oriented architectures" and "composite software applications" has gained importance in industry. It brings us the need of information systems that support cross-application integration, cross-company transactions and end-user access through a range of channels, including the internet. In this context, Software Product Line (SPL) Engineering have gained importance by product oriented companies, as a strategy to cope with the increasing demand of large-scale product customization, providing an effective and efficient ways of improving productivity, software quality and time-to- market. These benefits combined with the need of most applications interact with other applications and the internet access make critical assets vulnerable to many threats.
For most of the product oriented companies, security requirements are likely to be as varied as for any other quality. Thus it is important to supply variants of the same product to satisfy different needs. Owing to its variability management capabilities, software product line architectures have the ability to satisfy these requirements, if carefully designed the resulting system has a better chance of meeting its expectations. All these requirements should be achieved at early design phases, otherwise, the cost to design an secure architecture will increase, which could be worsen in SPL context, due to its complex nature.
Hence, in order to better support SPL architects during design decisions, a family of experiments using three different testbeds were performed to analyze different security techniques for the purpose of assessing conditional compilation and aspect-oriented programming as variability mechanisms with respect to size, separation of concerns, cohesion and coupling. We have found that most of techniques conditional compilation had a smaller amount of lines of code when compared with AOP. The separation of concerns attribute had low impact on maintainability when implemented with aspect oriented programming had better results. The analysis also showed that detect attack techniques are less costly than resist attack techniques.
The results are useful for both researchers and practitioners. On the one hand, researchers can identify useful research directions and get guidance on how the security techniques impact on maintainability. On the other hand, practitioners can benefit from this study by identifying the less costly variability implementation mechanism, as well as, learning concrete techniques to implement security tactics at code level.

Kaywords: Software Engineering; Software Security; Software Product Lines; Variability

Resumo:

Diferentes termos como “empresa em tempo real”, “infraestrutura de software”, “arquiteturas orientadas a serviço” e “aplicações de software” tem ganhado importância na indústria. Isso requer sistemas de informação que suportem a integração com outras aplicações, transações entre empresas e acesso ao usuário final por uma variedade de canais, incluindo internet. Nesse contexto, Linha de Produto de Software (LPS) tem ganhado importância por empresas orientadas a produtos de software, como uma estratégia para lidar com a crescente demanda de personalização de produtos em grande escala, proporcionando uma forma eficaz e eficiente de melhorar a produtividade, a qualidade do software e o tempo de lançamento para o mercado. Esses benefícios combinados com a necessidade da maioria dos aplicativos precisarem interagir com outras aplicações e o acesso à Internet tornam essas aplicações vulneráveis a muitas ameaças.Para a maioria das empresas orientadas à produto, os requisitos de segurança podem variar assim como outro atributo de qualidade do software. Assim, é importante fornecer variantes do mesmo produto para satisfazer diferentes necessidades. Devido às suas capacidades de gerenciamento de variabilidade, arquiteturas de linha de produtos têm a capacidade de satisfazer esses requisitos, se cuidadosamente projetada o sistema resultante terá uma melhor chance de satisfazer as expectativas. Todos esses requisitos devem ser alcançados nas primeiras fases do projeto, caso contrário, o custo para projetar uma arquitetura segura aumentará, o que poderia piorar no contexto SPL, devido à sua natureza complexa.Assim, para melhor apoiar os arquitetos durante as decisões de projeto. Uma família de experimentos utilizando três SPLs distintas foram utilizadas para analisar diferentes técnicas de segurança, implementadas usando compilação condicional (CC) e programação orientada a aspectos (AOP). Essa avaliação teve como objetivo analisar as técnicas e mecanismos em relação a: tamanho, “separation of concerns”, coesão e acoplamento. O resultado nos mostra que para a maioria das técnicas quando implementadas com compilação condicional apresentavam uma menor quantidade de código quando comparadas com AOP. O atributo de “separation of concerns” teve menor impacto na manutenção quando implementado com programação orientada a aspectos. A análise também mostrou que técnicas de detecção de ataque são menos onerosas do que técnicas para resistir a ataque.Os resultados são úteis para pesquisadores e profissionais. Por um lado, os pesquisadores podem identificar direções de pesquisa e obter orientação sobre como as técnicas de segurança impactam na manutenção. Por outro lado, os profissionais podem se beneficiar deste estudo, identificando o mecanismo de implementação da variabilidade menos dispendioso, bem como aprendendo técnicas concretas para implementar táticas de segurança a nível de código.

Palavra-Chave: Linha de produto de software, segurança de software, variabilidade, táticas de segurança, técnicas de segurança, compilação condicional e programação orientada a aspectos.
  • © Centro de Informática UFPE - Todos os direitos reservados
    Tel +55 81 2126.8430 - Cidade Universitária - 50740-560 - Recife/PE
Plano4 Consultoria Web