SóProvas



Questões de REFATORAÇÃO


ID
163048
Banca
CESGRANRIO
Órgão
Petrobras
Ano
2010
Provas
Disciplina
Arquitetura de Software
Assuntos

É comum, na Engenharia de Software, o uso de ferramentas de software que auxiliam na realização de diversas atividades do desenvolvimento. Nesse contexto, ferramentas de

Alternativas
Comentários
  • Refatoração (do inglês Refactoring) é o processo de modificar um sistema de software para melhorar a estrutura interna do código sem alterar seu comportamento externo.
  • A análise estática do código é um tipo de teste ou exame que pode ser realizado sem executar o código.
    Permite:

    Análise de Fluxo de Controle
    Análise de fluxo de controle fornece informação sobre pontos de decisão lógica nos sistemas desoftware e a complexidade de sua estrutura.

    Análise de Fluxo de Dados
    Análise de fluxo de dados é uma técnica de teste estruturada que testa os caminhos entre onde avariável é estabelecida até onde ela é subsequentemente usada. Esses caminhos são denominadosde pares definição-uso (pares du) ou estabelecimento-uso. Nesse método, os conjuntos de teste sãogerados para alcançar 100% de cobertura (quando possível) para cada um desses pares.Essa técnica, apesar de denominada análise de fluxo de dados, também considera o fluxo de controledo software sob teste já que ele segue o estabelecimento e o uso de cada variável, e pode ter queatravessar o fluxo de controle do software.

    Conformidade com Padrões de Codificação
    Durante a análise estática, a conformidade aos padrões de codificação também podem ser avaliadas.Os padrões de codificação cobrem tanto aspectos arquiteturais quanto o uso (ou proibição do uso) dealgumas estruturas de programação.A conformidade com os padrões de codificação permite que o software seja mais passível demanutenção e teste. Requisitos específicos da linguagem podem também ser verificados usandoteste estático.

    Geração de Métricas de Código

    Métricas de código podem ser geradas durante a análise estática, a qual contribuirá para um mais alto nível de capacidade de manutenção ou confiabilidade do código. Exemplos de tais métricas são:
    Complexidade ciclomática
    Tamanho
    Frequência de comentários
    Número de níveis aninhados (grau de dependência entre seus componentes.)
    Número de chamadas de funções

  • Integração Continua
    consiste em integrar o trabalho realizado por várias pessoas durante diversos momentos do dia, e realizar testes que permitam assegurar que o código continue consistente ao final de cada integração.
  • Engenharia Reversa
    É uma técnica usada para tentar obter o código fonte do programa a partir do arquivo já compilado.
  • Cobertura de código
    É uma medida usada em testes de software .
    Ela descreve o grau em que o código-fonte de um programa foi testado. É uma forma de teste que inspeciona o código diretamente e, portanto, uma forma de teste de caixa branca.
  • André, qual é a fonte dessas informações que você postou?
    Obrigado!
  • A = MELHORO O INTERNO SEM ALTERAR O EXTERNO

    C = A estratégia de “integração contínua” ajuda a evitar problemas de compatibilidade e de interface, além de criar um ambiente “teste da fumaça'' que ajuda a revelar erros precocemente.

    D = Processo de analisar um programa na tentativa de criar uma representação dele em um nível mais alto de abstração do que o código-fonte. A engenharia reversa é um processo de recuperação do projeto.

    E = Cada código é testado enquanto está sendo escrito; assim, os defeitos são descobertos no início do processo de desenvolvimento

    GABARITO B

    PRESSMAN


ID
943216
Banca
CESPE / CEBRASPE
Órgão
INPI
Ano
2013
Provas
Disciplina
Arquitetura de Software
Assuntos

A documentação da arquitetura de software de sistema facilita a comunicação entre os participantes do desenvolvimento do sistema.

A respeito das práticas de arquitetura de software, julgue os itens a seguir.

A refatoração objetiva tornar o código mais claro e limpo.

Alternativas
Comentários
  • Correto. Refatoração (do inglês Refactoring) é o processo de modificar um sistema de software para melhorar a estrutura interna do código sem alterar seu comportamento externo.
    O uso desta técnica aprimora a concepção (design) de um software e evita a deterioração tão comum durante o ciclo de vida de um código. Esta deterioração é geralmente causada por mudanças com objetivos de curto prazo ou por alterações realizadas sem a clara compreensão da concepção do sistema. Fonte: Wikipedia
  • Refatoração de código

    Remoção de duplicação

    Melhora a estrutura interna do código sem alterar seu comportamento externo

    Incrementa melhoria no entendimento do código

    Utiliza fortemente conceitos de OO

    Evita a deterioração durante o ciclo de vida da um código


ID
943219
Banca
CESPE / CEBRASPE
Órgão
INPI
Ano
2013
Provas
Disciplina
Arquitetura de Software
Assuntos

A documentação da arquitetura de software de sistema facilita a comunicação entre os participantes do desenvolvimento do sistema.

A respeito das práticas de arquitetura de software, julgue os itens a seguir.

Ao refatorar um código, altera-se a funcionalidade do sistema.

Alternativas
Comentários
  • Errado.
    Refatoração (do inglês Refactoring) é o processo de modificar um sistema de software para melhorar a estrutura interna do código sem alterar seu comportamento externo.
    O uso desta técnica aprimora a concepção (design) de um software e evita a deterioração tão comum durante o ciclo de vida de um código. Esta deterioração é geralmente causada por mudanças com objetivos de curto prazo ou por alterações realizadas sem a clara compreensão da concepção do sistema. Fonte: Wikipedia
  • Refatorar um código é justamente, alterar a estrutura interna do código sem alterar a funcionalidade.

  • Cespe 2012 Q256696 "Denomina-se refatoração a atividade de reestruturação de programas, classes e métodos existentes para adaptá-los a alterações de funcionalidades e requisitos."

    Gabarito CESPE: CERTA. Essa deveria ser FALSA!

     

    Cespe 2013 Q314404 "Ao refatorar um código, altera-se a funcionalidade do sistema."

    Gabarito CESPE: FALSA. Essa é realmente FALSA!

     

    Cespe 2015  Q547730 "A cada nova funcionalidade de software adicionada na prática de refactoring (refatoração) em XP, a chance, o desafio e a coragem de alterar o código-fonte de um software são aproveitados como oportunidade para que o design do software adote uma forma mais simples ou em harmonia com o ciclo de vida desse software, ainda que isso implique a alteração de um código com funcionamento correto."

    Gabarito CESPE: Correta no início mas ANULADA. Essa deveria ser FALSA!

     

     

    A Cepse tem que definir seu posicionamento.