Buscar

Formação Profissional em Computação AV 3

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 9 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 9 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 9 páginas

Prévia do material em texto

PERGUNTA 1 
1. Leia o trecho a seguir, retirado da obra de SOMMERVILLE, chamada Engenharia de 
Software: 
“Na prática, a aplicação da Programação Extrema como proposta originalmente se provou mais 
difícil do que o previsto. Na XP os requisitos são expressos em cenários (chamados de 
histórias do usuário) implementados diretamente como uma série de tarefas. Os 
programadores trabalham em pares e desenvolvem testes para cada tarefa antes de 
escreverem o código. Todos os testes devem ser executados com sucesso quando o novo 
código é integrado ao sistema, já que há um curto intervalo de tempo entre os lançamentos 
(releases) do sistema.” (SOMMERVILLE, 2019, p. 62) 
Fonte: SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: Pearson, 2019. p. 62. 
Com base na prática chamada de programação extrema, associe os conceitos a seguir com as 
respectivas descrições mais adiante. 
(1) Integração contínua. 
(2) Programação em pares. 
(3) Lançamentos pequenos. 
(4) Refatoração. 
(5) Propriedade coletiva. 
I. Os pares de desenvolvedores trabalham em todas as áreas do sistema, de modo que não se 
desenvolvam “ilhas de conhecimento” e todos assumam a responsabilidade por todo código. 
II. Assim que o trabalho numa tarefa é completo, é integrado ao sistema completo. Após 
qualquer integração desse tipo, todos os testes de unidade do sistema devem ter sucesso. 
III. Esse processo deve ser feito por todos os desenvolvedores no código de forma contínua, 
logo sejam encontradas possíveis melhorias para ele. Isso mantém o código simples e de fácil 
manutenção. 
IV. Forma de trabalho da equipe de desenvolvimento cujo objetivo é realizar a conferência de 
trabalhos de modo geral entre os próprios membros da equipe, oferecendo apoio para um 
resultado sempre satisfatório. 
V. Relacionado à maneira por meio da qual sistemas são disponíveis, a fim de agregar valor ao 
negócio, desenvolvido em primeiro lugar. É necessária uma frequência que acrescente 
funcionalidades à primeira versão de forma incremental. 
A sequência correta, de cima para baixo, da associação entre item e descrição é: 
 
 
a. 1-II; 2-IV; 3-V; 4-III; 5-I. 
 
b. 1-II; 2-I; 3-IV; 4-III; 5-V. 
 
c. 1-I; 2-IV; 3-III; 4-V; 5-II. 
 
d. 1-IV; 2-II; 3- I; 4-V; 5-III. 
 
e. 1-V; 2-IV; 3-II; 4-I; 5-III. 
 
PERGUNTA 2 
1. Os processos de desenvolvimento de “software dirigidos por planos que 
especificam completamente os requisitos e depois projetam, constroem e testam 
um sistema não são voltados para o desenvolvimento rápido de software. À 
medida que os requisitos mudam ou que problemas de requisitos são 
descobertos, o projeto ou a implementação do sistema precisam ser 
retrabalhados e testados novamente. Como consequência, um processo 
convencional em cascata ou baseado em especificação normalmente é 
demorado e o software final é entregue ao cliente muito depois do prazo 
originalmente estipulado” (SOMMERVILLE, 2019, p. 58). 
 
SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: Pearson, 2019. 
 
Baseando-se no conceito de desenvolvimento ágil, analise as asserções a seguir 
e a relação proposta entre elas. 
 
I. O sistema é desenvolvido numa série de entregas em que usuários finais e 
clientes em geral são incluídos em desenvolvimento e avaliação de cada uma. 
POIS 
II. As abordagens ágeis de desenvolvimento de software apontam projeto, 
comunicação e implementação como as principais atividades no processo 
de software. 
 
A respeito dessas asserções, assinale a alternativa correta. 
 
a. As asserções I e II são proposições falsas. 
 
b. A asserção I é uma proposição verdadeira, enquanto a II é falsa. 
 
c. A asserção II é uma proposição verdadeira, enquanto a I é falsa. 
 
d. As asserções I e II são proposições verdadeiras, e a II é uma justificativa para a I. 
 
e. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa para a 
I. 
PERGUNTA 3 
1. O estágio de implementação no desenvolvimento de software “é o processo de 
elaborar um sistema executável para ser entregue ao cliente” (SOMERVILLE, 
2019, p. 41). Por vezes envolve diferentes atividades, nomeadamente projeto 
(design) e programação de software. No entanto, “com as metodologias de 
desenvolvimento ágil, o design e a implementação são intercalados, e nenhuma 
documentação de design formal é produzida durante o processo. É claro que 
o software ainda é projetado, mas o design é documentado informalmente em 
um quadro branco ou em anotações feitas pelos programadores” 
(SOMERVILLE, 2019, p. 41). 
 
SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: Pearson, 2019. 
Considerando o apresentado, avalie as asserções a seguir e a relação proposta 
entre elas. 
 
I. O planejamento do projeto de software é uma tarefa realizada antes do início 
da produção do software, ajudando na produção de software, mas não 
envolvendo nenhuma atividade concreta que tenha qualquer ligação direta com 
a produção de software. 
POIS 
II. O planejamento do projeto de software é um conjunto de múltiplos processos 
(o que facilita a produção de software) cujas atividades em processos de projeto 
variam, dependendo do tipo de sistema que está sendo desenvolvido. 
 
Com base nas asserções e em sua aplicabilidade no desenvolvimento 
de software, marque a alternativa correta. 
 
a. A asserção II é uma proposição verdadeira, enquanto a I é falsa 
 
b. A asserção I é uma proposição verdadeira, enquanto a II é falsa 
 
c. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa para a I 
 
d. As asserções I e II são proposições falsas 
 
e. As asserções I e II são proposições verdadeiras, e a II é uma justificativa para a I 
 
PERGUNTA 4 
1. Projetos de desenvolvimento de software têm especificidades inerentes à área da programação 
e outras tecnologias envolvidas, assim como projetos de engenharia para a construção de 
prédios ou projetos para a criação de um novo produto cosmético também apresentam suas 
características particulares inerentes ao produto ou serviço a ser desenvolvido. 
 
Considere que um novo software precisa ser desenvolvido para a gestão de armazéns de grãos 
de soja e milho. Assinale a alternativa que apresenta o melhor conjunto de características e 
habilidades para contratar o gerente desse projeto: 
 
 
a. Graduado em engenharia agronômica, capacidade de liderança, persistente e com 
visão de curto prazo. 
 
b. Graduado em análise e desenvolvimento de sistemas, capacidade de liderança, 
eficiente na comunicação e com visão de longo prazo. 
 
 
c. Graduado em engenharia agronômica, capacidade de desenvolver equipes, eficiente na 
comunicação e com visão de curto prazo. 
 
 
d. Graduado em engenharia agronômica, volúvel, eficiente na comunicação e com visão 
de longo prazo. 
 
 
e. Graduado em análise e desenvolvimento de sistemas, capacidade de liderança, 
eficiente na comunicação e com visão de curto prazo. 
 
 
PERGUNTA 5 
1. O protótipo é uma versão “inicial de um sistema utilizado para demonstrar 
conceitos, experimentar opções de projeto e descobrir mais sobre o problema e 
suas possíveis soluções. O desenvolvimento rápido e interativo do protótipo é 
essencial para que os custos sejam controlados e os stakeholders do sistema 
possam experimentar o protótipo no início do processo de desenvolvimento 
do software” (SOMMERVILLE, 2019, p. 47-48). 
 
SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: Pearson, 2019. 
 
Assim sendo, analise as afirmativas a seguir. 
 
I. Os protótipos de sistema possibilitam a observação do sistema por parte de 
usuários para abstrair até onde ele pode ajudar seu trabalho. 
II. A especificação do sistema não pode ser modificada, mesmo com a mudança 
na compreensão dos requisitos. 
III. A prototipação rápida com envolvimento do usuário final é uma forma 
consistente para que se desenvolva adequadamente a interface do/com usuário. 
IV. O tratamento e o gerenciamento deerros são ações possíveis de serem 
ignoradas na prototipação, salvo casos para estabelecer interface com usuário. 
 
Está correto o que se afirma em: 
 
a. I, II e IV, apenas 
 
b. II e III, apenas 
 
c. I, III e IV, apenas 
 
d. I e II, apenas 
 
e. I e III, apenas 
PERGUNTA 6 
1. Conforme sentencia o PMBOK (2017), “um projeto é um esforço temporário que tem como 
finalidade um resultado único e possui recursos delimitados”. 
 
PMI. Um guia do conhecimento em gerenciamento de projetos. Guia PMBOK, 6. ed. EUA: 
Project Management Institute, 2017. 
 
Levando em consideração as características inerentes a um projeto de qualquer natureza, 
identifique se são (V) verdadeiras ou (F) falsas as afirmativas a seguir. 
 
I. ( ) Deve ter data de início, pausa e fim definidas. 
II. ( ) Tem a intenção de criar um novo produto ou serviço, ou ainda aprimorar algo já existente. 
III. ( ) Precisa ter um escopo inicial bem detalhado, para que as datas de início e fim sejam 
cumpridas sem alterações. 
IV. ( ) Deve ter estimativas dos custos e recursos que serão utilizados, como profissionais, 
materiais e infraestrutura. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
 
a. V - F - V - F. 
 
b. F - V - F - V. 
 
c. F - V - V - V. 
 
 
d. V - V - V - V. 
 
e. F - F - F - V. 
 
PERGUNTA 7 
1. De acordo com Sommerville (2019, p. 31), os modelos genéricos de processos 
de software “são descrições mais gerais e abstratas dos processos de software, 
e podem ser utilizados para explicar as diferentes abordagens ao 
desenvolvimento de software. Você pode encará-los como estruturas de 
processo que podem ser ampliadas e adaptadas para criar processos de 
engenharia de software mais específicos”. 
 
Fonte: SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: 
Pearson, 2019. 
 
Sobre os modelos genéricos, analise as afirmações a seguir. 
 
I. O modelo clássico em cascata divide o ciclo de vida num conjunto de fases 
que considera que cada uma só pode ser iniciada após a conclusão da fase 
anterior. 
II. O desenvolvimento incremental interpõe atividades baseadas em 
especificação, desenvolvimento e avaliação de software, com uma série de 
versões a serem entregues. 
III. A metodologia ágil é uma estrutura de gerenciamento de projetos que divide 
os projetos em várias fases dinâmicas, comumente conhecidas como sprints, 
concentrando-se na comunicação com o usuário. 
IV. Integração e configuração representam os requisitos de gerenciamento 
do software, o ambiente em que será utilizado e o tipo de software que a equipe 
responsável está desenvolvendo. 
 
Está correto o que se afirma em: 
 
a. I, II e IV, apenas. 
 
b. I e III, apenas. 
 
c. I, III e IV, apenas. 
 
d. I e II, apenas. 
 
e. II e III, apenas. 
 
PERGUNTA 1 
1. Os processos de software são complexos e, como processos intelectuais e 
criativos, dependem da tomada de decisão e do julgamento das pessoas. Um 
modelo de processo ou modelo de ciclo de vida é um modelo descritivo que 
fornece as melhores práticas para realizar o desenvolvimento de software (ou 
seja, para realizar o processo de software). 
 
 
Considerando o apresentado, avalie as asserções a seguir e a relação proposta 
entre elas. 
 
I. O desenvolvimento profissional de software necessita ser gerenciado, 
baseado num planejamento que deve ser aplicado a todos os processos. 
POIS 
II. Ainda que não exista um padrão universal de processo de software, sempre 
há espaço para que se melhorem os processos presentes nas muitas 
organizações. 
 
A respeito dessas asserções, assinale a alternativa correta. 
 
a. A asserção I é uma proposição verdadeira, enquanto a II é falsa. 
 
b. A asserção II é uma proposição verdadeira, enquanto a I é falsa. 
 
c. As asserções I e II são proposições falsas. 
 
d. As asserções I e II são proposições verdadeiras, e a II é uma justificativa para a I. 
 
e. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa para a 
I. 
 
PERGUNTA 2 
1. Os processos de software são “um conjunto de atividades relacionadas que 
levam à produção de um sistema de software” (SOMMERVILLE, 2019, p. 30). 
Existem diversos modelos para guiar um processo de desenvolvimento 
de software, e Sommerville aponta que “os processos de software são 
complexos e, como processos intelectuais e criativos, dependem da tomada de 
decisão e do julgamento das pessoas. Uma vez que não existe um processo 
universal que valha para todos os tipos de software, a maioria das empresas 
produtoras de software concebeu seus próprios processos de desenvolvimento” 
(SOMMERVILLE, 2019, p. 30). 
SOMMERVILLE, I. Engenharia de software. 10. ed. São Paulo: Pearson, 2019. 
Observe a figura a seguir. 
 
 
Fonte: Adaptado de Sommerville (2019, p. 35). 
 
 O tipo de desenvolvimento descrito na figura, que se baseia na ideia de 
desenvolver uma implementação inicial, em obter feedback de usuários ou 
terceiros e em fazer o software evoluir através de várias versões, é conhecido 
como: 
 
a. cascata. 
 
b. espiral. 
 
c. integrado. 
 
d. ágil. 
 
e. incremental. 
 
PERGUNTA 4 
1. O papel do gerente de projeto envolve planejamento, monitoramento e controle 
de pessoas e processos que ocorrem conforme evolui o desenvolvimento 
do software (produto). Além disso estabelece objetivos do projeto e busca, por 
meio de ambiente propício e equipe motivada, alcançá-los dentro de prazo e 
custo previamente estabelecidos. É responsável, ainda, por intermediar a 
comunicação, buscando sempre proteger a equipe e mantê-la unida, como um 
verdadeiro time. 
 
 
Considerando o apresentado, avalie as afirmações a seguir. 
 
I. O gerente de projeto de software reúne os recursos e desenho relacionado a 
todo o projeto, onde serão definidos escopo, recursos necessários, cronograma, 
procedimento para execução etc. 
II. A pessoa que gerencia projetos de software supervisionará a execução bem-
sucedida de cada etapa do projeto, incluindo monitoramento de progresso, 
realização de check-ins frequentes de equipe e criação de relatórios. 
III. Os gerentes de projeto podem usar uma variedade de ferramentas e métodos 
para planejar projetos, desenvolvendo uma compreensão clara dos objetivos do 
projeto e identificando as etapas para atingi-los. 
IV. O gerenciamento de projetos de software incentiva o teste constante do 
produto para descobrir e corrigir erros com antecedência, ajustar o produto final 
às necessidades do cliente e manter o projeto no alvo. 
 
Está correto o que se afirma em: 
 
a. II e III, apenas. 
 
b. I e III, apenas. 
 
c. I e II, apenas. 
 
d. I, II, III e IV. 
 
e. I, II e IV, apenas. 
 
PERGUNTA 5 
1. Segundo Sommerville (2011), o processo de software é entendido como um conjunto de 
atividades responsáveis pela especificação, projeto, implementação e testes. 
Para o desenvolvimento de software, é aconselhável tratá-lo como projeto, no qual, comumente, 
as etapas são divididas em: início, organização, execução e fim. 
 
SOMMERVILLE, I. Engenharia de Software. 9. ed. São Paulo: Pearson, 2011. 
 
Levando em consideração os distintos tipos de ciclos de vida de um projeto de 
desenvolvimento de software, identifique se são (V) verdadeiras ou (F) falsas as afirmativas a 
seguir. 
 
I. ( ) Os ciclos de vida preditivos determinam claramente o escopo, prazo e custo do projeto. 
Normalmente, são organizados em fases sequenciais, com enfoque em subprodutos distintos. 
II. ( ) Os ciclos de vida iterativos repetem atividades do projeto em fases, e em cada uma 
delas a equipe do projeto aumenta seu entendimento do produto. Essas iterações tendem a 
melhorar os entregáveis, ou ainda criar novos, em que o produto final será a acumulação de 
funcionalidades construída nessas iterações. 
III. ( ) Os ciclos de vida preditivos servem para gerenciar objetivos pouco definidos ou de alta 
complexidade, ou ainda quando a entrega parcial do produtoé algo fundamental para a 
consolidação das ideias e o consenso de sucesso do projeto. 
IV. ( ) Os ciclos de vida adaptativos são similares aos iterativos, porém com delimitações 
muito claras das iterações e seus objetivos – que podem ser centrados no fluxo ou no 
incremento de funcionalidades. 
V. ( ) Os ciclos de vida adaptativos são mais adequados que os ciclos preditivos para 
projetos em que o escopo do produto ou serviço a ser entregue está bem definido e existe 
pleno conhecimento de como se deve desenvolver a solução. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
 
a. V - V - F - V - V. 
 
 
b. F - V - V - V - F. 
 
 
c. F - F - F - F - V. 
 
d. V - V - F - V - F. 
 
 
e. V - F - V - F - F. 
 
PERGUNTA 6 
1. No livro clássico “How to solve it”, George Polya descreveu em linhas gerais a essência da 
solução de problemas e, consequentemente, a essência da prática da engenharia de software: 
 
1. Compreender o problema (comunicação e análise). 
2. Planejar uma solução (modelagem e projeto de software). 
3. Executar o plano (geração de código). 
4. Examinar o resultado para ter precisão (testes e garantia da qualidade). 
 
Mas a prática da engenharia e o desenvolvimento de software são bem mais complexos do que 
seguir um passo a passo, pois antes de iniciar o desenvolvimento de um software, é 
fundamental que seu propósito esteja bem claro para todos os envolvidos (cliente, patrocinador 
e equipe do projeto), assim como outros princípios devem ser considerados durante todo o 
ciclo de vida do projeto. 
 
Levando em consideração os sete princípios da prática de engenharia de software propostos 
por David Hooker, identifique se são (V) verdadeiras ou (F) falsas as afirmativas a seguir. 
I. ( ) Um projeto de software precisa ser simples e descomplicado, pois simplificar diminui o 
número de iterações necessárias e torna a entrega do projeto mais ágil. 
II. ( ) Um projeto de software deve ser especificado para os implementadores, projetado para os 
usuários e codificado para que sejam viáveis a manutenção e a evolução por outros 
programadores. 
III. ( ) Um projeto de software que investe mais tempo em análise do que na execução, na 
maioria das vezes, produz melhores resultados. 
IV. ( ) Um projeto de software que contempla em seu planejamento a reutilização de código 
reduz o custo e aumenta o valor tanto dos componentes reutilizáveis quanto dos sistemas aos 
quais eles serão incorporados. 
 
Assinale a alternativa que apresenta a sequência CORRETA. 
 
 
a. V - F - V - F. 
 
b. F - F - V - V. 
 
c. V - F - V - V. 
 
d. F - V - F - V. 
 
e. V - V - V - V .