Buscar

Engenharia de Software - exercícios da unidade

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 18 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Questão 1Correta 
O ciclo de vida natural de um software, de acordo com Rezende (2005), abrange as seguintes fases: concepção, 
construção, implantação, implementações, maturidade, declínio, manutenção e descontinuidade. 
No modelo Cascata estas fases são mais comumente descritas como: 
I - Projeto. 
II - Teste. 
III - Requisitos. 
IV - Manutenção. 
V - Implementação. 
Escolha a alternativa CORRETA que representa a ordem em que estas fases acontece. 
Sua resposta 
III - I - V - II - IV. 
 
O ciclo de vida natural de um software, de acordo com Rezende (2005), abrange as seguintes fases: 
concepção, construção, implantação, implementações, maturidade, declínio, manutenção e descontinuidade. 
Estas fases são mais comumente descritas nesta ordem como fase de requisitos, projeto, implementação, teste 
e manutenção. 
 
Questão 2Correta 
“Manutenção de software é como se denomina, em geral, o processo de adaptação e otimização de 
um software já desenvolvido, bem como, a correção de defeitos que ele possa ter. A manutenção é necessária 
para que um produto de software preserve sua qualidade ao longo do tempo, pois se isso não for feito, haverá 
uma deterioração do valor percebido desse software e, portanto, de sua qualidade” (WAZLAWICK, 2013, p. 
317). 
Um software legado é um sistema antiquado que continua em uso porque o usuário (tipicamente uma 
organização) não deseja substituí-lo ou projetá-lo novamente. Sendo assim, para que este sistema continue se 
adaptando as mudanças trazidas pelas leis ou pela própria evolução das necessidade é preciso realizar algumas 
manutenções no software. 
Complete as lacunas da sentença a seguir na ordem correta sobre as Categorias de Manutenção: 
_________________: modificação reativa em um produto de software executada após a entrega a fim de 
corrigir problemas descobertos. 
_________________: modificação em um produto de software executada após a entrega do produto a fim de 
manter o software usável em um ambiente alterado ou em alteração. 
_________________: modificação em um produto de software realizada após a entrega a fim de melhorar o 
desempenho ou a manutenibilidade. 
_________________: modificação em um software após a entrega a fim de reparar falhas latentes antes que se 
tornem efetivas (IEEE, 2004). 
Agora, assinale a alternativa CORRETA: 
Sua resposta 
Manutenção corretiva, Manutenção adaptativa, Manutenção perfectiva e Manutenção preventiva. 
 
Categorias e descrições corretas: 
Manutenção corretiva: modificação reativa em um produto de software executada após a entrega a fim de 
corrigir problemas descobertos. 
Manutenção adaptativa: modificação em um produto de software executada após a entrega do produto a fim 
de manter o software usável em um ambiente alterado ou em alteração. 
Manutenção perfectiva: modificação em um produto de software realizada após a entrega a fim de melhorar o 
desempenho ou a manutenibilidade. 
Manutenção preventiva: modificação em um software após a entrega a fim de reparar falhas latentes antes que 
se tornem efetivas (IEEE, 2004). 
 
Questão 3Correta 
Implementação é o processo de converter o projeto detalhado em código. Com as etapas anteriores de requisitos 
e projeto bem-sucedidos, a implementação tende a ser relativamente bem compreendida. (SCHACH, 2008). 
Sobre os conceitos e Engenharia de Software e a implementação, apresentam-se as seguintes afirmações. 
I - Alguns pontos do processo devem ser alvo de atenção na implementação, um deles é a Escolha da linguagem 
de programação e outro deles são as Práticas de programação adequadas. 
II - Um padrão de codificação pode ser entendido como um conjunto de regras que disciplinam a criação do 
código. Um padrão pode conter normas para criação de nomes de arquivos, nomes de classes, indentação e 
quebras de linha, entre outras. 
III - Os nomes das variáveis e demais componentes do programa devem ser coerentes com sua real função. 
Recomenda-se que sejam dados nomes universalmente significativos aos identificadores, ou seja, que façam 
sentido tanto para o programador que trabalha naquele projeto como para os que eventualmente lhe darão 
manutenção futura. 
Assinale a opção que contenha as afirmações CORRETAS: 
Sua resposta 
Todas as afirmações são corretas. 
 
Sobre os conceitos e Engenharia de Software e a implementação, apresentam-se as seguintes afirmações. I - 
Alguns pontos do processo devem ser alvo de atenção na implementação, um deles é a Escolha da linguagem 
de programação e outro deles são as Práticas de programação adequadas. (CORRETO) II - Um padrão de 
codificação pode ser entendido como um conjunto de regras que disciplinam a criação do código. Um padrão 
pode conter normas para criação de nomes de arquivos, nomes de classes, indentação e quebras de linha, entre 
outras. (CORRETO) III - Os nomes das variáveis e demais componentes do programa devem ser coerentes 
com sua real função. Recomenda-se que sejam dados nomes universalmente significativos aos identificadores, 
ou seja, que façam sentido tanto para o programador que trabalha naquele projeto como para os que 
eventualmente lhe darão manutenção futura. (CORRETO) 
 
Questão 4Correta 
Existem muitas definições sobre o que é Engenharia de Software. A IEEE Computer Society (2004) define a 
Engenharia de Software da seguinte forma: “A aplicação de uma abordagem sistemática, disciplinada e 
quantificável de desenvolvimento, operação e manutenção do software, além do estudo dessas abordagens." 
Qual éo objetivo da Engenharia de Software?Assinale a alternativa correta. 
Sua resposta 
O objetivo da Engenharia de Software é a entrega de produtos de qualidade, respeitados os prazos e os limites 
de dispêndio de recursos humanos e financeiros. 
 
Existem muitas definições paraEngenharia de Software e muitas das suas funções ajudam as empresas a 
atingirem vários objetivos. A resposta correta é: "O objetivo da Engenharia de Software é a entrega de 
produtos de qualidade, respeitados os prazos e os limites de dispêndio de recursos humanos e financeiros." 
 
Questão 5Correta 
Análise de pontos por função, essa técnica se baseia nos requisitos do software para a obtenção da métrica. 
Por isso, ela é aplicável a partir do momento em que os requisitos funcionais do programa ou as histórias 
tenham sido definidos. Esses requisitos ou funções são convertidos em valores numéricos que, depois de 
calculados e ajustados, proverão excelente ideia do esforço necessário para desenvolver o sistema 
(WAZLAWICK, 2013). 
Sobre a contagem de pontos de função, analise as afirmações abaixo: 
I - Para efeito de contagem, um requisito do sistema equivale a uma função. No entanto, essa regra não deve ser 
tomada de forma absoluta. 
II - Apenas funções visíveis e invisíveis para o usuário devem ser consideradas. 
III - Um cálculo interno deve ser contado. 
IV - Se apenas um requisito trata de cadastro de clientes e de produtos, então teremos aí duas funções. 
Assinale a alternativa que apresenta as afirmações CORRETAS: 
Sua resposta 
I e IV, apenas. 
 
Frases Verdadeiras Para efeito de contagem, um requisito do sistema equivale a uma função. No entanto, 
essa regra não deve ser tomada de forma absoluta. Se apenas um requisito trata de cadastro de clientes e de 
produtos, então teremos aí duas funções. Frases Falsas Corrigidas Apenas funções visíveis para o usuário 
devem ser consideradas. Um cálculo interno, por exemplo, não deve ser contado. Obs.: Em resumo, deve-se 
tomar os requisitos, eliminar os que são funções internas e subdividir aqueles que representam mais do que 
uma função (WAZLAWICK, 2013). 
 
Questão 6 Correta 
Segundo Schach (2008), a atividade de levantamento de requisitos determina o que o cliente precisa ao invés 
do que o cliente quer. Para que essa etapa possa ser realizada da melhor forma, é importante que o responsável 
pela atividade conheça o campo de aplicação do sistema que será especificado e conheça asregras de negócios 
do cliente. Como é uma atividade que requer habilidade em trabalhar com especialistas humanos e com o 
conhecimento tácito, são utilizadas algumas técnicas para facilitar o trabalho. 
Em se tratando das técnicas para levantamento de requisitos: 
I) Nas entrevistas tutoriais, o entrevistador define previamente o andamento do procedimento de aquisição de 
conhecimento. 
II) A interação entre entrevistado e entrevistador deve, também, buscar soluções ou projeções de soluções que 
irão compor o domínio da solução. 
III) Análise de documentos e observações pessoais é considerada técnica para a fase de levantamento de 
requisitos. 
IV) As entrevistas não estruturadas são aquelas nas quais o entrevistador age espontaneamente, sem obedecer a 
uma prévia organização das perguntas. 
V) O responsável pela elaboração dos questionários deve utilizar questões diretas e objetivas, que não estejam 
dispostas na mesma ordem para todos os participantes preferencialmente. 
Assinale a alternativa correta: 
Sua resposta 
Apenas as alternativas II, III e IV são verdadeiras. 
 
Em uma entrevista tutorial, o entrevistado praticamente leciona sobre um determinado assunto e não realiza 
perguntas previamente estruturadas. E, com relação à aplicação de questionários, é indicado queo responsável 
pela elaboração das questões as use na mesma ordem para todos os participantes. 
 
Questão 7 Errada 
Após a fase de levantamento de requisitos, tem início a análise de requisitos que busca classificar os requisitos 
em dois principais grupos: Requisitos Funcionais (descrevem as funções queo software irá executar, 
descrevendo o comportamento planejado do sistema em termos de tarefas e funções que o sistema irá executar) 
e Requisitos Não Funcionais (não se referem às funções específicas do sistema, mas sim, propriedades 
como performance, capacidade de armazenamento, restrições de entrada e saída, memória, entre outras). 
Associe as descrições de requisitos, apresentadas na coluna A, com o tipo de requisito correspondente, 
apresentados na coluna B. 
A B 
I. O sistema deverá emitir o relatório de 
produtos vendidos nos últimos 30 dias. 
II. O sistema deverá processar as 
informações de no mínimo 200 clientes 
por minuto. 
III. O sistema deverá fazer uma cópia de 
segurança dos dados dos clientes nos sete 
dias da semana, às 23:00hs. 
IV. O sistema deverá gerar um relatório 
de clientes que tenham realizado compras 
no período informado pelo usuário, com 
no máximo 20 linhas cada página. 
V. O sistema deverá realizar a consulta 
dos dados das passagens aéreas 
com status Emitida. 
1. Requisitos Funcionais 
2. Requisitos Não Funcionais 
A seguir, assinale a alternativa que contém a sequência correta da associação. 
Sua resposta 
I – 1; II – 2; III – 2; IV – 1; V – 2. 
 
A alternativa A está incorreta porque a opção I corresponde a um requisito funcional, pois descreve apenas 
regras de negócio para o requisito. 
 
UNIDADE 2 
Questão 1Correta 
O método ágil denominado Feature-Driven Development (FDD), ou Desenvolvimento Dirigido 
porFuncionalidade, enfatiza o uso de orientação a objetos e possui duas fases: a) Concepção e planejamento 
onde o produto é concebido e planejado antes de começar a construção; b) Construção que é o desenvolvimento 
por iterações do produto em ciclos de uma a duas semanas. 
Uma empresa que vende livros pela internet contratou uma equipe para desenvolvimento do seu sistema. Essa 
equipe trabalha com o método FDD, e logo após o acordo com o cliente iniciaram-se as atividades do projeto, 
conforme denominadas: 
1 - PPF (Planejar por Funcionalidade). 
2 - DPF (Detalhar por Funcionalidade). 
3 - DMA (Desenvolver Modelo Abrangente). 
4 - CPF (Construir por Funcionalidade). 
5 - CLF (Construir Lista de Funcionalidades). 
Assinale a opção que apresenta a ordem correta dos procedimentos a serem realizados: 
Sua resposta 
3 – 5 – 1 – 2 – 4. 
 
A primeira fase do método FDD éa Concepção e Planejamento do produto, que inicia com a atividade 
deDesenvolver Modelo Abrangente através de diagramas que representam o negócio amplo. Sendo assiim, a 
alternativa correta é na seguinte ordem: DMA (Desenvolver Modelo Abrangente) CLF (Construir Lista de 
Funcionalidades) PPF (Planejar por Funcionalidade) DPF (Detalhar por Funcionalidade) CPF (Construir por 
Funcionalidade) 
 
 
Questão 2Correta 
Uma empresa que desenvolve software enfrentou alguns problemas que afetaram o sucesso do último projeto. 
Dentre os mais críticos pode ser citado: falha na comunicação entre a equipe do projeto, gerando retrabalho e 
algumas vezes, deixando de fazer algo que o gerente do projeto esperava; problemas com um membro da equipe 
que detinha o conhecimento e ficou uma semana afastado, gerando dificuldade para os demais desenvolvedores 
finalizarem a atividade que estava em andamento e por fim, insatisfação do cliente na entrega do produto final, 
visto que não foi entregue tudo que o cliente esperava. 
Seguindo as orientações do modelo de desenvolvimento Extreme Programming (XP), assinale a opção que 
apresenta uma ordem de procedimentos que podem ser realizados para que no próximo projeto esses problemas 
sejam minimizados: 
I – Agendar reuniões diárias rápidas da equipe logo na primeira hora do dia focadas no planejamento e status 
das atividades atuais. 
II – Estabelecer a regra do código coletivo onde todos os programadores terão acesso às funcionalidades 
desenvolvidas e em desenvolvimento. 
III – Estabelecer a metodologia de programação par a par, onde cada programador sempre está acompanhado 
do cliente durante o desenvolvimento do código. 
IV – Planejar entregas curtas para o cliente, por funcionalidade desenvolvida. 
V – Contratar um gerente de projeto mais experiente que esteja presente durante todo o ciclo do 
desenvolvimento para orientar os programadores e testadores. 
Agora, assinale a alternativa CORRETA: 
Sua resposta 
Somente as afirmativas I, II e IV estão corretas. 
 
As alternativas abaixo estão incorretas: III – Porque a programaçãopar a par, é onde cada programador sempre 
está acompanhado de outro programador, e não do cliente. V – Porque na metodologia ágil, o papel do gerente 
são os assuntos administrativos, visto que a equipe técnica é auto-gerenciável. 
 
Questão 3Correta 
O Scrum é um modelo ágil para a gestão de projetos de software que tem na reunião regular dos seus 
desenvolvedores para criação de funcionalidades específicas sua prática mais destacada. Suas práticas possuem 
alguma semelhança com as do modelo Extreme Programming (XP). 
 
De acordo com as informações apresentadas na tabela a seguir, faça a associação do nomes dos termos da 
SCRUM contidos na Coluna A com as suas respectivas descrições contidas na Coluna B. 
COLUNA A COLUNA B 
I. É a lista de tarefas que a equipe deverá executar 
naquele ciclo que está sendo desenvolvido. 
II. É o ciclo que será desenvolvido, que pode variar de 
duas a quatro semanas. 
III. É a lista que contém todas as funcionalidades 
desejadas para o produto, que pode ser incrementada à 
medida que o projeto avançar. 
1. Product Backlog 
2. Sprint Backlog 
3. Sprint 
 
 
Assinale a alternativa que apresenta a associação CORRETA entre as colunas. 
Sua resposta 
I – 2; II – 3; III – 1. 
 
Alternativa CORRETA: I – 2; II – 3; III – 1. De acordo com os conceitos do SCRUM, os termos relacionam-
se à: - Sprint Backlog é a lista de tarefas que a equipe deverá executar naquele ciclo que está sendo 
desenvolvido. - Sprint é o ciclo que será desenvolvido, que pode variar de duas a quatro semanas. - Product 
Backlog é a lista que contém todas as funcionalidades desejadas para o produto, que pode ser incrementada à 
medida que o projeto avançar. 
 
 
Questão 4Errada 
Um Sprint é dividido em tarefas para que seja melhor planejado e acompanhado. O gráfico mostra a 
informação da quantidade de 'Tarefas realizadas"; em um determinado Sprint, numintervalo de tempo de 8 
dias. De acordo com esses dados, é possível identificar o perfil da equipe do projeto. 
Fonte: Autor. 
De acordo com o gráfico, é CORRETO afirmar que: 
 
I) é uma equipe com membros de perfil avançado em desenvolvimento. 
II) é uma equipe com membros de perfil iniciante em desenvolvimento. 
III) é uma equipe com gerente de projeto atuante. 
IV) é uma equipe com testadores inexperientes por deixarem para testar no final. 
V) é uma equipe que se preocupou em realizar os treinamento no início do Sprint. 
 
Marque a opção CORRETA 
Sua resposta 
As afirmativas I, III e IV estão corretas. 
 
As alternativas abaixo são incorretas: I - é uma equipe com membros de perfil avançado em desenvolvimento. 
Na verdade são iniciantes, visto a demora no entendimento do que era para ser construído. III - é uma equipe 
com gerente de projeto atuante. Neste modelo o papel do gerente não é técnico e o gráfico mostra um atraso 
no desenvolvimento, o que demonstra falta de entendimento das tarefas. IV - é uma equipe com testadores 
inexperientes por deixarem para testar no final. Este gráfico demonstra atraso na construção e não tem relação 
com os testes. 
 
Questão 5Correta 
Scrum é um modelo ágil para a gestão de projetos de software que tem como a prática mais destacada uma 
reunião regular dos seus desenvolvedores para criação de funcionalidades específicas. Suas práticas guardam 
semelhança com as próprias do XP, mas possuem nomes e graus de importância diferentes nos dois contextos. 
MAITINO NETO (2016). 
A metodologia ágil Scrum, teve sua concepção inicial em meados da década de 1980 e que tem o Sprint como 
o conceito mais importante. 
Abaixo encontram-se afirmações a respeito do SPRINT: 
I -É o nome que o Scrum dá a cada período em que a equipe se reúne para, de fato, construir o produto. 
II -É um documento indispensável no modelo. 
III -É um ciclo de desenvolvimento em que determinadas funcionalidades viram programa. 
IV -Representa a história do cliente em uma expressão fácil de ser lembrada. 
É CORRETO o que se afirma em: 
Sua resposta 
I e III, apenas. 
 
É correto o que se afirma em: I -É o nome que o Scrum dá a cada período em que a equipe se reúne para, de 
fato, construir o produto. III -É um ciclo de desenvolvimento em que determinadas funcionalidades viram 
programa. As incorretas são: II -É um documento indispensável no modelo. Esta é na verdade a definição 
deProduct Backlog. IV - Representa a história do cliente em uma expressão fácil de ser lembrada. Esta é na 
verdade a definição deProduct Backlog. 
 
Questão 6 Errada 
O Scrum é uma das diversas metodologias que fazem uso dos conceitos ágeis para a gestão de projetos de 
software que tem na reunião regular dos seus desenvolvedores para criação de funcionalidades específicas sua 
prática mais destacada. Um dos principais elementos do SCRUM é o Backlog. 
Pode-se afirmar que o Backlog é 
Sua resposta 
uma lista de tarefas que a equipe deverá executar naquele Sprint. 
 
Alternativa CORRETA: um conjunto de requisitos/funcionalidades que são elencadas pelo project onwer 
(PO), junto com a equipe e desenvolvimento e o scrum master. Backlog consiste em conjunto de 
requisitos/funcionalidades que são elencadas pelo project onwer, junto com a equipe e desenvolvimento e o 
scrum master. A equipe de desenvolvimento pode opinar em relação aos requisitos, todavia, o PO tem 
prioridade no processo. 
 
UNIDADE 3 
Questão 1Correta 
A ISO 9001 é um dos mais conhecidos e utilizados padrões mundiais de qualidade.Atualizado no ano de 2015, 
ele especifica requisitos para um sistema de gestão dequalidade, com foco naquilo que o cliente exige para que 
o produto ou serviço sejaentregue de acordo com suas necessidades (SEEAR, 2015 apud MAITINO NETO, 
2016) 
Considerando os conhecimentos adquiridos sobre ISO analise as afirmações a seguir. 
I - Esse padrão é implantado quando uma organização precisa demonstrar suacapacidade de fornecer produtos 
e serviços que atendam às exigências de regulamentoe estatuto da organização e que pretende aumentar a 
satisfação do cliente por meioda aplicação eficaz do sistema. 
II - O aspecto interessante desse padrão é que todos osseus requisitos são genéricos e se destinam a aplicação 
em qualquer organização,independentemente da sua natureza ou tamanho, ou dos serviços ou produtos 
quedisponibiliza. 
III - A ISO 9001:2015 adota uma abordagem de processo para desenvolvimento,implementação e melhoria da 
eficácia de um sistema de gestão da qualidade, como objetivo de aumentar a satisfação do cliente por meio do 
atendimento aos seusrequisitos. 
Assinale a alternativa a seguir, que apresenta apenas as afirmações CORRETAS. 
Sua resposta 
Todas as afirmações são corretas. 
 
TODAS as afirmações estão corretas. I - Esse padrão é implantado quando uma organização precisa 
demonstrar suacapacidade de fornecer produtos e serviços que atendam às exigências de regulamentoe 
estatuto da organização e que pretende aumentar a satisfação do cliente por meioda aplicação eficaz do 
sistema. VERDADEIRO. II - O aspecto interessante desse padrão é que todos osseus requisitos são genéricos 
e se destinam a aplicação em qualquer organização,independentemente da sua natureza ou tamanho, ou dos 
serviços ou produtos quedisponibiliza.VERDADEIRO. III - A ISO 9001:2015 adota uma abordagem de 
processo para desenvolvimento,implementação e melhoria da eficácia de um sistema de gestão da qualidade, 
como objetivo de aumentar a satisfação do cliente por meio do atendimento aos 
seusrequisitos.VERDADEIRO. 
 
Questão 2Correta 
O modelo ACT - Annual Change Traffic ou Tráfego Anual de Mudança - foi proposto por Boehm (1981) e se 
baseia em uma estimativa de porcentagem de linhas de código que passarão por manutenção(MAITINO NETO, 
2016). 
Sobre omodelo ACT, afirma-se que: 
I - Para efeito de contagem, são consideradas como linhas em manutenção tanto as linhas a serem alteradas 
quanto as novas linhas criadas. 
II -O valor da variável ACT reflete o número de linhas que sofrem manutenção dividido pelo número total de 
linhas do código em um ano típico. 
III -A fórmula criada é E = ACT SDT. 
IV - Apresentado pelo esforço anual esperado de manutenção de umprograma E = 1,6, isto siginifica queespera-
se esforço anual de 1,6 horasde desenvolvimento/mês destacadas para atividade de manutenção. 
Escolha a alternativa CORRETA que apresenta apenas afirmações verdadeiras sobre ACT. 
Sua resposta 
Todas as afirmações são corretas. 
 
Sobre omodelo ACT, TODAS ESTÃO CORRETAS: I - Para efeito de contagem, são consideradas como 
linhas em manutenção tanto as linhas a serem alteradas quanto as novas linhas criadas. II -O valor da variável 
ACT reflete o número de linhas que sofrem manutenção dividido pelo número total de linhas do código em 
um ano típico. III -A fórmula criada é E = ACT SDT. IV - Apresentado pelo esforço anual esperado de 
manutenção de umprograma E = 1,6 , isto siginifica queespera-se esforço anual de 1,6 horasde 
desenvolvimento/mês destacadas para atividade de manutenção. 
 
Questão 3Errada 
Em engenharia de software, uma métrica é uma quantificação indireta, que envolve o cálculo e o uso de mais 
de uma medida. As métricas devem ser utilizadas para o gerenciamento das atividades dentro de um projeto, 
bem como para traçar metas para a equipe. O objetivo das metas é a melhoria dos processos e/ou 
produtos.Segundo Swebok (2004), as medidas que levam à obtenção de métricas podem ser categorizadas em 
medidas de: Processo, Produto, Projeto e Recursos. 
 
Fonte: O autor. 
De acordo com o gráfico apresentado, assinale a alternativa que descreve corretamente o que ele representa: 
I) Uma medida de produto, visto que é possível acompanhar se o produto será entregue no prazo. 
II) Uma medida de recursos, visto que representa um atraso no cronograma por parte dos recursos humanos do 
projeto. 
III) Uma medida de projeto, visto querepresenta o desempenho em termos de cronograma previsto e 
realizado. 
IV) Uma medida de processo, uma vez que pode representar se está havendo atrasos no cronograma com a 
inserção de algum processo introduzido. 
V) Não representa nenhuma medida relevante para a gestão de um projeto. 
Assinale a alternativa correta: 
Sua resposta 
V, apenas. 
 
Alternativa D está incorreta porque a informação e gestão do cronograma do projeto (se foi cumprido ou não) 
são de grande importância na gestão de projetos. A alternativaB é correta porque o gráfico representa o 
percentual em que o cronograma foi entregue no prazo, durante os meses de janeiro a julho de 2006. Essas 
medidas são importantes para a gestão e tomada de ações que tragam melhorias para o projeto e dizem 
respeito ao Projeto e Processos. 
 
Questão 4Correta 
Segundo o Modelo de qualidade da ISO 25010:2011, descrito por Wazlawick (2013), as características 
do software, relacionadas à qualidade dele, estão descritas na tabela abaixo em oito categorias. Essas categorias 
são importantes no momento da especificação funcional e não funcional, visto que o usuário e o analista de 
negócios irão pensar nessas características para definir os requisitos do sistema: 
 
Fonte:Wazlawick (2013). 
Considerando as descrições abaixo, são ações relacionadas às características de Confiabilidade quando: 
I) Mantém comportamento consistente com o que se espera dele ao longo do tempo. 
II) Permite que o usuário encontre e execute com facilidade as requisições do sistema. 
III) Funciona em situações incomuns. 
IV) É responsivo, isto é, fornece respostas adequadas. 
V) Permanece operacional quando necessário. 
Assinale a alternativa que contém somente as descrições corretas: 
Sua resposta 
I, III e V, apenas. 
 
A característica de Confiabilidade de sistemas está relacionada a: Manter comportamento consistente com o 
que se espera dele ao longo do tempo; Funcionar em situações incomuns; e Permanecer operacional quando 
necessário. 
Questão 5Correta 
Os defeitos em um processo de qualidade de software podem ter diferentes análises de causa, isto é, podem ter 
sido causados por erro do programador, por erro de especificação do requisito, por erros no ambiente onde o 
sistema está sendo executado, ou mesmo por erro do testador que abriu o defeito indevidamente. Abaixo, um 
gráfico com o resultado dos testes de acordo com a análise de causas: 
 
Fonte: O autor. 
Considerando as análises de causas acima descritas, o processo de Verificação e Validação, que visa avaliar o 
produto em todo o ciclo de vida de desenvolvimento, poderia utilizar-se da aplicação de checklists para reduzir 
o número de defeitos para as seguintes causas: 
I) Problemas do ambiente de produção: o software está correto, mas o erro ocorre por problema de configuração 
no ambiente de produção. 
II) Defeitos de especificação de requisitos: o software está rodando corretamente, mas não está atendendo ao 
requisito inicial do cliente. 
III) Defeitos de programação: o software está com erro, mas foi detectado que o requisito estava descrito 
corretamente. 
Assinale a alternativa correta: 
Sua resposta 
I e II, apenas. 
 
A utilização de checklists poderá prevenir os defeitos relacionados a "problemas do ambiente de produção", 
visto que pode auxiliar o responsável a parametrizar e configurar o ambiente de acordo com todas as 
necessidades do software; e "defeitos de especificação de requisitos", visto que pode padronizar o 
levantamento de dados junto ao cliente para que não fiquem informações importantes faltando nesss etapa. 
 
Questão 6 Correta 
O CMMI - Capability Maturity Model Integration, é um modelo que tem o objetivo de aprimorar a capacidade 
da maturidade do processo de software. Segundo Wazlawick (2013, p. 506), os níveis de maturidade do CMMI 
vão de 1 a 5, sendo o maior que representa um melhor nível de organização da empresa: 
Fonte:Wazlawick (2013) 
As principais diferenças entre os níveis de maturidades estão descritos abaixo: 
I) O nível 1 é caracterizado pela empresa possuir processos bem definidos, mas estes ainda não são utilizados 
pela equipe, tornando o ambiente instável para o desenvolvimento e manutenção do software. 
II) Os níveis 2 e 3 são caracterizados pela empresa possuir processos mais rigorosos, diferenciando-se apenas 
no tempo de atuação da empresa em cada nível. Isto é, após 2 anos no nível 2, a empresa passa 
automaticamente para o nível 3. 
III) O nível 4, caracteriza-se quando a organização estabelece metas de qualidade, mas ainda não utiliza essas 
medidas na gestão de seus projetos. 
IV) O nível 5, caracteriza-se quando a organização passa a utilizar as medidas relacionadas às metas na gestão 
de seus projetos. 
Assinale a alternativa CORRETA: 
Sua resposta 
Todas as alternativas estão incorretas. 
 
Todas as alternativas estão erradas porque: - Nível 1, a empresa não possui processos bem definidos; - Nível 2 
e 3 nãose diferem no tempo de atuação da empresa em cada nível, mas sim, pelo nível 3 ser mais rigoroso que 
o nível 2; - Nível 4 a empresa estabelece metas de qualidade e as utiliza na gestão de seus projetos; - Nível 5, 
a empresa melhora seus processos e NÃO quando passa a utilizar as medidas na gestão de seus projetos. 
 
Questão 7 Errada 
Já sabemos que, feitas as medições, podemos e devemos utilizá-las para gerar as métricas. Para fins de 
classificação, algumas métricas são geradas a partir de medidas obtidas diretamente, geralmente por contagem 
do atributo observado. Às métricas geradas damos o nome de métricas diretas. Outras métricas, porém, são 
obtidas indiretamente. A elas damos o nome de métricas indiretas (MAITINO NETO, 2016). 
Considerando esse contexto, avalie as seguintes asserções e a relação proposta entre elas. 
I - A análise de pontos por função se baseia nos requisitos do software para a obtenção da métrica. Por isso, ela 
é aplicável a partir do momento em que os requisitos funcionais do programa tenham sido definidos. Esses 
requisitos são convertidos em valores numéricos que, depois de calculados e ajustados, proverão excelente ideia 
do esforço necessário para desenvolver o sistema. 
PORQUE 
II - É utilizado uma métrica de esforço de modo que se possa medir o tamanho funcional de um software com 
o objetivo de se obter uma boa estimativa de custo, antes mesmo da sua efetiva construção. 
A respeito dessas asserções, assinale a opção correta. 
Sua resposta 
As asserções I e II são proposições verdadeiras, mas a II não é um objetivo da I. 
 
As asserções I e II são proposições verdadeiras, e a II é um objetivoda I. Ambas realmente são verdadeira e 
com o objetivo de seobter uma boa estimativa de custo, antes mesmo da sua efetiva construção usa-se uma 
métrica de esforçode modo que se possamedir o tamanho funcional de um software, usa-se a medição em 
Pontos de Função. Ou seja, usa-se Pontos de Função para se atingir o objetivo de se obter uma estimativa de 
custo, tamanho, etc. 
 
UNIDADE 4 
 
Questão 1Correta 
Um Erro ocorre quando o resultado obtido em um processamento e o que se esperava dele não são coincidentes. 
Um erro também está associado a uma violação nas próprias especificações do programa (MAITINO NETO, 
2016). 
Sobre os testes que nos ajudam a encontrar erros, afirma-se: 
I - O objetivo do teste é encontrar defeitos no software, e não garantir que o programa é livre de problemas. 
II -Se o processo de teste não revelar defeitos, há que se aprimorar os casos de teste e o processo empregado. 
III -Um caso de teste é o par formado por uma entrada no programa e a correspondente saída esperada, de acordo 
com os requisitos do sistema. 
IV –O procedimento de testes não está diretamente relacionado à boa escolha e ao bom uso dos casos de teste. 
Assinale a alternativa que representa as afirmações CORRETAS: 
Sua resposta 
II e III apenas. 
 
I - O objetivo do teste é encontrar defeitos no software, e não garantirque o programa é livre de problemas. 
ERRADA, na verdade, o objetivo do teste é encontrar problemas no software, e não garantir que o programa é 
livre de defeitos. II -Se o processo de teste não revelar defeitos, há que se aprimorar os casos de teste e o 
processo empregado. CORRETO III -Um caso de teste é o par formado por uma entrada no programa e a 
correspondente saída esperada, de acordo com os requisitos do sistema. CORRETO IV –O procedimento de 
testes não está diretamente relacionado à boa escolha e ao bom uso dos casos de teste. ERRADA, na verdade, 
o procedimento de testes está diretamente relacionado à boa escolha e ao bom uso dos casos de teste. 
 
Questão 2Correta 
Casos de testes são instruções escritas para a equipe que vai executar o processo de testes, contendo as entradas 
de dados que o testador deverá fornecer e os respectivos resultados que o sistema vai retornar para cada entrada. 
Eles são escritos com o objetivo de que qualquer pessoa, mesmo que não conheça o sistema, possa executar o 
teste, de acordo com as instruções do artefato. 
I - Um bom conjunto de caso de testes visa exercitar o maior número possível de partes do programa que foi 
desenvolvido. 
PORQUE 
II - O principal objetivo do processo de testes é garantir que o programa não possua defeitos quando for entregue 
para o usuário final. 
A respeito dessas asserções e da relação entre elas, assinale a alternativa CORRETA: 
Sua resposta 
A primeira asserção é verdadeira e a segunda é falsa. 
 
Alternativa Cestá correta porque a primeira asserção é verdadeira, visto que um bom conjunto de caso de 
testes visa exercitar o maior número possível de partes do programa que foi desenvolvido; e a segunda 
asserção é falsa, visto que o principal objetivo do processo de testes NÃO é garantir que o programa não 
possua defeitos. Se um teste não encontrar defeitos, é sinal que o caso de testes precisa ser melhorado. 
 
Questão 3Correta 
Segundo Wazlaquick (2013), a expressão “manutenção de software” vem sendo substituída ouusada em 
conjunto com “evolução de software”, visto que as atividades de modificação de um produto que já está em 
operação não visam mantê-lo em seu estágio atual, mas fazê-lo evoluir de forma a adaptar-se a novos requisitos 
ou ainda corrigir defeitos. Métricas podem ser utilizadas para planejar essa atividade. O modelo ACT (Annual 
Change Traffic ou Tráfego Anual de Mudança) foi proposto por Boehm (1981) e se baseia em uma estimativa 
de porcentagem de linhas de códigoque passarão por manutenção. A fórmula criada é representada por E = ACT 
SDT, em queE representa o esforço, medido em horas desenvolvedor/mês, ACT representa a porcentagem 
esperada de linhas modificadas ou adicionadas durante um ano em relação ao tamanho do software e SDT é o 
tempo de desenvolvimento do software em horas. 
Levando em consideração as informações sobre o cálculo do esforço necessário para manter 
um software, calcule esse esforço considerando um software desenvolvido em 480 horas de desenvolvimento e 
tendo como estimativa uma taxa anual de 5% de linhas para manutenção. 
Assinale a alternativa contem a resposta CORRETA: 
Sua resposta 
Estima-se 24 horas de desenvolvimento/mês para atividade de manutenção. 
 
A alternativa Aé correta porque utilizando-se a fórmula E = ACT SDT, então E = 0,05 480, resultando em 24 
horas de manutenção por mês. 
 
Questão 4Correta 
Imagine o programa como uma caixa. Quando o testador não tem acesso ao código-fonte, ele está lidando com 
uma caixa preta, cujo interior não se consegue ver. Daí o teste funcional também ser conhecido como caixa 
preta (MAITINO NETO, 2016). 
Abaixo encontram-se afirmações sobre oteste funcional. 
I - Esta técnica baseia-se nas especificações do software para derivar os requisitos de teste. O teste é realizado 
nas funções do programa, daí o nome funcional. 
II - Não é seu objetivo verificar como ocorrem internamente os processamentos, mas se o algoritmo inserido 
produz os resultados esperados. 
III - Essaestratégia de teste requer conhecimento de detalhes da implementação do programa. 
IV - Para executá-lo, o código-fonte é necessário. 
Assinale a alternativa que possui apenas as afirmações corretas. 
Sua resposta 
I e II, apenas. 
 
I - Esta técnica baseia-se nas especificações do software para derivar os requisitos de teste. O teste é realizado 
nas funções do programa, daí o nome funcional. CORRETO. II - Não é seu objetivo verificar como ocorrem 
internamente os processamentos, mas se o algoritmo inserido produz os resultados esperados. CORRETO. 
III - Essaestratégia de teste requer conhecimento de detalhes da implementação do programa. INCORRETO, 
pois não requer conhecimento de detalhes da implementação. IV - Para executá-lo, o código-fonte é 
necessário. INCORRETO, pois o código-fonte não é necessário. 
 
Questão 5Correta 
De acordo com Pinheiro (2015), um erro acontece quando uma ou mais das opções a seguir ocorrem: 
 
- O software não faz algo que a especificação estabelece que ele deveria fazer. 
- O software faz algo que a especificação estabelece que ele não deveria fazer. 
- O software faz algo que a especificação não menciona. 
- O software não faz algo que a especificação não menciona, mas deveria mencionar. 
- O software é difícil de usar, entender ou, na visão do testador, pode ser visto pelo usuário final como não 
estando correto. 
PINHEIRO, V. Um comparativo na execução de testes manuais e testes de aceitação automatizados em uma 
aplicação web. Simpósio Brasileiro de Qualidade de Software – SBQS 2015. Anais... Manaus: Uninorte, 2015. 
 
Visando prevenir a ocorrência de defeitos, métricas são coletadas buscando identificar um perfil ou um padrão 
na ocorrência de erros, com base nas informações apresentadas avalie as seguintes asserções e a relação proposta 
entre elas. 
 
I. Umas das métricas cita que 80% do esforço na correção de erros é concentrado em apenas 20% do código. 
PORQUE 
II. Os erros estão concentrados em partes específicas do código. 
A respeito dessas asserções, assinale a alternativa correta. 
Sua resposta 
As asserções I e II são proposições verdadeiras e a II justifica a I. 
 
 Alternativa CORRETA: As asserções I e II são proposições verdadeiras e a II justifica a 
I. As asserções I e II são verdadeiras, quando cita que 80% do esforço na correção de erros é concentrado 
em apenas 20% do código, e assim concluiu que os erros estão concentrados em partes específicas do código.

Outros materiais