A model-based approach to support the systematic reuse and generation of safety artefacts in safety-critical software product line engineering

Software Product Line Engineering (SPLE) has been proven to reduce development and maintenance costs, improving the time-to-market, and increasing the quality of product variants developed from a product family via systematic reuse of its core assets. SPLE has been successfully used in the developme...

Full description

Bibliographic Details
Main Author: Oliveira, André Luiz de
Other Authors: Braga, Rosana Teresinha Vaccare
Format: Others
Language:en
Published: Biblioteca Digitais de Teses e Dissertações da USP 2016
Subjects:
Online Access:http://www.teses.usp.br/teses/disponiveis/55/55134/tde-22112016-161607/
Description
Summary:Software Product Line Engineering (SPLE) has been proven to reduce development and maintenance costs, improving the time-to-market, and increasing the quality of product variants developed from a product family via systematic reuse of its core assets. SPLE has been successfully used in the development of safety-critical systems, especially in automotive and aerospace domains. Safety-critical systems have to be developed according to safety standards, which demands safety analysis, Fault Tree Analysis (FTA), and assurance cases safety engineering artefacts. However, performing safety analysis, FTA, and assurance case construction activities from scratch and manually for each product variant is time-consuming and error-prone, whereas variability in safety engineering artefacts can be automatically managed with the support of variant management techniques. As safety is context-dependent, context and design variation directly impact in the safety properties changing hazards, their causes, the risks posed by these hazards to system safety, risk mitigation measures, and FTA results. Therefore, managing variability in safety artefacts from different levels of abstraction increases the complexity of the variability model, even with the support of variant management techniques. To achieve an effective balance between benefits and complexity in adopting an SPLE approach for safety-critical systems it is necessary to distinguish between reusable safety artefacts, whose variability should be managed, and those that should be generated from the reused safety artefacts. On the other hand, both industry and safety standards have recognized the use of model-based techniques to support safety analysis and assurance cases. Compositional safety analysis, design optimization, and model-based assurance cases are examples of techniques that have been used to support the generation of safety artefacts required to achieve safety certification. This thesis aims to propose a model-based approach that integrates model-based development, compositional safety analysis, and variant management techniques to support the systematic reuse and generation of safety artefacts in safety-critical software product line engineering. The approach contributes to reduce the effort and costs of performing safety analysis and assessment for a particular product variant, since such analysis is performed from the reused safety artefacts. Thus, variant-specific fault trees, Failure Modes and Effects Analysis (FMEA), and assurance case artefacts required to achieve safety certification can be automatically generated with the support the model-based safety analysis and assurance case construction techniques. === Engenharia de Linha de Produtos de Software (ELPS) contribui para a redução dos custos de desenvolvimento e de manutenção, a melhoria do time-to-market, e o aumento da qualidade de produtos desenvolvidos a partir de uma família de produtos por meio do reuso sistemático dos ativos principais da linha de produtos. A ELPS vem sendo utilizada com sucesso no desenvolvimento de sistemas embarcados críticos, especificamente nos domínios de sistemas automotivos e aeroespaciais. Sistemas embarcados críticos devem ser desenvolvidos de acordo com os requisitos definidos em padrões de segurança, que demandam a produção de artefatos de análise de segurança, árvores de falhas e casos de segurança. Entretanto, a realização de atividades de análise de segurança, análise de árvores de falhas e construção de casos de segurança de forma manual para cada produto de uma linha de produtos é uma tarefa demorada e propensa a erros. O gerenciamento de variabilidade em artefatos de análise de segurança pode ser automatizado com o apoio de técnicas de gerenciamento de variabilidades. Em virtude de safety ser uma propriedade dependente de contexto, a variabilidade no projeto e contexto inerente uma linha de produtos software impacta na definição de propriedades de segurança do sistema, modificando as ameaças à segurança do sistema, suas causas e riscos, medidas de mitigação aplicáveis, e resultados de análise de árvore de falhas. Dessa forma, gerenciar variabilidades em artefatos relacionados à safety em diferentes níveis de abstração aumenta a complexidade do modelo de variabilidade mesmo com o apoio de técnicas de gerenciamento de variabilidades. Para alcançar o equilíbrio eficaz entre os benefícios e a complexidade da adoção de uma abordagem de ELPS para o desenvolvimento de sistemas embarcados críticos é necessário fazer a distinção entre artefatos de safety reusáveis, em que a variabilidade deve ser gerenciada, e artefatos de safety que devem ser gerados a partir de artefatos reusáveis. Por outro lado, tanto a indústria quanto os padrões de segurança têm reconhecido o uso de técnicas dirigidas a modelos para apoiar a análise segurança e a construção de casos de segurança. Técnicas de análise de segurança composicional e otimização de projeto, e de construção de casos de segurança dirigido a modelos vêm sendo utilizadas para apoiar a geração de artefatos de safety requeridos para certificação. O objetivo desta tese é a proposta de uma abordagem dirigida a modelos que integra técnicas de desenvolvimento dirigido a modelos, análise de segurança composicional e otimização de projeto, e construção de casos de segurança dirigido a modelos para apoiar o reuso sistemático e a geração de artefatos de safety em engenharia de linhas de produtos de sistemas embarcados críticos. A abordagem proposta reduz o esforço e os custos de análise e avaliação de segurança para produtos de uma linha de produtos, uma vez que tal análise é realizada a partir de artefatos de safety reusados. Assim, artefatos como análises de árvores de falhas e de modos de falha e efeitos, e casos de segurança requeridos para certificação podem ser gerados automaticamente com o apoio de técnicas dirigidas a modelos.