Buscar

Engenhria de Software

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 48 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 48 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 48 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

ENGENHARIA DE SOFTWARE - RESUMÃO 
I - EXPLANAÇÃO GERAL SOBRE ENGENHARIA DE SOFTWARE 
a) O que é Engenharia de software? 
- O estabelecimento e uso de sólidos princípios de engenharia para que se possa obter economicamente 
software que seja confiável e que funcione eficientemente em máquinas reais. 
- É uma área da engenharia e da computação voltada à especificação, desenvolvimento, manutenção 
e criação de software, com a aplicação de tecnologias e práticas de gerência de projetos e outras 
disciplinas, visando organização, produtividade e qualidade. 
Obs: A criação da Engenharia de Software surgiu numa tentativa de contornar a crise do software e 
dar um tratamento de engenharia (mais sistemático e controlado) ao desenvolvimento de sistemas 
de software complexos. 
b) O que é software? 
- Instruções (programas de computador) que, quando executadas, fornecem características, funções 
e desempenho desejados. 
- Estruturas de dados que possibilitam aos programas manipular informações adequadamente. 
- Informação descritiva, tanto na forma impressa quanto na virtual, descrevendo a operação e o uso 
dos programas. 
Resumindo: É um conjunto de instruções (programas de computador) que devem ser seguidas e 
executas por um mecanismo, seja ele um computador ou um aparato eletromecânico, 
inclusive as informação descritiva, tanto na forma impressa quanto na virtual. 
c) Curva de defeito de hardware e software? 
 
Curva de defeito de hardware 
 
Curva de defeito de software 
 
Está relacionada com o tempo de uso 
Está relacionada com as mudanças 
d) O que é Software Legado? 
São Software que foram desenvolvidos décadas atrás e têm sido continuamente modificados para 
se adequar às mudanças dos requisitos de negócio e a plataformas computacionais. 
e) O que é Processo de Software? 
É o conjunto de atividades, métodos, práticas, ferramentas e transformações que as pessoas 
utilizam para desenvolver softwares e artefatos associados. 
f) O que são Artefatos? 
É um dos vários tipos de subprodutos concretos produzido durante o desenvolvimento de 
software. 
Exemplos: - Diagramas de classes e outros modelos UML; 
- Requisitos e documentos de projeto 
- Planos de projetos 
- Processos de negócios e avaliações de risco; 
- Manuais; 
- Arquivos executáveis; 
- Módulos etc. 
g) O que é iteração? 
- Repetição de partes do processo à medida que os requisitos do sistema evoluem. 
- São atividades de desenvolvimento que levam ao release de um produto - uma versão estável e 
executável do produto, junto com qualquer outro elemento periférico necessário para utilizar esse 
release (documentação de apoio, scripts de instalação e artefatos similares, necessários para usar a 
liberação). 
- É uma passagem completa por pelo menos todas as disciplinas: Requisitos, Análise e Design, 
Implementação e Teste. 
h) O que é versão potencialmente entregável? 
É a versão mais completa do sistema (programa) 
i) O que são atividades de guarda-chuva? 
- São atividades transversais as demais etapas, que não participa no desenvolvimento do software. 
- É uma coleção de fases interconectadas. Onde uma série de etapas ou procedimentos são seguidos por 
uma equipe de desenvolvimento de software para manter o progresso, a qualidade, as mudanças e os 
riscos de tarefas completas de desenvolvimento. 
Exemplos: - Rastreamento e controle de projetos de software; 
- Avaliações técnicas formais; 
- Garantia de Qualidade de Software; 
- SCM ou gerenciamento de configuração de software; 
- Preparação e produção de documentos; 
- Gerenciamento de reutilização; 
- Medição e métricas; e 
- Gerenciamento de riscos. 
 
i) O que foi a Crise do Software e suas causas? 
Foram as dificuldades enfrentadas no desenvolvimento de software no fim da década de 60. 
Devido à complexidade dos problemas, a ausência de técnicas bem estabelecidas e a crescente 
demanda por novas aplicações começavam a se tornar um problema sério. 
Exemplos: - Falta de envolvimento do usuário/cliente; 
- Não atendimento dos requisitos do usuário; 
- Objetivos / requisitos incompletos; 
- Mudanças nos objetivos / requisitos; 
- Falta de apoio da alta gestão; 
- Falta de competência técnica; 
- Falta de recursos; 
- Expectativas irreais dos envolvidos; 
- Objetivos vagos; 
- Prazos irreais; 
- Novas tecnologias; 
- 1/3 dos projetos eram cancelados; e 
- 2/3 dos projetos extrapolavam o orçamento. 
j) O que compõe o processo de Software? 
O processo de software é composto por Atividades e Artefatos. 
Obs: - As atividades podem ser de apoio e metodológicas. 
- As atividades de apoio são chamadas também de atividades de guarda-chuva. 
j) As Fases genéricas do processo de software são? 
- Comunicação 
- Planejamento 
- Modelagem 
- Construção; e 
- Entrega 
 
k) O que é Requisitos do projeto? 
- É uma das partes mais importantes do processo de desenvolvimento é a engenharia de requisitos. 
II) MODELOS DE PROCESSOS SOFTWARES 
Os modelos de processos de softwares são: 
a) Processos Sequenciais 
- Cascata. 
 
b) Processos Iterativos ou Incrementais 
- RAD; e 
- Ágil (Scrum e XP, etc). 
c) Processos Evolutivos 
- Espiral ou Espiral Ganha-Ganha; 
- Incremental; e 
- Prototipação. 
d) Processo Unificado da Rational 
- RUP (Rational Unified Process) 
a) PROCESSOS SEQUENCIAIS 
❖ MÉTODO CASCATA, LINEAR OU CLÁSSICO 
- Primeiro modelo publicado para o processo de desenvolvimento de software 
- Desenvolvimento é linear e sequencial. 
- Uma fase só executada quando a anterior termina. 
- Na primeira vez que uma fase de desenvolvimento é completada, o desenvolvimento prossegue 
para a próxima fase e não há retorno 
- Falta de flexibilidade ou revisão. 
- Os testes desses modelos são realizados na fase de análise. 
Obs: DESVANTAGENS 
a) Por não possuir muita flexibilidade as modificações podem causar confusão à medida que a 
equipe do projeto prossegue; 
b) Exige o estabelecimento todos os requisitos no início do projeto, coisa que o cliente sente 
um pouco de dificuldade; 
c) Versão executável fica disponível quase no final do desenvolvimento do projeto. Os erros 
podem ser desastrosos se não forem detectados até a entrega desse executável. 
 
b) PROCESSO ITERATIVOS OU INCREMENTAIS 
1. MÉTODO RAD (Rapid Application Development) 
- Representa modelo de desenvolvimento rápido. 
- É usado em projetos que necessita de uma velocidade maior de desenvolvimento que o normal. 
- Esse modelo é usado em projeto com prazos muito curtos para entrega. 
 
2. MÉTODOS ÁGILES 
- É um conjunto de técnicas e práticas para gestão de projetos que oferece mais rapidez, eficiência 
e flexibilidade. 
- Torna os processos mais simples, dinâmicos e iterativos, da concepção da ideia até o produto 
final. 
- 73% das organizações globais já utilizam os métodos ágeis para gerenciar seus projetos 
- Diferem das tradicionais em vários pontos, mas um dos principais é a velocidade do processo. 
- O foco é adaptar ao invés de planejar. 
- Os projetos são divididos em pequenas entregas denominada iterações. 
- Cada iteração é um “miniprojeto”, ou seja, inclui todas as etapas citadas em um ciclo rápido e 
eficiente, que gera uma entrega parcial. 
- Equipes entreguem mais valor em menos tempo. 
❖ Principais características dos métodos ágeis: 
▪ Desenvolvimento incremental, ou seja, de melhoria contínua. 
▪ Cooperação entre equipe e cliente (ciclo de feedback constante). 
▪ Entregas rápidas e de alta qualidade. 
▪ Flexibilidade de escopo do projeto. 
▪ Criação de valor progressiva e de acordo com as necessidades do cliente. 
❖ Os 4 valores do manifesto ágil são: 
▪ Indivíduos e interações mais que processos e ferramentas. 
▪ Software em funcionamento mais que documentação abrangente. 
▪ Colaboração com o cliente mais que negociação de contratos. 
▪ Responder a mudanças mais que seguir um plano. 
a. TIPOS DE MÉTODOS ÁGEIS 
1. Scrum 
 
Método Scrum 
 
- É um dos métodos Ágil.- O Scrum, além de ser muito eficaz, permite a alteração de funcionalidades durante o 
desenvolvimento de acordo com a necessidade e permite um processo muito fluido e, por isso, é o 
método usado para grande parte dos projetos. 
- O método ágil mais utilizado no mundo corporativo. 
- Não possui gerente de projeto. 
- Há várias reuniões diárias, semanais e mensais. 
- Tem foco na gestão de projetos 
- Tem um planejamento iterativo e incremental, por meio de Sprints. 
- Reuniões e entregas frequentes (diárias-final do dia), a fim de promover um 
desenvolvimento mais focalizado e feedback frequente. 
- Em cada Sprint, os membros da equipe - geralmente pequena - têm tarefas a cumprir e, 
no fim de cada uma delas, é feita uma reunião de alinhamento sobre o que foi entregue. 
- Product Owner (Dono do Produto): é o responsável por coordenar o time de desen-
volvimento (ou time Scrum) e gerenciar o Backlog 
do produto. 
- Time de desenvolvimento: é a equipe multidisciplinar e auto-organizada envolvida no 
projeto. 
- Backlog: é o conjunto de funcionalidades do produto a ser desenvolvido, que vão 
mudando conforme o projeto avança 
- Sprint: é a iteração do Scrum, ou seja, cada ciclo rápido de trabalho que gera uma entrega 
parcial em intervalos de semanas ou meses. Cada projeto contém vários Sprints 
sequenciais, que possuem seus próprios Sprint Backlogs (conjuntos de 
funcionalidades por etapa). 
- Scrum Master: - é o facilitador do método 
- responsável por garantir que todos entendam e apliquem o Scrum 
corretamente. 
- Garante que as regras do método Scrum esteja sendo seguidas 
- Scrum team: Responsável pelas decisões técnicas. 
 
2. EXTREME PROGRAMMING (XP) 
 
- Se parece bastante com Scrum. 
- Programação em pares 
- Enquanto o Scrum se foca nas práticas de gestão, o XP está mais ligado às funções 
técnicas. 
- Característica essencial do método é o feedback constante do cliente. 
- Propõe ciclos curtos que reduzem as incertezas e riscos do produto, adotando a melhoria 
constante de códigos, testes automatizados e integração contínua. 
- Objetivo do método é levar as boas práticas de desenvolvimento de software ao extremo. 
3. EXISTEM OUTRO SMÉTODOS ÁGEIS 
- Feature Driven Development (FDD) 
- Microsoft Solutions Framework (MSF) 
- Dynamic System Development Model (DSDM) 
- Lean 
- Kanban 
- Scaled Agile Framework (SAFe) 
- Smart 
c) PROCESSOS EVOLUCIONÁRIO 
- Representa o desenvolvimento do software desde o protótipo inicial. 
- O cliente participa de todas as fases do desenvolvimento do software. 
Obs: VANTAGENS 
a) O executável final pode ser mostrado antes do término do projeto para o cliente; 
b) Neste modelo há uma melhor comunicação entre os desenvolvedores e usuários para 
melhor tratamento de erros, 
1) ESPIRAL 
- Foi acrescentado a análise de riscos; 
- A prototipação é vista como um meio de redução de riscos; 
- Cada ciclo do modelo em espiral possui quatro atividades principais: 
- O modelo em espiral é um modelo que trabalha o tempo todo com riscos e dividi o projeto em 
outros menores. 
- O movimento em espiral possui uma estrutura que dá base para se tentar chegar ao fim do projeto 
com todos, ou quase todos, os riscos eliminados. 
- Procura sempre dar as bases para que todos os requisitos do projeto estejam bem definidos e 
entendidos por todos da equipe inclusive pelo cliente. Com essa estrutura o produto vai sendo 
desenvolvido e com o tempo surgem versões do software para averiguação e reconhecimento de 
problemas. 
 
Obs: VANTAGENS 
a) Atender a realidade dos projetos. Atender uma sequência mais real que o projeto segue, 
pois nem todo projeto segue o fluxo sequencial que o modelo em cascata propõe; 
b) Atender à necessidade que o cliente não tem noção no início do projeto de todos os 
requisitos para o desenvolvimento do mesmo. Esse modelo em espiral atende a 
flexibilidade de receber novos requisitos do cliente com o passar do tempo; 
c) Atender à necessidade do cliente de ver um protótipo de uma versão executável do 
software, mesmo que essa não esteja funcionando completamente. 
 
2) INCREMENTAL 
- Alta flexibilidade, diferentemente do modelo em cascata. 
- Esse modelo é muito útil quando a empresa não possui mão de obra disponível no momento 
para uma implementação completa, dentro do prazo estipulado. 
- É interativo igual à prototipagem, mais diferente a prototipagem, o incremental tem como 
objetivo apresentar um produto operacional a cada incremento realizado. 
- Possui uma estrutura que permite que os documentos de uma fase possam ser mexidos para 
melhorias, mesmo se esses documentos estiverem em uma fase que foi completada, o que não 
acontece no modelo em cascata. 
- É formado por ciclos que por sua vez são formados por fases de análise, projeto, implementação 
e teste. 
- Nesse modelo os requisitos são divididos em grupos e esses são usados em cada clico. 
- O objetivo é minimizar os riscos do projeto e maximizar a importância nos requisitos. 
 
Modelo processo incremental 
 
3) PROTOTIPAÇÃO 
- É um processo para desenvolver um produto mínimo viável (MVP), que é utilizado para 
simulações e testes de um produto ou um serviço antes do lançamento destes. 
- É uma versão funcional do sistema ou parte do sistema; e 
- É uma versão simulada do sistema ou amostra de um produto final. 
 
d) PROCESSO UNIFICADO DA RATIONAL (RUP- RATIONAL UNIFIED PROCESS) 
- Este método é fortemente documentado. 
- Criado para apoiar o desenvolvimento orientado a objetos utilizando o UML para ilustrar os 
processos 
- O software é desenvolvido de forma iterativa e utiliza em sua estrutura de desenvolvimento casos 
de uso. Os casos de uso servem para a aquisição dos requisitos que o usuário necessita para utilizar 
no software. 
- Esse modelo é formado por cinco elementos principais: papéis, atividades, artefatos, fluxos de 
trabalho e disciplinas. 
- O principal objetivo é atender as necessidades dos usuários garantindo uma produção de software 
de alta qualidade que cumpra um cronograma e um orçamento previsíveis 
- O gerenciamento de Riscos deve ser feito continuamente 
- O RUP organiza o desenvolvimento de software em quatro fases: 
 
 
 
Fase de Iniciação / Concepção: Esta fase do RUP abrange as tarefas de comunicação com o cliente e 
planejamento. É feito um plano de projeto avaliando os possíveis 
riscos, as estimativas de custo e prazos.. 
Fase de Elaboração: Abrange a Modelagem do modelo genérico do processo. O objetivo desta fase é 
analisar de forma mais detalhada a análise do domínio do problema, revisando 
os riscos que o projeto pode sofrer e a arquitetura do projeto. 
Fase de Construção: Desenvolve ou Adquire os componentes de Software. O principal objetivo desta 
fase é a construção do sistema de software. 
Fase de Transição: Abrange a entrega do software ao usuário e a fase de testes. O objetivo desta fase é 
disponibilizar o sistema, tornando-o disponível e compreendido pelo usuário 
final. As atividades desta fase incluem o treinamento dos usuários finais e também 
a realização de testes da versão beta do sistema visando garantir que o mesmo 
possua o nível adequado de qualidade. 
d.1) CARACTERÍSTICAS DO RUP 
- Baseado em componentes 
- Usa UML 
- Framework para processos 
- Orientado a casos de uso 
- Iterativo e Incremental 
- Centrado na Arquitetura 
- Foco em Funcionalidades para o Cliente 
- Foco em Software Executável 
- Desenvolvimento Iterativo 
- Processo Iterativo, baseado no modelo Espiral 
x) MODELO DO PROCESSO EM V 
- É comparado com o modelo em cascata, mas os testes desses modelos são diferentes. 
- Os testes desses modelos são planejados e durante a execução da fase de implementação que esses 
testes são preparados, para que na fase de teste sejam executados, ao contrário do modelo em 
cascata onde são realizados na fase de análise. 
x) DESENVOLVIMENTO ORIENTADO A REUSO 
- É usado no desenvolvimentode projeto para incorporar elementos novos no produto. 
• Código; 
• Plano de teste; 
• Conhecimento geral; 
• Especificações de requisitos e projetos. 
 
II - QUESTIONÁRIOS 
01) Processos de software podem ser compreendidos como as diversas fases necessárias para produzir e 
manter um software em funcionamento. Tais processos necessitam de organização lógica das atividades 
técnicas e gerenciais envolvendo usuários, desenvolvedores, modelos de processo e restrições que 
possibilitam disciplinar, sistematizar e organizar o desenvolvimento e manutenção dos softwares. 
Acerca dos processos de software, classifique V para as sentenças verdadeiras e F para as falsas: 
(V) A validação de software consiste em assegurar que o software está em conformidade com os 
requisitos previstos. 
(V) As atividades de processo de software podem ser implementadas com o auxílio de ferramentas 
CASE. 
(F) A fase de Engenharia de Requisitos é o processo pelo qual os requisitos de um produto de software 
são coletados, analisados, documentados e gerenciados, necessitando ser compreendido somente 
pela equipe de desenvolvimento. 
(V) No desenvolvimento de sistemas por meio de ciclo de vida iterativo, as necessidades dos usuários e 
os requisitos correspondentes não podem ser definidos no início do processo, já que são refinados 
em sucessivas iterações. 
(V) O processo de software tem como meta entregar um produto de software de maneira eficiente, 
previsível e que corresponda às necessidades de negócio, conforme os requisitos estabelecidos. 
Assinale a alternativa que apresenta a sequência CORRETA: 
 F - V - V - F - F 
 F - F - F - V - F 
 V - F - V - F - V 
 V - V - F - V - V 
02) Requisito de software é uma documentação que diz o que o software deverá realizar quando se 
estabelece e mantém acordo entre o cliente e a equipe do projeto. Enfim, é um modelo sistemático para 
encontrar, documentar, organizar e rastrear os requisitos variáveis de um sistema. Sobre algumas 
dificuldades no processo de obtenção de requisitos apresentada por Carvalho e Chiossi (2001), analise 
as sentenças a seguir: 
I- Falta de conhecimento do usuário das suas reais necessidades e do que o produto de software pode 
lhe oferecer. 
II- Falta de conhecimento do cliente do domínio do problema e dificuldade em tomar decisões, 
dificuldades não encontradas no desenvolvedor por obter domínio técnico. 
III- Comunicação inadequada entre desenvolvedores e clientes. 
IV- Problemas de comportamento do coordenador de projeto, levando em conta que a equipe de 
desenvolvimento apresente comportamento exemplar. 
Agora, assinale a alternativa CORRETA: 
 As sentenças I, III e IV estão corretas 
 As sentenças I, II e III estão corretas 
 As sentenças I e III estão corretas 
 As sentenças II e IV estão corretas 
03) No início da década de 70, o crescimento vertiginoso da produção de softwares deparou-se com um sério 
problema: a falta de técnicas predefinidas para o desenvolvimento de sistemas. Esta falta de 
conhecimento acarretou projetos de software de baixa qualidade, com códigos de difícil manutenção, 
com orçamentos e prazos que não condiziam com a realidade. Como esta situação relatada ficou 
conhecida? 
 Crise de Software 
 Crise de Projeto 
 Crise da Engenharia do Software 
 Crise Digital de 1970 
 
04) Para melhorar a qualidade dos produtos de software e aumentar a produtividade no processo de 
desenvolvimento, surgiu a Engenharia de Software. A Engenharia de Software é o estabelecimento e 
uso de sólidos princípios de engenharia para que se possa obter economicamente um software que 
seja confiável e que funcione eficientemente em máquinas reais. Sobre Engenharia de Software, 
analise as sentenças a seguir: 
I- É preciso muito mais do que os mais recentes computadores e as melhores ferramentas para se fazer 
um desenvolvimento de software de alta qualidade. 
II- Processo de Software abrange um conjunto de três elementos fundamentais: Métodos, Ferramentas 
e Procedimentos para projetar, construir e manter grandes sistemas de software de forma 
profissional. 
III- Para a Engenharia de Software, um processo é um conjunto de atividades e resultados associados, 
cujo objetivo é o desenvolvimento e a produção do software. 
IV- A Engenharia de Software surgiu para realizar o desenvolvimento de software, visando à 
construção de sistemas orientados a objetos e caracteriza-se por ser interativa e adaptativa, 
conseguindo produzir um porte como se fosse vários pequenos sistemas, o que diminui o risco do 
projeto. 
Agora, assinale a alternativa CORRETA: 
 As sentenças I, II e III estão corretas 
 As sentenças II, III e IV estão corretas 
 As sentenças I e II estão corretas 
 Somente a sentença III está correta 
05) A evolução de software se preocupa principalmente com as mudanças do sistema em relação a 
diferentes versões ou releases. Para continuar útil, é crucial que sistemas de software possam ser 
facilmente adaptáveis a mudanças contínuas e flexíveis o suficiente para adição de novas 
funcionalidades. 
Sobre o que podemos considerar software, analise as sentenças a seguir: 
I- Programas de computadores que, quando executados, produzem a função e o desempenho desejado. 
II- Estruturas de dados que permitem a manipulação das informações; documentos que descrevem a 
operação e uso dos programas. 
III- Elemento de sistema físico e não lógico, consequentemente, o sucesso é medido pela qualidade de 
muitas entidades e não pela qualidade de poucas entidades manufaturadas. 
Agora, assinale a alternativa CORRETA: 
 As sentenças I e III estão corretas 
 As sentenças II e III estão corretas 
 Somente a sentença III está correta 
 As sentenças I e II estão corretas 
06) A etapa de identificação e entendimento dos requisitos é fundamental para desenvolver um software 
com sucesso. Os requisitos são características ou regras de negócio específicas do projeto a ser 
desenvolvido. Entender estas particularidades reduz os riscos e os custos de desenvolvimento. 
Sobre os requisitos, classifique V para as sentenças verdadeiras e F para as falsas: 
(F) Existem apenas dois tipos de requisitos: funcionais e não funcionais (e Requisito inverso). 
(V) Requisito inverso é o terceiro tipo de requisito. 
(V) Requisito é uma importante documentação acerca do software que será desenvolvido e contempla 
regras específicas que deverão ser obedecidas na execução de cada atividade. 
(F) O sucesso dos projetos não depende do levantamento de requisitos. 
Assinale a alternativa que apresenta a sequência CORRETA: 
 F - V - V - F 
 F - F - F - V 
 F - F - V - V 
 V - V - V - F 
 
07) A engenharia de software é composta por três elementos fundamentais: métodos, ferramentas e 
procedimentos. Estes elementos visam possibilitar ao gerente de projeto o controle do processo de 
desenvolvimento do software, bem como oferecer ao profissional uma base para a construção de um 
software de alta qualidade. 
Acerca dos elementos fundamentais da engenharia de software, classifique V para as sentenças 
verdadeiras e F para as falsas: 
(V) A definição de como serão estruturados os dados ou como será implementada uma funcionalidade 
do sistema são exemplos de atividades características dos métodos propostos pela engenharia de 
software. 
(V) As ferramentas CASE são programas que auxiliam o analista na construção do sistema, 
possibilitando prever como será sua estrutura, quais serão suas classes, entidades, seus fluxos 
internos e muitos outros detalhes. São elaborados vários diagramas que, em conjunto, constituem 
praticamente uma planta do sistema a ser desenvolvido. 
(F) Pode-se afirmar que há uma independência entre os elementos fundamentais; logo, a inobservância 
de algum não acarretará prejuízos aos demais. 
(V) Os procedimentos estabelecem a sequência em que os métodos serão executados, servindo como 
ponto de referência na administração do progresso do software. 
(V) Dentre os procedimentosa serem realizados em um projeto de software, pode-se citar o controle de 
qualidade e avaliação, procedimentos estes que antecedem a distribuição do software. 
Assinale a alternativa que apresenta a sequência CORRETA: 
 V - F - V - F - V 
 V - V - F - V - V 
 F - V - V - F - V 
 F - F - V - V - F 
08) Segundo Sommerville (2007), para que um software seja desenvolvido de forma consistente, é preciso 
aliar boas práticas da engenharia de software com um robusto e eficiente processo de desenvolvimento. 
Diferentes tipos de sistemas necessitam de diferentes processos de desenvolvimento. Por exemplo, um 
software de tempo real de uma aeronave deve ser completamente especificado antes do início do 
desenvolvimento, enquanto que, em um sistema de comércio eletrônico, a especificação e o 
desenvolvimento do software podem ser conduzidos paralelamente. O uso de um processo de software 
inadequado pode reduzir a qualidade ou a utilidade do produto de software a ser desenvolvido e/ou 
aumentar os custos de desenvolvimento. Este fato leva as organizações que produzem software a usar 
processos de desenvolvimento que sejam eficientes e que atendam plenamente às suas necessidades. 
Acerca dos processos de software a serem adotados, analise as sentenças a seguir: 
I- O processo de software pode ser definido como um complexo de atividades relacionadas que 
direcionam ao desenvolvimento de um produto de software. 
II- Dentre as atividades desenvolvidas no processo de software, destaca-se a definição das 
funcionalidades do software e as restrições a seu funcionamento. 
III- Independente do processo de software adotado, a atividade de validação deverá ser realizada, tendo 
por objetivo verificar a conformidade do artefato produzido com os requisitos previamente 
definidos. 
IV- Embora os processos de software sejam totalmente automatizados e complexos, é imprescindível a 
adoção de um processo de desenvolvimento de software previamente definido, o qual deverá ser 
seguido na sua integralidade. 
Assinale a alternativa CORRETA: 
 As sentenças I e IV estão corretas 
 As sentenças I, II e III estão corretas 
 As sentenças I, III e IV estão corretas 
 As sentenças II, III e IV estão corretas 
 
09) Projetos são usados para se ter um adequado gerenciamento no desenvolvimento de novos produtos ou 
serviços, ou simplesmente para resolver problemas específicos em relação a estes. Delimitar o trabalho 
através do escopo do projeto é importante para os executores do projeto e principalmente para o cliente, 
pois, assim, ambas as partes estarão cientes das entregas que serão feitas. Um bom escopo é resultado da 
elaboração de uma detalhada lista de funcionalidades e regras de negócio elaboradas com o cliente. Esta 
lista pode ser entendida como o levantamento, reconhecimento e documentação dos requisitos 
necessários para o desenvolvimento do projeto. Sobre requisitos de software. 
Classifique V para as sentenças verdadeiras e F para as falsas: 
(V) Requisitos inversos especificam tudo aquilo que não será entregue ao usuário. 
(V) O gerenciamento de requisitos define a arquitetura do sistema, auxiliando nos testes e validações 
com o usuário final. 
(V) O sucesso de um projeto depende diretamente de um refinado levantamento de requisitos. 
(F) A falta de conhecimento do usuário com relação ao que ele realmente necessita não é considerado 
um problema na etapa de levantamento de requisitos. 
Assinale a alternativa que apresenta a sequência CORRETA: 
 F - V - V - V 
 V - V - F - F 
 V - V - V - F 
 V - F - V - F 
10) O modelo de ciclo de vida de um artefato refere-se às inúmeras fases percorridas, desde o seu 
nascimento até a ocasião em que este não terá mais serventia. Num sistema computacional, os 
componentes possuem um ciclo de vida independente, mesmo quando estes se relacionam. 
Acerca do modelo de ciclo de vida de um software, classifique V para as sentenças verdadeiras e F para 
as falsas: 
(V) A fase de definição é o momento adequado para a especificação das atividades que deverão ser 
desempenhadas pelo software, bem como do levantamento de restrições de custo impostas pelos 
clientes. 
(F) Embora um ciclo de vida possa apresentar várias fases, as principais são: desenvolvimento e 
manutenção, sendo que esta última se divide em quatro categorias: iniciais, intermediárias, finais e 
conclusivas. 
(V) A fase de manutenção prevê a possibilidade de retificar os requisitos funcionais e não funcionais, 
buscando exatamente a melhoria no artefato produzido. 
(V) A fase de desenvolvimento pode variar conforme o método adotado, mas algumas são comuns a 
vários métodos. 
(F) As mudanças que ocorrerão em um software para deixá-lo mais completo, livre de erros, ou 
adaptado ao seu ambiente podem ser definidas como manutenção recursiva e incremental 
(Revisão). 
Assinale a alternativa que apresenta a sequência CORRETA: 
 V - F - V - V - F 
 V - F - F - V - F 
 F - V - V - F - V 
 F - V - F - F - V 
11) (Defensoria Pública do Estado do Rio de Janeiro — DPE-RJ — Analista — Tecnologia da 
Informação - FGV — 2019). 
O software de controle de catracas “Sisentrada” foi desenvolvido e entregue a seus diversos 
clientes. Um deles relatou um problema. O software foi consertado e enviado novamente ao cliente, 
que percebeu que alguns erros já sanados em versões anteriores voltaram a ocorrer. 
No contexto da Engenharia de Software, a disciplina que é aplicada ao longo de todo o ciclo de 
vida, na qual houve falha, é 
 Gestão de Configuração de Software 
 Especificação de Requisitos 
 Gestão de Riscos 
 Medição 
 Comunicação com o Cliente 
 
12) (FCC -- 2014 - TRF - 32 REGIÃO - Analista Judiciário - Informática). 
A representação abaixo mostra como uma ferramenta de software realiza o controle de versões. 
 
Considere a figura acima e analise as seguintes afirmativas sobre gerência de configuração e mudanças: 
I. A figura sugere que cada vez que se modifica o projeto, a ferramenta registra o estado dos arquivos e 
armazena uma referência para essa captura. Se um dos arquivos não sofre alteração, seu estado não é 
alterado, apenas é criado um link para a versão anterior que já foi armazenada. 
II. Um Sistema de Controle de Versões (SCV) combina procedimentos e ferramentas para gerir 
diferentes versões de objetos de configuração que são criados durante o processo de software. 
III. Um SCV implementa ou está ligado a um banco de dados de projeto (repositório) que guarda os 
objetos de configuração relevantes. 
IV. Um repositório de gestão de configuração de software é um conjunto de estruturas de dados que 
permite a uma equipe de software gerir as modificações de modo efetivo. Propicia funções que 
impedem que as informações sejam compartilhadas entre vários desenvolvedores para garantir a 
integridade dos dados, porém não consegue detectar diferenças entre arquivos binários. 
Está correto o que consta apenas em: 
 I e II 
 III 
 II e III 
 I e III 
 I 
13) (Prefeitura Municipal de São Luís - Auditor Fiscal - FCC - 2018). 
Um auditor fiscal fez uma pesquisa na internet e obteve as seguintes informações: 
Há vários critérios para escolher uma ferramenta para esta finalidade, como popularidade, eficácia, 
desempenho, adequação e simplicidade. 
Este tipo de ferramenta serve para resolver três problemas: 
I. Registrar a evolução do projeto. 
II. Possibilitar o trabalho em equipe. 
III. Criar e manter variações do projeto. Tanto o Subversion, quanto o Git e o Mercurial atendem a 
estas necessidades. 
O auditor estava pesquisando sobre ferramentas de: 
 Projeto e governança de portais corporativos 
 Controle de workflows e Business Process Management (BPM) 
 Controle e gerenciamento de versão 
 Gerenciamento Eletrônico de Documentos (GED) de projetos 
 Projetos de auditoria com base no PMBOK 5ª edição 
 
14) (CEPS ‒ UFPA ‒ 2018). 
Um engenheiro de software está especificando os requisitos para um software que 
automatizea distribuição das turmas em salas de aula disponíveis em um campus de uma instituição de 
ensino superior. 
Durante o processo de levantamento e especificação de requisitos, o engenheiro de software 
identificou requisitos funcionais e requisitos não funcionais relacionados com o projeto que está sob 
reponsabilidade. 
Considere os requisitos relacionados a seguir: 
I- O sistema deve ser compatível com navegadores Web executando em smartphones. 
II - O sistema deve permitir o cadastro das salas de aula disponíveis para uso, sua localização e sua 
capacidade. 
III - O sistema deve permitir a emissão de relatórios contendo a alocação das salas e turmas. 
IV - O sistema deve ser desenvolvido com a linguagem Java. 
V - O sistema deve fornecer uma solução de interoperabilidade com os outros sistemas existentes na 
instituição. 
VI - Os relatórios gerenciais devem ser emitidos em no máximo dez segundos no contexto de mil 
usuários simultâneos. 
Dentre os itens relacionados de I a VI, são requisitos não funcionais: 
 II, III, IV, V e VI, somente 
 I, II e IV, somente 
 II III e IV, somente 
 I, IV, V e VI, somente 
 V e VI, somente 
15) A gestão de requisitos é um conjunto de atividades que tem como principal objetivo ajudar a equipe de 
projeto a: 
 
Negociar com os clientes os conflitos de prioridade de requisitos e identificar e analisar os 
riscos associados a cada requisito. 
 
Identificar, controlar e rastrear requisitos e modificações de requisitos em qualquer 
época, à medida que o projeto prossegue. 
 
Avaliar os requisitos quanto à qualidade, garantindo que ambiguidades, inconsistências, 
omissões e erros tenham sido detectados e corrigidos. 
 Construir um modelo técnico refinado de funções, características e restrições do software. 
 
Utilizar ferramentas de engenharia de software para modelar os requisitos do sistema, através 
da UML. 
16) (Petrobras Transporte SA -Transpetro - Analista de Sistemas - Negócios - CESGRANRIO - 2018). 
O custo da qualidade inclui todos os custos feitos na busca da qualidade, dividindo-se em custos 
de prevenção, de avaliação e de falha, interna e externa. 
Entre os custos de prevenção está o das atividades de: 
 Testes e depuração 
 Coleta de dados e métricas de avaliação 
 Retrabalho necessárias para corrigir o erro 
 Condução de revisões técnicas para os produtos de engenharia de software 
 
Gerência para planejar e coordenar todas as atividades de controle e garantia de 
qualidade 
 
17) (Defensoria Pública do Estado do Rio de Janeiro - DPE-RJ - Analista - Tecnologia da Informação - 
FGV-2019). 
A empresa “Armazéns do João”, com o propósito de adquirir um software de controle de estoque, 
solicitou a um analista de sua equipe de informática que verificasse a qualidade do software. A 
avaliação constatou que o software não possuía documentação técnica, não havia comentários no 
código, e suas classes e métodos possuíam nomes pouco significativos. Além disso, o software não 
garantia o acesso restrito a informações confidenciais de forma consistente. 
Com base nessas informações, o software não foi considerado de qualidade, pois não atendia às 
características desejáveis para: 
 Manutenibilidade e confiabilidade 
 Confiabilidade e usabilidade 
 Usabilidade e segurança 
 Manutenibilidade e segurança 
 Portabilidade e manutenibilidade 
18) Os requisitos representam uma exigência, solicitação, desejo ou necessidade que o cliente tem com 
relação a um software. Os requisitos podem ser definidos conforme a funcionalidade que eles vão 
desempenhar nesse software e podem ser divididos em funcionais ou não funcionais. 
Sobre os requisitos funcionais, analise as sentenças a seguir: 
I- O sistema deve cadastrar funcionários. 
II- O sistema deve imprimir o relatório de clientes em até 5 segundos. 
III- O sistema deve emitir um relatório de clientes. 
IV- O cliente pode consultar seus dados no sistema. 
Agora, assinale a alternativa CORRETA: 
 As sentenças I, III e IV estão corretas 
 Somente a sentença III está correta 
 As sentenças II, III e IV estão corretas 
 As sentenças I, II e IV estão corretas 
19) Requisitos não-funcionais são restrições aos serviços de um sistema de software e ao processo de 
desenvolvimento do sistema. A equipe de desenvolvimento de um sistema de controle de tráfego aéreo 
deve considerar os requisitos não-funcionais de: 
 alto desempenho e baixo tempo médio entre falhas 
 alta disponibilidade e baixo tempo de resposta de usuário por evento 
 uso conjunto de método ágil de sistemas e linguagem de programação orientada a objetos 
 monitoramento de aeronaves 
 cadastro de aeronaves 
20) Sobre Versionamento e Gerenciamento de Versões, considere as afirmações abaixo. 
I- O gerenciamento de versões é o processo de acompanhamento de diferentes versões de componentes 
de software ou itens de configuração e dos sistemas em que esses componentes são usados. Refere-se também 
à garantia de que as mudanças feitas por diferentes desenvolvedores para essas versões não interfiram umas 
nas outras. 
II- Em um sistema de gerenciamento de versões com uma variedade de recursos, desenvolvedores 
diferentes não podem trabalhar, ao mesmo tempo, no mesmo componente, pois se o fizessem, as mudanças 
feitas por diferentes desenvolvedores poderiam interferir umas nas outras. 
III- Os sistemas de gerenciamento de versões fornecem, em geral, recursos de gerenciamento de 
armazenamento. Sua função é reduzir o espaço de armazenamento requerido pelas várias versões de 
componentes, que diferem apenas ligeiramente umas das outras. Em vez de manter uma cópia completa de 
cada versão, o sistema armazena uma lista de diferenças (deltas) entre uma versão e outra. 
Quais estão corretas? 
 Apenas I e III 
 Apenas II e III 
 Apenas I e II 
 Apenas II 
 
21) Analise o seguinte cenário fictício: 
“Uma empresa de auditoria deseja controlar seus funcionários e os empregados terceirizados, 
bem como seus contratos com os clientes, através de um novo sistema”. Por ser uma empresa de 
auditoria, um ponto importante é a segurança, por isso a base de dados deve estar protegida e com 
acesso restrito aos usuários autorizados. 
O cliente também precisa de um forte gerenciamento de risco, prazo e custo, pois se o projeto 
não for entregue em seis meses ele não terá mais utilidade. Além disso, o sistema deve ser rápido, as 
consultas e os relatórios não devem demorar mais que 10 segundos. Outra solicitação é o calculo dos 
salários dos funcionários e terceirizados, todos os meses. “Além de indicar para qual cliente eles 
trabalharam”. 
Baseado no cenário identifique os requisitos não funcionais e classifique V para as sentenças 
verdadeiras e F para as falsas: 
(F) O sistema não pode demorar mais que seis meses e é necessário que o software calcule os salários 
dos terceirizados e mensalistas. 
(F) O sistema deve gerar relatórios mensalmente, separando por tipo de funcionário. 
(V) O tempo de resposta das consultas não deve superar os dez segundos. 
(F) Os relatórios por clientes indicam quem realizou os serviços. 
Assinale a alternativa que apresenta a sequência CORRETA: 
 V - V - F - V 
 V - V - F - F 
 F - V - V - V 
 F - F - V - F 
22) Considere a lista de requisitos, a seguir, de um sistema que será desenvolvido. 
1. O sistema deverá emitir relatórios de compras a cada 15 dias. 
2. O sistema só irá permitir a visualização do campo "valor máximo" para gerentes. 
3. O sistema deverá fornecer diariamente o relatório de despesas. 
4. O sistema não poderá excluir um fornecedor do cadastro se o fornecedor estiver inadimplente. 
5. O sistema não permitirá acesso aos registros de compras após as 17 horas. 
Em relação a esses requisitos, é correto afirmar que: 
 1 e 5 são requisitos funcionais e 2, 3 e 4 são requisitos não-funcionais 
 Somente o requisito 5 é não-funcional 
 São todos requisitos não-funcionais 
 São todos requisitos funcionais 
 1 e 5 sãorequisitos não-funcionais e 2, 3 e 4 são requisitos funcionais 
23) Os requisitos de um sistema são uma descrição de necessidades ou aspirações para um produto, os 
serviços que o sistema oferece ou não, além bem claras as restrições a seu funcionamento. Devido à 
complexidade dessa fase e, para que os problemas sejam minimizados, é muito importante requisitos 
sejam entendidos pelas partes interessadas, para que um requisito possa ser validado e aceito, e algumas 
verificações devem ser realizar. 
Sobre essas verificações, analise as sentenças a seguir: 
I- Ele deve ser documentado de maneira que seja de fácil compreensão por todos. 
II- Nem todos os requisitos podem ser testados após a entrega do sistema. 
III- A rastreabilidade dos requisitos a partir do problema de negócio. 
IV- A unicidade dos requisitos. 
Agora, assinale a alternativa CORRETA: 
 Somente a sentença II está correta 
 As sentenças I, II e III estão corretas 
 As sentenças II, III e IV estão corretas 
 As sentenças I, III e IV estão corretas 
 
24) As falhas nos sistemas são decorrentes muitas vezes de problemas no levantamento de requisitos. 
Problemas de comunicação entre os analistas usuários, como os requisitos mal expressos, requisitos 
desnecessários para os clientes e a dificuldade para lidar com a constante alteração dos requisitos. 
Com relação aos requisitos funcionais e não funcionais, analise as sentenças a seguir: 
I- O sistema deverá emitir relatórios de vendas semanalmente, é um exemplo de requisito não 
funcional. 
II- O sistema permitirá a visualização do campo "salário" somente para o RH, é um requisito funcional. 
III- O relatório de despesas será gerado conforme a solicitação, é um requisito não funcional. 
Agora, assinale a alternativa CORRETA: 
 As sentenças I e III estão corretas 
 Somente a sentença II está correta 
 As sentenças I e II estão corretas 
 As sentenças II e III estão corretas 
25) Os requisitos de usuário possuem como funcionalidade descrever os requisitos funcionais e não 
funcionais do software. Isso significa que precisa fáceis de utilizar pelo usuário do sistema. No 
levantamento dos requisitos, devem ser observados apenas requisitos externos, não possuir gírias, 
linguagem simples e de fácil compreensão pelo usuário. Podem ser encontrados, no levantamento dos 
requisitos do usuário, alguns problemas e linguagem natural. 
Assinale a alternativa CORRETA que apresenta esses problemas: 
 Diminuição das aplicações, projeto e arquitetura 
 Diminuição da velocidade, tamanho e dificuldade de uso 
 Falta de confiabilidade, usabilidade e inconsistência 
 Falta de clareza, confusão e fusão de requisitos 
26) Identificar e especificar os requisitos funcionais e os não funcionais são atividades da Engenharia de 
Requisitos realizadas nos processos de: 
 Planejamento de gerenciamento de requisitos e análise do problema 
 Refinamento dos requisitos e aprovação dos requisitos 
 Aprovação dos requisitos e planejamento de gerenciamento dos requisitos 
 Definição dos sistemas e refinamento dos requisitos 
 Análise do problema e definição dos sistemas 
27) O Processo Unificado (RUP) reúne boas práticas de especificação e de projeto de sistemas, sendo um 
modelo genérico de processo organizado em fases que podem gerar um conjunto de produtos de 
trabalho. 
Considerando isso, assinale a opção que identifica a fase do RUP na qual devem estar incluídos o 
refinamento e a expansão dos casos de uso preliminares, dos requisitos não funcionais e da descrição 
da arquitetura do software. 
 Concepção 
 Produção 
 Transição 
 Elaboração 
 Construção 
28) Com relação à forma como o RUP trata a análise de requisitos, assinale a opção correta. 
 A maior parte da análise de requisitos ocorre durante a fase de elaboração 
 
A análise de requisitos ocorre na fase de elaboração, em que são feitas entrevistas com 
usuários e definição do escopo do projeto 
 
A análise de requisitos deve acontecer antes da programação e testes do sistema, não 
podendo sofrer alterações a partir do momento que estejam definidos 
 
A análise de requisitos ocorre na fase de construção, quando são descritos todos os 
casos de uso, e em seguida modelados por meio de diagramas de casos de uso UML 
 
Por se tratar de um processo iterativo e evolutivo, a análise de requisitos ocorre na fase 
de construção juntamente com a programação, o que permite que os requisitos sejam 
revistos 
 
29) Quais são as metodologias de desenvolvimento? 
F XP 
V Ágil 
F Scrum 
F RUP 
V Tradicional 
30) Quais fases abaixo pertencem ao Processo Unificado (RUP)? 
 Iniciação, Elaboração, Desenvolvimento e Transição. (DEIT) 
 Negócios, Elaboração, Codificação e Instalação 
 Iniciação, Modelagem, Desenvolvimento e Transição 
 Iniciação, Elaboração, Desenvolvimento e Implantação 
 Requisitos, Elaboração, Desenvolvimento e Testes 
31) A ferramenta que possibilita apoiar as atividades de processo de software, como a análise de requisitos, a 
modelagem de sistema, a depuração e os testes é chamada de: 
 RU 
 UML 
 XP 
 CASE 
32) Na Análise de Requisitos, quais são os princípios básicos que devem ser utilizados, em reuniões de 
levantamento de requisitos junto aos usuários? 
 Fazer anotações e documentar as decisões 
 Escutar, escutar e escutar 
 Utilizar de desenhos se algo não estiver claro 
 Todas as alternativas estão corretas 
33) Analise as sentenças e marque a alternativa correta: são práticas condenáveis em engenharia de 
Software: 
I. a construção de softwares monolíticos, ou seja, com um único e grande módulo; 
II. A construção de software com excesso abusivo de módulos; 
III. a construção de softwares utilizando do bom senso na definição da quantidade de módulos 
 I, II e II 
 I e II 
 I e III 
 II e III 
34) Podemos definir RELEASE de um sistema como sendo: 
 A primeira versão lançada comercialmente 
 A versão beta de um Sistema 
 A versão que é efetivamente distribuída para os clientes 
 A versão de teste antes de ser distribuída para o cliente 
35) Quais são os atributos de um bom software? 
 Facilidade de Manutenção e Facilidade de Uso 
 Nível de Confiança e Facilidade de Uso 
 Eficiência e Facilidade de Uso 
 Todas as alternativas estão corretas 
 
36) Quais seriam os paradigmas da Engenharia de Software: 
 Processo, Métodos e Prototipação 
 Processo, Métodos e Ferramentas 
 Métodos, Ferramentas e Prototipação 
 Processo, Ferramentas e Requisitos 
37) Qual é a metodologia normalmente utilizada nas aplicações baseadas na web? 
 Metodologia Estruturada 
 Metodologia Orientada a Objetos 
 Metodologia Desenvolvimento Ágil 
 Nenhuma das Metodologias anteriores 
38) Quais são os modelos de desenvolvimento de software mais referenciados? 
 Workflow, incremental e Espiral 
 Workflow, Cascata e Espiral 
 Cascata, incremental e Espiral 
 Workflow, Cascata e Incremental 
39) Os objetivos do Gerenciamento de Riscos incluem aumentar a probabilidade e o impacto de eventos 
positivos (oportunidades) e diminuir a probabilidade e o impacto dos eventos adversos (ameaças). 
Neste contexto, avalie se as afirmativas a seguir são F ou V: 
I - As potenciais fontes de riscos para o projeto podem ser apresentadas dentro de uma Estrutura Analítica 
do Risco (EAR) hierárquica. 
II - A análise quantitativa permite priorizar os riscos que mereçam maior cuidado, a fim de identificar as 
piores ameaças e as melhores oportunidades. 
III - A análise qualitativa define para cada risco a sua probabilidade e impacto. 
 V F V 
 V V F 
 V V V 
 V F F 
 F VV 
40) Após atuar como programador em uma empresa de desenvolvimento de software por aproximadamente 10 
anos, um funcionário que se destacou por nunca atrasar um cronograma foi nomeado gerente de projetos. 
Ao assumir o primeiro projeto, o funcionário foi informado que sua principal responsabilidade era a 
realização da entrega conforme o cronograma estabelecido no contrato. Para o gerenciamentode tempo, 
o gerente de projetos irá utilizar o PMBOK. 
Considerando essa situação, é correto afirmar que o gerente de projetos deverá coordenar processos de: 
 Planejamento de compra e contratações, seleção de fornecedores e encerramento do contrato 
 Estimativa de custos, realização do orçamento e controle de custos 
 
Definição e sequenciamento de atividades, estimativa de recursos e duração da 
atividade, desenvolvimento e controle do cronograma 
 Planejamento, definição, verificação e controle do escopo 
 Planejamento, garantia e controle da qualidade 
41) Na etapa de projeto orientado a objetos, no contexto de um processo de desenvolvimento de software, são 
desenvolvidas as atividades de: 
 Teste de integração do sistema e análise de requisitos do sistema 
 Análise de requisitos do sistema e definição da arquitetura do sistema 
 Definição da arquitetura do sistema e conversão das bases de dados do sistema 
 Identificação dos objetos do sistema e definição da arquitetura do sistema 
 Conversão das bases de dados do sistema e teste de integração do sistema 
 
42) A avaliação do impacto de mudança de um requisito, muitas vezes, faz com que seja necessário retornar 
à sua fonte. Na validação dos requisitos, a equipe deve estar atenta, portanto, à: 
 Adaptabilidade 
 Facilidade de compreensão 
 Qualidade 
 Rastreabilidade 
 Facilidade de verificação 
43) É uma ferramenta que explicita a relação direta dos requisitos entre si ou com os outros componentes do 
projeto. Assim, caso alguma alteração seja feita no projeto, sabe-se quais requisitos serão afetados com 
tal mudança, estamos falando de? 
Resposta: Matriz de rastreabilidade de requisitos. 
Obs: permite cruzar os dados sendo rastreados e marcar os pontos de intersecção entre eles. 
 
44) A gestão de requisitos é um conjunto de atividades que tem como principal objetivo ajudar a equipe de 
projeto a: 
 
Identificar, controlar e rastrear requisitos e modificações de requisitos em qualquer 
época, à medida que o projeto prossegue 
 
Utilizar ferramentas de engenharia de software para modelar os requisitos do sistema, através 
da UML 
 
Avaliar os requisitos quanto à qualidade, garantindo que ambiguidades, inconsistências, 
omissões e erros tenham sido detectados e corrigidos 
 Construir um modelo técnico refinado de funções, características e restrições do software 
 
Negociar com os clientes os conflitos de prioridade de requisitos e identificar e analisar os 
riscos associados a cada requisito 
45) O guia PMBOK 4° edição tem uma área dedicada ao Gerenciamento da Qualidade do Projeto − GQP. De 
acordo com o guia, é INCORRETO afirmar que: 
 
uma métrica da qualidade é uma definição operacional que descreve, em termos bem 
específicos, um atributo do projeto ou do produto e como o processo de controle da qualidade 
irá medi-lo 
 
o GQP engloba o gerenciamento do projeto e o produto do projeto, e é a única área do 
PMBOK que se aplica exclusivamente a projetos de software 
 
uma métrica relacionada com o objetivo de qualidade de ficar dentro do orçamento aprovado 
em \(\pm\) 10% poderia ser medir o custo de cada entrega e determinar a variação percentual 
do orçamento aprovado para essa entrega 
 
as métricas da qualidade são usadas nos processos de garantia da qualidade e de controle da 
qualidade. A tolerância define as variações aceitáveis nas métricas 
 
alguns exemplos de métricas da qualidade incluem desempenho dentro do prazo, controle do 
orçamento, frequência de defeitos, taxa de falha, disponibilidade, confiabilidade e cobertura 
de testes 
 
45) Considere as informações abaixo em relação ao desenvolvimento de sistemas: 
I. executar um software com o objetivo de revelar falhas, mas que não prova a exatidão do software 
II. correta construção do produto 
III. construção do produto certo 
Correspondem corretamente a I, II e III, respectivamente: 
 validação, verificação e teste 
 teste, verificação e validação 
 verificação, teste e validação 
 validação, teste e verificação 
 teste, validação e verificação 
46) Preencha as lacunas e assinale a alternativa correta em relação ao gerenciamento de configuração e 
mudança 
O gerenciamento de configuração de software é um conjunto de ______________ que foi 
desenvolvido para administrar as mudanças em todo o ciclo de vida do software. 
Tais atividades são utilizadas para _____________ a mudança, controlar a mudança, garantir que a 
mudança esteja sendo adequadamente implementada e relatar a mudança a outras pessoas que possam ter 
interesse nela. 
 atividades / conduzir 
 rotinas / manter 
 atividades / identificar 
 etapas / corrigir 
 ferramentas / agilizar 
47) Considerando o uso do RUP (Rational Unifie d Process), deve-se considerar que, segundo essa técnica: 
 A disciplina Requisitos apresenta menor atividade na fase de Concepção (Inception) 
 A disciplina Modelagem de Negócio apresenta maior atividade na fase de Construção 
 A disciplina de Teste não é executada na fase de Elaboração 
 
A disciplina Configuração e Gerenciamento de Mudanças não é executada na fase de 
Elaboração 
 O número de iterações em cada uma de suas quatro fases é variável, conforme o projeto 
48) Considerando as áreas de conhecimento do gerenciamento de projetos, avalie as seguintes afirmativas: 
__________________ é a área de conhecimento que permite identificar os pacotes de trabalho 
O sequenciamento das atividades, definido pelo diagrama de redes do projeto, é elaborado na área de 
conhecimento ______________________. 
O Termo de Abertura do Projeto é o documento que autoriza a alocação de recursos ao projeto, sendo 
elaborado na área de conhecimento ___________________. 
Assinale a alternativa que preenche as lacunas na sequência correta: 
 
Gerenciamento do Escopo do Projeto, Gerenciamento do Cronograma do Projeto, 
Gerenciamento da Integração do Projeto. 
 
Gerenciamento do Escopo do Projeto, Gerenciamento da Integração do Projeto, Gerenciamento 
do Cronograma do Projeto 
 
Gerenciamento da Integração do Projeto, Gerenciamento do Escopo do Projeto, Gerenciamento 
do Cronograma do Projeto 
 
Gerenciamento do Cronograma do Projeto, Gerenciamento da Integração do Projeto, 
Gerenciamento do Escopo do Projeto 
 
Gerenciamento do Cronograma do Projeto, Gerenciamento do Escopo do Projeto, 
Gerenciamento da Integração do Projeto 
 
49) A Engenharia de Requisitos inclui as atividades de descobrir, analisar, documentar e verificar os serviços 
fornecidos pelo sistema e suas restrições operacionais. 
Considere as seguintes afirmativas relacionadas com essa engenharia: 
I- Na etapa de especificação ocorre a priorização e a resolução de conflitos entre os requisitos definidos 
nas etapas anteriores. 
II- Na etapa de elaboração os engenheiros de software realizam um estudo detalhado dos requisitos 
levantados e, a partir desse estudo, são construídos modelos para representar o sistema a ser 
construído. 
III- Na etapa de levantamento é gerada uma especificação de requisitos que serve como um contrato entre 
clientes e equipe de projeto, esclarecendo aos clientes o que será entregue como produto do trabalho 
da equipe de desenvolvimento. 
Assinale a alternativa CORRETA: 
 Apenas a afirmativa I é verdadeira 
 Apenas as afirmativas I e III são verdadeiras 
 As afirmativas I, II e III são verdadeiras 
 Apenas as afirmativas II e III são verdadeiras 
 Apenas a afirmativa II é verdadeira 
50) Considere que você trabalhe em uma empresa de desenvolvimento de software e que a empresa tenha 
decidido desenvolver um novo editor de texto para colocar no mercado. Esse editor deve ser um software 
que forneça recursos adicionais de apoio à autoria, embasado no estilo de escrita do usuário, o que o 
torna um software de funcionalidade mais complexa. Considere que a empresa deseje disponibilizar o 
produto no mercado em versões que agreguem esse suporte de forma gradativa, fazendo análise de riscopara avaliar a viabilidade de desenvolvimento de uma nova versão. Tendo de escolher um modelo de 
processo para desenvolver esse editor, e conhecendo as características dos modelos existentes, entre os 
modelos abaixo, qual é o modelo apropriado para esse caso? 
 Cascata 
 Cleanroom 
 Prototipação 
 RAD (rapid application development) 
 Espiral 
51) No que diz respeito aos processos e práticas ágeis, o desenvolvimento incremental: 
 
Enfoca a integração contínua como uma prática de desenvolvimento de software, incompatível 
com a XP (Extreme Programming) e o Scrum, que permite aos desenvolvedores agregarem 
alterações de código e realizarem testes. 
 
Pressupõe o uso do behavior driven development, que considera a linguagem de programação a ser 
usada, da 4° geração em diante, com foco, principalmente, no comportamento visual, interativo e 
cognitivo do sistema. 
 
É, assim como o test-driven development, uma prática da XP (Extreme Programming) que 
exige teste automatizado, domain-driven design, refactoring e integração contínua 
 
É, na XP (Extreme Programming), sustentado por meio de pequenos e frequentes releases do 
sistema, e os clientes estão intimamente envolvidos na especificação e na priorização dos 
requisitos do sistema. 
 
Enfoca, assim como o acceptance test-driven development, a qualidade do código desenvolvido 
quanto a recursividade, declar ação das variáveis e clean code, de modo a torná-lo de fácil 
entendimento, modificação e testagem 
52) A respeito de qualidade de software e suas métricas, assinale a opção correta. 
 
A métrica de complexidade ciclomática é uma medida que pode estar relacionada ao nível de 
compreensão do programa 
 A medida do número de caracteres em um programa é uma métrica do tipo fog index 
 
A métrica de comprimento total faz referência ao número de linhas no código que se considera 
inversamente proporcional ao índice de erro que o código pode apresentar 
 
A métrica de profundidade de condições aninhadas é a que permite uma melhor compreensão do 
código 
 
O número de funções ou métodos que constam em um programa pode ser avaliado pela métrica de 
software fan-in/fan-out 
 
53) O engenheiro de software avalia que na sua equipe, em datas próximas da data de entrega de uma versão 
do sistema, a produtividade e o nível de estresse da equipe são impactados. Ele deseja automatizar o 
processo, de forma a mitigar esses efeitos. Para tanto: 
 
como parte da implantação contínua, ele automatiza o processo de forma que impeça que 
a nova versão do sistema entre em produção, caso o teste falhe 
 
como parte da entrega contínua, ele elabora smoke tests para garantir o funcionamento do 
sistema, antes de enviá-lo para produção 
 
como parte da entrega contínua, ele automatiza uma série de rotinas para que o sistema seja 
automaticamente posto em produção 
 
como parte da integração contínua, ele automatiza o processo de agregar novas mudanças na 
forma de recursos e funcionalidades, em uma nova versão 
 
como parte da implantação contínua, ele elabora uma série de testes para garantir que ao 
implementar uma nova rotina ou funcionalidade as outras partes do sistema continuem 
operando 
normalmente 
54) Um software de gerência de configuração deve ser capaz de: 
 atualizar automaticamente as versões do software instaladas nas máquinas clientes 
 gerenciar a evolução do software durante o seu processo de desenvolvimento 
 
configurar automaticamente a instalação do software de acordo com o sistema 
operacional do servidor 
 gerenciar que usuários podem ter acesso a certos tipos de funções do software 
 configurar o software de acordo com as preferências do usuário 
55) O conjunto de atividades destinadas a gerenciar as alterações de software, identificando os artefatos que 
precisam ser alterados, estabelecendo relações entre eles, definindo mecanismos para gerenciar diferentes 
versões desses artefatos, controlando as alterações impostas e relatando as alterações feitas, caracteriza a 
gestão de: 
 processos de negócio 
 recursos de produto 
 recursos humanos 
 configuração de software 
 qualidade de software 
56) Durante a codificação do software, podemos adotar a estratégia de teste em forma de espiral, sendo a 
mesma percorrida a partir do interior, aumentando o nível de abstração a cada volta. 
Considerando a referida estratégia, assinale a sequência correta de execução dos testes: 
 Teste de Unidade, Teste de Integração, Teste de Sistema e Teste de Validação 
 
Teste de Unidade, Teste de Integração, Teste de Validação e Teste de Sistema 
(SUVI) 
 Teste de Unidade, Teste de Validação, Teste de Integração e Teste de Sistema 
 Teste de Integração, Teste de Validação, Teste de Unidade e Teste de Sistema 
 Teste de Integração, Teste de Unidade, Teste de Validação e Teste de Sistema 
57) Quanto à qualidade de software, assinale a alternativa que apresenta como a confiabilidade pode ser 
medida 
 Considerando a facilidade de manutenção 
 Considerando a habilidade de adaptar e estender o programa 
 Através da velocidade de processamento 
 Através da frequência e severidade das falhas 
 Considerando fatores como estética, consistência e documentação 
 
58) No contexto do gerenciamento de projetos, avalie a relação entre os conceitos e definições a seguir: 
[1] 
Grupos de processos de 
gerenciamento de projetos 
[A] 
Correspondem aos fluxos de processos ou ciclos de vida 
relacionados ao processo de software 
[2] Ciclo vida do projeto [B] 
Definida por seus requisitos de conhecimentos e descrita 
em termos dos processos que a compõem: suas práticas, 
entradas, saídas, ferramentas e técnicas 
[3] Área de conhecimento [C] relacionado com as etapas de gerenciamento do projeto 
Assinale a opção que corretamente relaciona os referidos conceitos e definições: 
[1][C] - [2][B] - [3][A] 
[1][B] - [2][C] - [3][A] 
[1][B] - [2][A] - [3][C] 
[1][A] - [2][B] - [3][C] 
[1][C] - [2][A] - [3][B] 
59) Uma das principais práticas de XP (Extreme Programming) é o Iteration Planning Game. 
Entre as atividades realizadas em uma sessão de Iteration Planning, está a: 
 
Estimação, feita por cada programador, do tempo que será necessário para realizar cada 
tarefa sob sua responsabilidade 
 Definição, pelos programadores, de quais story cards serão implementados em uma iteração 
 Distimação da data de entrega de um release baseado na estimativa de esforço de cada story card 
 Estimação do esforço que será necessário para implementar cada story card 
 
Designação, por parte do coach, dos programadores que irão realizar as tarefas contidas na lista 
de tarefas 
60) O gerenciamento de riscos é o processo sistemático de identificação, análise e respostas a riscos de 
projetos. Considerando que a metodologia aplicada à referida área de conhecimento encadeia processos 
de acordo com a figura a seguir, assinale a sequência correta: 
 
 Identificação de risco, análise quantitativa, análise qualitativa, planejamento de respostas a riscos 
 Análise qualitativa, análise quantitativa, identificação de risco, planejamento de respostas a riscos 
 Planejamento de respostas a riscos, identificação de risco, análise qualitativa, análise quantitativa 
 
Identificação de risco, análise qualitativa, análise quantitativa, planejamento de respostas a 
riscos 
 Análise qualitativa, identificação de risco, análise quantitativa, planejamento de respostas a riscos 
61) No contexto do processo de desenvolvimento de software, avalie a relação entre os conceitos e definições 
a seguir: 
[1] MVC [A] Determina arquitetura física do sistema. 
[2] Modelo de implantação [B] Um padrão de arquitetura. 
[3] Modelo de interação [C] Define aspectos dinâmicos do sistema. 
Assinale a opção que corretamente relaciona os referidos conceitos e definições: 
[1][C] - [2][B] - [3][A] 
[1][A] - [2][B] - [3][C] 
[1][C] - [2][A] - [3][B] 
[1][B] - [2][A] - [3][C] 
[1][C] - [2][A] - [3][B] 
 
62)Considerando as etapas de implantação e manutenção do processo de desenvolvimento de software, avalie 
os conceitos a seguir: 
_________________: de forma simplificada, é um conjunto de tarefas que visam gerenciar as alterações 
durante o desenvolvimento do software, sendo a mesma aplicada em todas as etapas do processo de 
desenvolvimento de software. 
_________________: requer a avaliação do mérito técnico, efeitos colaterais em potencial, o impacto 
global em termos de configuração e funcionalidade e o custo de uma determinada alteração. 
_________________: gerencia as versões do software distribuído aos clientes. 
Assinale a alternativa que preenche as lacunas na sequência correta: 
 Processo de controle de alterações, Gerenciamento de releases, Gestão de configuração 
 Processo de controle de alterações, Gestão de configuração, Gerenciamento de releases 
 Gestão de configuração, Gerenciamento de releases, Processo de controle de alterações 
 
Gestão de configuração, Processo de controle de alterações, Gerenciamento de 
releases 
 Gestão de configuração, Processo de controle de alterações, Gerenciamento de release 
63) Os projetos de software devem ter sua qualidade avaliada, e para tanto, selecionaram-se fatores indicados 
na norma ISO 9126, que identifica alguns atributos importantes da qualidade, dentre os quais, a: 
 
Funcionalidade, que representa a facilidade com que o software pode ser transferido entre 
ambientes computacionais. 
 
Eficiência, que representa a facilidade com que o software pode ser transferido entre 
ambientes computacionais. 
 
Confiabilidade, que representa o período de tempo em que o software esteja disponível 
para uso. 
 
Manutenibilidade, que representa o período de tempo em que o software esteja disponível para 
uso 
 
Usabilidade, que representa o nível em que o software se utiliza de recursos do sistema, de 
forma otimizada 
64) Sobre os sistemas de controle de versão, é correto afirmar que: 
 
Uma das características dos sistemas de controle de versão é controlar de forma anônima as 
alterações que são realizadas no sistema versionado, obtendo somente um controle das 
alterações feitas no decorrer do tempo 
 
Em um sistema de controle de versão distribuído, há um único servidor contendo todos os 
arquivos versionados. Os clientes obtêm somente parte do repositório armazenado no servidor, 
não possuindo a sua visão completa 
 
Dado seu comportamento centralizado, o GIT possui a desvantagem de ter um único ponto de 
falha, onde uma falha no servidor central ocasionará a perda completa do repositório, não sendo 
possível recuperar a partir do conteúdo existente nos clientes 
 
O SVN utiliza um modelo centralizado para o versionamento de sistemas, enquanto o GIT 
apresenta um modelo distribuído, contendo cópias do repositório original em cada cliente 
 
Uma das vantagens em se utilizar um sistema de controle de versão centralizado está no fato de 
ser possível recuperar o conteúdo original a partir os repositórios presentes nos clientes 
65) Considere as informações em relação ao desenvolvimento de sistemas: 
I. executar um software com o objetivo de revelar falhas. 
II. correta construção do produto. 
III. garantir a qualidade do produto. 
Corresponde corretamente a I, II e III, respectivamente: 
 validação, teste e verificação 
 teste, validação e verificação 
 verificação, teste e validação 
 validação, verificação e teste 
 teste, verificação e validação 
 
66) Gerência de Configuração de Software é um conjunto de atividades de apoio, que permite a absorção 
controlada das mudanças, inerentes ao desenvolvimento de software, mantendo a estabilidade na 
evolução do projeto. Podemos dividir o Gerenciamento de Configuração de Software em três níveis: 
Tomando por base a figura anterior, assinale a alternativa que define, corretamente, cada nível do 
Gerenciamento de Configuração de Software. 
 
 
Controle de versão: identifica quais foram as mudanças, efetuadas na versão. 
Controle de mudanças: tem como característica testar as mudanças, assim que são realizadas. 
Integração contínua: identifica em qual versão está o software e quais as características de cada 
versão. 
 
Controle de versão: identifica em qual versão está o software e quais as características de cada versão. 
Controle de mudanças: identifica quais foram as mudanças, efetuadas na versão. 
Integração contínua: tem como características testar as mudanças, assim que são realizadas. 
 
Controle de versão: identifica em qual versão está o software e quais as características de cada versão. 
Controle de mudanças: tem como característica testar as mudanças, assim que são realizadas. 
Integração contínua: identifica quais foram as mudanças, efetuadas na versão. 
 
Controle de versão: identifica os usuários dos sistemas. 
Controle de mudanças: tem como característica testar as mudanças, assim que são realizadas. 
Integração contínua: identifica em qual versão está o software e quais as características de cada 
versão. 
 
Controle de versão: identifica os usuários dos sistemas. 
Controle de mudanças: tem como característica testar as mudanças, assim que são realizadas. 
Integração contínua: identifica as aplicações do software. 
67) Considere as seguintes afirmativas sobre Requisitos de Software: 
I - Requisitos Funcionais descrevem as funções que o software deverá executar. 
II - Requisitos Funcionais não são rastreáveis, ou seja, não é possível identificar o código fonte 
relacionado a um requisito funcional. 
III - Requisitos Não-Funcionais descrevem as ações realizadas para cada entrada do sistema, ou seja, é 
aquilo que descreve o que deve ser feito pelo sistema. 
Assinale a alternativa CORRETA: 
 Apenas a afirmativa II é verdadeira 
 Apenas a afirmativa I é verdadeira 
 Apenas as afirmativas I e III são verdadeiras 
 Apenas as afirmativas II e III são verdadeiras 
 Todas as afirmativas são verdadeiras 
68) A Engenharia de Software é uma tecnologia em camada. Avalie a relação entre os conceitos e definições a 
seguir: 
[1] Camada qualidade [A] Determina as etapas de desenvolvimento do software. 
[2] Camada de processo [B] 
Garante que os requisitos que atendem as expectativas do 
usuário serão cumpridos 
[3] Camada de métodos [C] 
Define os artefatos gerados em função da técnica de 
modelagem adotada, tal como modelo de casos de uso ou 
de classes 
Assinale a opção que corretamente relaciona os referidos conceitos e definições: 
[1][C] - [2][B] - [3][A] 
[1][B] - [2][C] - [3][A] 
[1][B] - [2][A] - [3][C] 
[1][B] - [2][A] - [3][C] 
[1][C] - [2][A] - [3][B] 
 
69) A ISO 9126 identifica seis atributos fundamentais de qualidade para o software. Avalie se as afirmativas a 
seguir são Falsas ou Verdadeiras: 
I - Confiabilidade, atributo associado ao tempo de disponibilidade do software. 
II - Eficiência, atributo relacionado com a otimização dos recursos do sistema. 
III - Portabilidade, atributo associado à satisfação dos requisitos funcionais 
 V - V - V 
 V - V - F 
 V - F - F 
 F - V - V 
 V - F - V 
70) Considere as seguintes afirmativas relacionadas com a etapa de projeto do processo de desenvolvimento 
de software: 
I - A partir do modelo de classes gerado na análise, aplica-se refinamentos que permitem reduzir o grau 
de abstração do referido modelo. 
II - Os aspectos dinâmicos, considerando que o paradigma dominante na indústria de software é a 
orientação a objetos, são definidos nos modelos de classes. 
III - A divisão lógica comumente aplicada no projeto de arquitetura, pode ser composta das seguintes 
camadas: apresentação, aplicação, domínio e serviços técnicos. 
Assinale a alternativa CORRETA: 
 Apenas a afirmativa I é verdadeira 
 Apenas as afirmativas I e III são verdadeiras 
 As afirmativas I, II e III são verdadeiras 
 Apenas a afirmativa II é verdadeira 
 Apenas as afirmativas II e III são verdadeiras 
71) No contexto da metodologia ágil Scrum,avalie a relação entre os papéis e definições a seguir: 
[1] Product Owner [A] 
Garante que as regras do método Scrum esteja sendo 
seguidas 
[2] Scrum Mester [B] 
Determina os requisitos e funcionalidades que deverão 
ser entregues 
[3] Scrum Team [C] Responsável pelas decisões técnicas 
Assinale a opção que corretamente relaciona os referidos conceitos e definições: 
[1][B] - [2][C] - [3][A] 
[1][C] - [2][A] - [3][B] 
[1][C] - [2][B] - [3][A] 
[1][B] - [2][A] - [3][C] 
[1][A] - [2][B] - [3][C] 
72) Ao analisar a aplicação da prototipação em seus projetos de software, decidiu-se utilizar um processo que 
define 4 etapas para o desenvolvimento de protótipos, sendo essas etapas: 
I. Avaliar Protótipo. 
II. Estabelecer Objetivos do Protótipo. 
III. Desenvolver o Protótipo. 
IV. Definir a Funcionalidade do Protótipo. 
A ordem sequencial correta para a execução dessas quatro etapas é: 
 I, IV, II e III 
 IV, I, II e III 
 III, II, IV e I 
 IV, II, I e III 
 II, IV, III e I 
 
73) Em relação a Qualidade e Teste de Software, quando um produto é previamente testado e enviado para 
uma nova avaliação, considere: 
I. Todas as partes alteradas nos documentos, funcionalidades e informações devem ser testadas como se 
fosse um produto novo. 
II. Todas as partes inalteradas que sejam influenciadas pelas partes alteradas ou por mudanças em um 
requerido sistema (de acordo com os conhecimentos específicos do testador) devem ser testadas por 
amostragem. 
III. Todas as outras partes que não foram alteradas ou influenciadas pelas alterações, devem ser testadas 
como sendo um novo produto. 
Está correto o que se afirma em: 
 II, apenas 
 I e III, apenas 
 III, apenas 
 I, apenas 
 I, II e III 
74) Considere as seguintes afirmativas: 
I- Seu escopo não deve abordar a definição do que será gerenciado, entretanto, deve definir o esquema a 
ser usado para identificar os itens de configuração. 
II- Deve especificar as ferramentas usadas para o gerenciamento de configurações e os respectivos 
processos de uso, porém não deve entrar no mérito de definição de políticas a serem adotadas no 
controle de mudanças. 
III- Deve estabelecer as responsabilidades pelos procedimentos de gerenciamento de configuração e ainda 
descrever a estrutura do banco de dados para o registro das informações de configuração. 
Um plano de gerenciamento de configurações de sistemas de software em desenvolvimento deve 
estar de acordo com o que consta em: 
 I, apenas 
 II, apenas 
 I, II, e III 
 II e III, apenas 
 III, apenas 
75) A respeito do conceito de pullre quest no Git, assinale a alternativa correta. 
 
É uma solicitação que um usuário faz para ter permissão de acesso a arquivos de um 
outro repositório 
 
É uma solicitação que um usuário faz para contribuir com suas alterações de volta ao 
repositório original de um projeto 
 É o envio de arquivos para o repositório remoto do usuário 
 É o envio de arquivos para o repositório local do usuário 
 É uma solicitação para baixar localmente os arquivos do repositório remoto do usuário 
76) Qual das seguintes frases melhor explica a Engenharia de Software? 
 
A engenharia de software baseia-se em teorias, métodos e ferramentas para o 
desenvolvimento de software profissional 
 
A engenharia de software baseia-se em práticas, normas e aplicações para o desenvolvimento 
de software profissional 
 A engenharia de software baseia-se em teorias, práticas e ferramentas 
 
77) Os termos inovação e empreendedorismo dizem respeito à prática da gestão e à mudança criativa. A 
inovação preocupa-se, sobretudo, com o desenvolvimento de produtos. Já o empreendedorismo dedica-se 
mais à questão da criação de pequenas empresas. Nesse contexto, avalie as afirmações a seguir. 
I. Inovação e sustentabilidade são processos antagônicos, já que a inovação contribui de forma importante 
para a degradação do meio ambiente devido à sua associação com o aumento do crescimento econômico 
e do consumo. 
II. A exploração de um problema social transformado em uma oportunidade de negócio visando a geração 
de lucro ao empreendedor é um dos principais objetivos do empreendedorismo social. 
III. Nem todo resultado de um processo criativo está associado a uma inovação. 
É correto o que se afirma em 
 I - apenas 
 I - II e III 
 II - apenas 
 II e III - apenas 
 I e III - apenas 
78) Após atuar como programador em uma empresa de desenvolvimento de software por aproximadamente 10 
anos, um funcionário que se destaco u por nunca atrasar um cronograma foi nomeado gerente de projetos. 
Ao assumir o primeiro projeto, o funcionário foi informado que sua principal responsabilidade era a 
realização da entrega conforme o cronograma estabelecido no contrato. Para o gerenciamento de tempo, o 
gerente de projetos irá utilizar o PMBOK. 
Considerando essa situ ação, é correto afirmar que o gerente de projetos deverá coordenar processos de: 
 Estimativa de custos, realização do orça mento e controle de custos 
 Planejamento de compra e contratações, seleção de fornecedores e encerramento do contrato 
 
Definição e sequenciamento de atividades, estimativa de recursos e duração da 
atividade, desenvolvimento e controle do cronograma 
 Planejamento, garantia e controle da qualidade 
 Planejamento, definição, verificação e controle do escopo 
79) O MPS.BR (Melhoria de Processos do Software Brasileiro) é, ao mesmo tempo, um movimento para 
melhoria da qualidade e um modelo de qualidade de processo. 
Guia MPS.BR (SOFTEX) 
Com relação às suas características, o MPS.BR 
 divide-se em 3 modelos: desenvolvimento, aquisição e serviços 
 possui representação contínua e por estágios 
 está em conformidade com as normas ISO/IEC 12207 e 15504 
 possui 5 níveis de maturidade 
 considera 3 dimensões: pessoas, ferramentas e procedimentos 
80) Após realizar uma análise de mercado em busca de soluções para aprimorar o seu negócio, uma empresa 
adquiriu um sistema de ERP (enterprise resource planning) contendo um conjunto de módulos que integra 
todos os departamentos existentes. Após um ano de utilização, houve uma mudança na legislação e, para 
atender as novas exigências, foi necessária uma manutenção no sistema ERP. 
Considerando essa situ ação hipotética, é correto afirmar que a empresa irá realizar uma manutenção 
 aperfeiçoadora 
 preventiva 
 adaptativa 
 perfectiva 
 corretiva 
 
81) A Norma ISO/IEC FDIS 14764 (2006) estabelece definições de vários tipos de manutenção e fornece um 
guia para gerenciar o processo de manutenção, que pode ser aplicado no planejamento, execução e 
controle, revisão e avaliação, e fechamento do processo de manutenção. Segundo essa Norma, solicitações 
de modificação são classificadas como corretiva, preventiva, adaptativa ou perfectiva. Os detalhes de como 
implementar ou realizar as atividades e tarefas de manutenção não são especificadas pela Norma, sendo de 
responsabilidade do mantenedor. SO/IEC FDIS 14764. Software Engineering - Software Life Cycle 
Processes - Maintenance. 2006. 
Considerando os tipos de manutenção e as atividades de implementação do processo, avalie as afirmações a 
seguir. 
É correto apenas o que se afirma em 
I. O mantenedor deve desenvolver, documentar e executar planos e procedimentos para realizar as 
atividades e tarefas do processo de manutenção 
II. O mantenedor deve alterar a configuração do sistema para corrigir erros identificados pelos usuários 
usando a manutenção perfectiva 
III. O mantenedor deve estabelecer procedimentos para receber, registrar e rastrear solicitações de 
modificação/registro de problemas dos usuários, e também prover realimentação para os usuários 
IV. O mantenedor deve documentar a estratégia a ser usada para melhorar a manutebilidade futura do 
sistema, usando a manutenção corretiva. 
 II 
 I e III 
 III e I V 
 I. 
 II e IV 
82) O gerenciamento de projetos de sistemas é essencial para a engenharia de software.

Outros materiais