Artur Potiguara Carvalho Danilo Maia Rodrigues Yuri Moraes Mota Índice Introdução RedMan Features Cronograma EAP Responsabilidades Atividades de Organização e Manutenção Recursos Processos Controle de Requerimentos Registros e Relatos Introdução RedMan Introdução Manutenção de um software já em Produção (por assim dizer); Possui funcionalidades não plenamente desenvolvidas (efetivas); Introdução Feature 1: Transformar o módulo hbeat em um processo que desempenhe a mesma função mas seja escrito em C ou C++. Feature 2: Adicionar um teste funcional que o Red Man execute sobre a aplicação. RedMan enviará a solicitação de teste, a aplicação executará o teste solicitado e retornará uma resposta ao RedMan. RedMan comparará o resultado do teste com um valor pré-conhecido. Cronograma Estrutura Analítica do Projeto Responsabilidades Papél Responsáveis Desenvolvedores Artur, Danilo e Yuri Analista de Teste Artur e Danilo Gestor de Configuração e Mudança Artur e Yuri Analista de Requisitos Danilo e Yuri Arquitetura Artur, Danilo e Yuri Refatoração Artur, Danilo e Yuri Medição 1) Tempo para compreender o programa 2) Tempo para projetar as mudanças (Feature 1, 2 e refatoração) 3) Tempo de Implementação (Feature 1, 2 e refatoração) 4) Tempo de Testes e Debugging (Feature 1, 2 e refatoração) *Valores já estimados e medidos para validação; Papéis e responsabilidades do mantedor referentes à pré-entrega • Implementação do Processo • Estabelecer o Processo de Manutenção de Software • Procedimentos para Relato de Problemas (RP) e Requisições de Mudança (RM) Implementação do Processo Determinar baselines ou obter baselines relevantes através através da utilização do software, caso a documentação do mesmo esteja falha. Iniciar a documentação do software através de Engenharia Reversa, caso não exista. Avaliar relatos de problemas e requisições de mudança, caso existam. Determinar cronograma das possíveis mudanças. Implementar nova feature ou corrigir bugs discriminados previamente. Estabelecer o Processo de Manutenção de Software Determinar o escopo da manutenção. Determinar a existência de alternativas organizacionais. Conduzir uma análise de recurso, estimando custos da manutenção. Designar tarefas à equipe de manutenção, a qual seguirá os procedimentos referentes à relato de problemas e requisições de mudança. Participar das atividades da Equipe de Manutenção, monitorando a implementação das tarefas designadas à equipe previamente. Procedimentos para Relato de Problemas (RP) e Requisições de Mudança (RM) Numerar RP/RMs de acordo com a prioridade de implementação Seguindo os princípios de boa prática de programação, refatoração e documentação, implementar as RMs ou debugar os RPs Atividades de Organização e Manutenção Papéis e responsabilidades do mantedor referentes à pós-entrega • Implementação do Processo • Análise de Problema e Modificação • Implementação de Modificação • Revisão/Aceitação da Manutenção Implementação do Processo Executar a Análise de Problema e Modificação. Verificar se as mudanças e bugs foram implmentados ou corrigidos. Documentar dados referentes às mudanças. Treinar equipe de desenvolvimento, caso necessário. Aprimorar o processo Análise de Problema e Modificação Considerando os documentos de RM/RP, Baseline, Documentação do Sistema, Requisitos Funcionais e outputs da pré-entrega, determinar o tipo (corretivo, melhoramento, preventivo ou adaptativo), o escopo (tamanho da modificação, custo envolvido, esforço) e se afetará diretamente na performance, segurança etc. Análise de Problema e Modificação Para garantir que a RM/RP é aplicável, deve-se: Determinar se o Gerente de Mudanças estará disponível para gerenciar a mudança Determinar se o programa está devidamente debugado Determinar a prioridade Determinar o impacto em cronogramas existentes Determinar os possíveis riscos ao projeto e ao software resultantes da mudança Implementação de Modificação Identificar os elementos a serem modificados no sistema. Identificar os elementos de interface modificados pela modificação. Identificar a documentação a ser atualizada Atualizar a documentação do software Revisão/Aceitação da Manutenção Identificar as RMs/RPs implementados Verificar testabilidade do código Verificar conformidade com boas práticas de programação Verificar se somente o que foi especificado foi modificado Verificar se os novos componentes foram integrados devidamente Verificar se a documentação foi atualizada Realizar os testes por uma equipe distinta Documentar resultados do teste •Plano de Gerenciamento do Projeto •Forma de manter a qualidade do Software durante o desenvolvimento •Plano de Gerenciamento de Configuração •Forma de manter a qualidade do Software enquanto se realiza alterações ou melhoras no projeto Processos Cada processo influenciará não só o produto como também a documentação Boas práticas durante o processo geram bons artefatos e menos erros Controle de Requerimentos É necessário que mantenha alto controle sobre as modificações requeridas Pois elas podem acarretar em fatos desagradáveis que dificultariam a manutenção posterior Registros e Relatos É necessário documentar toda e qualquer atividade realizada na manutenção para que se tenha controle sobre o que está acontecendo com a estrutura do software