SlideShare uma empresa Scribd logo
1 de 61
Baixar para ler offline
Método para aplicação de modelos de
melhoria e avaliação do processo de
desenvolvimento de software em
sistemas críticos de segurança.
Eng. Christian Becker Bueno de Abreu
Prof. Dr. Paulo Sérgio Cugnasca
EP-USP
São Paulo 2008
Agenda
• Introdução, objetivo, motivação
• Segurança, sistemas críticos
• Qualidade de software
– Processo de Desenvolvimento x (Produto)
• Modelos de Desenvolvimento
– SOFTEX MPS.BR, (CMU/SEI CMMi-DEV)
• Extensão de Segurança
– ADD/DMO CMMi-DEV +SAFE x (FAA, RAMS)
• Modelo de Decisão por Múltiplos Critérios
– AHP
Agenda
• Descrição do método proposto
• Estudo de caso e resultados obtidos
• Conclusões
• Propostas de trabalhos futuros
Introdução
• Avanço em modelos de melhoria de
processos de desenvolvimento software;
• Avanço de tecnologia em aplicações de
segurança crítica;
• Uso comum de critérios e julgamentos
qualitativos e subjetivos;
• Ferramentas de auxílio à decisão.
Introdução
• Avanço em modelos de melhoria de
processos de desenvolvimento software;
• Avanço de tecnologia em aplicações de
segurança crítica;
• Uso comum de critérios e julgamentos
qualitativos e subjetivos;
• Ferramentas de auxílio à decisão.
Objetivo
O objetivo deste trabalho de
investigação científica é propor
um método para aplicação de
um modelo de melhoria e
avaliação do processo de
desenvolvimento de software
com extensão em aspectos de
segurança, para aplicação em
sistemas críticos, utilizando
como critério de priorização das
atividades prescritas nesse
modelo a experiência de
especialistas desta área.
Objetivo
O objetivo deste trabalho de
investigação científica é propor
um método para aplicação de
um modelo de melhoria e
avaliação do processo de
desenvolvimento de software
com extensão em aspectos de
segurança, para aplicação em
sistemas críticos, utilizando
como critério de priorização das
atividades prescritas nesse
modelo a experiência de
especialistas desta área.
Motivação/Justificativa
• Emprego intensivo de software para a
realização de funções de segurança.
• Desafios práticos encontrados nos
projetos de sistemas críticos.
• Produção acadêmico-científica, no
seu estado atual da arte.
Modernização
Segurança
• Functional Safety – IEC 61508
– ausência de risco inaceitável
• dano físico, ou à saúde de pessoas
• dano ao patrimônio ou ao meio ambiente
• RAMS – CENELEC 50126
– nenhum sistema é absolutamente seguro
– projetar um sistema de forma a atender ao
nível de segurança apropriado.
Segurança
• Functional Safety – IEC 61508
– ausência de risco inaceitável
• dano físico, ou à saúde de pessoas
• dano ao patrimônio ou ao meio ambiente
• RAMS – CENELEC 50126
– nenhum sistema é absolutamente seguro
– projetar um sistema de forma a atender ao
nível de segurança apropriado.
Segurança
• A determinação de um
nível de segurança apropriado:
envolve opiniões e julgamentos pessoais;
é afetada por fatores emocionais.
(STOREY, 1996)
Segurança de Sistema
• probabilidade do sistema
– efetuar suas operações de forma correta, ou
– descontinuar seu funcionamento de forma a
não comprometer a operação de outros
sistemas ou comprometer a segurança
(JOHNSON, 1989)
Aplicações Ferroviárias
Software
• componentes ou arranjos com
modos de falha conhecidos.
• maior complexidade
microprocessadores
não comprometer a segurança do
processo controlado em caso de falhas.
Software
• componentes ou arranjos com
modos de falha conhecidos.
• maior complexidade
microprocessadores
levantamento de modos de falha proibitivo
possibilidade de prever efeitos inseguros?
Qualidade
Qualidade é a totalidade das
características de um produto ou serviço
que se baseia na sua habilidade de
satisfazer uma dada necessidade.
(GUSTAFSON 2003)
Qualidade
• Qualidade dos Processos
– NBR ISO 9000-3
– ISO/IEC 12207, ISO/IEC 15504
– CMU/SEI CMMi-DEV, FAA iCMM
– MR-MPS, MA-MPS
• Qualidade dos Produtos
– ISO/IEC 9126-1
– Fatores e sub-fatores comuns aos modelos de
qualidade e segurança
(PÁSCOA, 2002)
Processo x Produto
• Processo de Software: seqüência de etapas
executadas para realizar um determinado
objetivo e que envolve métodos, ferramentas e
pessoas.
(HUMPHREY, 1989)
• Produto de software: conjunto completo de
programas de computador, procedimentos e
documentação correlata, assim como dados
designados para entrega a um usuário;
(ISO/IEC 90003)
Modelo de Processo
• Modelo de processo de software:
descreve os processos realizados para
atingir o desenvolvimento de software.
Pode ser utilizado para descrever o
processo padrão de desenvolvimento de
software (prescritivo).
(GUSTAFSON, 2003)
MR-MPS
• Coordenação:
• Apoio:
MR-MPS
• MR-MPS rev. 1.2
– Compatível com SEI/CMU CMMI-DEV
– Aderente às normas:
• ISO/IEC 12207 “Information Technology - Software Life Cycle
Processes”; e
• ISO/IEC 15504 “Information Technology - Process Assessment”
Maturidade MR-MPS
• Representação
“em estágios”
• Cada nível de Maturidade
possui um conjunto de
Áreas de Processo
• Os Atributos do Processo
definidos para cada nível
devem ser aplicados às
Áreas de Processo dos
níveis inferiores.
Maturidade CMMI
• CMMI-DEV “staged”
Capacidade CMMI
• CMMI-DEV “continuos”
Capacidade MR-MPS
• Representação
“contínua”
• Áreas de Processo
escolhidas livremente
• Os níveis de capacidade são definidos para
cada Área de Processo através do atendimento
aos Atributos de Processo esperados.
Níveis de Capacidade
• Os níveis de capacidade são definidos para
cada Área de Processo através do atendimento
aos Atributos de Processo esperados.
Extensão CMMI
• CMMI-DEV
– Segurança não é mencionada nos componentes
necessários ou esperados, apenas poucas vezes em
componentes informativos do CMMI
– As atividades relacionadas à segurança podem ser
inseridas no modelo CMMI (ex. IPPD)
• Extensões de Segurança CMMI
– FAA Safety and Security extensions for iCMM
– RAMS/CENELEC 50128 (FONSECA, 2005)
– ADD/DMO CMMI-DEV +SAFE
CMMI-DEV +SAFE
• Duas Áreas de Processo
– Engenharia de Segurança
– Gerenciamento de Segurança
• Definidas em níveis de capacidade
– Representação “contínua”
(metas genéricas ou atributos do processo)
+SAFE em níveis
• S0 - Projeto não classificado como segurança.
+SAFE em níveis
• S1 - Projeto classificado como de segurança,
porém não há ameaça identificada.
Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3
Monitorar incidentes de segurança.SG2 / GSEG 2
Desenvolver planos de segurança.SG1 / GSEG 1
Viabilizar aceitação de segurança.SG5 / ESEG 5
Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
+SAFE em níveis
• S2 - Projeto classificado como de segurança,
porém todas as ameaças são aceitáveis.
Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3
Monitorar incidentes de segurança.SG2 / GSEG 2
Desenvolver planos de segurança.SG1 / GSEG 1
Viabilizar aceitação de segurança.SG5 / ESEG 5
Analisar ameaças e realizar análise de riscos.SG2 / ESEG 2
Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
+SAFE em níveis
• S3 - Projeto classificado como de segurança,
e inclui ameaças não aceitáveis.
Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3
Monitorar incidentes de segurança.SG2 / GSEG 2
Desenvolver planos de segurança.SG1 / GSEG 1
Viabilizar aceitação de segurança.SG5 / ESEG 5
Projeto voltado à segurança.SG4 / ESEG 4
Definir e manter requisitos de segurança.SG3 / ESEG 3
Analisar ameaças e realizar análise de riscos.SG2 / ESEG 2
Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
MDMC
(método de decisão por múltiplos critérios)
• Estabelecer o domínio do problema
– A necessidade ou objetivo de obter decisões
• Relacionar um conjunto de alternativas
– Possíveis soluções para o problema
• Escolher critérios de decisão
– Relevantes para o objetivo
– Pelos quais as alternativas serão avaliadas
AHP
(Método de Análise Hierárquica)
• Campo de aplicação variado
– Pesquisa aponta para 150+ artigos publicados nas áreas social,
pessoal, política, educação, fabricação, engenharia, industrial e
governamental.
(VAIDYA; KUMAR, 2004)
• Aplicação em planejamento, alocação de recursos e
solução de conflitos.
(SAATY, 2006)
• Exemplos (Eng. de Software):
– Melhorar a precisão de estimativas subjetivas realizadas por
especialistas em estágio inicial de desenvolvimento;
– Seleção de ferramenta de projeto de software COTS com base
em critérios baseados em características oferecidas pela maior
parte das soluções.
AHP - Decomposição do Problema
AHP - Métricas e Escalas
Método Proposto
Estudo de Caso
Método Proposto
Definir Escalas
Preparação para o AHP
Definir
Áreas de Processo
MR-MPS
+SAFE
Definir Objetivo
Definir Critérios
Obter Julgamento
dos Especialistas
Aplicar o AHP
Elaborar Hierarquia
Prioridades
Perfil de Capacidade
Desejado
Questionário
Áreas de Processo
• GSEG Gerenciamento de Segurança (+SAFE);
• AQU Aquisição (nível F);
• GQA Garantia da Qualidade (nível F); e
• GPR Gerenciamento de Projetos (nível G).
• ESEG Engenharia de Segurança (+SAFE);
• DRE Desenvolvimento de Requisitos (nível D);
• ITP Integração de Produto (nível D);
• PCP Projeto e Construção do Produto (nível D);
• VAL Validação (nível D); e
• VER Verificação (nível D).
Preparação para o AHP
Definir Escalas
Definir
Áreas de Processo
MR-MPS
+SAFE
Definir Objetivo
Definir Critérios
Obter Julgamento
dos Especialistas
Aplicar o AHP
Elaborar Hierarquia
Prioridades
Perfil de Capacidade
Desejado
Questionário
Método Proposto
Preparação AHP
(objetivo, critério, escala, hierarquia)
Preparação AHP
(objetivo, critério, escala, hierarquia)
Preparação AHP
Preparação AHP
Método Proposto
Definir Escalas
Preparação para o AHP
Definir
Áreas de Processo
MR-MPS
+SAFE
Definir Objetivo
Definir Critérios
Obter Julgamento
dos Especialistas
Aplicar o AHP
Elaborar Hierarquia
Prioridades
Perfil de Capacidade
Desejado
Questionário
Questionário
Matricial
Questionário
Julgamentos
Método Proposto
Definir Escalas
Preparação para o AHP
Definir
Áreas de Processo
MR-MPS
+SAFE
Definir Objetivo
Definir Critérios
Obter Julgamento
dos Especialistas
Aplicar o AHP
Elaborar Hierarquia
Prioridades
Perfil de Capacidade
Desejado
Questionário
Aplicar AHP
Método Proposto
Definir Escalas
Preparação para o AHP
Definir
Áreas de Processo
MR-MPS
+SAFE
Definir Objetivo
Definir Critérios
Obter Julgamento
dos Especialistas
Aplicar o AHP
Elaborar Hierarquia
Prioridades
Perfil de Capacidade
Desejado
Questionário
Método Proposto
• Obtenção matemática de um perfil de capacidade a
partir do vetor prioridades resultante do uso do método
AHP.
– Estipular um valor de ajuste k arbitrário, que pode ser
manipulado livremente, e é proporcional ao nível de esforço ou à
expectativa de melhoria de processos na organização
– Multiplicar o vetor de prioridades pelo valor de ajuste k e
arredondar para números inteiros compreendidos entre 0 e 5,
correspondentes aos níveis de capacidade das Áreas de
Processo
Método Proposto
Método Proposto
Perfil de Capacidade 1
• AQU Aquisição (nível F);
• DRE Desenvolvimento de Requisitos (nível D);
• ESEG Engenharia de Segurança (+SAFE);
• GQA Garantia da Qualidade (nível F);
• GSEG Gerenciamento de Segurança (+SAFE);
• GPR Gerenciamento de Projetos (nível G);
• ITP Integração de Produto (nível D);
• PCP Projeto e Construção do Produto (nível D);
• VAL Validação (nível D); e
• VER Verificação (nível D)
• Valor de k=20
• Perfil de capacidade atual – não verificado
• 5 Otimizados
• 4 Quantitativamente Gerenciados
• 3 Institucionalizados
• 2 Gerenciados
• 1 Executados ao acaso (ad hoc)
• 0 Incompletos
• AQU Aquisição (nível F);
• DRE Desenvolvimento de Requisitos (nível D);
• ESEG Engenharia de Segurança (+SAFE);
• GQA Garantia da Qualidade (nível F);
• GSEG Gerenciamento de Segurança (+SAFE);
• GPR Gerenciamento de Projetos (nível G);
• ITP Integração de Produto (nível D);
• PCP Projeto e Construção do Produto (nível D);
• VAL Validação (nível D); e
• VER Verificação (nível D)
• Valor de k=35
• Perfil de capacidade atual – MR-MPS F
Perfil de Capacidade 2
• 5 Otimizados
• 4 Quantitativamente Gerenciados
• 3 Institucionalizados
• 2 Gerenciados
• 1 Executados ao acaso (ad hoc)
• 0 Incompletos
• AQU Aquisição (nível F);
• DRE Desenvolvimento de Requisitos (nível D);
• ESEG Engenharia de Segurança (+SAFE);
• GQA Garantia da Qualidade (nível F);
• GSEG Gerenciamento de Segurança (+SAFE);
• GPR Gerenciamento de Projetos (nível G);
• ITP Integração de Produto (nível D);
• PCP Projeto e Construção do Produto (nível D);
• VAL Validação (nível D); e
• VER Verificação (nível D)
• Valor de k=60
• Perfil de capacidade atual – MR-MPS C
Perfil de Capacidade 3
• 5 Otimizados
• 4 Quantitativamente Gerenciados
• 3 Institucionalizados
• 2 Gerenciados
• 1 Executados ao acaso (ad hoc)
• 0 Incompletos
Conclusões
– Abordagem da qualidade de software para obtenção
de produtos adequados à segurança de sistemas;
– Solução de problemas complexos e de natureza
qualitativa com ferramenta de auxílio à decisão;
– Síntese e registro de opiniões de especialistas
através de julgamentos qualitativos.
– Possibilidade de aplicação do método em diversos
estágios de maturidade das organizações;
– Avaliação e melhoria dos processos de
desenvolvimento de software prioritários;
Trabalhos Futuros
– Análise de sensibilidade de opiniões;
– Obtenção e discussão de resultados de julgamentos
por especialistas:
• Em diferentes áreas de aplicação dos sistemas críticos;
• Com experiência prática e acadêmica diversa.
– Aplicação da lógica nebulosa (fuzzy) para obtenção
mais precisa de opiniões;
– Construir matriz de custo x benefício;
– Prescrição do valor de ajuste k;
– A aplicação deste método em outras áreas de
desenvolvimento de software para uso da
representação “contínua” do CMMI / MR-MPS;
Método para aplicação de modelos de
melhoria e avaliação do processo de
desenvolvimento de software em
sistemas críticos de segurança.
Eng. Christian Becker Bueno de Abreu
Prof. Dr. Paulo Sérgio Cugnasca
EP-USP
São Paulo 2008

Mais conteúdo relacionado

Mais procurados

Gerenciamento da Qualidade
Gerenciamento da QualidadeGerenciamento da Qualidade
Gerenciamento da QualidadeMarcelo Yamaguti
 
Gerenciamento da Qualidade de Software 5.pptx
Gerenciamento da Qualidade de Software 5.pptxGerenciamento da Qualidade de Software 5.pptx
Gerenciamento da Qualidade de Software 5.pptxRoberto Nunes
 
Gerenciamento de Riscos: uma abordagem prática
Gerenciamento de Riscos: uma abordagem práticaGerenciamento de Riscos: uma abordagem prática
Gerenciamento de Riscos: uma abordagem práticaelliando dias
 
Palestra sobre Gestão de Riscos
Palestra sobre Gestão de RiscosPalestra sobre Gestão de Riscos
Palestra sobre Gestão de RiscosGLM Consultoria
 
Uniinfo2010 introdução teste de software - priscila coelho blauth2
Uniinfo2010 introdução teste de software - priscila coelho blauth2Uniinfo2010 introdução teste de software - priscila coelho blauth2
Uniinfo2010 introdução teste de software - priscila coelho blauth2Priscila Coelho S. Blauth
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de softwareJoao Johanes
 
Apresentação Gerência de Riscos (PMBOK)
Apresentação Gerência de Riscos (PMBOK)Apresentação Gerência de Riscos (PMBOK)
Apresentação Gerência de Riscos (PMBOK)geraldoao
 
Gerenciamento de risco - Parte2
Gerenciamento de risco - Parte2Gerenciamento de risco - Parte2
Gerenciamento de risco - Parte2Elaine Koda
 
Gerenciamento de projetos aula 13 (riscos)
Gerenciamento de projetos   aula 13 (riscos)Gerenciamento de projetos   aula 13 (riscos)
Gerenciamento de projetos aula 13 (riscos)Paulo Junior
 
Gerenciamento Riscos Senai 2
Gerenciamento Riscos Senai 2Gerenciamento Riscos Senai 2
Gerenciamento Riscos Senai 2robsonnasc
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Erivelton Silva Rocha
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de softwareLeonardo Melo Santos
 
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejarGUTS-RS
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de SoftwareLeinylson Fontinele
 
Aula10 TEES UFS Analise e Gestao do Risco
Aula10  TEES  UFS   Analise e Gestao do RiscoAula10  TEES  UFS   Analise e Gestao do Risco
Aula10 TEES UFS Analise e Gestao do Riscoguest8ae21d
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de softwareRondinelli Mesquita
 

Mais procurados (20)

CNASI 2015 - Desenvolvimento Seguro
CNASI 2015 - Desenvolvimento SeguroCNASI 2015 - Desenvolvimento Seguro
CNASI 2015 - Desenvolvimento Seguro
 
Gerenciamento da Qualidade
Gerenciamento da QualidadeGerenciamento da Qualidade
Gerenciamento da Qualidade
 
Plano de gerenciamento de riscos de obras
Plano de gerenciamento de riscos de obrasPlano de gerenciamento de riscos de obras
Plano de gerenciamento de riscos de obras
 
Gerenciamento da Qualidade de Software 5.pptx
Gerenciamento da Qualidade de Software 5.pptxGerenciamento da Qualidade de Software 5.pptx
Gerenciamento da Qualidade de Software 5.pptx
 
Gerenciamento de Riscos: uma abordagem prática
Gerenciamento de Riscos: uma abordagem práticaGerenciamento de Riscos: uma abordagem prática
Gerenciamento de Riscos: uma abordagem prática
 
Palestra sobre Gestão de Riscos
Palestra sobre Gestão de RiscosPalestra sobre Gestão de Riscos
Palestra sobre Gestão de Riscos
 
Fundamentos de Testes de Software - Qualidad
Fundamentos de Testes de Software - QualidadFundamentos de Testes de Software - Qualidad
Fundamentos de Testes de Software - Qualidad
 
Uniinfo2010 introdução teste de software - priscila coelho blauth2
Uniinfo2010 introdução teste de software - priscila coelho blauth2Uniinfo2010 introdução teste de software - priscila coelho blauth2
Uniinfo2010 introdução teste de software - priscila coelho blauth2
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Apresentação Gerência de Riscos (PMBOK)
Apresentação Gerência de Riscos (PMBOK)Apresentação Gerência de Riscos (PMBOK)
Apresentação Gerência de Riscos (PMBOK)
 
Aula 6 - Qualidade de Software
Aula 6 - Qualidade de SoftwareAula 6 - Qualidade de Software
Aula 6 - Qualidade de Software
 
Gerenciamento de risco - Parte2
Gerenciamento de risco - Parte2Gerenciamento de risco - Parte2
Gerenciamento de risco - Parte2
 
Gerenciamento de projetos aula 13 (riscos)
Gerenciamento de projetos   aula 13 (riscos)Gerenciamento de projetos   aula 13 (riscos)
Gerenciamento de projetos aula 13 (riscos)
 
Gerenciamento Riscos Senai 2
Gerenciamento Riscos Senai 2Gerenciamento Riscos Senai 2
Gerenciamento Riscos Senai 2
 
Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1Aula 03 de engenharia de software uespi 2011-1
Aula 03 de engenharia de software uespi 2011-1
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de software
 
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar [GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
[GUTS-RS] - Testes de Segurança: O que preciso saber para planejar
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 
Aula10 TEES UFS Analise e Gestao do Risco
Aula10  TEES  UFS   Analise e Gestao do RiscoAula10  TEES  UFS   Analise e Gestao do Risco
Aula10 TEES UFS Analise e Gestao do Risco
 
Validação e Testes de software
Validação e Testes de softwareValidação e Testes de software
Validação e Testes de software
 

Semelhante a Aplicação de modelo de melhoria de processo para sistemas críticos

Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...
Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...
Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...SegInfo
 
[CLASS 2014] Palestra Técnica - Cesar Oliveira
[CLASS 2014] Palestra Técnica - Cesar Oliveira[CLASS 2014] Palestra Técnica - Cesar Oliveira
[CLASS 2014] Palestra Técnica - Cesar OliveiraTI Safe
 
CLASS 2016 - Palestra Renato Mendes
CLASS 2016 - Palestra Renato Mendes CLASS 2016 - Palestra Renato Mendes
CLASS 2016 - Palestra Renato Mendes TI Safe
 
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixApresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixCris Fidelix
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixCris Fidelix
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelFernando Pontes
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidaderzauza
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
aula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxaula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxMarcondesTiburcio
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Elaine Cecília Gatto
 
Desenvolvimento de software – novas abordagens e desafios - Marlon Gaspar
Desenvolvimento de software – novas abordagens e desafios - Marlon GasparDesenvolvimento de software – novas abordagens e desafios - Marlon Gaspar
Desenvolvimento de software – novas abordagens e desafios - Marlon GasparRio Info
 
Qualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSIQualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSIMonnalisa Medeiros
 

Semelhante a Aplicação de modelo de melhoria de processo para sistemas críticos (20)

Segurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwaresSegurança nos ciclos de desenvolvimento de softwares
Segurança nos ciclos de desenvolvimento de softwares
 
Segurança em Desenvolvimento de Software
Segurança em Desenvolvimento de SoftwareSegurança em Desenvolvimento de Software
Segurança em Desenvolvimento de Software
 
Aula 02
Aula 02Aula 02
Aula 02
 
Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...
Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...
Utilizando padroes abertos para coleta de informacoes e assessment em ativos ...
 
[CLASS 2014] Palestra Técnica - Cesar Oliveira
[CLASS 2014] Palestra Técnica - Cesar Oliveira[CLASS 2014] Palestra Técnica - Cesar Oliveira
[CLASS 2014] Palestra Técnica - Cesar Oliveira
 
Aula2 processos sw
Aula2 processos swAula2 processos sw
Aula2 processos sw
 
Introdução ao RUP
Introdução ao RUPIntrodução ao RUP
Introdução ao RUP
 
PCI DSS e Metodologias Ágeis
PCI DSS e Metodologias ÁgeisPCI DSS e Metodologias Ágeis
PCI DSS e Metodologias Ágeis
 
CLASS 2016 - Palestra Renato Mendes
CLASS 2016 - Palestra Renato Mendes CLASS 2016 - Palestra Renato Mendes
CLASS 2016 - Palestra Renato Mendes
 
Entendendo o Ciclo de Desenvolvimento Seguro
Entendendo o Ciclo de Desenvolvimento SeguroEntendendo o Ciclo de Desenvolvimento Seguro
Entendendo o Ciclo de Desenvolvimento Seguro
 
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane FidelixApresentação de Engenharia de software I - Prof. Cristiane Fidelix
Apresentação de Engenharia de software I - Prof. Cristiane Fidelix
 
Dss 3
Dss 3Dss 3
Dss 3
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
 
Engenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentávelEngenharia de Software: A ponte para um código sustentável
Engenharia de Software: A ponte para um código sustentável
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
aula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptxaula projeto e des sistemas 22 03 2021.pptx
aula projeto e des sistemas 22 03 2021.pptx
 
Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1Modelos de Processo de Software Parte 1
Modelos de Processo de Software Parte 1
 
Desenvolvimento de software – novas abordagens e desafios - Marlon Gaspar
Desenvolvimento de software – novas abordagens e desafios - Marlon GasparDesenvolvimento de software – novas abordagens e desafios - Marlon Gaspar
Desenvolvimento de software – novas abordagens e desafios - Marlon Gaspar
 
Qualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSIQualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSI
 

Aplicação de modelo de melhoria de processo para sistemas críticos

  • 1. Método para aplicação de modelos de melhoria e avaliação do processo de desenvolvimento de software em sistemas críticos de segurança. Eng. Christian Becker Bueno de Abreu Prof. Dr. Paulo Sérgio Cugnasca EP-USP São Paulo 2008
  • 2. Agenda • Introdução, objetivo, motivação • Segurança, sistemas críticos • Qualidade de software – Processo de Desenvolvimento x (Produto) • Modelos de Desenvolvimento – SOFTEX MPS.BR, (CMU/SEI CMMi-DEV) • Extensão de Segurança – ADD/DMO CMMi-DEV +SAFE x (FAA, RAMS) • Modelo de Decisão por Múltiplos Critérios – AHP
  • 3. Agenda • Descrição do método proposto • Estudo de caso e resultados obtidos • Conclusões • Propostas de trabalhos futuros
  • 4. Introdução • Avanço em modelos de melhoria de processos de desenvolvimento software; • Avanço de tecnologia em aplicações de segurança crítica; • Uso comum de critérios e julgamentos qualitativos e subjetivos; • Ferramentas de auxílio à decisão.
  • 5. Introdução • Avanço em modelos de melhoria de processos de desenvolvimento software; • Avanço de tecnologia em aplicações de segurança crítica; • Uso comum de critérios e julgamentos qualitativos e subjetivos; • Ferramentas de auxílio à decisão.
  • 6. Objetivo O objetivo deste trabalho de investigação científica é propor um método para aplicação de um modelo de melhoria e avaliação do processo de desenvolvimento de software com extensão em aspectos de segurança, para aplicação em sistemas críticos, utilizando como critério de priorização das atividades prescritas nesse modelo a experiência de especialistas desta área.
  • 7. Objetivo O objetivo deste trabalho de investigação científica é propor um método para aplicação de um modelo de melhoria e avaliação do processo de desenvolvimento de software com extensão em aspectos de segurança, para aplicação em sistemas críticos, utilizando como critério de priorização das atividades prescritas nesse modelo a experiência de especialistas desta área.
  • 8. Motivação/Justificativa • Emprego intensivo de software para a realização de funções de segurança. • Desafios práticos encontrados nos projetos de sistemas críticos. • Produção acadêmico-científica, no seu estado atual da arte. Modernização
  • 9. Segurança • Functional Safety – IEC 61508 – ausência de risco inaceitável • dano físico, ou à saúde de pessoas • dano ao patrimônio ou ao meio ambiente • RAMS – CENELEC 50126 – nenhum sistema é absolutamente seguro – projetar um sistema de forma a atender ao nível de segurança apropriado.
  • 10. Segurança • Functional Safety – IEC 61508 – ausência de risco inaceitável • dano físico, ou à saúde de pessoas • dano ao patrimônio ou ao meio ambiente • RAMS – CENELEC 50126 – nenhum sistema é absolutamente seguro – projetar um sistema de forma a atender ao nível de segurança apropriado.
  • 11. Segurança • A determinação de um nível de segurança apropriado: envolve opiniões e julgamentos pessoais; é afetada por fatores emocionais. (STOREY, 1996)
  • 12. Segurança de Sistema • probabilidade do sistema – efetuar suas operações de forma correta, ou – descontinuar seu funcionamento de forma a não comprometer a operação de outros sistemas ou comprometer a segurança (JOHNSON, 1989)
  • 14. Software • componentes ou arranjos com modos de falha conhecidos. • maior complexidade microprocessadores não comprometer a segurança do processo controlado em caso de falhas.
  • 15. Software • componentes ou arranjos com modos de falha conhecidos. • maior complexidade microprocessadores levantamento de modos de falha proibitivo possibilidade de prever efeitos inseguros?
  • 16. Qualidade Qualidade é a totalidade das características de um produto ou serviço que se baseia na sua habilidade de satisfazer uma dada necessidade. (GUSTAFSON 2003)
  • 17. Qualidade • Qualidade dos Processos – NBR ISO 9000-3 – ISO/IEC 12207, ISO/IEC 15504 – CMU/SEI CMMi-DEV, FAA iCMM – MR-MPS, MA-MPS • Qualidade dos Produtos – ISO/IEC 9126-1 – Fatores e sub-fatores comuns aos modelos de qualidade e segurança (PÁSCOA, 2002)
  • 18. Processo x Produto • Processo de Software: seqüência de etapas executadas para realizar um determinado objetivo e que envolve métodos, ferramentas e pessoas. (HUMPHREY, 1989) • Produto de software: conjunto completo de programas de computador, procedimentos e documentação correlata, assim como dados designados para entrega a um usuário; (ISO/IEC 90003)
  • 19. Modelo de Processo • Modelo de processo de software: descreve os processos realizados para atingir o desenvolvimento de software. Pode ser utilizado para descrever o processo padrão de desenvolvimento de software (prescritivo). (GUSTAFSON, 2003)
  • 21. MR-MPS • MR-MPS rev. 1.2 – Compatível com SEI/CMU CMMI-DEV – Aderente às normas: • ISO/IEC 12207 “Information Technology - Software Life Cycle Processes”; e • ISO/IEC 15504 “Information Technology - Process Assessment”
  • 22. Maturidade MR-MPS • Representação “em estágios” • Cada nível de Maturidade possui um conjunto de Áreas de Processo • Os Atributos do Processo definidos para cada nível devem ser aplicados às Áreas de Processo dos níveis inferiores.
  • 24. Capacidade CMMI • CMMI-DEV “continuos”
  • 25. Capacidade MR-MPS • Representação “contínua” • Áreas de Processo escolhidas livremente • Os níveis de capacidade são definidos para cada Área de Processo através do atendimento aos Atributos de Processo esperados.
  • 26. Níveis de Capacidade • Os níveis de capacidade são definidos para cada Área de Processo através do atendimento aos Atributos de Processo esperados.
  • 27. Extensão CMMI • CMMI-DEV – Segurança não é mencionada nos componentes necessários ou esperados, apenas poucas vezes em componentes informativos do CMMI – As atividades relacionadas à segurança podem ser inseridas no modelo CMMI (ex. IPPD) • Extensões de Segurança CMMI – FAA Safety and Security extensions for iCMM – RAMS/CENELEC 50128 (FONSECA, 2005) – ADD/DMO CMMI-DEV +SAFE
  • 28. CMMI-DEV +SAFE • Duas Áreas de Processo – Engenharia de Segurança – Gerenciamento de Segurança • Definidas em níveis de capacidade – Representação “contínua” (metas genéricas ou atributos do processo)
  • 29. +SAFE em níveis • S0 - Projeto não classificado como segurança.
  • 30. +SAFE em níveis • S1 - Projeto classificado como de segurança, porém não há ameaça identificada. Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3 Monitorar incidentes de segurança.SG2 / GSEG 2 Desenvolver planos de segurança.SG1 / GSEG 1 Viabilizar aceitação de segurança.SG5 / ESEG 5 Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
  • 31. +SAFE em níveis • S2 - Projeto classificado como de segurança, porém todas as ameaças são aceitáveis. Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3 Monitorar incidentes de segurança.SG2 / GSEG 2 Desenvolver planos de segurança.SG1 / GSEG 1 Viabilizar aceitação de segurança.SG5 / ESEG 5 Analisar ameaças e realizar análise de riscos.SG2 / ESEG 2 Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
  • 32. +SAFE em níveis • S3 - Projeto classificado como de segurança, e inclui ameaças não aceitáveis. Gerenciar fornecedores relacionados à segurança.SG3 / GSEG 3 Monitorar incidentes de segurança.SG2 / GSEG 2 Desenvolver planos de segurança.SG1 / GSEG 1 Viabilizar aceitação de segurança.SG5 / ESEG 5 Projeto voltado à segurança.SG4 / ESEG 4 Definir e manter requisitos de segurança.SG3 / ESEG 3 Analisar ameaças e realizar análise de riscos.SG2 / ESEG 2 Identificar ameaças, acidentes e fontes de ameaças.SG1 / ESEG 1
  • 33. MDMC (método de decisão por múltiplos critérios) • Estabelecer o domínio do problema – A necessidade ou objetivo de obter decisões • Relacionar um conjunto de alternativas – Possíveis soluções para o problema • Escolher critérios de decisão – Relevantes para o objetivo – Pelos quais as alternativas serão avaliadas
  • 34. AHP (Método de Análise Hierárquica) • Campo de aplicação variado – Pesquisa aponta para 150+ artigos publicados nas áreas social, pessoal, política, educação, fabricação, engenharia, industrial e governamental. (VAIDYA; KUMAR, 2004) • Aplicação em planejamento, alocação de recursos e solução de conflitos. (SAATY, 2006) • Exemplos (Eng. de Software): – Melhorar a precisão de estimativas subjetivas realizadas por especialistas em estágio inicial de desenvolvimento; – Seleção de ferramenta de projeto de software COTS com base em critérios baseados em características oferecidas pela maior parte das soluções.
  • 35. AHP - Decomposição do Problema
  • 36. AHP - Métricas e Escalas
  • 38. Método Proposto Definir Escalas Preparação para o AHP Definir Áreas de Processo MR-MPS +SAFE Definir Objetivo Definir Critérios Obter Julgamento dos Especialistas Aplicar o AHP Elaborar Hierarquia Prioridades Perfil de Capacidade Desejado Questionário
  • 39. Áreas de Processo • GSEG Gerenciamento de Segurança (+SAFE); • AQU Aquisição (nível F); • GQA Garantia da Qualidade (nível F); e • GPR Gerenciamento de Projetos (nível G). • ESEG Engenharia de Segurança (+SAFE); • DRE Desenvolvimento de Requisitos (nível D); • ITP Integração de Produto (nível D); • PCP Projeto e Construção do Produto (nível D); • VAL Validação (nível D); e • VER Verificação (nível D).
  • 40. Preparação para o AHP Definir Escalas Definir Áreas de Processo MR-MPS +SAFE Definir Objetivo Definir Critérios Obter Julgamento dos Especialistas Aplicar o AHP Elaborar Hierarquia Prioridades Perfil de Capacidade Desejado Questionário Método Proposto
  • 45. Método Proposto Definir Escalas Preparação para o AHP Definir Áreas de Processo MR-MPS +SAFE Definir Objetivo Definir Critérios Obter Julgamento dos Especialistas Aplicar o AHP Elaborar Hierarquia Prioridades Perfil de Capacidade Desejado Questionário
  • 50. Método Proposto Definir Escalas Preparação para o AHP Definir Áreas de Processo MR-MPS +SAFE Definir Objetivo Definir Critérios Obter Julgamento dos Especialistas Aplicar o AHP Elaborar Hierarquia Prioridades Perfil de Capacidade Desejado Questionário
  • 52. Método Proposto Definir Escalas Preparação para o AHP Definir Áreas de Processo MR-MPS +SAFE Definir Objetivo Definir Critérios Obter Julgamento dos Especialistas Aplicar o AHP Elaborar Hierarquia Prioridades Perfil de Capacidade Desejado Questionário
  • 53. Método Proposto • Obtenção matemática de um perfil de capacidade a partir do vetor prioridades resultante do uso do método AHP. – Estipular um valor de ajuste k arbitrário, que pode ser manipulado livremente, e é proporcional ao nível de esforço ou à expectativa de melhoria de processos na organização – Multiplicar o vetor de prioridades pelo valor de ajuste k e arredondar para números inteiros compreendidos entre 0 e 5, correspondentes aos níveis de capacidade das Áreas de Processo
  • 56. Perfil de Capacidade 1 • AQU Aquisição (nível F); • DRE Desenvolvimento de Requisitos (nível D); • ESEG Engenharia de Segurança (+SAFE); • GQA Garantia da Qualidade (nível F); • GSEG Gerenciamento de Segurança (+SAFE); • GPR Gerenciamento de Projetos (nível G); • ITP Integração de Produto (nível D); • PCP Projeto e Construção do Produto (nível D); • VAL Validação (nível D); e • VER Verificação (nível D) • Valor de k=20 • Perfil de capacidade atual – não verificado • 5 Otimizados • 4 Quantitativamente Gerenciados • 3 Institucionalizados • 2 Gerenciados • 1 Executados ao acaso (ad hoc) • 0 Incompletos
  • 57. • AQU Aquisição (nível F); • DRE Desenvolvimento de Requisitos (nível D); • ESEG Engenharia de Segurança (+SAFE); • GQA Garantia da Qualidade (nível F); • GSEG Gerenciamento de Segurança (+SAFE); • GPR Gerenciamento de Projetos (nível G); • ITP Integração de Produto (nível D); • PCP Projeto e Construção do Produto (nível D); • VAL Validação (nível D); e • VER Verificação (nível D) • Valor de k=35 • Perfil de capacidade atual – MR-MPS F Perfil de Capacidade 2 • 5 Otimizados • 4 Quantitativamente Gerenciados • 3 Institucionalizados • 2 Gerenciados • 1 Executados ao acaso (ad hoc) • 0 Incompletos
  • 58. • AQU Aquisição (nível F); • DRE Desenvolvimento de Requisitos (nível D); • ESEG Engenharia de Segurança (+SAFE); • GQA Garantia da Qualidade (nível F); • GSEG Gerenciamento de Segurança (+SAFE); • GPR Gerenciamento de Projetos (nível G); • ITP Integração de Produto (nível D); • PCP Projeto e Construção do Produto (nível D); • VAL Validação (nível D); e • VER Verificação (nível D) • Valor de k=60 • Perfil de capacidade atual – MR-MPS C Perfil de Capacidade 3 • 5 Otimizados • 4 Quantitativamente Gerenciados • 3 Institucionalizados • 2 Gerenciados • 1 Executados ao acaso (ad hoc) • 0 Incompletos
  • 59. Conclusões – Abordagem da qualidade de software para obtenção de produtos adequados à segurança de sistemas; – Solução de problemas complexos e de natureza qualitativa com ferramenta de auxílio à decisão; – Síntese e registro de opiniões de especialistas através de julgamentos qualitativos. – Possibilidade de aplicação do método em diversos estágios de maturidade das organizações; – Avaliação e melhoria dos processos de desenvolvimento de software prioritários;
  • 60. Trabalhos Futuros – Análise de sensibilidade de opiniões; – Obtenção e discussão de resultados de julgamentos por especialistas: • Em diferentes áreas de aplicação dos sistemas críticos; • Com experiência prática e acadêmica diversa. – Aplicação da lógica nebulosa (fuzzy) para obtenção mais precisa de opiniões; – Construir matriz de custo x benefício; – Prescrição do valor de ajuste k; – A aplicação deste método em outras áreas de desenvolvimento de software para uso da representação “contínua” do CMMI / MR-MPS;
  • 61. Método para aplicação de modelos de melhoria e avaliação do processo de desenvolvimento de software em sistemas críticos de segurança. Eng. Christian Becker Bueno de Abreu Prof. Dr. Paulo Sérgio Cugnasca EP-USP São Paulo 2008