SóProvas


ID
1306522
Banca
CESPE / CEBRASPE
Órgão
ANATEL
Ano
2014
Provas
Disciplina
Engenharia de Software
Assuntos

No que se refere a práticas ágeis, julgue o item. 


O fato de cada código ter sua própria estrutura não constitui impedimento para se estabelecerem padrões para a prática de refactoring, sendo possível, por exemplo, utilizar padrões de projeto, como o factory method, para remover duplicações no código.

Alternativas
Comentários
  • Estruturas diferentes não impedem a utilização de padrões para o refactoring?

  • A equipe de programação deve estar focada em possíveis melhorias para o software e em implementação imediata destas. Quando um membro da equipe percebe que o código pode ser melhorado, essas melhorias são feitas, mesmo quando não existe necessidade imediata destas. Exemplos de refatoração incluem a reorganização da hierarquia de classes para eliminação de código duplicado, a arrumação e renomeação de atributos e métodos, bem como a substituição do código com as chamadas para métodos definidos em uma biblioteca de programas.

     

    A pressão pelo desenvolvimento significa que a refatoração será postergada, porque a maior parte do tempo é dedicada à implementação de nova funcionalidade. Algumas novas caracterísicas e mudanças não podem ser facilmente acomodadas por refatoração do nível do código, e exigem modificações da arquitetura do sistema.

     

    Fonte: Sommerville, 9ª Edição, Capítulo 3.

  • A questão cobra conhecimento sobre as práticas ágeis de desenvolvimento de software, mais especificamente sobre a refatoração.

    Conforme Pressman, a refatoração, uma prática comumente recomendada das abordagens ágeis,  é uma técnica de reescrita de código “que simplifica o projeto (ou código) de um componente sem mudar sua função ou comportamento. O resultado será um software mais fácil de se integrar, testar e manter” [1].

    De forma complementar, Sommerville diz que “quando um membro da equipe percebe que o código pode ser melhorado, essas melhorias são feitas, mesmo quando não existe necessidade imediata destas. Exemplos de refatoração incluem a reorganização da hierarquia de classes para eliminação de código duplicado, a arrumação e renomeação de atributos e métodos, bem como a substituição do código com as chamadas para métodos definidos em uma biblioteca de programas” [2].

    Assim, a aplicação de padrões de projetos que removam redundâncias ou duplicações de código, como o método fábrica que encapsula o código de instância dos objetos, está totalmente aderente à finalidade da prática de refatoração. Uma outra vantagem desse método é que a manutenção, quando modificações são necessárias, fica em um local único.


    Gabarito da professora: CERTO.



    Referências:

    [1] Engenharia de software: uma abordagem profissional, Roger S. Pressman; tradução Ariovaldo Griesi ; revisão técnica Reginaldo Arakaki, Julio Arakaki, Renato Manzan de Andrade. – 7. ed. – Dados eletrônicos. – Porto Alegre : AMGH, 2011.

    [2] Engenharia de Software, Ian Sommerville; tradução Ivan Bosnic e Kalinka G. de O. Gonçalves; revisão técnica Kechi Hirama. — 9. ed. — São Paulo: Pearson Prentice Hall, 2011.