Desenvolvimento de Software de Acordo com Padrões Internacionais de Qualidade - PowerPoint PPT Presentation

desenvolvimento de software de acordo com padr es internacionais de qualidade n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Desenvolvimento de Software de Acordo com Padrões Internacionais de Qualidade PowerPoint Presentation
Download Presentation
Desenvolvimento de Software de Acordo com Padrões Internacionais de Qualidade

play fullscreen
1 / 104
Desenvolvimento de Software de Acordo com Padrões Internacionais de Qualidade
84 Views
Download Presentation
betrys
Download Presentation

Desenvolvimento de Software de Acordo com Padrões Internacionais de Qualidade

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Desenvolvimento de Software de Acordocom Padrões Internacionais de Qualidade Cristina Ângela Filipak Machado - CELEPAR ABNT - Associação Brasileira de Normas Técnicas CELEPAR – Companhia de Informática do Paraná

  2. Sumário 1. Introdução 2. Definições 3. Arquitetura da NBR ISO/IEC 12207 4. Processos da NBR ISO/IEC 12207 5. NBR ISO/IEC 12207 – Versão 2001 6. Aplicação da 12207 7. Conclusões III SEQS

  3. 1. Introdução - Cenário • Econômico • estabelecimento de uma relação internacional de produtividade e qualidade • aumento da competitividade • oportunidade para ganhos de novos mercados • Terceirização III SEQS

  4. 1. Introdução - Problemas • Quais são os padrões internacionais de qualidade? • Como é a relação entre o adquirente e o fornecedor nos mercados interno e externo? • O que o adquirente espera? • Como o adquirente deve contribuir? • O que o fornecedor deve fornecer? Existem problemas nesta relação? III SEQS

  5. PROCESSO 1. Introdução - Como se entender? Linguagem Comum III SEQS

  6. 1. Introdução - A resposta da ISO CT-21:101 Métricas de Processo CE 21.101.01 Qualidade de Software CE 21.101.03 Gerência de Ciclo de Vida CE 21.101.04 SPICE CE 21.101.05 CASE CE 21.101.06 Ponto de Função CE 21.101.07 Gerência de Configuração CE 21.101.08 Ergonomia III SEQS

  7. 1. Introdução - ISO/IEC 12207 Processos de Ciclo de Vida de Software • Publicada como Norma Internacional em 1995 • Publicada como Norma Nacional NBR ISO/IEC 12207 em 1998 • Será estendido o seu escopo em 2001 • Referência para contratação e fornecimento de serviços e produtos de software • É uma norma de processos • Define uma taxonomia para processos de software ... “facilitar o comércio internacional de bens e serviços ” ... em software III SEQS

  8. 1. Introdução - Objetivo e Público Alvo • Objetivo: • Estabelecer processos, atividades e tarefas a serem executados durante os processos de aquisição, fornecimento, operação, desenvolvimento e manutenção de software • Público Alvo: • Compradores, Fornecedores, Operadores, Desenvolvedores, Mantenedores, Gerentes, Profissionais de Qualidade e Usuários. III SEQS

  9. ... CICLO DE VIDA: Início Descontinuidade ENVOLVIDOS: Adquirente, Fornecedor, Usuário, ... Corporação APLICACÃO: ... Projeto Projeto PRODUTOS SERVICOS * * PROCEDIMENTO, TÉCNICAS, FERRAMENTAS E AMBIENTES PROCESSO DEFINIÇÃO E DESCRIÇÃO METODOLOGIA MÉTODOS & METRICAS DETALHES: * Não define * NÃO COBRE 1. Introdução - Escopo da NBR ISO/IEC 12207 III SEQS

  10. Onde estamos? 1. Introdução 2. Definições 3. Arquitetura da NBR ISO/IEC 12207 4. Processos da NBR ISO/IEC 12207 5. Conclusões III SEQS

  11. 2. Definições - Processo “ Uma seqüência de passos realizados para um determinado propósito” [IEEE] “ Um conjunto de atividades(*) inter-relacionadas, que transforma entradas em saídas.” (*) O termo “atividades” engloba a utilização de recursos. [NBR ISO 8402/1994, 1.2] III SEQS

  12. 2. Definições - Processo de Software “ Um conjunto de atividades, métodos, práticas e tecnologia que as pessoas utilizam para desenvolver e manter software e produtos relacionados.” [SEI] III SEQS

  13. 2. Definições - Produto de Software “ O conjunto de programas de computador, procedimentos e possível documentação e dados associados.” III SEQS

  14. 2. Definições - Modelo de Ciclo de Vida “ Uma estrutura contendo processos, atividades e tarefas envolvidas no desenvolvimento, operação e manutenção de um produto de software, abrangendo a vida do sistema desde a definição de seus requisitos até o término de seu uso.” III SEQS

  15. 2. Definições - Organização “Um conjunto independente de pessoas.” NOTA: Uma organização herda o mesmo nome do processo que ela executa. III SEQS 2-7

  16. 2. Definições - Parte “Um que entra dentro de um acordo.” NOTA: Partes podem ser de uma mesma ou diferente(s) organização(ões). Uma parte herda o mesmo nome do processo que ela executa. III SEQS

  17. 2. Definições - Extensão de um acordo “Um acordo vai desde um acordo formal até um contrato legal.” III SEQS

  18. 2. Definições - Projeto “Um projeto é um empreendimento temporário com o objetivo de criar um produto ou serviço único. Temporário significa que todo projeto tem um iníco e fim definido. Único significa que o produto ou serviço é diferente de todos os produtos ou serviços executados anteriormente”[PMBOK]. “ Um projeto pode existir num pré-acordo, acordo ou numa fase de pós-acordo ou uma combinação acima.” NOTA: Um projeto pode cobrir uma parte do ciclo de vida. III SEQS

  19. Onde estamos? 1. Introdução 2. Definições 3. Arquitetura da NBR ISO/IEC 12207 4. Processos da NBR ISO/IEC 12207 5. NBR ISO/IEC 12207 – Versão 2001 6. Aplicação da 12207 7. Conclusões III SEQS

  20. Processos Fundamentais Processos de Apoio Aquisição Documentação Fornecimento Gerência de Configuração Desenvolvimento Operação Garantia da Qualidade Verificação Validação Adaptação Revisão Manutenção Auditoria Resolução de Problemas Processos Organizacionais Gerência Infra-estrutura Melhoria Treinamento 3. NBR ISO/IEC 12207 Processos de ciclo de vida de software III SEQS

  21. 3. NBR ISO/IEC 12207 - Conceitos básicos • Modularidade • Responsabilidade • Flexibilidade e Independência de Tecnologia III SEQS

  22. 3. NBR ISO/IEC 12207 - Modularidade Fortemente coeso: todas as partes de um processo são fortemente relacionadas PROCESSO MODULAR Fracamente acoplado: a quantidade de interfaces entre os processos é mínima III SEQS

  23. 3. NBR ISO/IEC 12207 - Modularidade • Um processo deveria executar uma e somente uma função dentro do ciclo de vida e a quantidade de interfaces entre dois processos quaisquer deveria ser mínima • Deve ser possível verificar qualquer função dentro do modelo de ciclo de vida • Cada processo deveria ter uma estrutura interna suficientemente definida para que possa ser executável III SEQS

  24. 3. NBR ISO/IEC 12207 - Modularidade • Cada processo é invocado na arquitetura • Se um processo A é invocado por um processo B e somente por ele, então A pertence a B • Se uma função é invocada por mais de um processo, então esta função torna-se um processo III SEQS

  25. 3. NBR ISO/IEC 12207 - Responsabilidade • Cada processo é considerado como sendo de responsabilidade de uma parte. • A parte que executa um processo tem a responsabilidade por todo o processo, mesmo que tarefas individuais possam ser realizadas por pessoas diferentes. III SEQS

  26. 3. NBR ISO/IEC 12207 - Responsabilidade • Uma organização pode executar um ou mais processos. • Um processo pode ser executado por uma ou mais organizações, com uma das organizações sendo identificada como a parte responsável. • A responsabilidade facilita a adaptação e a aplicação da NBR ISO/IEC 12207 em um projeto, no qual várias pessoas podem estar formalmente envolvidas. III SEQS

  27. 3. NBR ISO/IEC 12207 - Flexibilidade e Independência Tecnológica • Arquitetura de alto nível utilizável com qualquer modelo de ciclo de vida, método ou técnica de engenharia de software, linguagem de programação,... • Atividades/tarefas dizem “o que fazer” e não “como fazer” • Ex: “Desenvolver e documentar um projeto de arquitetura”, mas não “desenvolver ou documentar um projeto de arquitetura usando UML” • Qualquer prática industrial • Ex.: militar, comercial III SEQS

  28. ATIVIDADE 1 PROCESSO1 TAREFAS Ciclo de Vida . . . Da concepção até a descontinuidade PROCESSO17 PROCESSO... ATIVIDADE N TAREFAS PRINCÍPIOS BÁSICOS:MODULARIDADE;RESPONSABILIDE CICLO:“PDCA” 3. NBR ISO/IEC 12207 - Estrutura dos Processos III SEQS

  29. PLANEJAR planejamento das tarefas a executar Início AGIR ações corretivas, resolução de problemas CHECAR checar, avaliar, garantir FAZER executar as tarefas do plano Fim 3. NBR ISO/IEC 12207 Regras para particionar um processo III SEQS

  30. 3. NBR ISO/IEC 12207 - Atividades e Tarefas • Uma atividade é dividida em tarefas, as quais são agrupadas de acordo com a similaridade das ações • TAREFA: Uma ação “O que fazer”, não “como fazer” • Verbos usados: Verbo DEVERÁ, IRÁ (Auto-declaração) DEVE (Requisito) DEVERIA (Recomendação) PODE (Permissão) PODERÁ (Possibilidade,quando necessária) ** Não é um requisito Nenhum dos acima ** III SEQS

  31. Própria Organização B Organização A 3. NBR ISO/IEC 12207 - Níveis de Aplicação • Por uma pessoa como própria imposição • Por uma organização internamente • Entre pessoas dentro de uma organização • Entre organizações III SEQS

  32. Onde estamos? 1. Introdução 2. Definições 3. NBR ISO/IEC 12207  4. Processos da NBR ISO/IEC 12207  5. Conclusões III SEQS

  33. Processos de Apoio Documentação Gerência de Configuração Garantia da Qualidade Verificação Validação Adaptação Revisão Auditoria Resolução de Problemas Processos Organizacionais Gerência Infra-estrutura Melhoria Treinamento 4. Processos da NBR ISO/IEC 12207 Processos Fundamentais Aquisição Fornecimento Desenvolvimento Operação Manutenção III SEQS

  34. 4.1 Processos Fundamentais “Um conjunto de processos que atendem às partes fundamentais* (pessoa ou organização) durante o ciclo de vida do software.” * Parte fundamental é aquela que executa ou inicia o desenvolvimento, operação ou manutenção de produtos de software. III SEQS

  35. Operação T Manutenção Fornecimento Aquisição 01 02 T E/T U 01 Início 01, 02 o mesmo ponto E: Executa T: Tarefa U: Usa Desenvolvimento PDCA 4.1 Processos Fundamentais III SEQS

  36. 4.1 Processos Fundamentais Processo de Aquisição “Define as atividades do adquirente, organização que adquire um sistema, produto de software ou serviço de software.” RESPONSÁVEL -> ADQUIRENTE III SEQS

  37. 1. Iniciação 4. Monitorar fornecedor • Descreve necessidades • Define requisitos do sistema • Define requisitos do software • Prepara plano de aquisição • Define estratégia de aceitação • Monitora de acordo c/ rev. conj. e auditoria • Complementa com V & V 5. Aceitação e conclusão • Prepara p/ aceitação, incluindo testes • Conduz aceitação, testes/revisões • Aceita o produto • Assume gerência de configuração 2. Preparação solic. proposta • Documenta requisitos da aquisição • Seleciona atividades e tarefas • Define pontos de controle • Define marcos para fornecedores 3. Preparação e atualiz. contrato • Estabelece proced. p/ seleção de fornec. • Seleciona fornecedores • Adapta 12207 & partes envolvidas • Negocia contrato 4.1 Processos Fundamentais Processo de Aquisição III SEQS

  38. Uso interno Processos que invoca ATIVIDADES RESULTADOS P R É - C O N T R A T O REQ. SISTEMA PLANO DE AQUISIÇÃO CRITÉRIOS DE ACEITAÇÃO DESENVOLV. INICIAÇÃO INCLUSÃO REQ. ADQ. SELEÇÃO TAREFAS REFERENCIA P/ CONTRATOS PREPARAÇÃO PROPOSTA CONTRATO COM FORNECEDOR CONTRATO COM OUTROS PREPARAÇÃO E ATUALIZ. CONTRATO CONTROLES ADAPTAÇÃO INTERNOS C O N T R A T O MONITORAR & AVALIAR RESULTADOS REVISÃO MONITORAÇÃO FORNECEDOR AUDIT VERIF. VALID. CONJ. ACEITAR PRODUTOS E SERVIÇOS ACEITAÇÃO E CONCLUSÃO 4.1 Processos Fundamentais Processo de Aquisição Para o adquirente de produtos e serviços Cobre períodos de pré-contrato e contrato III SEQS

  39. Processos Subseção Resultados Tipo de Resultado Aquisição 5.1.1.8 Plano de aquisição Plano 5.1.1.9 Estratégia e condições de aceitação Especificação 5.1.2.1 Pedido de proposta Especificação 5.1.2.1 Documentação de aquisição Especificação 5.1.3.1 Procedimento de seleção de fornecedor Procedimento 5.1.3.4 Contrato Contrato 4.1 Documentos produzidos na Aquisição III SEQS

  40. Exercício 1 - Processo de Aquisição • Compor grupo de 5 pessoas • Especificar o processo de Aquisição de um jantar (cardápio: pizza) • Tempo: 15 minutos • Apresentação: 5 minutos • Formato: • Requisitos do jantar • Opção de aquisição • Contrato III SEQS

  41. Processos Fundamentais Processos de Apoio Aquisição Documentação Fornecimento Gerência de Configuração Desenvolvimento Operação Garantia da Qualidade Verificação Validação Adaptação Revisão Manutenção Auditoria Resolução de Problemas Processos Organizacionais Gerência Infra-estrutura Melhoria Treinamento 4. Processos da NBR ISO/IEC 12207 III SEQS

  42. 4.1 Processos Fundamentais Processo de Fornecimento “Define as atividades do fornecedor, organização que provê o sistema, produto de software ou serviço de software ao adquirente.” III SEQS

  43. 4.1 Processos Fundamentais Processo de Fornecimento 1. Iniciação 4. Planejamento 6. Revisão e avaliação • Revisão do pedido de proposta • Decisão sobre propor ou aceitar contrato • Coordenar com o adquirente • Revisões conjuntas • Auditoria • V & V • Fornecer acesso ao adquirente • QA • Revisar req. do adquirente • Selecionar modelo de ciclo de vida, quando necessário • Estabelecer requisitos para os planos • Desenvolver e documentar planos de gerência de projetos 2. Preparação resposta • Preparar resposta 5. Execução/controle 7. Entrega e conclusão 3. Contrato • Executar plano de gerência • Desenvolver, operar ou manter • Monitorar/controlar progresso e qualidade • Gerenciar subcontratados • Interagir com agentes independentes de V & V • Interagir com outras partes • Entregar produtos e serviços • Prover assistência • Negociar e firmar contrato com o adquirente • Solicitar modificações III SEQS

  44. QUALIDADE CO. 4.1 Processos Fundamentais Processo de Fornecimento Prover produtos e serviços Cobre o período pré-contratual e contratual ATIVIDADES RESULTADOS Uso interno Processos que invoca P R E - C O N T. DECISÃO DE CONTRATO INÍCIO PREPARAÇÃO PROPOSTA DA RESPONSTA CONTRATO CONTRATO CICLO DE VIDA & PLANO DE GERENCIA DO PROJETO PLANEJAMENTO CONTRATO SELEÇÃO DE UM OU MAIS EXECUÇÃO E MONITORA, MONITORAR RESULTADOS DEV. OPER. MANUT. AQUIS. CONTROLA CONTROLE RESULTADOS AVAL/REVISÃO REVISÃO E REV.CONJ. AUDITORIA GAR.QUAL V&V AVALIAÇÃO ENTREGA E CONCLUSÃO PROD/SERV. ENTREGUES III SEQS

  45. Processos Subseção Resultados Tipo de Resultado Fornecimento 5.2.2.1 Proposta Proposta 5.2.4.5 Plano(s) de gerência de projeto Plano 5.2.6.4 Relatórios de avaliação, revisões, auditorias, testes e resolução de problema Relatório 4.1 Documentos produzidos no Fornecimento III SEQS

  46. Exercício 2 - Processo de Fornecimento • Reunir o mesmo grupo • Especificar o processo de Fornecimento das pizzas (fabricação própria) • Tempo: 15 minutos III SEQS

  47. Processos de Apoio Documentação Gerência de Configuração Garantia da Qualidade Verificação Validação Adaptação Revisão Auditoria Resolução de Problemas Processos Organizacionais Gerência Infra-estrutura Melhoria Treinamento 4.1 NBR ISO/IEC 12207 Processos de ciclo de vida de software Processos Fundamentais Aquisição Fornecimento Desenvolvimento Operação Manutenção III SEQS

  48. 4.1 Processos Fundamentais Processo de Desenvolvimento “Define as atividades do desenvolvedor, organização que define e desenvolve o produto de software.” III SEQS

  49. 1. Implementação processo 2. Análise de requisitos de sistemas • Definir e selecionar modelos de ciclo de vida • Detalhar as interações/seqüências das atividades e tarefas de desenvolvimento e processos de suporte a serem utilizados • Empregar processos de gerência de configuração, documentação e resolução de problemas • Selecionar/adaptar métodos, ferramentas • Executar plano de desenvolvimento e documentação • Utilizar, se necessário, produtos não entregáveis • Executar ou suportar • Especificar os requisitos do sistema descrevendo: • Funções e capacidades; requisitos do negócio, organizacionais e de usuário; requisitos de proteção, de segurança, de fatores humanos, de interface, de operação e de manutenção; restrições de projeto e requisitos de qualificação. • Avaliar os requisitos de sistema para: • Rastreabilidade, consistência, testabilidade, viabilidade do projeto de arquitetura e da operação e manutenção. 4.1 Processos Fundamentais Processo de Desenvolvimento III SEQS

  50. 4.1 Processos Fundamentais Processo de Desenvolvimento 3. Projeto de arquitetura de sistemas 4. Análise de requisitos do software • Para cada item de configuração: • Estabelecer e documentar os requisitos, incluindo as características de qualidade descritas na NBR ISO/IEC 13596. • Especificações funcionais, de capacidade, interfaces externas, proteção, segurança, ergonomia... • Requisitos de bases de dados • Requisitos de instalação e aceitação do produto • Documentação do usuário • Requisitos do usuário para manutenção, execução e operação • Estabelecer uma arquitetura de alto nível. Identificar itens de hardware, software e operações manuais. • Avaliar a arquitetura para: • Rastreabilidade, consistência, adequação dos métodos e padrões do projeto, viabilidade dos itens de soffware, operação e manutenção. III SEQS