• Nenhum resultado encontrado

3.2 Resultados

3.2.3 Problemas da Manutenção de Software

O mapeamento dos principais problemas da manutenção identificados nos estudos primários é apresentado no Quadro 3.10. Os problemas foram extraídos quando mencionados no contexto da manutenção e evolução de software, o que não significa que são problemas exclusivos desta atividade. Alguns estudos (E04, E05, E13, E15, E17,

E30, E31, E33, E35) não foram mapeados por não descreverem explicitamente

problemas da manutenção e evolução de produtos de software As principais considerações extraídas dos estudos são descritas a seguir:

(P1) Altos Custos da Manutenção de Software: Os estudos relatam que o

custo da manutenção de software é muito elevado; os custos desta atividade podem variar de 50% a 90% do ciclo de vidado software. De acordo com E25, 61% da vida de programadores é dedicada a manutenção e apenas 39% para novos desenvolvimentos. Conforme E14, mantenedores gastam cerca de 40% do seu tempo entendendo o software;

(P2) Baixa Motivação de Pessoas: Os estudos apontam a baixa motivação

com o estudo E12 apesar da importância da atividade de manutenção, esta tem uma imagem negativa entre os membros da equipe, incluindo seus gestores;

(P3) Baixo Entendimento do Sistema: Os estudos apontam que existe

dificuldade em garantir e manter o entendimento dos sistemas. Os estudos apontam que isto é agravado devido à constante evolução dos produtos, a complexidade do software e o baixo entendimento do domínio de aplicação. Conforme o E14, muitos mantenedores só conhecem as partes do produto que estão mantendo, não possuindo conhecimentos gerais suficientes sobre outras partes do produto. De acordo com E16, as organizações de suporte possuem pouco conhecimento sobre o negócio de seus clientes. Outro fator relevante é o conhecimento do sistema por parte dos usuários, sobre o que os estudos E03 e E20 apontam que o treinamento do usuário é inapropriado;

(P4) Complexidade do Software: O tamanho e a complexidade do software

são apontados como problemas raízes inerentes à manutenção de software, o que aumenta o tempo gasto com o seu entendimento e a dificuldade e esforço para mantê-lo;

(P5) Dificuldade em Estimar as Atividades de Manutenção: Os estudos E01 e E20 afirmam que uma das maiores preocupações das empresas de

manutenção é compreender e estimar os custos de uma versão de manutenção do sistema;

(P6) Dificuldade em Gerenciar Problemas e Solicitações de Mudanças:

Alguns trabalhos (E01, E10, E11, E14, E19, E20, E24, E28) apontam a falta ou dificuldade de gerir problemas e solicitações de mudanças, realizando análise de causa raiz e impacto. O estudo E14 descreve que diagnosticar problemas é difícil por diversas razões, entre as quais, os clientes finais podem descrever o mesmo problema de maneiras diferentes, o mesmo problema pode aparecer em diferentes ambientes sob diversas formas, e o ambiente industrial de um produto pode ser incompatível com o ambiente de manutenção do software;

(P7) Dificuldade em Gerenciar Solicitações: Os estudos E03, E06, E08, E26, E27 e E29 apontam a dificuldade de gerir as solicitações devido à falta

de solicitações pode causar atrasos enfileirados se não houver uma gestão eficiente para a vazão do atendimento;

(P8) Dificuldade em Gerenciar as Interfaces com a Manutenção: Os

estudos (E02, E03, E06, E20, E25) apontam que uma das dificuldades de definir e gerir processos para a manutenção é a diversidade de interfaces que devem ser tratadas (setor de manutenção, setor de desenvolvimento, usuário, cliente, fornecedor). De acordo com E06, estas interfaces aumentam a complexidade dos processos e por vezes tornam a atividade de manutenção dependente de fatores externo;

(P9) Falhas de Comunicação: A má comunicação impacta no entendimento

das solicitações de usuários e, consequentemente, na dificuldade em atender suas expectativas. O E14 afirma que as pessoas não possuem habilidades de comunicação suficientes para o processo de manutenção. Outro problema citado pelo estudo E20 é a falta de envolvimento da alta gestão no processo de manutenção;

(P10) Falhas de Desenvolvimento: Alguns estudos (E03, E09, E36) apontam

que problemas da manutenção advém de problemas técnicos da fase de desenvolvimento do software. Estes problemas são oriundos de falhas na captura dos requisitos, design e codificação;

(P11) Falta de Documentação: A falta de documentação é um problema

amplamente relatado na literatura analisada, o que impacta em dificuldade de entendimento dos sistemas e produtos de software, comunicação, transição e gestão do conhecimento;

(P12) Falta de Gestão de Processos: Os estudos (E02, E03, E09, E19, E23, E25) relatam que existe uma falta generalizada de controle sobre o processo

de manutenção. Conforme o estudo E02, a manutenção não recebe atenção necessária da gestão e sofre com falta de planejamento, que é ilustrado pelo seu estilo de gestão de crise;

(P13) Falta de Integração entre Desenvolvimento e Manutenção: Os

estudos apontam que a falta de participação do mantenedor durante o processo de desenvolvimento do software pode onerar o processo de manutenção devido à falta de passagem de conhecimento e pela falta de atenção aos fatores de manutenabilidade do sistema. Os estudos E03 e E16 afirmam que o

processo de desenvolvimento do software influencia fortemente o custo da manutenção e a habilidade em manter o software, caso não haja envolvimento dos mantenedores;

(P14) Falta de Medição: Os estudos (E01, E09, E10, E20, E25) apontam a

falta de definição clara sobre a medição na manutenção. O estudo E09 indica que as organizações não coletam dados adequadamente para a gestão de atividades de manutenção. Além disso, estudos apontam a dificuldade de medir a complexidade e manutenabilidade dos sistemas mantidos;

(P15) Falta de Modelos ou Padrões Adequados à Manutenção de Software: Alguns estudos apontam a falta de modelos ou padrões

direcionados a manutenção de software, ao passo que a maioria dos modelos existentes para melhoria dos processos estão ligadas a fase de desenvolvimento de software. Os estudos E25 e E16 afirmam estes modelos e padrões, no entanto, não atendem às necessidades e características específicas da manutenção de software;

(P16) Falta de Pessoas Qualificadas: Os estudos apontam a falta de pessoas

qualificadas para a manutenção de software devido à alta rotatividade e baixo número de profissionais capacitados no mercado. O E14 afirma que não é suficiente ser um bom programador para ser mantenedor, é preciso ter habilidades de escrita, pois cada etapa do processo de manutenção deve ser documentada pelos mantenedores.

(P17) Inadequação ou Inexistência de Processo: Os estudos apontam que

muitas organizações de software conduzem atividades de manutenção sem um processo definido, ou que tratam a manutenção com processos voltados ao desenvolvimento. Também é descrito a dificuldade de adaptar ou estruturar processos para atender a determinadas atividades específicas da manutenção de software;

(P18) Insatisfação do Usuário: Os estudos apontam níveis baixos de

satisfação dos usuários devido a entregas com falhas, fora do prazo e entregas que diferem do serviço esperado pelo cliente.

3.2.4 Melhoria do Processo no contexto de manutenção e evolução de software em