TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Engenharia de Software Evolução de Software

Por:   •  3/11/2021  •  Trabalho acadêmico  •  1.038 Palavras (5 Páginas)  •  1.034 Visualizações

Página 1 de 5

TRABALHO SOBRE EVOLUÇÃO DE SOFTWARE

  1. Explique por que um sistema de software usado em um ambiente real deve mudar ou tornar-se progressivamente menos útil.

                Ele deve mudar, pois implementar um software é uma atividade contínua. Mesmo após a entrega oficial ao cliente, o desenvolvimento continua, principalmente no aperfeiçoamento e correção de funcionalidades, o que cria um ciclo recursivo, onde ao implantar novas funcionalidades ou corrigi-las, o ambiente de operação muda para se adaptar, gerando novas necessidades.

  1. Explique a base lógica das leis de Lehman. Em que circunstâncias essas leis podem ser quebradas?

                A base das leis de Lehman é o estudo das mudanças de um software e o feedback delas, uma vez que os requisitos do software estão em constante mudança na maioria dos softwares, devido às novas necessidades que vem a surgir. Podem ser quebradas por questões comerciais, como marketing, por exemplo, onde, aconteceria a obrigatoriedade de alteração de várias funcionalidades de um sistema em um único release, o que acarretaria posteriormente na necessidade de novos releases para correção dos erros que passariam a existir por alterar tais funcionalidades de forma não cadencial.

  1. A partir da Figura - O processo de evolução de software (Slide 18 -parte 1), você pode ver que a análise de impacto é um subprocesso importante no processo de evolução de software. Usando um diagrama, sugira quais atividades podem estar envolvidas na análise do impacto de mudanças.

                Reanálise dos requisitos, reanálise do código e linguagem de programação, planejamento de implementação, tempo de desenvolvimento e tempo de implementação.

  1. Como gerente de projeto de software em uma empresa especializada no desenvolvimento de software para a indústria de petróleo offshore, você recebeu a tarefa de descobrir os fatores que afetam a manutenibilidade dos sistemas desenvolvidos por sua empresa. Sugira como se pode configurar um programa para analisar o processo de manutenção e descubra as métricas de manutenibilidade adequadas para sua empresa.

                Primeiramente, seria necessário analisar as interfaces do sistema, porque, uma vez que quanto maiores e mais complexas elas forem, maiores serão as chances de novos requisitos surgirem. Segundo, analisar os requisitos que podem ser mais voláteis e suscetíveis a mudanças. Também seria necessário analisar os processos de negócios, pois quanto mais complexos e numerosos, maior demanda por mudanças o software necessitaria. Quanto às métricas, elas seriam o número de solicitações de manutenção corretiva; o tempo para análise de impacto; o tempo para implantar uma mudança/correção e o número de solicitações de mudança pendentes.

  1. Descreva brevemente os três principais tipos de manutenção de software. Por que às vezes é difícil distingui-los?
  1. Correção de defeitos, onde quando são defeitos de software conhecidos como bugs, são mais fáceis e baratos de resolver. Já os erros de projeto são mais complicados porque pode ser que haja necessidade de reescrever uma funcionalidade por completo, o que demanda mais tempo e dinheiro. Já os erros de projeto são os mais caros e extensos, pois demandam uma reanálise completa e extensa do sistema.
  2. Adaptação ambiental, onde acontece quando o hardware ou sistema operacional do sistema sofre uma mudança e necessita que todo o sistema se readapte a ele;
  3. Adição de funcionalidade, que ocorre quando os requisitos do sistema mudam e demandam o desenvolvimento de uma funcionalidade não prevista na análise dos requisitos, o que acontece com mais frequência em relação aos outros tipos de manutenção supracitadas.

  1. Quais são os principais fatores que afetam os custos de reengenharia de sistema?

                Tradução do código fonte, engenharia reversa, melhoria estrutural do programa, modularização do programa e reengenharia de dados.

  1. Em que circunstâncias uma organização pode decidir descartar um sistema, mesmo que a avaliação de sistema sugira que ele é de alta qualidade e de alto valor de negócio?

                Quando o sistema não consegue mais contribuir com a demanda dos negócios, consequência de sucessivas mudança dos requisitos ao longo do tempo, que fizeram com que esse sistema não conseguisse mais suprir a atual necessidade.

  1. Quais são as opções estratégicas para a evolução do sistema legado? Quando você substituiria a totalidade ou parte de um sistema, em vez de continuar a manutenção do software?

                Descartar completamente o sistema; deixar o sistema inalterado e continuar com a manutenção; reestruturar o sistema para facilitar a manutenção ou substituir parte ou o sistema em sua totalidade por um novo. A substituição total de um sistema fica viável quando o hardware já não consegue sustentar as funcionalidades do sistema ou quando os sistemas de prateleira permitem o desenvolvimento de um novo sistema com um custo razoável.

...

Baixar como (para membros premium)  txt (6 Kb)   pdf (72.5 Kb)   docx (9.2 Kb)  
Continuar por mais 4 páginas »
Disponível apenas no TrabalhosGratuitos.com