ISO 12207 Processos do Ciclo de Vida do

  • Slides: 45
Download presentation
ISO 12207 Processos do Ciclo de Vida do Software Universidade Federal de Pernambuco Centro

ISO 12207 Processos do Ciclo de Vida do Software Universidade Federal de Pernambuco Centro de Informática Pós-graduação em Ciência da Computação 1

ISO 12207 – Processos do Ciclo de Vida do Software Roteiro n n n

ISO 12207 – Processos do Ciclo de Vida do Software Roteiro n n n Histórico Principais Conceitos Básicos ISO 12207 n n n n Objetivos e Campo de Aplicação Definições Aplicações da Norma Processos do Ciclo de Vida de Software Exemplo Prático Considerações Finais Conclusões 2

ISO 12207 – Processos do Ciclo de Vida do Software Histórico n Em 1987

ISO 12207 – Processos do Ciclo de Vida do Software Histórico n Em 1987 a Organização Internacional para Padronização (ISO) e a Comissão Internacional de Eletrotécnica (IEC) definiram o Comitê Técnico em Tecnologia da Informação (JTC 1). 3

ISO 12207 – Processos do Ciclo de Vida do Software Histórico n n n

ISO 12207 – Processos do Ciclo de Vida do Software Histórico n n n Em 1989 o JTC 1 iniciou o desenvolvimento da ISO 12207, com o objetivo de suprir uma necessidade crítica nos Processos do Ciclo de Vida do Software. Foi desenvolvida com a participação de vários países, entre eles o Brasil. Foi publicada em 1995, em versão inicial. 4

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Arquitetura do Ciclo de Vida do Software n n A estrutura cobre o ciclo de vida do software desde a concepção de idéias até a descontinuação (aposentadoria) do software. A arquitetura é construída com um conjunto de processos e interrelacionamentos. 5

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Processos do Ciclo de Vida n Os processos estão agrupados em três amplas classes: n Fundamentais n n Apoio ou Suporte n n são os processos básicos para o ciclo de vida, ou seja, início e execução do desenvolvimento, operação e manutenção do software Auxiliam um outro processo, de acordo com funcionalidades específicas. Organizacional n Implementam uma estrutura constituída de processos de ciclo de vida e pessoal associados, melhorando continuamente a estrutura e os processos. 6

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Estrutura dos Processos do Ciclo de Vida n Cada processo é definido de acordo com seu conjunto de atividades e, estas, de acordo com seu conjunto de tarefas relacionadas. Processos Atividade 1 Tarefa 1 . . . Tarefa N Atividade N Tarefa 7

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Natureza das Tarefas n n É um conjunto de ações elementares. A tarefa consiste de uma entrada (dados, informações) e produz uma saída (dados, informações). Natureza das Avaliações n n Nesta norma a avaliação é uma função elementar e usada de várias maneiras pelos processos. As avaliações são conduzidas em várias entidades com objetivos de validar critérios definidos. 8

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Gerenciamento da Qualidade Total n n Esta norma implementa os princípios da Qualidade Total. Elos entre Sistema e Software n A norma estabelece uma ligação muito forte entre Sistema e Software. n n o padrão é baseado nos princípios gerais da Engenharia de Sistemas (análise, projeto, implementação, testes. . . ) O software é tratado como parte integral de um sistema e desempenha certas funções deste sistema. 9

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Organização n n Aplicação nas Organizações n n Grupo de pessoas que trabalham juntas em prol de um objetivo específico. Os processos definidos neste padrão formam um conjunto compreensível que pode ser utilizado por vários tipos de organizações. Aplicação em Projetos n O padrão foi escrito para Projetos de Software genéricos, grandes e complexos. 10

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Documentação n n Definições n n O padrão necessita que determinadas atividades sejam documentadas, mas não especifica formatos, conteúdo. . . O padrão necessita das definições do Processo de Software (requisitos, projetos, implementação. . . ). Métricas de Software n A norma não é um padrão de métrica de software. Ela requer as especificações de gerenciamento dos indicadores e atributos de software, mas não os define ou especifica. 11

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n

ISO 12207 – Processos do Ciclo de Vida do Software Principais Conceitos Básicos n Pré-requisitos n Para uso efetivo e produtivo do padrão devem ser observados: n n Treinamento; Conhecimento das políticas da Organização; Conhecimento dos Ambientes de Projetos e; Compreensão do Padrão ISO 12207. 12

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Está

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Está organizada em 7 seções e 4 anexos. n n n n Escopo e campo de aplicação Referências Normativas Definições Aplicação da Norma Processos Fundamentais do Ciclo de Vida Processos de Apoio do Ciclo de Vida Processos Organizacionais do Ciclo de Vida Anexos 13

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Objetivo

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Objetivo n n Estabelece uma estrutura comum para os processos de ciclo de vida de software, com terminologia bem definida, que pode ser referenciada pela indústria de software. Esta norma também provê um processo que pode ser utilizado para definir, controlar e melhorar os processos de ciclo de vida de software. 14

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Campo

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Campo de Aplicação n n Aplica-se à Aquisição de sistemas, produtos e serviços de software; ao fornecimento, desenvolvimento, operação e manutenção de produtos de software, quer sejam executados interna ou externamente a uma organização. Esta norma não foi concebida para produtos de software de prateleira a menos que eles estejam incorporados dentro de um produto encomendado. 15

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Limitações

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Limitações n n n Não é substituto para o gerenciamento sistemático e disciplinado de sistemas de software. Provê um framework onde os processos, atividades e tarefas relacionados ao software podem ser identificados, planejados e executados. Esta norma não prescreve um modelo específico de ciclo de vida ou método de desenvolvimento de software. 16

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Interpretação

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 n Interpretação da Norma n n Deve – é utilizado para expressar uma obrigação entre duas ou mais partes; Deverá – é usado para expressar uma declaração de objetivo ou intenção de uma das partes; Deveria – é utilizado para expressar uma recomendação entre várias possibilidades; Pode – é utilizado para indicar uma ação permitida dentro dos limites desta norma. 17

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Organização da

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Organização da Norma Processos Fundamentais Processos de Apoio Aquisição Documentação Fornecimento Desenvolvimento Operação Manutenção Gerência de Configuração Garantia de Qualidade Verificação Validação Revisão Conjunta Processos Organizacionais Auditoria Gerência Resolução de Problema Infra-estrutura Anexos Melhoria Processo de Adaptação Treinamento Orientação para adaptação Orientações sobre processos e organizações Bibliografia 18

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais n Partes Fundamentais n n n Inicia ou executa o desenvolvimento, operação ou manutenção dos produtos de software. Adquirente Fornecedor Desenvolvedor Operador e Mantenedor do software. 19

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais n Processo de Aquisição n Atividades de quem quer adquirir um sistema, produto de software ou serviço de software. n n n Iniciação; Preparação do pedido de proposta; Preparação e atualização do contrato; Monitoração do fornecedor; Aceitação e Conclusão. 20

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais n Processo de Fornecimento n Atividades do fornecedor de software. n n n n Iniciação; Preparação de resposta; Contrato; Planejamento; Execução e controle; Revisão e avaliação; Entrega e Conclusão 21

ISO 12207 Processos Fundamentais ISO 12207 – Processos do Ciclo de Vida do Software

ISO 12207 Processos Fundamentais ISO 12207 – Processos do Ciclo de Vida do Software n Processo de Desenvolvimento n Atividades do desenvolvedor de software. n n n n Implementação do processo; Análise dos requisitos do sistema; Projeto da arquitetura do sistema; Análise dos requisitos do software; Projeto de arquitetura do software; Projeto detalhado do software; Codificação e testes do software; Integração do software; Testes de qualificação do software; Integração do sistema; Teste de qualificação do sistema; Instalação do software; Apoio à aceitação do software. 22

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais n Processo de Operação n Atividades do operador do software. Operação do software e suporte operacional aos usuários. n n Implementação do Processo; Testes operacional; Operação do Sistema; Suporte ao usuário. 23

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Fundamentais n Processo de Manutenção n Atividades de quem faz a manutenção do software. n n n Implementação do Processo; Análise do problema e da modificação; Implementação da modificação; Revisão/aceitação da manutenção; Migração; Descontinuação do Software. 24

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Documentação n Registro de informações produzidas por um processo ou atividade. Inclui: planejamento, projeto, desenvolvimento, produção, edição, distribuição e manutenção dos documentos necessários a gerentes, engenheiros e usuários do software. n n Implementação do processo; Projeto e desenvolvimento; Produção; Manutenção. 25

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Gerência de Configuração n Identificação e controle dos itens do software. Inclui: controle de armazenamento, liberações, manipulação, distribuição e modificação de cada um dos itens que compõem o software. n n n Implementação do processo; Identificação da configuração; Controle da configuração; Relato da situação da configuração; Avaliação da configuração; Gerência de liberação e distribuição. 26

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo da Garantia da Qualidade n Garante que os processos e produtos de software estejam em conformidade com os requisitos e os planos estabelecidos. n n Implementação do processo; Garantia do produto; Garantia do processo; Sistemas de Garantia da Qualidade. 27

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Verificação n Determina se os produtos de software de uma atividade atendem completamente aos requisitos ou condições impostas a eles. n n Implementação do processo; Verificação. 28

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Validação n Determina se os requisitos e o produto final (sistema ou software) atendem ao uso específico proposto. n n Implementação do Processo; Validação. 29

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Revisão Conjunta n Define as atividades para avaliar a situação e os produtos de uma atividade de um projeto, se apropriado. n n n Implementação do processo; Revisões de gerenciamento do projeto; Revisões técnicas. 30

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Auditoria n Determina adequação aos requisitos, planos e contrato, quando apropriado. n n Implementação do processo; Auditoria. 31

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos de Apoio n Processo de Resolução do Problema n Análise e resolução dos problemas de qualquer natureza ou fonte, descobertos durante a execução do desenvolvimento, operação, manutenção ou outros processos. n n Implementação do processo; Resolução do problema. 32

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais n Processo de Gerência n Gerenciamento de processos. n n n Iniciação e definição do escopo; Planejamento; Execução e controle; Revisão e avaliação; Conclusão. 33

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais n Processo de Infra-estrutura n Fornecimento de recursos para outros processos. Inclui: hardware, software, ferramentas, técnicas, padrões de desenvolvimento, operação ou manutenção. n n n Implementação do processo; Estabelecimento da infra-estrutura; Manutenção da infra-estrutura. 34

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais n Processo de Melhoria n Atividades para estabelecer, avaliar, medir, controlar e melhorar um processo de ciclo de vida de software. n n n Estabelecimento do processo; Avaliação do processo; Melhoria do processo. 35

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Processos Organizacionais n Processo de Treinamento n Atividades para prover e manter pessoal treinado. n n n Implementação do processo; Desenvolvimento do material de treinamento; Implementação do plano de treinamento. 36

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n Processo de Adaptação n Apresenta um processo para realizar a adaptação básica desta norma para um projeto de software. n n Identificação do ambientes do projeto; Solicitação de informações; Seleção de processos, atividades e tarefas; Documentação de decisões e motivos da adaptação. 37

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n Orientação para Adaptação n n Nenhum projeto é idêntico. Variações nas políticas e procedimentos organizacionais, métodos e estratégias de aquisição, tamanho e complexidade do projeto, requisitos e métodos de desenvolvimento do sistema, entre outras coisas, influenciam na forma como um sistema é adquirido, desenvolvido, operado e mantido. 38

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n

ISO 12207 – Processos do Ciclo de Vida do Software ISO 12207 Anexos n Orientações sobre processos e organizações n n Tem o objetivo de proporcionar um melhor entendimento sobre processos, organizações e seus relacionamentos. Apresenta os processos do ciclo de vida (fundamentais, de apoio e organizacionais), suas atividades constituintes sob diferentes visões. 39

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos Fundamentais Contrato

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos Fundamentais Contrato com Fornecedor Engenharia 1. Aquisição 1 Desenvolvimento 1. 1 1. 2 1. 3 1. 4 Proposta de Aquisição Seleção do Fornecedor Gerenciamento do Fornecedor Aceitação do Cliente 2. Fornecedor 3. Requisitos 4. Operação 4. 1 Operação do Sistema 4. 2 Apoio (Suporte) ao Cliente 1. 1 1. 2 1. 3 1. 4 Análise e Projeto do Sistema Análise dos Requisitos Projeto do Software Implementação do Software 1. 5 Integração do Software 1. 6 Testes de Software 1. 7. Integração e Testes de Sistema 2 Manutenção 40

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos de Apoio

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos de Apoio 1. Documentação 2. Gerência de Configuração 3. Garantia de Qualidade 4. Verificação 5. Validação 6. Revisão Conjunta 7. Auditoria 8. Resolução de Problemas 9. Measurement 10 Reutilização 41

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos Organizacionais Gerenciamento

Visões ISO 12207 – Processos do Ciclo de Vida do Software Processos Organizacionais Gerenciamento Organização 1. Gerenciamento 1. Processo Organizacional 2. Melhoria 1. 1 Gerenciamento de Projeto 2. Gerenciamento da Qualidade 3. Gerenciamento de Riscos 2. 1 Estabelecimento do Processo 2. 2 Verificação do Processo 2. 3 Melhoria do Processo 3. Infra-Estrutura 4. Gerenciamento de Recursos Humanos 42

ISO 12207 – Processos do Ciclo de Vida do Software Considerações Finais n n

ISO 12207 – Processos do Ciclo de Vida do Software Considerações Finais n n A norma detalha cada um dos processos do ciclo de vida, define como eles podem ser usados de diferentes maneiras por diferentes organizações (ou parte destas), representando diversos pontos de vista para esta utilização. Cada uma das visões representa a forma como uma organização emprega estes processos, agrupandoos de acordo com suas necessidades e objetivos. 43

ISO 12207 – Processos do Ciclo de Vida do Software Considerações Finais n n

ISO 12207 – Processos do Ciclo de Vida do Software Considerações Finais n n As Visões têm o objetivo de organizar melhor a estrutura de uma empresa, para definir suas gerências e atividades alocadas às suas equipes. Existem cinco visões diferentes: contrato, gerenciamento, operação, engenharia e apoio. A ISO/IEC 12207 é a primeira norma internacional que descreve em detalhes os processos, atividades e tarefas que envolvem o fornecimento, desenvolvimento, operação e manutenção de produtos de software. 44

ISO 12207 – Processos do Ciclo de Vida do Software Conclusões n n A

ISO 12207 – Processos do Ciclo de Vida do Software Conclusões n n A norma ISO/IEC 12207 fornece um conjunto completo de processos para aquisição ou fornecimento de produtos os serviços. Sua arquitetura pode ser acomodada a modernos métodos de software, técnicas, ferramentas e ambiente de engenharia. 45