Você está na página 1de 6

Engenharia de Software

Agenda 3
UA Manutenção de Software
Manutenção corretiva: O tipo de manutenção foi a corretiva, pois foram
corrigidos problemas e bugs encontrados no software.
Manutenção evolutiva: Foram realizadas mudanças para adicionar
funcionalidades ao sistema.
Manutenção adaptativa: Foram realizadas alterações no software para que
ele se adapte à nova realidade da empresa.
Manutenção preventiva: Foram realizados testes e melhorias no sistema, de
forma preventiva, antes da sua entrega.
O conceito de manutenção de software é: Qualquer trabalho no software
realizado após ele se tornar operacional como objetivo de: corrigir; alterar;
adaptar; aperfeiçoar.
1)O processo de manutenção de software, em alguns casos, enfrenta
problemas que dificultam todo o processo. Qual é a principal causa desses
problemas?
A maioria dos problemas com a manutenção do software é causada por
deficiências na maneira como ele foi planejado e desenvolvido.
 
2)O que significa manutenibilidade?
Manutenibilidade pode ser definida como a facilidade com que o software pode
ser entendido, corrigido, adaptado e/ou melhorado.
UA Teste de Software
Testes unitários: garantem que pequenas partes funcionais do sistema
estarão respondendo aos requisitos de software, ou seja, que funções,
métodos, classes e outros elementos de código estarão em funcionamento.
Neste tipo de teste, serão verificados os pequenos cálculos que devem ter
assertividade em 100% dos casos.
Testes de integração: na entrega de cada incremento de software, deverão
ser realizados testes de integração para garantir que cada incremento não irá
prejudicar o funcionamento dos softwares de forma geral.
Teste de sistemas e de aceitação: o teste de sistema irá garantir o
funcionamento como um todo, sendo possível verificar também todas as
questões funcionais. Esse teste pode ser realizado como forma de aceitação
pelos clientes e testadores ao final do projeto como forma de analisar se os
requisitos estão atendidos.

1)O comportamento interno do componente de software trabalha diretamente


sobre o código-fonte do componente de software para avaliar aspectos como
teste de condição, teste de fluxo de dados, teste de ciclos, teste de caminhos
lógicos e códigos nunca executados. Das técnicas apresentadas a seguir, qual
avalia esse comportamento interno do componente de software?
 Teste de caixa-branca.
Os aspectos avaliados nessa técnica de teste dependerão da complexidade e
da tecnologia que determinarem a construção do componente de software. A
técnica inclui os testes unitários.

2)Qual é a fase de teste em que se testam as menores unidades


de software desenvolvidas (pequenas partes ou unidades do sistema)?
Teste de unidade.
O objetivo é encontrar falhas de funcionamento dentro de uma pequena parte
do sistema, funcionando independentemente do todo.

3)O que é TDD na Engenharia de Software?


O TDD é uma técnica de desenvolvimento de software que se baseia na
criação inicial de testes de software antes mesmo do desenvolvimento.
O Test Driven Development (TDD), ou Desenvolvimento Guiado por Testes, é
uma técnica na qual o desenvolvedor cria o software para atender apenas aos
requisitos. Esse desenvolvimento é guiado e controlado pelos testes unitários
previamente criados.
4)O ciclo de vida de testes de software tem cinco fases: planejamento,
preparação, especificação, execução e entrega. Qual fase tem como objetivo
elaborar e revisar os casos e roteiros de testes?
Especificação.
Na especificação, há as seguintes atividades: elaborar/revisar casos de testes
e elaborar/revisar roteiros de testes.
RESUMO
Conceitos gerais de manutenção de software: É um procedimento de
atualização e aperfeiçoamento um software já em operação, assim como
conserto de defeitos e imperfeições deste software.

Problemas que podem ocorrer na manutenção de software: Baixa


qualidade na documentação de software, problemas no desenvolvimento,
problemas na definição dos requisitos, entre outros.

Tipo de de mudanças de software e seus motivos: 

 Manutenção Corretiva: Visa o reparo de defeitos do software.

 Manutenção Adaptativa: Adaptações no software para


funcionar em um ambiente alterado;

 Manutenção Evolutiva: Manutenção que visa melhorar o


funcionamento do sistema;

 Manutenção Preventiva: Tem por objetivo, prevenir falhas no


software.

Conceitos de testes: Teste de software é a investigação do software a


fim de fornecer informações sobre sua qualidade em relação ao contexto
em que ele deve operar.

 Testes unitários: Os testes unitários visam a validação de uma


pequena parte do sistema.

 Testes de integração: Os testes integrados visam validar o


funcionamento de várias partes do sistema em conjunto.

 Testes de sistemas: Atestar o funcionamento do software em


ambiente de produção.

 Testes de aceitação: Verificar o atendimento dos requisitos antes


da entrega do software.

 Outros testes: De configuração; de instalação; de integridade; de


segurança; funcional; de volume; de performance; de usabilidade;
de caixa branca e caixa preta; de regressão; de manutenção.

Ciclo de vida de testes de software: São as tarefas, atividades e tarefas,


do processo de software, que compreende todo o ciclo de vida do
software. As etapas deste processo seguem:

 Levantamento de necessidades: Nesta fase um modelo


preliminar dos requisitos é criado e validado;
 Análise: Os requisitos elencados na fase anterior são refinados e o
software é especificado;

 Projeto: É definida a arquitetura do sistema entre outros detalhes


do sistema;

 Implementação: Codificar o sistema na plataforma definida;

 Manutenção e pós entrega: Treinamento e correção de bugs.

Recursos técnicos que atuam nos testes: Unitários; JUnit; PHPUnit; Flask;
Sistema e aceitação; Sikuli; Selenium WebDriver; Robotium.

Você também pode gostar