Questões de Concurso Comentadas sobre engenharia de software
Foram encontradas 12.717 questões
Um Analista de Sistemas necessita mostrar a troca de mensagens entre objetos de uma aplicação. Para isso, leu a documentação da UML 2.5 e notou que nessa linguagem os diagramas são divididos em duas categorias: estruturais (structure diagrams) e comportamentais (behavior diagrams).
O diagrama que o Analista deverá utilizar e a categoria à qual pertence são, respectivamente:
Numere a segunda coluna de acordo com a primeira, associando os tipos de direito de acesso a métodos de uma classe às respectivas características.
(1) Private
(2) Protected
(3) Public
( ) Métodos que podem ser acessados em classes externas ao respectivo package.
( ) Métodos que só podem ser chamados dentro da classe em que estão definidos.
( ) Métodos que podem ser chamados dentro das classes derivadas daquela em que estão definidos.
A sequência correta de preenchimento dos parênteses da segunda coluna, de cima para baixo, é
No que se refere a classes abstratas e polimorfismo, assinale com V (verdadeiro) ou F (falso) as afirmações abaixo.
( ) Classes abstratas não podem ser instanciadas.
( ) Todos os métodos de uma classe abstrata devem estar sobrescritos na classe concreta que a estende.
( ) Uma classe concreta corresponde a uma generalização de uma classe abstrata.
( ) Diferentes classes concretas de uma mesma classe abstrata podem sobrescrever o mesmo método.
A sequência correta de preenchimento dos parênteses, de cima para baixo, é
Considere as afirmações abaixo em relação à herança, um dos principais conceitos de programação orientada a objetos.
I - A herança permite a criação de hierarquias de classes, e a raiz dessa árvore deve ser uma classe abstrata.
II - As classes derivadas de uma determinada classe são chamadas de subclasses.
III - Superclasses são classes a partir das quais foram definidas subclasses.
Quais estão corretas?
Métricas de produto são usadas para medir atributos de qualidade de um sistema de software. Por definição, ____________ é a medida do número de métodos que poderiam ser executados em resposta a uma mensagem recebida por um objeto dessa classe. Quanto maior o seu valor, mais complexa é a classe e, portanto, mais provável que inclua erros.
Assinale a alternativa que preenche, corretamente, a lacuna do texto acima.
Sobre Desenvolvimento Dirigido por Testes (TDD), considere os itens abaixo.
I - Teste Isolado (Isolated Test)
II - Teste Primeiro (Test First)
III - Teste de Explicação (Explanation Test)
Quais são padrões para TDD?
A uma coleção de versões de componentes que compõem um sistema, dá-se o nome de ___________. Há um controle sobre essa coleção, o que significa que as versões dos componentes que constituem o sistema não podem ser alteradas e, portanto, deveria ser sempre possível recriar a coleção a partir de seus componentes.
Assinale a alternativa que preenche, corretamente, a lacuna do texto acima.
Considere os itens abaixo.
I - Depuração simplificada: quando um teste falha, a localização do problema deve ser óbvia.
II - Diminuição da necessidade de cobertura de código: nem todo segmento de código que é escrito deve ter um teste associado.
III - Documentação do sistema: os testes agem como uma forma de documentação, descrevendo o que o código deve estar fazendo.
Quais são benefícios do uso do Desenvolvimento Dirigido por Testes (TDD)?
Sobre Versionamento e Gerenciamento de Versões, considere as afirmações abaixo.
I - O gerenciamento de versões é o processo de acompanhamento de diferentes versões de componentes de software ou itens de configuração e dos sistemas em que esses componentes são usados. Refere-se também à garantia de que as mudanças feitas por diferentes desenvolvedores para essas versões não interfiram umas nas outras.
II - Em um sistema de gerenciamento de versões com uma variedade de recursos, desenvolvedores diferentes não podem trabalhar, ao mesmo tempo, no mesmo componente, pois se o fizessem, as mudanças feitas por diferentes desenvolvedores poderiam interferir umas nas outras.
III - Os sistemas de gerenciamento de versões fornecem, em geral, recursos de gerenciamento de armazenamento. Sua função é reduzir o espaço de armazenamento requerido pelas várias versões de componentes, que diferem apenas ligeiramente umas das outras. Em vez de manter uma cópia completa de cada versão, o sistema armazena uma lista de diferenças (deltas) entre uma versão e outra.
Quais estão corretas?