Another Source

Mostrando postagens com marcador Engenharia de Software. Mostrar todas as postagens
Mostrando postagens com marcador Engenharia de Software. Mostrar todas as postagens

sábado, 17 de abril de 2010

Questões TRE-BA 2010 - Teste de Software - CESPE



 76  - Resposta: Correta
        Teste de regressão, segundo Pressman, é a reexecução de um subconjunto de testes que já foi conduzido para garantir que as modificações não propagassem efeitos colaterais indesejáveis. O teste de regressão ajuda a garantir que o sistema não regrida, ou seja, que modificações não introduzam comportamento indesejável ou erros adicionais.

77 - Resposta: Errada
       O teste de unidade se concentra nas unidades fundamentais do software em construção. Focaliza o esforço de verificação na menor unidade de projeto de software. Enfoca a lógica interna de processamento e as estruturas de dados dentro dos limites de um componente.
   A questão faz uma mistura de teste de recuperação (O sistema é forçado a falhar de diversos modos), teste de validação (verificar se os requisitos foram adequadamente implementados), e teste de unidade (identificar erros relacionados a algoritmos incorretos).

   Ouro erro da questão é afirmar que as unidades são testadas duas a duas. No teste convencional de unidade, cada unidade é testada individualmente, enquanto no teste de unidades orientado a objetos as unidades são testadas levando-se em consideração, além do funcionamento interno, o contexto em que são inseridas.
   
78 - Resposta: Errada
      A questão descreve teste de unidade.
      Teste de integração é efetuado no nível de projeto, e não no nível de unidade individual. "Teste de integração é uma técnica sistemática para construir arquiteturas do software enquanto, ao mesmo tempo conduz testes para descobrir erros associados às interfaces. O objetivo é,  a partir de componentes testados no nível de unidade, construir uma estrutura de programa determinada pelo projeto (Pressman)".

79 - Resposta: Correta
   Teste funcional, ou teste comportamental é efetuado objetivando a verificação dos requisitos funcionais do software. A atenção é direcionada ao domínio da informação, e não à estrutura de controle interna dos componentes.

80 - Resposta: Errada:

    A imagem abaixo mostra a organização de classes do framework JUnit:



Quanto à questão, todos os casos de teste devem herdar as características da classe TesteCase e o método setUP() é chamado antes de cada método de teste.

Referências: Engenharia de Software - Pressman
                    e JUnit Tutorial.



Read rest of entry

domingo, 11 de abril de 2010

Questão do TCU (UML)

108 - Resposta: Errada

        O método #Cadastrar() da classe instrutor é sim, um método protegido. Entretando, não somente a classe possuidora pode utilizá-lo.

A visibilidade dos métodos é dividida nos seguintes tipos básicos:
  • Métodos ou atributos privados ou private (simbolo ' - '), são privativos da classe que os contém. Nenhuma outra classe pode acessá-los.
  • Métodos ou atributos públicos ou public (símbolo ' + '), podem ser chamados a partir de métodos localizados em qualquer outra classe.
  • Métodos ou atributos protegidos ou protected (símbolo '#'): Objetos da própria classe, de classes derivadas desta e de classes do mesmo pacote têm acesso aos membros protcted.
  • Métodos ou atributos com visibilidade de pacote ou package são como metodos ou atributos public, mas somente dentro do pacote em que sua respectiva classe foi declarada.
      

109 - Resposta : Correta

        Esta questão aborda dois conceitos da UML (Unified Modeling Language), ou seja, o conceito de agregação e o conceito de multiplicidade de classes.
A agregação é um tipo de associação conhecida como a relação entre o todo e as partes. Um exemplo possível é a relação "Empresa tem empregados", onde empresa é o todo e empregados são as partes.
     Duas observações podem ser destacadas com relação ao conceito de agregação:
  1.  As agregações são assimétricas, no sentido de que, se um objeto A, é parte de um objeto B, o objeto B não pode ser parte do objeto A.
  2. Um comportamento que se aplica a um todo, automaticamente se aplica também às suas partes.
     Este tipo de associação é dividido em dois tipos básicos:
  • Agregação, propriamente dita: Os objetos que fazem parte do "todo" são criados e destruídos independentemente deste último. Além disto o objeto "parte" pode ser usado para compor diversos objetos "todo".
  • Agregação composta, ou composição: Os objetos "parte" pertencem a um único "todo". Além disto, os objetos "parte" são sempre criados e destruídos pelo objeto todo. Se o todo deixa de existir, o mesmo acontece com suas partes.
       Um exemplo do relacionamento de agregação composta pode ser visto na imagem abaixo, que diz que um determinado departamento pertence a uma única empresa . Caso um objeto da classe Empresa deixe de existir, os objetos Departamento associados a ele também deixarão de existir.

    
         O outro conceito abordado é o de multiplicidade de classes, que indica, em cada associação, a quantidade de participantes de cada classe.
         A multiplicidade de uma classe pode ser representada das seguintes formas:
  • Através de um asterisco (*), indicando  um ou muitos;
  • Através de um valor fixo, como 3;
  • Através de um intervalo, como 1..3, da questão, indicando o valor mínimo e máximo, respectivamente, de participantes da associação;
  • Através de um conjunto de valores, como [1,3,4,7].


 Referêncas:  Uml, metodologias e Ferramentas CASE
                    UML, Eduardo Bezerra

Read rest of entry

sábado, 10 de abril de 2010

Questão do TCU (UML)



Resposta: Correta
Vê-se através do diagrama que os atores professor e supervisor são ligados pelos conceitos de generalização/especialização, sendo que o ator supervisor é uma especialização do ator professor, sendo assim, o ator supervisor possui todas as propriedades do ator professor, inclusive suas associações com os casos de uso
Além disto, quanto à abstração dos casos de uso, o grau de abstração de um caso de uso diz respeito à existência ou não de menção à tecnologia utilizada na descrição desse caso de uso.
     Quanto à abstração, um caso de uso pode ser:
  • Essencial: É abstrato e não faz menção à tecnologia a ser utilizada.
  • Real: As descrições das interações citam detalhes da tecnologia a ser utilizada na implementação do caso de uso.
Com isto, vê-se que todos os casos de uso representados no diagrama são abstratos ou essenciais.
      Uma forma de verificar se um caso de uso é abstrato ou não é através da utilização da “regra dos cem anos”. Ao ler a narrativa de um caso de uso pergunte se a narrativa seria válida tanto há cem anos quando daqui a cem anos. Caso a resposta seja sim, tem-se um caso de uso abstrato ou essencial, caso contrário, tem-se um caso de uso real.
      A última afirmativa da questão refere-se aos conceitos relativos aos relacionamentos de extensão.
      No caso do digrama, temos um caso de uso extensor (incluir conteúdo programático) e um caso de uso estendido (incluir notas). A seta que liga extensor e estendido parte do extensor para o estendido. Um caso de uso extensor representa um comportamento opcional, ou seja, um comportamento que só ocorre sob certas condições, ou cuja realização depende da escolha de um ator. Quando um ator opta por executar a sequência de interações definida no extensor, este é executado. Após a sua execução, o fluxo de interações volta ao caso de uso estendido, recomeçando logo após o ponto em que o extensor foi inserido.

Referência: UML, Eduardo Bezerra 
Read rest of entry

Questão do TCU (RUP)



Resposta: Errada
Nesta questão quase todas as afirmativas estão corretas, ou seja, é verdade que a criação de baselines no RUP tem como motivação a rastreabilidade, a elaboração de relatórios e a produtibilidade. Também é verdadeiro que com baselines é possível desfazer mudanças caso as atualizações realizadas sejam consideradas instáveis ou não confiáveis. O erro da questão está na afirmativa do meio, que diz que na fase de construção é possível estabelecer um marco da arquitetura do ciclo de vida do projeto. Esta afirmação seria correta se dissesse que "na fase de elaboração é possível estabelecer um marco do ciclo de vida do projeto"

- Marco dos Objetivos do Ciclo de Vida (Fase de iniciação)
- Marco da Arquitetura do Ciclo de Vida (Fase de Elaboração)
- Marco da Capacidade Operacional Inicial (Fase de Construção)
- Marco de Release do Produto (Fase de Transição)
Read rest of entry
 

Sobre mim...

Minha foto
Charles Miranda
Ver meu perfil completo

Meus links

Texto adicional

Charles Miranda Copyright © 2009 FreshBrown is Designed by Simran Template baixado em Templates blog