csc e-cns ce-230 qualidade, confiabilidade e segurança de software 2° semestre de 2006 2°...

17
CSC E-CNS CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador Componente de Software de Computador de Comunicação, Navegação, de Comunicação, Navegação, Vigilância Vigilância CSC E-CNS CSC E-CNS 1º, 2º e 3º Nível de Integração 1º, 2º e 3º Nível de Integração Carla Berkenbrock Carla Berkenbrock Emília Colonese Emília Colonese Gian Berkenbrock Gian Berkenbrock Rovedy Silva Rovedy Silva

Upload: internet

Post on 17-Apr-2015

109 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

CE-230 Qualidade, Confiabilidade e Segurança de SoftwareCE-230 Qualidade, Confiabilidade e Segurança de Software

2° Semestre de 2006 2° Semestre de 2006

Componente de Software de Computador de Componente de Software de Computador de Comunicação, Navegação, Vigilância Comunicação, Navegação, Vigilância

CSC E-CNS CSC E-CNS 1º, 2º e 3º Nível de Integração1º, 2º e 3º Nível de Integração

Carla BerkenbrockCarla BerkenbrockEmília ColoneseEmília Colonese

Gian BerkenbrockGian BerkenbrockRovedy SilvaRovedy Silva

Page 2: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

ROTEIROROTEIRO

• Artefatos RUP - PDT, PGQ e CUTArtefatos RUP - PDT, PGQ e CUT

• Comparação de EstimativasComparação de Estimativas

• Introdução Introdução (Motivação, Contextualização, Objetivo e Título)(Motivação, Contextualização, Objetivo e Título)

• Documentação SoDADocumentação SoDA

• Análises de SensitividadeAnálises de Sensitividade

• Integração -Integração - Testes (1º, 2º e 3º nível) Testes (1º, 2º e 3º nível)

• Conclusões e RecomendaçõesConclusões e Recomendações

Page 3: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

INTRODUÇÃOINTRODUÇÃO

Objetivo:Objetivo: Mostrar as atividades qualidade, confiabilidade e segurança Mostrar as atividades qualidade, confiabilidade e segurança relacionadas ao processo de desenvolvimento do CSC E-CNS visando relacionadas ao processo de desenvolvimento do CSC E-CNS visando melhorar a eficiência e reduzir o desperdício de recursos envolvidos.melhorar a eficiência e reduzir o desperdício de recursos envolvidos.

Título:Título: CSC – COMUNICAÇÃO, NAVEGAÇÃO E VIGILÂNCIA DA ESTAÇÃO CSC – COMUNICAÇÃO, NAVEGAÇÃO E VIGILÂNCIA DA ESTAÇÃO DE CONTROLE (E-CNS EC)DE CONTROLE (E-CNS EC)

Contextualização

Page 4: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

Por que os processos de Qualidade de software Por que os processos de Qualidade de software fracassam?fracassam?

• Ausência de gerência de qualidade independente;Ausência de gerência de qualidade independente;• Ausência de profissionais capacitados em qualidade de Ausência de profissionais capacitados em qualidade de

software;software;• Métricas de qualidade aplicadas tardiamente no Métricas de qualidade aplicadas tardiamente no

desenvolvimento do sistema;desenvolvimento do sistema;

• Falta de um modelo corporativo de Controle de Qualidade;Falta de um modelo corporativo de Controle de Qualidade;

• Ausência de procedimentos de testes automatizados;Ausência de procedimentos de testes automatizados;

• Deficiência no planejamento de testes; eDeficiência no planejamento de testes; e

• Ausência de um ambiente de testes isolado.Ausência de um ambiente de testes isolado.

INTRODUÇÃOINTRODUÇÃO

Motivação

Page 5: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

COMPARAÇÃO DE ESTIMATIVASCOMPARAÇÃO DE ESTIMATIVAS

Tempo previsto: + de 5 meses Tempo previsto: + de 5 meses

Casos de Uso Previsto: 18Casos de Uso Previsto: 18 (Completo)(Completo)

Tempo realizado: 4 meses Tempo realizado: 4 meses

Casos de Uso Implementado: 15 Casos de Uso Implementado: 15

(Incompleto)(Incompleto)

Page 6: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

ARTEFATO - PLANO GARANTIA DA QUALIDADEARTEFATO - PLANO GARANTIA DA QUALIDADE

Documentação BaseDocumentação Base PD, PDT, SPE, ESUPD, PDT, SPE, ESU

MétricasMétricasIBM - IBM - Rational Test RealTimeRational Test RealTime IBM - IBM - Rational Quality ArchitectRational Quality Architect

Plano de Revisão e AuditoriaPlano de Revisão e AuditoriaEquipe E-CNSEquipe E-CNS

Ferramentas, Técnicas e MetodologiasFerramentas, Técnicas e MetodologiasMetodologia RUP (Metodologia RUP (Rational Unified ProcessRational Unified Process))

Testes e ValidaçãoTestes e ValidaçãoAtualização do artefato Plano de TestesAtualização do artefato Plano de Testes

Gerenciamento de RiscosGerenciamento de Riscos Atualização do artefato Lista de RiscosAtualização do artefato Lista de Riscos

CronogramaCronograma

Planejar projeto

Plano de Garantia daQualidade

Desenvolver PGQ

Gerente de projeto

Page 7: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

ARTEFATO - PLANO DE TESTESARTEFATO - PLANO DE TESTES

Itens-alvo de TesteItens-alvo de Teste

A USC E-VIG deve conseguir recuperar informações de rota através da USC E-MPM e transmitir mensagens de alarme para a E-COM.

Critérios de Êxito

Verificar se a USC E-NAV suporta o monitoramento de algum desvio na rota planejada que está sendo realizada pelo VANT.

Objetivo do Tipo de Teste

• Monitoramento de Desvio RotaMonitoramento de Desvio Rota

O banco de dados que armazena o mapa móvel deve suportar operações 24X7 e ter um tempo de resposta considerado adequado pelo requisito tempo de resposta do SSC VANT-EC-SAME.

Critérios de Êxito

Verificar se o mapa móvel suporta uma solicitação de consulta da situação dos objetos estáticos e dinâmicos, constantes de um determinado cenário (mapa móvel) em processo pela E-VIS.

Objetivo do Tipo de Teste

• Recuperação de Dados para VisualizaçãoRecuperação de Dados para Visualização

O banco de dados que armazena o mapa móvel deve suportar operações 24x7 e ter um tempo de resposta às solicitações considerado adequado pelo requisito tempo de resposta do SSC VANT-EC-SAME.

Critérios de Êxito

Verificar se o mapa móvel suporta uma solicitação de atualização de dados de vigilância no cenário (mapa móvel) do processo que a E-VIG está executando no momento.

Objetivo do Tipo de Teste

• Atualização de Dados de VigilânciaAtualização de Dados de Vigilância

Definir Missão de Avaliação

Page 8: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

ARTEFATO - CASO DE USO TESTEARTEFATO - CASO DE USO TESTEVerificar abordagem

do teste

Caso de Teste

Define detalhes do teste

Analista de Teste

Plano de Teste

Monitoramento de Desvio RotaMonitoramento de Desvio Rota

Pré-condição/Pós condiçãoPré-condição/Pós condiçãoEntradas e instruções de teste:Entradas e instruções de teste:1. Receber/processar dados de navegação. 2. Verificar e validar dados recebidos nas USC;Resultados esperadosResultados esperadosEspera-se que o USC E_NAV seja capaz de disponibilizar dados de navegação.

Lista de idéias de teste

Page 9: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

FATORES DE QUALIDADE x MÉTRICASFATORES DE QUALIDADE x MÉTRICAS

ANÁLISES DE SENSITIVIDADE - MÉTRICASANÁLISES DE SENSITIVIDADE - MÉTRICAS

HALSTEAD

V(g)

LINES&COMMENT

Page 10: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

ANÁLISES DE SENSITIVIDADE - MÉTRICASANÁLISES DE SENSITIVIDADE - MÉTRICAS

• Complexidade Computacional do Código Fonte Complexidade Computacional do Código Fonte (Halstead Metrics)(Halstead Metrics)Medida de complexidade a partir de operandos e operadores no Medida de complexidade a partir de operandos e operadores no módulo. Exemplo: módulo. Exemplo: Program LengthProgram Length ou ou SizeSize (N) = operandos (N) = operandos únicos (N1) + operadores únicos (N2). únicos (N1) + operadores únicos (N2). Size TopCapsule E-CNS = 1274. Size TopCapsule E-CNS = 1274.

• Nível do ProgramaNível do Programa (Lines/Comments)(Lines/Comments)A densidade de comentário recomendada por linha de código é A densidade de comentário recomendada por linha de código é de 20%. de 20%. Somente comentários TopCapsule E-CNS = 13,56 %.Somente comentários TopCapsule E-CNS = 13,56 %.

Somente linhas de código TopCapsule E-CNS => 465Somente linhas de código TopCapsule E-CNS => 465

• Complexidade Ciclomática Complexidade Ciclomática V(g)V(g)A contagem dos desvios condicionais de um módulo de software A contagem dos desvios condicionais de um módulo de software recomendada é 10. recomendada é 10. V(g) TopCapsule E-CNS = 8,85.V(g) TopCapsule E-CNS = 8,85.

““Total de linhas de código (somente) para o E-CNS => 5.743”Total de linhas de código (somente) para o E-CNS => 5.743”

Page 11: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

DOCUMENTAÇÃO DO E-CNS - SODADOCUMENTAÇÃO DO E-CNS - SODA

• Visão LógicaVisão Lógica

• Visão FísicaVisão Física

Page 12: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

TESTE DE INTEGRAÇÃO – Redução de EscopoTESTE DE INTEGRAÇÃO – Redução de Escopo

• Monitoramento de Desvio RotaMonitoramento de Desvio Rota

• Informa PosiçãoInforma Posição

• Informa VelocidadeInforma Velocidade

• Monitoramento de RotaMonitoramento de Rota

CSC E-CNS

SSC VANT-EC-SAME

ICSC EC

““Foi necessário fazer reengenharia do Foi necessário fazer reengenharia do

sistema em cada integração”sistema em cada integração”

Page 13: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

TESTE DE INTEGRAÇÃO - 1º NÍVEL DE INTEGRAÇÃOTESTE DE INTEGRAÇÃO - 1º NÍVEL DE INTEGRAÇÃO

Monitoramento de Desvio RotaMonitoramento de Desvio Rota

/ ENAV...

/ ECOM...

/ EMPM...

1: Incarnate1: Incarnate

2: initialize2: initialize

WaitingToStart

3: Incarnate3: Incarnate Test1_04: initialize4: initialize

Ocioso

5: Incarnate5: Incarnate

6: initialize6: initialize

3: informIn (RTTimespec{tv_sec 1,tv_nsec 0})3: informIn (RTTimespec{tv_sec 1,tv_nsec 0})

AguardandoS14: timeout4: timeout

5: sigENAV_cl_out (Quadr...)5: sigENAV_cl_out (Quadr...)

S26: sigEMPM_sr_in (Quadr...)6: sigEMPM_sr_in (Quadr...)

7: informIn (RTTimespec{tv_sec 0,tv_n...)7: informIn (RTTimespec{tv_sec 0,tv_n...)

FornecendoServico

EncaminhaQuadroCL8: timeout8: timeout

Aguardando7: sigEMPM_sr_out (Quadr...)7: sigEMPM_sr_out (Quadr...)

AguardaDados

8: sigENAV_cl_in (Quadr...)8: sigENAV_cl_in (Quadr...)9: informIn (RTTimespec{tv_sec 0,tv_n...)9: informIn (RTTimespec{tv_sec 0,tv_n...)

EncaminhaQuadroSR10: timeout10: timeout

Aguardando9: sigENAV_cl_out (Quadr...)9: sigENAV_cl_out (Quadr...)

S3

10: sigEMPM_sr_in (Quadr...)10: sigEMPM_sr_in (Quadr...)11: informIn (RTTimespec{tv_sec 0,tv_...)11: informIn (RTTimespec{tv_sec 0,tv_...)

EncaminhaQuadroCL12: timeout12: timeout

Aguardando11: sigEMPM_sr_out (Quadr...)11: sigEMPM_sr_out (Quadr...)

EnviaDados

12: sigENAV_cl_in (Quadr...)12: sigENAV_cl_in (Quadr...)13: informIn (RTTimespec{tv_sec 0,tv_...)13: informIn (RTTimespec{tv_sec 0,tv_...)

EncaminhaQuadroSR14: timeout14: timeout

Aguardando13: sigENAV_cl_out (Quadr...)13: sigENAV_cl_out (Quadr...)

S414: sigEMPM_sr_in (Quadr...)14: sigEMPM_sr_in (Quadr...)15: informIn (RTTimespec{tv_sec 0,tv_...)15: informIn (RTTimespec{tv_sec 0,tv_...)

EncaminhaQuadroCL15: informIn (RTTim...)15: informIn (RTTim...)

16: timeout16: timeout

Aguardando16: sigEMPM_sr_out (Quadr...)16: sigEMPM_sr_out (Quadr...)

Liberado17: sigENAV_cl_in (Quadr...)17: sigENAV_cl_in (Quadr...)

18: informIn (RTTimespec{tv_sec 0,tv_...)18: informIn (RTTimespec{tv_sec 0,tv_...)Test1_0

EncaminhaQuadroSR19: timeout19: timeout

WaitingToStart20: timeout20: timeout

FornecendoServico

Ocioso Aguardando

Sequence Diagram: ECNS / TopCapsuleECNS / Structure / MonitoramentoDesvioRota

Number of tests that failed: 0Double-click for tests that passed.

Test number 1 (MonitoramentoDesvioRota). Sequence Diagram: TesteECNS / RQARTTopCapsuleECNS_...

Number of test that passed: 1Double-click for tests that failed.

Page 14: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

TESTE DE INTEGRAÇÃO - 2º NÍVEL DE INTEGRAÇÃOTESTE DE INTEGRAÇÃO - 2º NÍVEL DE INTEGRAÇÃO

Informa Posição/VelocidadeInforma Posição/Velocidade

/ EGFT...

/ ECNS...

1: Incarnate1: Incarnate

2: initialize2: initialize

WaitingToStart

Test1_03: Incarnate3: Incarnate

4: initialize4: initialize

3: envia (Quadro{id 1,de...)3: envia (Quadro{id 1,de...)

S14: recebe (Quadro{id 4,...)4: recebe (Quadro{id 4,...)

5: envia (Quadro{id 7,de...)5: envia (Quadro{id 7,de...)

S26: recebe (Quadro{id 7,...)6: recebe (Quadro{id 7,...)

7: envia (Quadro{id 2,de...)7: envia (Quadro{id 2,de...)

S38: recebe (Quadro{id 6,...)8: recebe (Quadro{id 6,...)

Test1_0

WaitingToStart

Sequence Diagram: Logical View / Top_2Integracao / Structure / InformaPosicao

Number of tests that failed: 0Double-click for tests that passed.

Test number 1 (InformaPosicao). Sequence Diagram: TesteEC / RQARTTop_2Integracao_...

Number of test that passed: 1Double-click for tests that failed.

Page 15: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

TESTE DE INTEGRAÇÃO - 3º NÍVEL DE INTEGRAÇÃOTESTE DE INTEGRAÇÃO - 3º NÍVEL DE INTEGRAÇÃO

Monitoramento de RotaMonitoramento de Rota

Page 16: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

CONCLUSÃOCONCLUSÃO

• Os fatores de complexidade ambiental Os fatores de complexidade ambiental configurados para a estimativa de custo foram super-configurados para a estimativa de custo foram super-estimados.estimados.

• A utilização do Processo Unificado da Rational, da A utilização do Processo Unificado da Rational, da ferramenta CASE e do conhecimento adquirido nesta ferramenta CASE e do conhecimento adquirido nesta disciplina, possibilitou a integração dos 3 níveis do disciplina, possibilitou a integração dos 3 níveis do SSC VANT-EC-SAME com qualidade.SSC VANT-EC-SAME com qualidade.

• A adoção da característica de iteratividade A adoção da característica de iteratividade possibilitou que falhas fossem previamente possibilitou que falhas fossem previamente detectadas e corrigidas sem custo de tempo e detectadas e corrigidas sem custo de tempo e qualidade para o projeto além de propiciar alta qualidade para o projeto além de propiciar alta confiabilidade na integração. confiabilidade na integração.

Page 17: CSC E-CNS CE-230 Qualidade, Confiabilidade e Segurança de Software 2° Semestre de 2006 2° Semestre de 2006 Componente de Software de Computador de Comunicação,

CSC E-CNSCSC E-CNS

RECOMENDAÇÕESRECOMENDAÇÕES

• Realizar testes automatizados através das Realizar testes automatizados através das ferramentas disponíveis no ITA;ferramentas disponíveis no ITA;

• Utilizar softwares alternativos para o Utilizar softwares alternativos para o desenvolvimento e testes, visando ampliar o desenvolvimento e testes, visando ampliar o background dos alunos; ebackground dos alunos; e

• Realização dos Warm-ups e Labs antes da fase de Realização dos Warm-ups e Labs antes da fase de Construção.Construção.