Você está na página 1de 74

 

O que foi a Crise de Software?


Você não acertou!
A. 
A Crise de Software permitiu o desenvolvimento de software de alta qualidade já que houve
um aumento da concorrência.
A Crise de Software não permitiu o desenvolvimento de software de alta qualidade. Ela
representa um conjunto de problemas que ocorreram devido à baixa qualidade de software e
problemas no processo de desenvolvimento.

Resposta correta.
B. 
A Crise de Software foi um termo que surgiu nos anos 70. O termo expressava as
dificuldades do desenvolvimento de software frente ao rápido crescimento da demanda
por software.
No Início dos anos 70, quando vivia-se a terceira era do software, houveram muitos
problemas de prazo e custo no desenvolvimento de software, devido à baixa produtividade,
baixa qualidade e difícil manutenção do software.

Resposta incorreta.
C. 
A Crise de Software foi acompanhada pela Crise de Hardware, que acabou gerando inúmeros
desempregos na década de 70.
A Crise de Hardware não existiu. Na verdade, a Crise de Software expressou dificuldades do
desenvolvimento de software que gerava baixa produtividade, baixa qualidade e difícil
manutenção dos sistemas produzidos.

Resposta incorreta.
D. 
A Crise de Software foi um termo criado para expressar momentos em que um sistema
apresenta processamento lento.
Embora a falta do uso de metodologias adequadas possam deixar um software lento, a Crise
de Software foi criada para expressar um momento onde a criação de software não
utilizavam métodos sistemáticos que ajudavam a manter a qualidade dos sistemas.

Resposta incorreta.
E. 
A Crise de Software ocorreu após a Segunda Guerra Mundial quando nenhum software era
vendido.
O termo "Crise de Software" foi criado na década de 70, juntamente com a necessidade de
uso de novas metodologias sistemáticas obtidas após a criação da Engenharia de Software.
Qual foi o motivo da criação da Engenharia de Software?
Você não acertou!
A. 
A Engenharia de Software foi criada porque nenhum software disponível antes da Engenharia
de Software conseguia realizar cálculos complexos.
Antes da criação da Engenharia de Software existiam softwares muito complexos e que
conseguiam realizar cálculos complexos. No entanto, eram construídos sem uma
metodologia adequada.

Resposta correta.
B. 
A Engenharia de Software foi criada para permitir o uso de elementos da engenharia de
forma controlada e sistemática no desenvolvimento de software. Também para evitar a Crise
de Software.
A Engenharia de Software permitiu o uso de elementos da engenharia que eram
amplamente utilizados em outras áreas, tornando a criação de software mais controlada,
sistemática e padronizada.

Resposta incorreta.
C. 
A Engenharia de Software foi criada para acelerar o desenvolvimento de software no Brasil.
Embora a Engenharia de Software seja uma área muito forte, hoje, no Brasil, ela também é
utilizada em todo o mundo.

Resposta incorreta.
D. 
A Engenharia de Software foi criada para facilitar o uso de software.
Este não foi o motivo pelo qual foram introduzidos elementos da engenharia na criação de
software, embora a facilidade de uso seja uma consequência de um bom planejamento e
modelagem de software.

Resposta incorreta.
E. 
A Engenharia de Software foi criada para permitir que a produção de novos sistemas tivesse
mais elementos gráficos e amigáveis ao usuário.
A criação da Engenharia de Software não foi motivada pela utilização de elementos gráficos
e melhores interfaces, mas sim pela necessidade de evitar a Crise de Software.
 
Com a introdução da Engenharia de Software, o que mudou no processo de
desenvolvimento de software?
Resposta correta.
A. 
Iniciou-se o uso de técnicas e metodologias sistemáticas e controladas já presentes na
engenharia e amplamente utilizadas em outras áreas.
Com a Crise de Software, foi proposta a Engenharia de Software para tornar a criação
de Software mais sistematizada e controlada.

Você não acertou!


B. 
A Engenharia de Software melhorou o entendimento do desenvolvedor na leitura dos
requisitos de Software.
A Engenharia de Software utilizou elementos da engenharia no processo de criação
de software. A identificação dos requisitos de software é apenas uma etapa do ciclo de
criação de software.

Resposta incorreta.
C. 
Aumentaram as vendas de sistemas de software na década de 80.
A Engenharia de Software incluiu elementos da engenharia no processo de desenvolvimento
de software.

Resposta incorreta.
D. 
Permitiu que mais pessoas pudessem ter acesso a sistemas de software.
Embora a demanda estivesse aumentando durante a criação da Engenharia de Software, essa
não foi uma ocorrência direta.

Resposta incorreta.
E. 
Removeu da criação de software as técnicas e metodologias sistemáticas e controladas já
presentes na engenharia e amplamente utilizadas em outras áreas.
A Engenharia de Software incluiu técnicas e metodologias sistemáticas e controladas já
presentes na engenharia e amplamente utilizadas em outras áreas.
João, dono de uma empresa de software, tem que criar um sistema para um cliente. Até o
momento, o cliente fez apenas uma ligação informando o tipo de software que ele quer.
Qual a primeira coisa que João deve fazer?
Resposta incorreta.
A. 
Ir para a sua empresa e começar a programar imediatamente.
João ainda não sabe quais as necessidades do cliente e como o software deve ser criado.

Você não acertou!


B. 
Modelar algumas telas do sistema e perguntar ao cliente a sua opinião.
Embora seja importante criar um protótipo e mostrar ao cliente antes de implementar, nesse
momento João ainda não teria informações suficientes para fazer algo.

Resposta incorreta.
C. 
Contratar uma grande equipe de desenvolvedores para criar o software o mais rápido
possível.
João ainda não sabe o tamanho do sistema que terá que criar, então contratar
desenvolvedores sem antes planejar seria um erro muito grande.

Resposta correta.
D. 
Entender o negócio do cliente e realizar reuniões para mensurar o que ele precisa.
João deve entender o que o cliente precisa, como vai fornecer, o negócio do cliente e fazer
uma análise dessas necessidades, conseguindo, então, estipular prazos e custos de acordo
com as metodologias da Engenharia de Software.

Resposta incorreta.
E. 
Informar para o cliente que em um mês o sistema estará em pleno funcionamento, além de
informar qual será o custo do sistema.
João não poderia informar prazos e custos sem ao menos ter mais informações das
necessidades do cliente.
 
Qual é a base dos elementos da Engenharia de Software?
Resposta incorreta.
A. 
Métodos.
Os métodos envolvem tarefas como: comunicação, análise, modelagem, construção, testes e
suporte. Não é a base das camadas, mas é a 3º camada.

Você não acertou!


B. 
Ferramentas.
Quando as ferramentas são interligadas temos um sistema que suporta o desenvolvimento
de software. Não é a base das camadas, mas é a 4º camada.

Resposta correta.
C. 
Foco na qualidade.
Foco na qualidade é a base das camadas da Engenharia de Software. Ele serve para
promover uma cultura de aperfeiçoamento contínuo de processos.

Resposta incorreta.
D. 
Processo.
Eles servem para definir uma metodologia que deve ser estabelecida, visando ter uma
entrega efetiva. Não é a base das camadas, mas é a 2º camada.

Resposta incorreta.
E. 
Conceitual.
Esta não é uma camada da Engenharia de Software.
O que é um ciclo de vida de software?
Você acertou!
A. 
Ciclo de vida de software refere-se aos estágios de concepção, projeto, criação e
implementação de um software.
O ciclo de vida de software é muito importante e deve ser devidamente analisado no início
da criação do sistema.

Resposta incorreta.
B. 
Ciclo de vida de software refere-se aos estágios de levantamento de requisitos.
O Ciclo de vida de software engloba mais partes do processo, além do levantamento.

Resposta incorreta.
C. 
Ciclo de vida de software refere-se ao tempo de implementação estimado pelo analista.
O ciclo de vida de software possui uma maior abrangência, não se limitando ao
desenvolvimento (implementação).

Resposta incorreta.
D. 
Ciclo de vida de software refere-se aos estágios de análise do software.
Embora o ciclo de vida de software tenha um momento dedicado para a análise, ele não se
limita a este aspecto.

Resposta incorreta.
E. 
Ciclo de vida de software ocorreu antes da Crise do Software, em 1970.
O ciclo de vida de software foi utilizado dentro da Engenharia de Software para
obter software de melhor qualidade, portanto não é um acontecimento datado e sim um
processo.
Em qual fase do ciclo de vida de software são definidas as questões técnicas, como banco
de dados, localização, hardware e linguagens de programação?
Resposta correta.
A. 
Na fase de projeto.
Projeto trata da construção das especificações detalhadas para o projeto selecionado.

Resposta incorreta.
B. 
Na fase de levantamento de requisitos.
O Ciclo de vida de software engloba mais partes do processo, além do levantamento.

Você não acertou!


C. 
Na fase de implementação.
O ciclo de vida de software possui uma maior abrangência, não se limitando ao
desenvolvimento (implementação).

Resposta incorreta.
D. 
Na fase de testes e manutenção.
Embora o ciclo de vida de software tenha um momento dedicado para a análise, ele não se
limita a este aspecto.

Resposta incorreta.
E. 
Em nenhuma fase, estas questões são decididas pelo programador.
O ciclo de vida de software foi utilizado dentro da Engenharia de Software para
obter software de melhor qualidade, portanto não é um acontecimento datado e sim um
processo.
 
No ciclo de vida de software, o que é realizado na etapa de "levantamento das
necessidades"?
Resposta incorreta.
A. 
É realizada a implementação do sistema.
A implementação é realizada após a etapa de projeto.

Resposta correta.
B. 
É realizada uma verificação de todas as necessidades do cliente.
Essa etapa identifica as necessidades de informações da organização.

Resposta incorreta.
C. 
É realizada a análise de requisitos.
Essa etapa é realizada somente após o levantamento de necessidades.

Você não acertou!


D. 
São realizados testes no sistema para verificar quais as necessidades de implementação.
Em modelos clássicos, os testes são realizados após a etapa de implementação do sistema.

Resposta incorreta.
E. 
É a etapa onde o sistema é entregue para o usuário/cliente.
Ao contrário da entrega do software, o levantamento de necessidades é realizado logo no
início do desenvolvimento do sistema.
 
A figura ilustra um modelo de desenvolvimento de software no qual o fluxo é visto como
um fluir constante através das fases. Esse modelo utiliza como entrada as informações
obtidas nas fases anteriores e cada fase só inicia após o término da que antecede (não
existindo fases em paralelo). Com base nessas informações, qual é o modelo apresentado
na figura?

Resposta incorreta.
A. 
Modelo V.
O Modelo V virou um padrão da indústria de software depois de 1980 e, após o surgimento
da Engenharia de Sistemas, tornou-se um conceito padrão em todos os domínios da
indústria. Foi baseado no modelo descrito, porém a principal diferença é a integração entre
as etapas.

Resposta correta.
B. 
Cascata.
O modelo clássico ou cascata, que também é conhecido por abordagem "top-down", foi
proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com
aceitação geral.

Resposta incorreta.
C. 
Espiral.
A abordagem em espiral implementa os sistemas baseado no conceito de maior necessidade.
Ela entrega o sistema em versões. O fluxo que esse modelo propõe é em formato de espiral.

Você não acertou!


D. 
Prototipagem.
O modelo de prototipagem descreve uma abordagem que tenta satisfazer as necessidades
do usuário focalizando a interface do usuário. É diferente do modelo descrito, onde só existe
implementação e entrega ao final do projeto.

Resposta incorreta.
E. 
Incremental.
undefined
 
Qual é o maior problema encontrado no modelo cascata?
Resposta incorreta.
A. 
Nenhum. O sistema cascata foi utilizado durante anos e até o momento não precisou de
correções.
O ciclo de vida em V foi proposto como a forma de corrigir os problemas de reatividade do
modelo cascata.

Resposta incorreta.
B. 
É um modelo bastante simples.
Devido a sua simplicidade, ele facilita a estimativa de custo e tempo para o cliente.

Resposta incorreta.
C. 
O sistema prevê a revisão das fases e é totalmente iterativo.
Ao contrário, o sistema não prevê a revisão das fases, e isso o torna um sistema com
problema. Por exemplo, se um requisito de software foi observado e levantado de forma
incorreta, o erro se propagará até a implementação. Ou seja, a fase de levantamento das
necessidades não é revista para corrigir possíveis problemas que podem ocorrer, ao
contrário do ciclo de vida em V.

Você acertou!
D. 
Apresenta o problema de reatividade a mudanças.
Não oferece oportunidades claras para entregas parciais de um sistema ou para a introdução
de mudanças dentro do ciclo de vida. Apresenta o problema de reatividade a mudanças.

Resposta incorreta.
E. 
O modelo cascata é top-down e isso faz com que o software seja construído de maneira
incorreta.
Ser um modelo top-down é apenas uma característica do modelo e não pode ser
considerado um problema.
Qual o maior problema encontrado no modelo cascata?
Você acertou!
A. 
Dificuldade em detectar alterações e melhorias durante o desenvolvimento.
Como o projeto segue uma forma linear, não existe feedback do usuário durante o
desenvolvimento. Assim, só serão detectados problemas no final, após a entrega.

Resposta incorreta.
B. 
Dificuldade em criar um protótipo.
O uso de protótipo foi inserido apenas após a proposta do modelo prototipação.

Resposta incorreta.
C. 
Alto custo de desenvolvimento.
Como é um modelo mais simplificado e linear, o custo de desenvolvimento é reduzido se
comparado com outros modelos tradicionais. Porém, mudanças posteriores podem ser mais
custosas.

Resposta incorreta.
D. 
Dificuldade de gerenciamento do projeto.
O modelo cascata, devido a sua simplicidade, permite um gerenciamento mais simples
quando comparado com outros modelos tradicionais. Porém, não prevê monitoramento,
controle de mudanças ou replanejamento.

Resposta incorreta.
E. 
Pouca documentação do produto.
O modelo cascata foi projetado de uma forma que a documentação obtida ao final do
projeto fosse suficiente. Além disso, cada etapa só inicia se a etapa anterior houver
finalizado toda a documentação.
O que o modelo prototipação tentou corrigir nos modelos anteriores?
Resposta incorreta.
A. 
Falta de linearidade dos modelos anteriores.
O modelo cascata foi desenvolvido totalmente linear.

Resposta correta.
B. 
O problema de comunicação entre os usuários e os desenvolvedores.
O uso de protótipo foi inserido apenas após a proposta do modelo prototipação.

Você não acertou!


C. 
A falta de reúso de software.
Como é um modelo mais simplificado e linear, o custo de desenvolvimento é reduzido se
comparado com outros modelos tradicionais. Porém, mudanças posteriores podem ser mais
custosas.

Resposta incorreta.
D. 
A complexidade de criar software sem o uso de um modelo.
O modelo cascata, devido a sua simplicidade, permite um gerenciamento mais simples
quando comparado com outros modelos tradicionais. Porém, não prevê monitoramento,
controle de mudanças ou replanejamento.

Resposta incorreta.
E. 
Os testes eram realizados antes da implementação, então o modelo modificou a ordem.
O modelo cascata foi projetado de uma forma que a documentação obtida ao final do
projeto fosse suficiente. Além disso, cada etapa só inicia se a etapa anterior houver
finalizado toda a documentação.
Dificuldade de comunicação com o usuário.
O modelo busca justamente obter uma comunicação melhor com o usuário para atender às
expectativas.

Você não acertou!


B. 
Muita documentação.
Uma das características do modelo prototipação é a baixa documentação.

Resposta correta.
C. 
Alto custo de projeto e retrabalho.
Devido à necessidade de diversas reuniões, implementação de protótipos, modificações e
evolução, o modelo apresenta alto custo e também a necessidade de retrabalho. A maior
parte do custose concentra na fase de análise para compreensão e validação de requisitos.

Resposta incorreta.
D. 
Ao final do projeto, os usuários geralmente não gostam do sistema.
Com o uso dos protótipos, os usuários já saberão inicialmente como o sistema será e
poderão solicitar alterações antes mesmo do desenvolvimento.

Resposta incorreta.
E. 
O resultado geralmente é um sistema difícil de usar.
Como o usuário terá contato desde o início do projeto com o sistema, ao final ele terá um
sistema produtivo e que corresponda às expectativas.
O modelo espiral combinou dois modelos, o cascata e o protótipo. Além disso, ele
adicionou mais um elemento que forneceu mais segurança na criação de software. Qual
elemento foi este?
Resposta incorreta.
A. 
Criação de documentação.
A criação de documentação já era prevista nos modelos anteriores.

Você não acertou!


B. 
Análise de requisitos.
A análise de requisitos já estava presente nos modelos anteriores.

Resposta incorreta.
C. 
Testes de software.
Os testes de software já estavam presentes nos modelos anteriores.

Resposta incorreta.
D. 
Protótipo de software.
O protótipo de software foi introduzido pelo modelo de prototipação.

Resposta correta.
E. 
Análise de risco.
undefined
Qual a diferença do protótipo descartável e do evolutivo no modelo prototipação?
Resposta correta.
A. 
O protótipo descartável é criado temporariamente e depois não é mais utilizado. Já o
evolutivo utiliza o próprio sistema como protótipo e, ao longo do tempo, evolui até chegar
no produto final.
O modelo prototipação utiliza estes dois tipos de protótipo, sendo avaliado qual o
melhor conforme características de cada projeto.

Resposta incorreta.
B. 
O protótipo descartável utiliza o próprio sistema como protótipo e, ao longo do tempo,
evolui até chegar no produto final. Já o evolutivo é criado temporariamente e depois não é
mais utilizado.
Estas definições não se encaixam com os respectivos modelos de protótipos.

Você não acertou!


C. 
Nenhuma, os dois representam a mesma coisa.
Existe uma diferença entre os dois tipos de protótipos e diferenciá-los é essencial para
decidir qual opção é melhor para determinado projeto.

Resposta incorreta.
D. 
Um deles depende da análise de risco para ser utilizado.
A análise de risco não está presente no modelo prototipação. Ela foi introduzida no modelo
espiral.

Resposta incorreta.
E. 
O protótipo descartável precisa de testes de software enquanto o evolutivo não.
O ideal é que mesmo sendo um protótipo, sejam realizados testes independentemente do
tipo de protótipo.
No primeiro incremento do modelo incremental, que tipo de solução é oferecida ao
cliente?
Você acertou!
A. 
São oferecidos elementos do sistema que permitem a operação básica ao usuário.
Inicialmente são oferecidas as funcionalidades básicas do sistema, para que as outras sejam
incrementadas posteriormente.

Resposta incorreta.
B. 
É oferecido um sistema completo, com todas as funcionalidades.
O sistema completo é entregue ao final do projeto.

Resposta incorreta.
C. 
É oferecida apenas a documentação do sistema.
O primeiro incremento deve oferecer uma solução funcional ao cliente, mesmo que com
limitações.

Resposta incorreta.
D. 
É oferecido apenas um protótipo de telas para o cliente saber como o sistema será
implementado.
O uso de protótipos é relacionado ao modelo prototipação.

Resposta incorreta.
E. 
Não é oferecido um sistema funcional, já que este modelo linear só oferece o produto ao
final de todo o projeto.
O incremento entregue deve ser funcional, mesmo que o software seja feito em modelo
linear e que a entrega completa seja apenas no final do projeto.
O que é esperado do cliente ao término de cada incremento?
Resposta incorreta.
A. 
Um manual de utilização do sistema.
Um manual não daria o feedback necessário.

Resposta incorreta.
B. 
Descarte do protótipo.
O uso de protótipos de descarte é feito no modelo prototipação.

Você não acertou!


C. 
Uso exaustivo do sistema para encontrar erros.
Os testes devem ser realizados por uma equipe de testes para garantir bom funcionamento.

Resposta correta.
D. 
Uso, avaliação e feedback sobre o sistema.
Ao final de um incremento, o usuário deve dar um feedback para auxiliar no planejamento
do próximo incremento e corrigir problemas no anterior.

Resposta incorreta.
E. 
Pagamento pelo projeto.
Os modelos de ciclo de vida de software não determinam como são os pagamentos.
No final do último incremento, o que é esperado na entrega?
Resposta incorreta.
A. 
Apenas uma parte, incremento ou uma funcionalidade básica do sistema que esteja em
funcionamento e bem testada.
Geralmente, partes do sistema são entregues nos incrementos anteriores como objetivo de
verificar se o que está sendo produzido está de acordo com o esperado.

Resposta incorreta.
B. 
Um sistema parcialmente funcional.
Ao longo do desenvolvimento, é necessário a entrega de partes funcionais do sistema com o
objetivo de validação e feedback. No entanto, ao final, o sistema não pode estar
funcionando parcialmente.

Resposta correta.
C. 
Espera-se um sistema completo e funcional.
O último incremento marca o final do projeto, então o sistema deve atender todos os
requisitos do projeto nesta etapa.

Você não acertou!


D. 
Espera-se que o cliente tenha as funcionalidades básicas do sistema funcionando bem e
testadas, mas não funções complementares.
A entrega das funcionalidades básicas do sistema, funcionando bem e testadas, é prevista
nas etapas iniciais do projeto de forma que ao longo do desenvolvimento exista uma entrega
contínua de incrementos até completar os requisitos.

Resposta incorreta.
E. 
Espera-se um sistema que não atenda a nenhum dos requisitos.
Mesmo nas etapas iniciais do projeto, onde existe a entrega de incrementos que são
referentes a funcionalidades básicas do sistema, existe a necessidade de seguir e orientar o
desenvolvimento com o objetivo de resolver os requisitos de software.
Qual destas é uma vantagem do modelo incremental?
Resposta incorreta.
A. 
Podem surgir problemas com a integração de cada entrega incremental.
Esta pode ser considerada uma desvantagem do modelo.

Você acertou!
B. 
Usuários podem solicitar modificações no sistema durante o desenvolvimento.
Com os incrementos, os usuários conseguem utilizar e solicitar alterações e melhorias
durante o desenvolvimento.

Resposta incorreta.
C. 
Os usuários podem ver um protótipo de tela antes do desenvolvimento do sistema.
O uso de protótipos é uma característica do modelo prototipação.

Resposta incorreta.
D. 
O sistema é entregue somente no final do projeto de forma integral.
No modelo incremental, o sistema é dividido e entregue em partes.

Resposta incorreta.
E. 
O custo do projeto é sempre respeitado.
Em alguns casos, o orçamento do projeto pode ser ultrapassado devido às solicitações do
cliente.
Qual destas opções é uma desvantagem do modelo incremental?
Resposta correta.
A. 
O orçamento previsto do projeto pode ser ultrapassado.
Em alguns casos as solicitações do cliente podem causar um aumento dos custos do projeto.

Resposta incorreta.
B. 
O sistema é desenvolvido respeitando os prazos.
No modelo incremental, o sistema é desenvolvido rapidamente já que existe um
alinhamento constante com o usuário.

Resposta incorreta.
C. 
Redução de riscos de atraso da entrega.
Com a entrega incremental dos módulos, o atraso de entrega é reduzido neste modelo.

Resposta incorreta.
D. 
As partes entregues durante os incrementos não oferecem integração.
O modelo incremental prevê que os módulos sejam integrados conforme sua finalização,
mesmo que possa ocorrer problemas de integração para o desenvolvedor solucionar.

Você não acertou!


E. 
O projeto é alinhado com as necessidades do cliente.
Como o cliente vai dando feedbacks durante o desenvolvimento, o projeto recebe o
direcionamento e a avaliação constante do cliente.
Selecione a alternativa que melhor descreve os elementos em que se baseiam os métodos
orientados a objetos:
Você não acertou!
A. 
São baseados no hardware, já que necessitam de uma análise de baixo nível para exploração
dos sistemas computacionais.
Este tipo de análise não necessita em um primeiro momento de preocupações sobre a
implementação, linguagens de programação ou banco de dados.

Resposta incorreta.
B. 
São baseados em estruturas e procedimentos.
A análise orientada a objetos não se baseia somente em procedimentos ou estruturas.

Resposta incorreta.
C. 
São baseados em abstrações, cujo objetivo é fazer um sistema parecer mais complexo que o
necessário.
Uma das grandes vantagens da análise orientada a objetos é utilizar abstrações do mundo
real para expressar um sistema, facilitando a criação destes.

Resposta incorreta.
D. 
São baseados em elementos como variáveis e funções.
Estes não são os elementos base deste tipo de análise, mesmo que você possa encontrar
variáveis e funções (métodos) dentro de objetos.

Resposta correta.
E. 
São baseados nos conceitos de objetos e atributos, totalidades e partes, classes e membros.
Utilizamos na análise orientada a objetos elementos do mundo real. Isso facilita a criação de
sistemas complexos e posteriormente a manutenção/extensão.
Durante a análise orientada a objetos, qual preocupação um engenheiro de software deve
ter para garantir que o produto criado apresente mais facilidade de criação e manutenção?
Resposta incorreta.
A. 
Em identificar quais serão os atores do sistema.
Durante a criação do diagrama de casos de uso, é importante analisar e identificar quem são
os atores do sistema. Mas isto não irá interferir na facilidade de criação ou manutenção
do software.

Você não acertou!


B. 
Em criar um diagrama de atividades.
O diagrama de atividades é importante para esse tipo de análise, o indicado é que o
engenheiro de software faça a criação dele. Mas isto não facilita a criação ou manutenção
do software.

Resposta incorreta.
C. 
Em identificar quais serão os casos de uso sistema.
Durante a criação do diagrama de casos de uso, é importante analisar e identificar quais
serão os casos de uso do sistema. Mas isto não interfere diretamente na facilidade de
criação ou manutenção do software.

Resposta incorreta.
D. 
Em conhecer a linguagem de programação, banco de dados e a arquitetura de hardware em
que o sistema será implementado.
Durante a modelagem do sistema, usando esse método, o engenheiro de software apenas
precisa focar em realizar uma boa análise e modelagem do problema nessa etapa inicial. Mas
isto não interfere diretamente na facilidade de criação ou manutenção do software.

Resposta correta.
E. 
Em fazer uma modelagem de forma clara e bem organizada.
O engenheiro de software deve sempre se preocupar se a modelagem é clara e consegue
transmitir de forma adequada o que o sistema deverá fazer. 
 
Acompanhe a seguinte situação:

A loja "Compre X" precisa que um sistema seja criado para registrar os produtos
comprados, vendas e controlar as comissões dos vendedores.
- Neste sistema, os estoquistas vão realizar todo o cadastro de novos produtos, inserindo
todas as informações necessárias. Além disso, os produtos adquiridos da loja "Compre X"
serão automaticamente inseridos no sistema pelo módulo X.
- Os vendedores irão inserir informações de venda, para automaticamente os produtos
serem removidos do estoque.
- O gerente poderá realizar a análise das vendas, estoque e comissões dos vendedores.
- Já os administradores terão acesso a todas as operações dos outros usuários, além de
poder inserir vendedores, gerentes e estoquistas.

Neste sistema, todos os usuários deverão realizar login.

Identifique quais são as possíveis classes para a situação descrita:


Resposta incorreta.
A. 
Carro, Motorista e Passageiro.
Mesmo que estas possam ser classes de um sistema, no nosso exemplo não está de acordo.

Resposta correta.
B. 
Loja, Produto, Vendedor, Venda e Estoque.
Uma classe é um gabarito para a definição de objetos. No sistema descrito, poderíamos ter
as classes Loja, Produto, Vendedor, Venda e Estoque. Também poderíamos ter outras
classes, cada uma com seus métodos e atributos, para melhorar o sistema da loja "Compre
X".

Você não acertou!


C. 
Inserir vendedores e calcular comissão.
Estes seriam métodos, ou seja, ações que podem ser realizadas e que são relacionadas com
uma classe.

Resposta incorreta.
D. 
Realizar venda, remover produto do estoque e vender.
Esses seriam métodos que seriam associados em classes e objetos.

Resposta incorreta.
E. 
Cor, preço e data de compra.
Possivelmente estes seriam atributos de alguma das classes, ou seja, características que os
objetos (instâncias) da classe teriam.
Selecione quais destas alternativas não corresponde ao uso do modelo de análise orientada
a objetos.
Resposta incorreta.
A. 
Facilidade de criação de sistemas complexos.
A análise orientada a objetos facilita a criação de sistemas complexos, já que permite o uso
de abstrações do mundo real para expressar o sistema e, consequentemente, facilita a
implementação e extensão dele.

Resposta incorreta.
B. 
Facilidade de extensão do sistema.
Um sistema modelado com base na orientação a objetos é facilmente estendido.

Resposta correta.
C. 
Maior facilidade de implementação do sistema pelos desenvolvedores.
A análise orientada a objetos exige que os desenvolvedores conheçam o modelo e saibam
fazer a leitura e transformação dos diagramas e requisitos e transformar em código. Então
existe um esforço maior do time de desenvolvimento em criar um software orientado a
objetos (se comparado com o modelo estruturado), necessitando de mais tempo de
desenvolvimento.

Resposta incorreta.
D. 
Facilidade de modificação do sistema.
Um sistema modelado, utilizando ess modelo, é facilmente modificado já que sua
organização e forma permitem modificações em partes individuais sem causar grande
impacto no sistema.

Você não acertou!


E. 
Facilidade de entendimento do sistema.
Por meio desse modelo é muito fácil fazer a leitura dos diagramas e entender quem realizará
as atividades e como elas serão realizadas.
Qual o objetivo principal do diagrama de objetos?
Resposta correta.
A. 
O objetivo é mostrar os objetos que foram instanciados das classes.
O diagrama de objetos é como se fosse o perfil do sistema em um certo momento de sua
execução.

Resposta incorreta.
B. 
O objetivo é mostrar as classes que foram criadas no sistema.
É o diagrama de classes que possui como principal objetivo demonstrar as classes do
sistema.

Resposta incorreta.
C. 
O objetivo é demonstrar o sistema em forma de estruturas de funções.
Embora não trate diretamente de "funções", um diagrama que possui como objetivo
demonstrar o comportamento de um sistema em determinadas situações é o diagrama de
atividades. No entanto, o diagrama de objetos, definido pela UML, possui outro objetivo.

Você não acertou!


D. 
É o mesmo objetivo do diagrama de casos de uso e de atividades, que são muito similares.
Os diagramas de atividades, casos de uso e objetos possuem objetivos bastante diferentes.
O diagrama de atividades possui como foco a modelagem do comportamento do sistema. Já
o diagrama de casos de uso expressa os casos de uso e os atores que interagem com o
sistema.

Resposta incorreta.
E. 
O objetivo é a especificação do comportamento do software, do ponto de vista funcional, ou
seja, das suas funcionalidades.
Esse seria o objetivo do diagrama de atividades.
O que é um diagrama de casos de uso?
Você não acertou!
A. 
É uma variação do diagrama de classes e utiliza quase a mesma notação. A diferença é que
ele mostra os objetos que foram instanciados das classes.
O diagrama de objetos é uma variação do diagrama de classes e utiliza quase a mesma
notação. A diferença é que o diagrama de objetos mostra os objetos que foram instanciados
das classes.

Resposta incorreta.
B. 
É uma representação da estrutura e relações das classes que servem de modelo para
objetos.
O diagrama de classes é uma representação da estrutura e relações das classes que servem
de modelo para objetos.

Resposta incorreta.
C. 
É um diagrama comportamental (que especifica o comportamento do software).
O diagrama de atividades é um diagrama comportamental (que especifica o comportamento
do software).

Resposta correta.
D. 
É um diagrama que descreve as principais funcionalidades do sistema e a interação dessas
funcionalidades com os usuários do mesmo sistema.
Em outras palavras, ele documenta o que o sistema faz do ponto de vista do usuário.

Resposta incorreta.
E. 
É um diagrama que descreve os componentes do software, suas interfaces e suas
dependências.
O diagrama de componentes descreve os componentes do software, suas interfaces e suas
dependências.
Com qual figura geométrica um ATOR é representado no diagrama de casos de uso?
Resposta incorreta.
A. 
Com uma elipse.
A elipse é utilizada para representar um caso de uso.

Você acertou!
B. 
Com um simbolo de uma pessoa, também chamado de "stick man".
Além disso, também colocamos o nome do ator logo abaixo do simbolo. O ator também
pode ser o hardware ou um sistema computacional que interage com o sistema.

Resposta incorreta.
C. 
Com uma seta pontilhada.
O uso de setas pontilhadas é utilizado geralmente para expressar relações de <<include>> e
<<extend>>.

Resposta incorreta.
D. 
Com um círculo com bordas pontilhadas.
Um ator, no diagrama de casos de uso, não é representado por um círculo de bordas
pontilhadas.

Resposta incorreta.
E. 
Com um triângulo e o nome do ator na parte superior.
Um ator não é representado por um triângulo no diagrama de casos de uso. O uso de
triângulos geralmente são associados a decisões, mas em outros diagramas da engenharia
de software.
Além dos relacionamentos comuns do diagrama de casos de uso, também contamos com os
relacionamentos <<extend>>. Para que este tipo de relacionamento é utilizado?
Resposta correta.
A. 
Quando o caso de uso Y estende o caso de uso X, significa que quando o caso de uso X for
executado o caso de uso Y poderá (poderá – talvez não seja) ser executado também.
A direção do relacionamento é do caso de uso extensor (aqui o caso de uso Y) para o caso
de uso estendido (aqui o caso de uso X).

Resposta incorreta.
B. 
Quando o caso de uso Y generaliza o caso de uso Z isso significa que, além de fazer tudo
que nele está especificado, ele também executará tudo que está especificado no caso de uso
Z.
Esta explicação se refere ao relacionamento de generalização.

Resposta incorreta.
C. 
Quando um caso de uso X pertence ao caso de uso Y, fazendo com que todos os atributos
sejam removidos.
No diagrama de casos de uso, não existe um relacionamento que faça um caso de uso
pertencer a outro.

Você não acertou!


D. 
Quando o caso de uso A inclui o caso de uso B, significa que sempre que o caso de uso A for
executado, o caso de uso B também será executado.
Esta explicação se aplica ao relacionamento <<include>>.

Resposta incorreta.
E. 
Quando um caso de uso Z não disponibiliza a execução de um caso de uso Y.
No diagrama de casos de uso, um caso de uso não impede a execução de outro por meio de
um relacionamento em específico.
O diagrama de casos de uso é geralmente utilizado no início do projeto em qual atividade?
Resposta incorreta.
A. 
Na execução dos testes de software.
Os testes de software ocorrem somente se são executados após a implementação, então não
é utilizado no início para os testes.

Resposta incorreta.
B. 
Implementação do software.
A implementação do software ocorre da metade para o final do projeto e geralmente são
utilizados diagramas que possuem maior detalhamento técnico (como o diagrama de classes
e objetos).

Resposta correta.
C. 
Definição dos requisitos e comunicação com o cliente.
Pela sua simplicidade, sua compreensão não exige conhecimentos técnicos. Então, o cliente
entende bem este diagrama. Além disso, ao modelar o diagrama podem surgir e serem
identificados novos requisitos.

Você não acertou!


D. 
Na entrega do software para o cliente.
No momento da entrega não é utilizado nenhum diagrama, pois o cliente já deve conhecer
todo o processo e o que está recebendo.

Resposta incorreta.
E. 
Na fase de manutenção do software.
A manutenção do software não ocorre logo no início do projeto.
Para que serve a multiplicidade no diagrama de casos de uso?
Resposta incorreta.
A. 
Para demonstrar algum tipo de relação entre dois elementos por meio do uso de linhas e
setas.
Os relacionamentos (linhas e setas) são utilizados para expressar as relações entre os
elementos do diagrama.

Resposta incorreta.
B. 
Para definir uma funcionalidade do sistema do ponto de vista do usuário.
Um relacionamento de associação define uma funcionalidade do sistema do ponto de vista
do Quando o caso de uso A inclui o caso de uso B, significa que sempre que o caso de
uso A for executado, o caso de uso B também será executado.

Você não acertou!


C. 
Para definir uma grande função do sistema.
Um caso de uso define uma grande função do sistema.

Resposta incorreta.
D. 
Possibilita um certo grau de extensibilidade aos componente ou associações da UML.
Os estereótipos possibilitam um certo grau de extensibilidade aos componente ou
associações da UML.

Resposta correta.
E. 
Serve para especificar o número de vezes que um ator pode utilizar um determinado caso de
uso.
Por padrão, cada multiplicidade é 1 (quando não é exibida). Em uma interpretação estrita do
modelo, uma multiplicidade de 1 significa que, por exemplo, apenas um usuário irá cadastrar
e que cada usuário faz um cadastro por vez.
Marque a alternativa que completa corretamente a frase: É correto afirmar que uma
especificação de casos de uso...
Você não acertou!
A. 
 ... permite descrever detalhes técnicos do software como linguagens de programação que
serão utilizadas.
Algumas especificações que os casos de uso podem demonstrar são: quem são os atores,
relação entre eles e os fluxos.

Resposta incorreta.
B. 
 ...descreve uma sequência de objetos.
Uma especificação de casos de uso descreve uma sequência de operações ou ações.

Resposta incorreta.
C. 
 ...possui como objetivo mostrar como um sistema faz determinada ação.
O objetivo da especificação de casos de uso é mostrar o que o sistema faz, e não como ele
faz.

Resposta incorreta.
D. 
 ... utiliza casos de uso para expressar as pessoas e elementos que interagem com o sistema.
Os Atores é que são utilizados para expressar quem interage com o sistema.

Resposta correta.
E. 
 ...não deve detalhar aspectos de implementação.
Detalhes de interface não devem ser descritos no caso de uso, pois torna-o passível de
alteração sempre que houver qualquer mudança em campos da interface, além de prejudicar
o entendimento do caso de uso devido ao grande volume de informações que detalham a
tela.
 
Qual é a melhor definição para um ator no contexto de especificação de casos de uso?
Resposta incorreta.
A. 
 É estado que deve ser sempre verdadeiro antes do cenário ser iniciado em um caso de uso.
Uma Pré-condição é estado que deve ser sempre verdadeiro antes do cenário ser iniciado
em um caso de uso.

Você não acertou!


B. 
 É uma sequência de ações que representam os cenários possíveis para um caso de uso.
Os fluxos são sequências de ações que representam os cenários possíveis para um caso de
uso.

Resposta correta.
C. 
 Representa uma entidade externa que interage com o sistema.
Um ator pode representar uma pessoa ou outro sistema (hardware ou software) que tem
interação com o sistema em desenvolvimento.

Resposta incorreta.
D. 
 É um elemento que deve abordar o que "geralmente" ocorre quando o caso de uso é
executado.
Na especificação de casos de uso, um fluxo básico deve abordar o que "geralmente" ocorre
quando o caso de uso é executado.

Resposta incorreta.
E. 
 É uma ação realizada no sistema.
As ações são realizadas pelos atores.
"Deve representar o caminho mais simples, que é executado inicialmente quando o ator
acessa a referida funcionalidade". Esta explicação melhor se enquadra para qual
alternativa?
Resposta incorreta.
A. 
 Fluxo alternativo.
Ele descreve o que acontece quando o sistema percorre um caminho alternativo,
diferentemente daquele descrito no fluxo básico.

Resposta correta.
B. 
 Fluxo básico.
É também o caminho mais frequentemente utilizado dentro desta que está menos propenso
a exceções ou erros.

Você não acertou!


C. 
 Fluxos de exceção.
Determina as ações que devem ser tomadas em situações em que os fluxos não possam ser
concluídos, devido à alguma regra ter sido quebrada.

Resposta incorreta.
D. 
 Pós-condições.
São verdades que devem acontecer após um caso de uso.

Resposta incorreta.
E. 
 Pré-condições.
São verdades que devem estar presentes no cenário antes da execução do caso de uso.
Qual o objetivo do item "Referências a elementos internos e externos" na especificação de
casos de uso?
Resposta incorreta.
A. 
 São utilizados para definir quem são os elementos que interagem com o sistema.
Na especificação de casos de uso, os atores são utilizados para expressar quem interage
com o sistema.

Resposta incorreta.
B. 
 Este item representa o fluxo de alternativas que um caso de uso pode seguir.
Existe na especificação de casos de uso um item que serve para descrever os fluxos básicos,
alternativos e de exceção.

Você acertou!
C. 
 Permite referenciar três elementos internos e quatro elementos externos.
Permite referenciar elementos internos e externos, sendo três elementos internos (fluxo
básico, fluxo alternativo e fluxo de exceção) e quatro elementos externos (regras,
mensagens, especificações de leiaute e casos de uso).

Resposta incorreta.
D. 
 Este item permite a definição dos aspectos técnicos do sistema.
Na especificação de casos de uso, ainda não se deve especificar detalhes técnicos. Neste
momento, só devemos focar em "o que o sistema fará" e não em "como o sistema fará".

Resposta incorreta.
E. 
 Este item descreve a referência do caso de uso em relação ao fluxo.
Esta referência permite informar que uma determinada ação ou etapa utiliza ou referencia
elementos presentes na especificação, mas não é apenas direcionado para o fluxo.
O que melhor define um caso de uso?
Resposta correta.
A. 
 É um tipo de classificador representando uma unidade funcional coerente provida pelo
sistema.
Também pode ser definido como uma ação realizada por um "ator" no sistema.

Resposta incorreta.
B. 
 É quem faz uma ação ou executa uma funcionalidade no sistema.
Um ator pode ser definido como alguém ou algo que atua no sistema em alguma parte
funcional.

Você não acertou!


C. 
 É uma forma de expressar uma relação entre dois elementos da especificação de casos de
uso.
Uma relação expressa a ligação de dois elementos em uma especificação de casos de uso.

Resposta incorreta.
D. 
 É estado que deve ser sempre verdadeiro antes do cenário ser iniciado.
Uma pré-condição é estado que deve ser sempre verdadeiro antes do cenário ser iniciado
em um caso de uso.

Resposta incorreta.
E. 
 É um estado que deve ser sempre verdadeiro depois da execução de uma ação pelo ator.
Uma pós-condição é um estado que deve ser verdadeiro depois que um caso de uso é
executado.
O que é um diagrama de atividades?
Resposta incorreta.
A. 
É um diagrama que descreve as principais funcionalidades do sistema e a sua interação com
os usuários do mesmo sistema.
Esse é o conceito de um diagrama de casos de uso.

Resposta incorreta.
B. 
É uma representação da estrutura e relações das classes que servem de modelo para
objetos.
O diagrama de classes é uma representação da estrutura e das relações das classes que
servem de modelo para os objetos.

Você acertou!
C. 
É um diagrama comportamental (que especifica o comportamento do software) do ponto de
vista funcional.
Esse diagrama ilustra, de forma gráfica, como será
o funcionamento do software a execução de suas partes, além de como será a atuação do
sistema no dia a dia.

Resposta incorreta.
D. 
É uma variação do diagrama de classes e utiliza quase a mesma notação. A diferença é que
ele mostra os objetos que foram instanciados das classes.
O diagrama de objetos é uma variação do diagrama de classes e utiliza quase a mesma
notação.

Resposta incorreta.
E. 
É um diagrama que descreve os componentes do software, suas interfaces e suas
dependências.
O diagrama de componentes descreve os componentes do software, suas interfaces e suas
dependências.
O que um elemento de atividade representa no diagrama?
Você não acertou!
A. 
Separa uma transição em várias transições executadas ao mesmo tempo.
Esse comportamento é expressado pelos elementos de bifurcação.

Resposta incorreta.
B. 
Fluxo de uma atividade para outra.
Um fluxo de uma atividade para outra é representado pela seta (uma transição).

Resposta incorreta.
C. 
Dependendo de uma condição, mostra as diferentes transições
Um elemento do tipo decisão que, dependendo de uma condição, mostra as diferentes
transições.

Resposta incorreta.
D. 
Diferenciação de unidades organizacionais.
Essa diferenciação é realizada pelos elementos chamados de raias.

Resposta correta.
E. 
Um comportamento a ser realizado.
O elemento de atividade é representado por um circulo ou retângulo.
Qual o principal objetivo de um diagrama de atividades?
Resposta correta.
A. 
Ilustrar graficamente como será o funcionamento do software, como será a execução de
alguma de suas partes e como será a atuação do sistema na realidade de negócio em que ele
está inserido.
O diagrama de atividades tem como objetivo principal a especificação do comportamento
do software, do ponto de vista funcional, ou seja, das suas funcionalidades.

Resposta incorreta.
B. 
Descrever os vários tipos de objetos no sistema e o relacionamento entre eles.
O objetivo do diagrama de classes é descrever os vários tipos de objetos no sistema e o
relacionamento entre eles.

Você não acertou!


C. 
Auxiliar a comunicação entre os analistas e o cliente.
O diagrama de casos de uso tem o objetivo de auxiliar a comunicação entre os analistas e o
cliente.

Resposta incorreta.
D. 
Descrever como grupo de objetos colaboram em um determinado comportamento.
Diagramas de interação são modelos que descrevem como o grupo de objetos colaboram
em um determinado comportamento.

Resposta incorreta.
E. 
Mostrar os possíveis estados de um objeto e as transações responsáveis pelas mudanças de
estado.
Um diagrama de estado mostra os possíveis estados de um objeto e as transações
responsáveis pelas suas mudanças.
Para que servem os elementos de raias no diagrama de atividades?
Resposta incorreta.
A. 
Para representar o fluxo de trabalho de uma atividade para outra.
Os fluxos e as setas contínuas representam o fluxo de trabalho de uma atividade para outra.

Resposta incorreta.
B. 
Para controlar os desvios do fluxo de controle.
Os nós de decisões são losangos utilizados para controlar os desvios do fluxo de controle.
Eles podem ser de ramificação (uma entrada e duas saídas) ou mescla (duas entradas e uma
saída).

Resposta correta.
C. 
Para diferenciar diferentes unidades organizacionais do sistema.
Podem estar associadas a objetos, componentes do sistema ou a atores.

Você não acertou!


D. 
Para representar as atividades.
Os nós de atividades, retângulos com bordas arredondadas, representam as atividades no
diagrama de atividades.

Resposta incorreta.
E. 
Para informar o fim de um fluxo de atividades.
O elemento de fim do processo, um círculo com uma camada branca e outra preta, é
utilizado para indicar o fim de um fluxo.
 
Para que e quando você deve criar um diagrama de atividades?
Resposta incorreta.
A. 
Para documentar as classes e os objetos que o sistema terá durante a sua modelagem.
Na modelagem e na documentação das classes, o mais indicado é que você utilize o
diagrama de classes.

Resposta correta.
B. 
Para documentar o aspecto funcional (não estrutural) do software durante a modelagem do
sistema.
É indicado quando é necessário representar o fluxo da informação que o software trabalhará
e quando existir condições/decisões que precisam ser detalhadas/descritas.

Resposta incorreta.
C. 
Para documentar e modelar os detalhes presentes na especificação de casos de uso durante
a modelagem do sistema.
Para essa atividade, o mais indicado é que você utilize o diagrama de casos de uso.

Resposta incorreta.
D. 
Para documentar e planejar a sequência de testes que será realizada durante a
implementação do sistema.
O diagrama de atividades geralmente é construído na modelagem do sistema e não está
ligado diretamente com as etapas de testes.

Você não acertou!


E. 
Para utilizar na priorização de requisitos de software durante a fase de levantamento de
requisitos.
O diagrama de atividades geralmente é criado utilizando os requisitos, de forma que
demonstre como determinados requisitos funcionais serão atendidos.
O que é um requisito de software?
Você acertou!
A. 
Um requisito pode ser definido como uma condição ou uma capacidade com a qual o
sistema deve estar de acordo.
Requisitos também podem ser descritos como funções, objetivos, propriedades, restrições
que o sistema deve possuir para satisfazer contratos, padrões ou especificações de acordo
com o(s) usuário(s). De forma mais geral, um requisito é uma condição necessária para
satisfazer um objetivo.

Resposta incorreta.
B. 
É uma declaração sobre políticas ou condições que devem ser satisfeitas.
Este é o conceito de uma regra de negócio definido pelo RUP.

Resposta incorreta.
C. 
É uma técnica para a medição de projetos de desenvolvimento de software, visando
estabelecer uma medida de tamanho, em Pontos de Função (PF), considerando a
funcionalidade implementada, sob o ponto de vista do usuário.
Este é o conceito dado para expressar Pontos de Função.

Resposta incorreta.
D. 
É uma técnica de desenvolvimento de software em que se utiliza camadas.
Requisitos de software podem ser vistos como necessidades ou condições.

Resposta incorreta.
E. 
É um conjunto de elementos que um software entrega, podendo ser dados ou valores.
Os requisitos podem ser considerados funcionais ou não funcionais. Geralmente, eles
expressam características que devem ser atendidas.
Qual é a característica de um requisito funcional?
Resposta incorreta.
A. 
Definem propriedades e restrições do sistema.
Este é o conceito de um requisito não funcional.

Você acertou!
B. 
Descrevem explicitamente as funcionalidades e serviços do sistema.
É interessante se fazer algumas perguntas que ajudam a definir os requisitos funcionais,
como por exemplo: como o sistema deve reagir a entradas específicas? como deve se
comportar em determinadas situações? o que o sistema não deve fazer?

Resposta incorreta.
C. 
É mais voltado para características que podem ser mensuradas e testadas facilmente.
Os requisitos não funcionais é que são mais voltados para características que podem ser
mensuradas e testadas facilmente.

Resposta incorreta.
D. 
Expressam informações relacionadas com a segurança do sistema.
Os requisitos não funcionais é que se encarregam de expressar necessidades de segurança.

Resposta incorreta.
E. 
Expressam informações relacionadas com a arquitetura do sistema.
Os requisitos não funcionais é que se encarregam de expressar necessidades de arquitetura.
 
Qual é a característica de um requisito não funcional?
Resposta incorreta.
A. 
É um tipo de requisito que o usuário geralmente conhece bem.
Geralmente, os usuários conhecem apenas as regras de negócio e os requisitos funcionais
(como o sistema deve funcionar).

Resposta incorreta.
B. 
É um tipo de requisito fácil de estimar.
Existe uma grande dificuldade em estimar tempo e custo dos requisitos não funcionais, já
que eles são ligados geralmente a tecnologias e precisam de uma informação mais
específica.

Resposta correta.
C. 
É um tipo de requisito que define propriedades e restrições do sistema. É mais voltado para
características que podem ser mensuradas e testadas facilmente.
Geralmente, este tipo de requisito está relacionado com segurança, desempenho, espaço em
disco, ferramentas e linguagens de programação.

Você não acertou!


D. 
É um tipo de requisito que geralmente descreve explicitamente as funcionalidades e
serviços do sistema.
Este é o conceito de requisito funcional.

Resposta incorreta.
E. 
É um tipo de requisito que é flexível e não impacta no desenvolvimento.
A flexibilidade dos requisitos depende da metodologia utilizada. Sobre o impacto, em alguns
casos, a definição ruim de um RNF pode impactar diretamente em todo o sistema.
O que é uma regra de negócio?
Você acertou!
A. 
Regras de negócio são premissas e restrições aplicadas a uma operação comercial de uma
empresa, que precisam ser atendidas para que o negócio funcione da maneira esperada.
Os critérios e restrições são regras, e regras da empresa (negócio) que faz as entregas. Logo,
são regras de negócio.

Resposta incorreta.
B. 
Definem propriedades e restrições do sistema.
Este é o conceito de um requisito não funcional.

Resposta incorreta.
C. 
É um tipo de requisito que geralmente descreve explicitamente as funcionalidades e
serviços do sistema.
Este é o conceito de requisito funcional.

Resposta incorreta.
D. 
É um requisito que o usuário não conhece muito bem durante a criação de um sistema.
O usuário/cliente é conhecedor das regras de negócio e é a pessoa que deve ser consultada.

Resposta incorreta.
E. 
É um tipo de requisito difícil de estimar.
Geralmente, as regras de negócio e os requisitos funcionais são mais fáceis de estimar
(tempo e custo) do que requisitos não funcionais.
Na engenharia de software, existe um processo genérico de levantamento e análise que
contém as seguintes atividades: compreensão do domínio, coleta de requisitos,
classificação, resolução de conflitos, definição das prioridades e verificação de requisitos.
Uma das atividades mais importantes deste processo é a coleta de requisitos. Informe
quais das descrições a seguir melhor descrevem esta atividade:
Resposta incorreta.
A. 
Essa atividade considera o conjunto não estruturado dos requisitos e os organiza em grupos
coerentes.
A atividade de classificação que considera o conjunto não estruturado dos requisitos e
organiza em grupos coerentes.

Resposta incorreta.
B. 
Quando múltiplos stakeholders estão envolvidos, os requisitos apresentarão conflitos. Essa
atividade tem por objetivo solucionar esses conflitos.
A atividade de resolução de conflitos procura entender e solucionar os conflitos que
ocorrem entre as requisições dos stakeholders.

Resposta incorreta.
C. 
Nesta atividade, os requisitos são verificados para descobrir se estão completos e
consistentes e se estão em concordância com o que os stakeholders desejam do sistema.
A atividade de verificação de requisitos é que permite a análise e verificação de consistência
e completude dos requisitos.

Resposta incorreta.
D. 
Em qualquer definição de requisitos, alguns serão mais importantes do que outros. Esse
estágio envolve interação com os stakeholders para a definição dos requisitos mais
importantes.
A atividade de definição de prioridades é o estágio onde a interação com os stakeholders
permite a definição dos requisitos mais importantes e que devem ser desenvolvidos
inicialmente.

Você acertou!
E. 
É o processo de interagir com os stakeholders do sistema para descobrir seus requisitos. 
É durante a atividade de coleta de requisitos que a compreensão do domínio se desenvolve
mais.
Os requisitos de software são classificados em três níveis de prioridade durante a
preparação da lista de requisitos, sendo essencial, importante e desejável. Das alternativas
abaixo, qual justifica esta classificação de requisitos em diferentes níveis de prioridades?
Você não acertou!
A. 
Os recursos destinados para projetos são limitados e, em alguns casos, é necessário deixar
de lado alguns dos requisitos levantados para entregar o software com a qualidade esperada,
mas não completo.
Uma das expectativas do cliente é que todos os requisitos de software sejam atendidos. A
priorização de requisitos não justifica a remoção de alguns requisitos menos importantes,
apenas faz com que eles sejam atendidos após os mais importantes.

Resposta incorreta.
B. 
A priorização de requisitos de software permite que o software desenvolvido execute com
melhor desempenho.
A priorização dos requisitos de software não possui relação direta com o desempenho de
execução do software.

Resposta incorreta.
C. 
Devido ao tempo disponível para a criação de software, muitos projetos utilizam a
classificação dos requisitos em diferentes níveis de prioridade para que o projeto dure mais
tempo, agregando valor ao produto.
A engenharia de software e os estudos realizados na área de qualidade de software focam na
entrega de software de qualidade mas dentro do prazo estipulado.

Resposta correta.
D. 
Devido à limitação de recursos e tempo, os requisitos são priorizados para que os mais
importantes sejam desenvolvidos primeiro e os menos importantes depois.
É importante priorizar os requisitos classificados como essenciais e importantes para que as
funcionalidades básicas do software sejam disponibilizadas mais rapidamente.

Resposta incorreta.
E. 
A priorização deve ocorrer para que o projeto finalize com custos mais altos que o previsto.
A justificativa para a priorização dos requisitos de software não foca no aumento dos custos.
O objetivo deve ser sempre tentar reduzir os custos do projeto e entregar o produto no
prazo.
Especificação de Requisitos de Software incluir tanto os requisitos de usuário para um
sistema quanto uma especificação detalhada dos requisitos de sistema. Sobre os possíveis
usuários do Documento de Requisitos de Software podemos afirmar:
Resposta incorreta.
A. 
Clientes de sistemas – não tem acesso aos documentos de requisitos, pois este é um
documento utilizado pelos desenvolvedores, gerentes e testadores.
Os Engenheiros de sistema são profissionais que colaboram para o desenvolvimento,
implementação e melhoria do software, assim eles utilizam os requisitos para compreender
qual sistema será desenvolvido. Os Clientes de sistemas especificam e leem os requisitos
para verificar se eles atendem às suas necessidades. Os Gerentes usam o documento de
requisitos para planejar um pedido de proposta para o sistema e planejar o processo de
desenvolvimento do sistema.       Engenheiros de teste de sistema usam os requisitos para
desenvolver validações, com a criação de estratégias variadas e planos de testes. 
Engenheiro de manutenção de sistema usam os requisitos para compreender o sistema e os
relacionamentos entre suas partes.

Você acertou!
B. 
Engenheiros de sistema – usam os requisitos para compreender qual sistema será
desenvolvido
Os Engenheiros de sistema são profissionais que colaboram para o desenvolvimento,
implementação e melhoria do software, assim eles utilizam os requisitos para compreender
qual sistema será desenvolvido. Os Clientes de sistemas especificam e leem os requisitos
para verificar se eles atendem às suas necessidades. Os Gerentes usam o documento de
requisitos para planejar um pedido de proposta para o sistema e planejar o processo de
desenvolvimento do sistema.       Engenheiros de teste de sistema usam os requisitos para
desenvolver validações, com a criação de estratégias variadas e planos de testes. 
Engenheiro de manutenção de sistema usam os requisitos para compreender o sistema e os
relacionamentos entre suas partes.

Resposta incorreta.
C. 
Gerentes – especificam e leem os requisitos para verificar se eles atendem às suas
necessidades.
Os Engenheiros de sistema são profissionais que colaboram para o desenvolvimento,
implementação e melhoria do software, assim eles utilizam os requisitos para compreender
qual sistema será desenvolvido. Os Clientes de sistemas especificam e leem os requisitos
para verificar se eles atendem às suas necessidades. Os Gerentes usam o documento de
requisitos para planejar um pedido de proposta para o sistema e planejar o processo de
desenvolvimento do sistema.       Engenheiros de teste de sistema usam os requisitos para
desenvolver validações, com a criação de estratégias variadas e planos de testes. 
Engenheiro de manutenção de sistema usam os requisitos para compreender o sistema e os
relacionamentos entre suas partes.

Resposta incorreta.
D. 
Engenheiros de teste de sistema – usam os requisitos somente em planos de testes e em
testes de usabilidade.
Os Engenheiros de sistema são profissionais que colaboram para o desenvolvimento,
implementação e melhoria do software, assim eles utilizam os requisitos para compreender
qual sistema será desenvolvido. Os Clientes de sistemas especificam e leem os requisitos
para verificar se eles atendem às suas necessidades. Os Gerentes usam o documento de
requisitos para planejar um pedido de proposta para o sistema e planejar o processo de
desenvolvimento do sistema.       Engenheiros de teste de sistema usam os requisitos para
desenvolver validações, com a criação de estratégias variadas e planos de testes. 
Engenheiro de manutenção de sistema usam os requisitos para compreender o sistema e os
relacionamentos entre suas partes.

Resposta incorreta.
E. 
Engenheiro de manutenção de sistema – profissional que trabalha com sistemas legados,
principalmente quando não existe o documento de requisitos.
Os Engenheiros de sistema são profissionais que colaboram para o desenvolvimento,
implementação e melhoria do software, assim eles utilizam os requisitos para compreender
qual sistema será desenvolvido. Os Clientes de sistemas especificam e leem os requisitos
para verificar se eles atendem às suas necessidades. Os Gerentes usam o documento de
requisitos para planejar um pedido de proposta para o sistema e planejar o processo de
desenvolvimento do sistema.       Engenheiros de teste de sistema usam os requisitos para
desenvolver validações, com a criação de estratégias variadas e planos de testes. 
Engenheiro de manutenção de sistema usam os requisitos para compreender o sistema e os
relacionamentos entre suas partes.
O que é um requisito de negócio?
Resposta incorreta.
A. 
É um diagrama com tarefas associadas à cada papel de usuário.
Um diagrama existente que associa cada papel de usuário a uma tarefa é o diagrama de
casos de uso.

Resposta incorreta.
B. 
É aquilo que existe independente do sistema/software.
Uma regra de negócio, que é aquilo que existe independente do sistema/software.

Resposta incorreta.
C. 
Consistem de uma coleção de narrativas de situações no domínio que favorecem o
levantamento de informações, a identificação de problemas e a antecipação das soluções.
Cenários consistem de uma coleção de narrativas de situações no domínio que favorecem o
levantamento de informações, a identificação de problemas e a antecipação das soluções.

Você acertou!
D. 
São requisitos que descrevem, em termos do negócio, o que deve ser entregue ou
conseguido para fornecer valor.
Também podemos identificá-los como requisitos que informam "o que" o sistema irá fazer.

Resposta incorreta.
E. 
Representação do fluxo de informação.
Regra de negócio não expressa um fluxo de informação, mas sim, uma descrição de
elementos do negócio.
O que é um requisito de usuário?
Você não acertou!
A. 
São requisitos que estabelecem detalhadamente as funções e restrições do sistema.
Os requisitos de sistema que estabelecem detalhadamente as funções e restrições do
sistema.

Resposta incorreta.
B. 
São solicitações do próprio cliente sobre o produto, como quantidade, tipo ou data de
entrega.
Estes requisitos são chamados de requisitos do cliente.

Resposta correta.
C. 
São basicamente as declarações, em linguagem natural e diagramas, sobre os serviços que o
sistema oferece e as restrições para a sua operação. Escrito para os usuários.
Estes requisitos são baseados nas necessidades do usuário.

Resposta incorreta.
D. 
São requisitos definidos pelas tarefas que eles realizam.
Na análise de perfis do usuário, o papel (ou função) específico de cada usuário é definido
pelas tarefas que eles realizam. Esta é uma abordagem usada no levantamento de requisitos.

Resposta incorreta.
E. 
É uma base precisa para a estimativa dos recursos (custo, pessoal, prazos, ferramentas e
equipamentos).
Uma das vantagens da análise de requisitos é uma base precisa para a estimativa dos
recursos (custo, pessoal, prazos, ferramentas e equipamentos), bem como melhoria na
usabilidade, manutenibilidade e outras qualidades do sistema.
Qual das abordagens listadas necessita que o analista ou engenheiro de software seja
inserido no ambiente da empresa/cliente para fazer o levantamento de requisitos?
Resposta correta.
A. 
Observação in loco/etnografia.
Os analista devem estar inseridos na rotina de trabalho da organização, tentando entender e
descrever as principais atividades que são realizadas.

Resposta incorreta.
B. 
Encontros.
Os encontros são reuniões envolvendo analistas, clientes e usuários destinadas
exclusivamente ao levantamento de informações, descrição dos problemas atuais e de
metas futuras.

Resposta incorreta.
C. 
Entrevista.
A entrevista é normalmente a primeira técnica utilizada. Analistas entrevistam clientes para
definir os objetivos gerais e restrições que o software deverá ter. A entrevista deve ser feita
de forma objetiva, visando obter o máximo de informações do cliente. Diversas seções de
entrevistas podem ser marcadas.

Resposta incorreta.
D. 
Ligação.
Esta não é uma abordagem descrita na engenharia de requisitos.

Você não acertou!


E. 
Contato.
O contato não é o nome de nenhuma abordagem que é realizada durante o levantamento de
requisitos.
Supondo que um novo software voltado para redes sociais para um público específico
esteja sendo desenvolvido, após o término do desenvolvimento das funcionalidades, e
depois de ocorrer os testes funcionais e estruturais, o que mais seria pertinente realizar?
Resposta incorreta.
A. 
Teste de performance, pois seria somente um usuário realizando o teste, que tem como foco
a usabilidade.
Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não
funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma
maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez
que seria interessante poder seguir um roteiro e saber todas as especificações para poder
realizar os demais testes. 

Você acertou!
B. 
Revisões técnicas eficientes, especificações funcionais e não funcionais corretas e
elaboração de um plano de teste.
Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não
funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma
maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez
que seria interessante poder seguir um roteiro e saber todas as especificações para poder
realizar os demais testes. 

Resposta incorreta.
C. 
Acompanhamento de usuário realizando testes, especificações menos detalhadas e
elaboração de um plano de teste não funcional.
Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não
funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma
maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez
que seria interessante poder seguir um roteiro e saber todas as especificações para poder
realizar os demais testes. 

Resposta incorreta.
D. 
Verificação de linguagem de programação utilizada, hardware e conhecimento do
desenvolvedor.
Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não
funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma
maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez
que seria interessante poder seguir um roteiro e saber todas as especificações para poder
realizar os demais testes. 

Resposta incorreta.
E. 
Realização de testes de desempenho, de stress e preocupação somente com a
implementação do software.
Seria essencial realizar revisões técnicas eficientes, especificações funcionais e não
funcionais corretas e elaboração de um plano de teste, visto que, dessa forma, traria uma
maior contribuição em questão de facilidade de uso e críticas construtivas, uma vez
que seria interessante poder seguir um roteiro e saber todas as especificações para poder
realizar os demais testes. 
O teste do software tem como objetivo fornecer informações sobre a qualidade
do software em relação ao contexto no qual ele deverá funcionar. Dentre os testes
de software, pode-se incluir:
I. Caixa-preta.
II. Caixa-cinza.
III. Caixa-branca.
IV. Teste de performance.
V. Teste de integração.
Você não acertou!
A. 
Alternativa I.
Como trata-se de um conjunto de atividades que devem ser planejadas e executadas
sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam
de acordo com as estratégias elaboradas no plano de testes.

Resposta incorreta.
B. 
Alternativas I e II.
Como trata-se de um conjunto de atividades que devem ser planejadas e executadas
sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam
de acordo com as estratégias elaboradas no plano de testes.

Resposta incorreta.
C. 
Alternativas II, III e V.
Como trata-se de um conjunto de atividades que devem ser planejadas e executadas
sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam
de acordo com as estratégias elaboradas no plano de testes.

Resposta incorreta.
D. 
Alternativas I, III e IV.
Como trata-se de um conjunto de atividades que devem ser planejadas e executadas
sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam
de acordo com as estratégias elaboradas no plano de testes.

Resposta correta.
E. 
Alternativas I, II, III, IV e V.
Como trata-se de um conjunto de atividades que devem ser planejadas e executadas
sistematicamente (PRESSMAN, 2016), os testes podem ser de diferentes tipos, que variam
de acordo com as estratégias elaboradas no plano de testes.
Técnicas de verificação e validação são de grande importância para identificar se
um software tem defeitos e se está de acordo com o especificado. O que
diferencia validação e verificação em um teste de software?
Resposta incorreta.
A. 
O tipo de revisões técnicas na implementação e na maneira de debugar o código-fonte.
Na verificação, é assegurado que o software seja consistente, correto e completo, em cada
fase e entre fases, garantindo que o software implementado seja correto para a função
específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi
criado e pode ser rastreado segundo os requisitos solicitados pelo cliente.

Resposta incorreta.
B. 
Na validação ocorre uma verificação estática e na verificação ela é realizada de uma forma
dinâmica.
Na verificação, é assegurado que o software seja consistente, correto e completo, em cada
fase e entre fases, garantindo que o software implementado seja correto para a função
específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi
criado e pode ser rastreado segundo os requisitos solicitados pelo cliente.

Resposta correta.
C. 
Na validação ocorre uma verificação dinâmica e na verificação ela é realizada de uma forma
estática.
Na verificação, é assegurado que o software seja consistente, correto e completo, em cada
fase e entre fases, garantindo que o software implementado seja correto para a função
específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi
criado e pode ser rastreado segundo os requisitos solicitados pelo cliente.

Você não acertou!


D. 
Na verificação é assegurado que o software seja robusto e, na validação, que ele tenha
portabilidade.
Na verificação, é assegurado que o software seja consistente, correto e completo, em cada
fase e entre fases, garantindo que o software implementado seja correto para a função
específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi
criado e pode ser rastreado segundo os requisitos solicitados pelo cliente.

Resposta incorreta.
E. 
A validação assegura que o software foi criado de acordo com os requisitos, enquanto a
verificação deve ter um plano de testes.
Na verificação, é assegurado que o software seja consistente, correto e completo, em cada
fase e entre fases, garantindo que o software implementado seja correto para a função
específica. Na validação, observa-se o conjunto de tarefas que asseguram que o software foi
criado e pode ser rastreado segundo os requisitos solicitados pelo cliente.
Em testes de software, há os fatores ISO de qualidade que definem parâmetros, cujo
objetivo é padronizar a avaliação da qualidade de software. A partir disso, é correto afirmar
que os fatores:
Resposta incorreta.
A. 
Compatibilidade mostra que o software será capaz de funcionar mesmo em condições que
não tenham sido validadas nas especificações.
Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre:
funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade,
produtividade, segurança e satisfação.

Resposta incorreta.
B. 
Portabilidade mostra que o software será capaz de funcionar mesmo em condições que não
tenham sido validadas nas especificações.
Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre:
funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade,
produtividade, segurança e satisfação.

Resposta incorreta.
C. 
Eficiência mostra que o software será capaz de funcionar mesmo em condições que não
tenham sido validadas nas especificações.
Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre:
funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade,
produtividade, segurança e satisfação.

Você acertou!
D. 
Não levam, necessariamente, à medição direta, porém fornecem base para medidas indiretas
e uma lista de verificação que norteia a avaliação de qualidade.
Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre:
funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade,
produtividade, segurança e satisfação.

Resposta incorreta.
E. 
Facilidade de uso mostra que o software será capaz de funcionar mesmo em condições que
não tenham sido validadas nas especificações.
Os fatores ISO de qualidade apresentam modelo de qualidade de um software falando sobre:
funcionalidade, confiabilidade, operacionabilidade, eficiência, manutenibilidade,
produtividade, segurança e satisfação.
Dentre as técnicas empregadas no projeto de interfaces de sistemas, uma delas é a
condução de testes de usabilidade, em que os resultados fornecem importantes
indicadores para melhorar a qualidade da interface. Em que consistem os testes de
usabilidade?
Resposta incorreta.
A. 
Mostrar o sistema para um grupo de pessoas e coletar a opinião dos participantes sobre a
interface e os conceitos.
A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais
produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha
segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a
questão e isso gera a satisfação do usuário.

Resposta correta.
B. 
Mostrar o sistema para um usuário, solicitar que ele realize algum tipo de tarefa, observando
as suas reações à interface, como, por exemplo, erros cometidos, dificuldades e eficiência no
cumprimento da tarefa.
A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais
produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha
segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a
questão e isso gera a satisfação do usuário.

Resposta incorreta.
C. 
Entregar um questionário para os usuários do sistema com perguntas sobre a interface e
mapear as respostas.
A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais
produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha
segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a
questão e isso gera a satisfação do usuário.

Resposta incorreta.
D. 
Submeter o sistema a um software robô de teste e verificar os tempos de resposta a cada
padrão de navegação, verificando se estão de acordo com os requisitos não funcionais do
sistema.
A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais
produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha
segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a
questão e isso gera a satisfação do usuário.

Você não acertou!


E. 
Utilizar um software robô de teste para fazer acessos aleatórios ao sistema, que tenta utilizar
elementos da interface e registra erros encontrados.
A interface de um sistema que tenha usabilidade boa faz com que o usuário seja mais
produtivo, tenha facilidade na utilização do sistema e na memorização de comandos, e tenha
segurança em utilizá-lo, tendo a certeza de que, se errar, poderá corrigir facilmente a
questão e isso gera a satisfação do usuário.
Qual destas definições representa um teste de software?
Você acertou!
A. 
O teste do 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. Isso inclui o processo de utilizar
o produto para encontrar seus defeitos.
O teste é um processo realizado pelo testador de software, que permeia outros processos da
engenharia de software e que envolve ações que vão do levantamento de requisitos até a
execução do teste propriamente dito.

Resposta incorreta.
B. 
Os testes de software são ações tomadas para que um projeto demore mais do que o
esperado, não sendo necessário em projetos críticos.
Os testes de software permitem entregar um software com mais qualidade e são muito
importantes em projetos críticos.

Resposta incorreta.
C. 
Os testes de software são realizados no início do projeto, antes da implementação
do software.
Existem diferentes técnicas e modelos de teste de software, cada um buscando encontrar
diferentes problemas e falhas. A maioria das técnicas começa após a implementação do
sistema.

Resposta incorreta.
D. 
Testes de software buscam demonstrar a incapacidade dos desenvolvedores na criação de
soluções de qualidade.
O principal objetivo dos testes de software não é mostrar a incapacidade dos
desenvolvedores, mas encontrar problemas no software e corrigir antes que o cliente seja
prejudicado.

Resposta incorreta.
E. 
Testes de software são um conjunto de atividades realizadas somente pelo cliente quando
recebe o produto.
Existem diversas técnicas de testes de software. Não só o cliente pode realizar os testes, mas
também os testadores e desenvolvedores. Também existem técnicas de desenvolvimento
baseadas em testes, como o TDD.
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?
Resposta incorreta.
A. 
Teste de caixa-preta.
Também chamada de teste funcional, teste comportamental, orientado a dado ou orientado
à entrada e saída, a técnica de caixa-preta avalia o comportamento externo do componente
de software, sem considerar seu comportamento interno.

Resposta correta.
B. 
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.

Você não acertou!


C. 
Regressão.
Essa é uma técnica de teste aplicável a uma nova versão de software ou à necessidade de
executar um novo ciclo de teste durante o processo de desenvolvimento.

Resposta incorreta.
D. 
Técnicas não funcionais.
Técnicas não funcionais são técnicas utilizadas para verificar a operação correta do sistema
em relação a casos inválidos ou inesperados de entrada.

Resposta incorreta.
E. 
Caixa-cinza.
A técnica de teste de caixa-cinza é uma mescla do uso das técnicas de caixa-preta e de
caixa-branca. Isso envolve ter acesso a estruturas de dados e algoritmos do componente a
fim de desenvolver os casos de teste, que são executados como na técnica da caixa-preta.
Qual é a fase de teste em que se testam as menores unidades de software desenvolvidas
(pequenas partes ou unidades do sistema)?
Resposta incorreta.
A. 
Teste de aceitação.
Os testes de aceitação são realizados por um grupo restrito de usuários finais do sistema,
que simulam operações de rotina do sistema de modo a verificar se seu comportamento está
de acordo com o solicitado.

Resposta incorreta.
B. 
Teste de sistema.
Na fase de teste de sistema, o objetivo é executar o sistema sob o ponto de vista de seu
usuário final, varrendo as funcionalidades em busca de falhas em relação aos objetivos
originais.

Resposta incorreta.
C. 
Teste de operação.
Nessa fase de teste, devem ser feitas simulações para garantir que a entrada em produção
do sistema será bem sucedida. Envolve testes de instalação, simulações com cópia de
segurança dos bancos de dados etc.

Você não acertou!


D. 
Teste de integração.
O objetivo é encontrar falhas provenientes da integração interna dos componentes de um
sistema.

Resposta correta.
E. 
Teste de unidade.
O objetivo é encontrar falhas de funcionamento dentro de uma pequena parte do sistema,
funcionando independentemente do todo.
O que é TDD na Engenharia de Software?
Você não acertou!
A. 
É um ciclo de vida desenvolvido para facilitar a criação de testes.
O TDD está relacionado com um tipo de desenvolvimento ágil, que permite menos código e
mais produtividade para a entrega do software.

Resposta incorreta.
B. 
TDD é uma técnica de testes de software utilizada pelos usuários dos sistemas.
TDD não é uma técnica de testes de software, mas de desenvolvimento que se baseia nos
testes. Ele utiliza testes unitários para guiar o desenvolvimento.

Resposta incorreta.
C. 
TDD é um modelo clássico da Engenharia de Software e não é mais utilizado.
TDD é uma técnica atual e muito utilizada no processo de criação de software, já que
permite a criação de software de alta qualidade e com mais produtividade.

Resposta incorreta.
D. 
TDD é um sistema usado para testar software de forma automatizada.
O TDD não é um sistema de testes automatizados. Existem sistemas para automatizar
testes, como Selenium, Appium, Jmeter, SoapUI, Cucumber e SpecFlow.

Resposta correta.
E. 
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.
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?
Resposta incorreta.
A. 
Planejamento.
No planejamento, são elaborados a estratégia de teste e o plano de teste.

Resposta incorreta.
B. 
Preparação.
O objetivo é preparar o ambiente de teste (equipamentos, pessoal, ferramentas de
automação, massa de testes) para que os testes sejam executados conforme o planejado.

Resposta incorreta.
C. 
Execução.
Os testes são executados, e os resultados obtidos são registrados.

Resposta correta.
D. 
Especificação.
Na especificação, há as seguintes atividades: elaborar/revisar casos de testes e
elaborar/revisar roteiros de testes.

Você não acertou!


E. 
Entrega.
A entrega é a última fase do ciclo de vida de testes, na qual o projeto é finalizado, e toda a
documentação é finalizada e arquivada.
Qual das descrições apresentadas define melhor a manutenção de software?
Você acertou!
A. 
 É o processo de melhoria e otimização de um sistema já desenvolvido, como também é o
reparo dos seus defeitos.
Nessa fase, também podemos melhorar a aplicabilidade e usabilidade do software.

Resposta incorreta.
B. 
 É o processo em que o software é testado em busca de falhas.
O processo de teste que compreende a aplicação e a execução de testes em buscas de
falhas. Na manutenção de software também podemos ter testes, no entanto, essa não é a
definição completa de manutenção.

Resposta incorreta.
C. 
 É a etapa em que o software é desenvolvido pelos programadores.
A etapa de desenvolvimento é quando o sistema é codificado e implementado. A fase de
manutenção se inicia após essa etapa.

Resposta incorreta.
D. 
 É o processo de análise das necessidades do cliente.
A análise dos requisitos é a fase em que as necessidades do cliente são analisadas.

Resposta incorreta.
E. 
 É a fase que existe o planejamento do projeto realizado pelo gerente de projetos.
A manutenção de software não é a fase de planejamento, mas, sim, um processo que pode
ocorrer de forma particionada em até quatro tipos (adaptativa, corretiva, evolutiva e
preventiva).
Um sistema de controle de vendas foi entregue para o cliente após passar por uma bateria
de testes. O cliente, após dois meses de uso, notou que um dos cálculos realizados durante
a preparação do relatório de vendas diário estava errado. Então, foi solicitada a
manutenção desse software com o objetivo de ajustar esse cálculo. Essa solicitação foi de
qual tipo de manutenção?
Resposta incorreta.
A. 
 Manutenção evolutiva.
A manutenção evolutiva adiciona novas funcionalidades ao sistema.

Resposta correta.
B. 
 Manutenção corretiva.
A manutenção corretiva corrige falhas no sistema.

Você não acertou!


C. 
 Manutenção adaptativa.
A manutenção adaptativa adequa o sistema para novos ambientes e realidades.

Resposta incorreta.
D. 
 Manutenção preventiva.
A manutenção preventiva tenta precaver falhas e defeitos no software, antes do usuário
encontrá-las.

Resposta incorreta.
E. 
 Manutenção total.
A manutenção total não faz parte dos tipos de manutenção previstos na engenharia
de software.
Por que é importante que a manutenção do software seja prevista durante o planejamento
da criação?
Resposta incorreta.
A. 
 Devido à manutenção ser realizada mais rapidamente do que a implementação do software.
Em muitos casos, alterações no software podem custar mais tempo/dinheiro do que a sua
própria implementação.

Resposta incorreta.
B. 
 Para que o software seja inutilizado antes do previsto.
A manutenção do software tenta manter o sistema sempre atualizado e atendendo aos
requisitos do usuário, com o objetivo de manter o uso.

Resposta incorreta.
C. 
 Para que os desenvolvedores finalizem o projeto mais rapidamente.
A manutenção do software não possui relação direta com o tempo previsto de
implementação do sistema.

Resposta correta.
D. 
 Devido à manutenção de software, geralmente, possuir um custo mais elevado do que o
próprio desenvolvimento.
Além disso, mudanças em um software já desenvolvido podem custar mais tempo para
serem realizadas, dependendo da complexidade do sistema.

Você não acertou!


E. 
 Para que os defeitos e falhas não sejam encontrados.
A manutenção, em especial a preventiva, procura defeitos e falhas para que eles sejam
encontrados antes do usuário.
O processo de manutenção de software, em alguns casos, enfrenta problemas que
dificultam todo o processo. Qual é a principal causa desses problemas?
Resposta incorreta.
A. 
 A maioria dos problemas com a manutenção do software é causada pelo uso de testes
unitários.
O uso de testes unitários acelera a aplicação após uma manutenção, já que eles permitem o
teste automatizado de pequenos elementos funcionais do sistema.

Resposta incorreta.
B. 
 A maioria dos problemas com a manutenção do software é causada por implementações
bem estruturadas e codificadas, pois utiliza padrões de projetos e conceitos bem definidos.
O uso de técnicas e padrões de desenvolvimento auxilia as alterações de software, já que
futuros desenvolvedores não precisarão perder muito tempo tentando entender o código.

Você não acertou!


C. 
 A maioria dos problemas com a manutenção do software é causada pela existência de uma
documentação vasta e bem elaborada.
Uma boa documentação auxilia o processo de manutenção, já que os desenvolvedores
podem consultá-la antes de realizar mudanças.

Resposta incorreta.
D. 
 A maioria dos problemas com a manutenção do software é causada por um planejamento.
O planejamento adequado de software ajuda na manutenção.

Resposta correta.
E. 
 A maioria dos problemas com a manutenção do software é causada por deficiências na
maneira como ele foi planejado e desenvolvido.
Um software mal estruturado e implementado é mais difícil de sofrer modificações.
O que significa manutenibilidade?
Você não acertou!
A. 
 Manutenibilidade pode ser definida como a forma de manutenção do software.
Manutenibilidade não se trata de uma forma ou técnica, mas, sim, como uma métrica
utilizada na manutenção de software.

Resposta incorreta.
B. 
 Manutenibilidade pode ser definida como o conjunto de técnicas utilizadas para verificar se
o software atende às necessidades do cliente.
A verificação de que o software atende às necessidades do cliente está mais relacionada com
o processo de teste e não de manutenção.

Resposta correta.
C. 
 Manutenibilidade pode ser definida como a facilidade com que o software pode ser
entendido, corrigido, adaptado e/ou melhorado.
A manutenibilidade deve ser considerada em cada nível do processo de revisão da
engenharia de software.

Resposta incorreta.
D. 
 Manutenibilidade pode ser definida como o conjunto de técnicas de implementação
de software.
A manutenibilidade não está relacionada com a etapa de implementação de software, mas,
sim, com a manutenção.

Resposta incorreta.
E. 
 Manutenibilidade pode ser definida como a possibilidade de um software obter manutenção.
A manutenibilidade não está relacionada com a possibilidade, ela está com o grau de
facilidade da manutenção ocorrer.
Métricas de software são formas utilizadas para quantificar o esforço necessário para o
desenvolvimento de um sistema de software.
É correto afirmar que:
Você não acertou!
A. 
um indicador faz parte de uma métrica.
Para quantificar o esforço necessário para o desenvolvimento de um sistema, podemos
utilizar como métricas as linhas de código, o esforço e a memória, as quais são consideradas
métricas diretas.

Resposta incorreta.
B. 
os custos, as funcionalidades e a quantidade de erros são considerados métricas indiretas.
Para quantificar o esforço necessário para o desenvolvimento de um sistema, podemos
utilizar como métricas as linhas de código, o esforço e a memória, as quais são consideradas
métricas diretas.

Resposta incorreta.
C. 
a métrica de pontos de função só pode ser calculada após o término do código.
Para quantificar o esforço necessário para o desenvolvimento de um sistema, podemos
utilizar como métricas as linhas de código, o esforço e a memória, as quais são consideradas
métricas diretas.

Resposta correta.
D. 
linhas de código, esforço e memória são consideradas métricas diretas.
Para quantificar o esforço necessário para o desenvolvimento de um sistema, podemos
utilizar como métricas as linhas de código, o esforço e a memória, as quais são consideradas
métricas diretas.

Resposta incorreta.
E. 
métricas de produtividade indicam quanto o software adere aos requisitos.
Para quantificar o esforço necessário para o desenvolvimento de um sistema, podemos
utilizar como métricas as linhas de código, o esforço e a memória, as quais são consideradas
métricas diretas.
As métricas de software são amplamente utilizadas para fazer gerenciamento de projetos
de software.
Sendo assim, assinale a alternativa que corresponde à utilidade principal das métricas.
Resposta correta.
A. 
Servem para medir a produtividade da equipe e indicar a qualidade do produto.
As métricas de software são utilizadas para verificar a produtividade da equipe, além
de indicar a qualidade do produto.

Resposta incorreta.
B. 
Sinalizam quando uma mudança ocorreu no projeto de software.
As métricas de software são utilizadas para verificar a produtividade da equipe, além
de indicar a qualidade do produto.

Você não acertou!


C. 
São utilizadas para atestar a soma total de todos os produtos do projeto assim como de seus
requerimentos.
As métricas de software são utilizadas para verificar a produtividade da equipe, além
de indicar a qualidade do produto.

Resposta incorreta.
D. 
Mostram o trabalho que deve ser desenvolvido para entregar um produto/serviço conforme
o que foi acordado.
As métricas de software são utilizadas para verificar a produtividade da equipe, além
de indicar a qualidade do produto.

Resposta incorreta.
E. 
Servem para dividir as principais entregas do projeto em componentes menores.
As métricas de software são utilizadas para verificar a produtividade da equipe, além
de indicar a qualidade do produto.
Um processo de métricas de software pode ser caracterizado por cinco atividades.
Assinale a alternativa que corresponde à atividade utilizada para acumular os dados.
Resposta correta.
A. 
Coleta.
Manter um histórico com os dados de projetos para derivar as métricas formuladas é um
mecanismo utilizado nos projetos de software, sendoconhecido como coleta de dados.

Resposta incorreta.
B. 
Interpretação.
Manter um histórico com os dados de projetos para derivar as métricas formuladas é um
mecanismo utilizado nos projetos de software, sendoconhecido como coleta de dados.

Resposta incorreta.
C. 
Análise.
Manter um histórico com os dados de projetos para derivar as métricas formuladas é um
mecanismo utilizado nos projetos de software, sendoconhecido como coleta de dados.

Você não acertou!


D. 
Realimentação.
Manter um histórico com os dados de projetos para derivar as métricas formuladas é um
mecanismo utilizado nos projetos de software, sendoconhecido como coleta de dados.

Resposta incorreta.
E. 
Formulação.
Manter um histórico com os dados de projetos para derivar as métricas formuladas é um
mecanismo utilizado nos projetos de software, sendoconhecido como coleta de dados.
Métricas de software podem ser diretas ou indiretas.
Sendo assim, assinale a alternativa correta.
Resposta correta.
A. 
Métricas diretas são aquelas que representam uma quantidade observada, tais como custo,
esforço, número de linhas de código, tempo de execução e número de defeitos.
Métricas diretas (fundamentais ou básicas) são medidas realizadas em termos de atributos
observados.

Resposta incorreta.
B. 
Métricas diretas são aquelas que exigem análise e estão relacionadas à funcionalidade, à
qualidade, à complexidade e à manutenibilidade.
Métricas diretas (fundamentais ou básicas) são medidas realizadas em termos de atributos
observados.

Resposta incorreta.
C. 
Métricas indiretas são aquelas que representam uma quantidade observada, tais como
custo, esforço, número de linhas de código, tempo de execução e número de defeitos.
Métricas diretas (fundamentais ou básicas) são medidas realizadas em termos de atributos
observados.

Resposta incorreta.
D. 
Métricas diretas medem a efetividade da equipe.
Métricas diretas (fundamentais ou básicas) são medidas realizadas em termos de atributos
observados.

Você não acertou!


E. 
Métricas diretas estão condicionadas ao gerente do projeto.
Métricas diretas (fundamentais ou básicas) são medidas realizadas em termos de atributos
observados.
De acordo com as métricas de software, a análise dos pontos de função é uma forma de
medição das funcionalidades fornecidas por um software sob o ponto de vista: 
Resposta incorreta.
A. 
do gerente do projeto.
Pontos de função são utilizados para medir a funcionalidade entregue por um sistema. A sua
análise serve de subsídio para o gerente de projeto monitorar o projeto.

Você acertou!
B. 
dos usuários.
Pontos de função são utilizados para medir a funcionalidade entregue por um sistema. A sua
análise serve de subsídio para o gerente de projeto monitorar o projeto.

Resposta incorreta.
C. 
do programador.
Pontos de função são utilizados para medir a funcionalidade entregue por um sistema. A sua
análise serve de subsídio para o gerente de projeto monitorar o projeto.

Resposta incorreta.
D. 
do analista do sistema.
Pontos de função são utilizados para medir a funcionalidade entregue por um sistema. A sua
análise serve de subsídio para o gerente de projeto monitorar o projeto.

Resposta incorreta.
E. 
do engenheiro de software.
Pontos de função são utilizados para medir a funcionalidade entregue por um sistema. A sua
análise serve de subsídio para o gerente de projeto monitorar o projeto.

Você também pode gostar