Baixe o app para aproveitar ainda mais
Prévia do material em texto
Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software Adriana Scrobote Aleffer Rocha scrobote@alunos.utfpr.edu.br aleffer@alunos.utfpr.edu.br Universidade Tecnológica Federal do Paraná Outubro de 2015 Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 1 / 27 Roteiro Introdução; Motivação; Engenharia de Requisitos; Manutenção do Software Caracterização de Problema; Análise Crítica; Trabalhos Futuros; Referências. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 2 / 27 Introdução Estudos apontam grande quantidade de projetos de softwares cancelados ou fracassados; Motivos? Não atendem as necessidades dos clientes; Excedem o prazo estimado para entrega; Excedem o custo calculado. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 3 / 27 Introdução Por que isso acontece? R: Falta de..., falta de..., falta de... Qual a principal causa? R: Diversos trabalhos apontam deficiências nos requisitos dos sistemas como principal causa. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 4 / 27 Motivação As características da manutenção de sistemas legados tornam importantes as pesquisas em processos de manutenção de software, especialmente na área de ER (Engenharia de Requisitos). Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 5 / 27 Engenharia de Requisitos Segundo Kotonya e Sommerville, ER é um termo que engloba todas as atividades envolvidas na descoberta, documentação e manutenção de um conjunto de requisitos para um sistema computacional. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 6 / 27 Engenharia de Requisitos O principal artefato trabalhado em ER é o documento de requisitos; Segundo Sommerville e Sawyer, o documento de requisitos é a declaração formal dos requisitos para os stakeholders. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 7 / 27 Engenharia de Requisitos PROCESSO DE ER Um processo de ER é um conjunto estruturado de atividades a serem seguidas para criar, validar e manter um documento de requisitos. (a) Modelo de atividades genérico para processos de ER Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 8 / 27 Engenharia de Requisitos PROCESSO DE GERÊNCIA DE REQUISITOS Gerência de requisitos envolve a utilização de técnicas e ferramentas para gerenciamento de configuração e controle de versão, além de verificar inconsistências nas especificações conforme estas evoluem. (b) Aspectos importantes na gerência de requi- sitos Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 9 / 27 Engenharia de Requisitos Mudanças nos requisitos são inevitáveis e não implicam necessariamente em falhas nas práticas de ER, entretando é uma boa prática tentar antecipar as mudanças dos requisitos; É de extrema importância identificar os requisitos pois a ausência desta identificação pode tornar a gerência de requisitos impraticável; A vantagem de armazenar requisitos em documentos de requisitos é que os mesmos estão reunidos em um único documento, facilitando então posteriormente para consulta para novas versões, etc. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 10 / 27 Engenharia de Requisitos Porém a desvantagem deste armazenamento de informações de requisitos pois dificulta a manutenção das informações relativas às dependências entre os requisitos; Para "eliminar" essa desvantagem, os requisitos precisam ser armazenados em um banco de dados para cada um dos requisitos representados por uma ou mais entidades de banco de dados. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 11 / 27 Manutenção de Software SISTEMAS LEGADOS Um sistema legado é um sistema de missão crítica; Ele é desenvolvido em algum momento do passado qual o mesmo é usado e ainda vem sendo modificado ao longo do tempo sem se submeter a sistemáticas ações de melhoria. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 12 / 27 Manutenção de Software A manutenção de software é conhecida como atividade que demanda o maior volume de esforço dentre todas as atividades de ES (Engenharia de Software); A manutenção de software é definida como a modificação de um produto de software após a sua entrega (ao cliente) para corrigir erros, melhorar sua performance, adaptar o software ao ambiente modificado, etc. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 13 / 27 Caracterização do Problema Compreender os requisitos de um sistema legado torna-se importante para melhorá-los e integrá-lo com o restante de sistemas de informações ou realizar a reengenharia do sistema; Entretanto, a falta de precisão da documentação do sistema ou a inexistência da mesma e a indisponibilidade dos stalkeholders originais tornam o trabalho caro e difícil. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 14 / 27 Caracterização do Problema Na figura (c) temos em destaque as principais dificuldades encontradas em ER em projetos de manutenção de software: (c) Principais dificuldades encontradas em ER em projetos de manutenção de software Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 15 / 27 Análise Crítica Estas dificuldades causam grande impacto direto no sucesso dos projetos, bem como também na qualidade dos produtos resultantes dos processos de manutenção. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 16 / 27 Análise Crítica DIFICULDADES NO PROCESSO DE ER A figura (d) a relação entre as dificuldades encontradas na manutenção de software e as atividades do processo de ER: (d) Impacto das dificuldades da manutenção sobre o processo de ER Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 17 / 27 Análise Crítica IMPACTO NA ATIVIDADE DE ELICITAÇÃO DOS REQUISITOS Importância do sistema legado como ponto de partida para a compreensão do sistema atual e o correto levantamento de novos requisitos. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 18 / 27 Análise Crítica IMPACTO NA ANÁLISE E NEGOCIAÇÃO DOS REQUISITOS É dificultosa a atividade de negociação com os stakeholders, pois alguns ou todos estes responsáveis pelos requisitos originais podem não estar mais disponíveis para negociação; A análise e negociação dos requisitos podem tornar-se ainda mais difíceis caso os requisitos originais não estejam disponíveis ou não sejam recuperados durante a elicitação dos requisitos. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenhariade Requisitos em Manutenção de Software2015 19 / 27 Análise Crítica IMPACTO NA DOCUMENTAÇÃO DE REQUISITOS O principal impacto na documentação dos requisitos está relacionado à forma como são documentadas as dependências entre os requisitos definidos no projeto de manutenção e os requisitos originais do sistema; É necessária uma documentação adequada das dependências e do rastreamento entre os requisitos para garantir que o projeto seja corretamente dimensionado e que as modificações propostas estejam de forma clara. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 20 / 27 Análise Crítica IMPACTO NA VALIDAÇÃO DOS REQUISITOS O sucesso desta atividade está ligada ao sucesso da atividade de análise, pois problemas de documentação e de indisponibilidade dos stakeholders originais que não são resolvidos durante a análise também não são resolvidos durante a validação. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 21 / 27 Análise Crítica DIFICULDADES NA GERÊNCIA DOS REQUISITOS A figura (e) ilustra a análise de impacto das dificuldades sobre a gerência de requisitos com exceção da indisponibilidade dos stakeholders originais: (e) Impacto das dificuldades na manutenção de software sobre a gerência de requisitos Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 22 / 27 Análise Crítica IMPACTO NA IDENTIFICAÇÃO E ARMAZENAMENTO DOS REQUISITOS Podem ser prejudicados em abordagens onde os requisitos são vinculados ao escopo do projeto, ao invés do produto; Um pré-requisito essencial para a gerência de requisitos é de que todos os requisitos devem possuir algum tipo de identificador único. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 23 / 27 Análise Crítica IMPACTO NA GERÊNCIA DE MUDANÇAS DOS REQUISITOS A gerência de mudanças dos requisitos pode ser prejudicada em circunstâncias onde não está disponível uma documentação adequada do requisito do sistema, pois não é viável tentar gerenciar mudanças e algo que é desconhecido; Para isso é feito a análise do problema, análise e orçamento das modificações e a implementação das modificações no documento de requisitos. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 24 / 27 Análise Crítica IMPACTO NO RASTREAMENTO DOS REQUISITOS O aspecto mais afetado de ER no contexto de manutenção de software é o rastreamento de requisitos; O mantenedor deveria ser capaz de determinar, para cada manutenção solicitada, quais os requisitos direta e indiretamente afetados pela modificação; Determinar todos os artefatos afetados pela mudança de cada uma das informações afetadas pela modificação. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 25 / 27 Trabalhos Futuros Na próxima etapa da pesquisa, Espindola pretende testar e validar os resultados apresentados no artigo, por meio do desenvolvimento de estudos de casos múltiplos em projetos de manutenção de sistemas legados de uma organização multinacional de tecnologia da informação. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 26 / 27 Referências UMA ANÁLISE CRÍTICA DOS DESAFIOS PARA ENGENHARIA DE REQUISITOS EM MANUTENÇÃO DE SOFTWARE - Rodrigo dos Santos Espindola, acesso em setembro de 2015. Adriana Scrobote - Aleffer Rocha () Uma Análise Crítica dos Desafios para Engenharia de Requisitos em Manutenção de Software2015 27 / 27
Compartilhar