Buscar

Engenharia 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 13 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 13 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 13 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

Unidade 1 - Conceitos da engenharia de software
1. O que foi a Crise de Software?
B. A Crise de Software foi um termo que surgiu nos anos 70. O termo expressava as
dificuldades do desenvolvimento de software frente ao rápido crescimento da
demanda por software.
2. Qual foi o motivo da criação da Engenharia de Software?
B. A Engenharia de Software foi criada para permitir o uso de elementos da
engenharia de forma controlada e sistemática no desenvolvimento de software.
Também para evitar a Crise de Software.
3. Com a introdução da Engenharia de Software, o que mudou no processo de
desenvolvimento de software?
A. Iniciou-se o uso de técnicas e metodologias sistemáticas e controladas já
presentes na engenharia e amplamente utilizadas em outras áreas.
4. João, dono de uma empresa de software, tem que criar um sistema para um cliente. Até
o momento, o cliente fez apenas uma ligação informando o tipo de software que ele quer.
Qual a primeira coisa que João deve fazer?
D. Entender o negócio do cliente e realizar reuniões para mensurar o que ele precisa.
5. Qual é a base dos elementos da Engenharia de Software?
C. Foco na qualidade.
Unidade 2 - Modelo de Análise de Software
(Análise Estruturada)
1. O que é um DFD?
A. É um diagrama de fluxo de dados, utilizado para mostrar as relações entre os
dados, processos que transformam esses dados e o limite entre o que pertence ao
sistema e o que está fora dele.
2. Analise o DFD extraído do livro "Engenharia de Software: Os Paradigmas Clássicos &
Orientado a Objetos" página 337:
 
Agora, informe o que significa o elemento com o conteúdo "process_orders (processamento
de pedidos)":
D. O elemento representa uma função.
3. Quais dos itens a seguir é uma limitação da análise estruturada quando comparada com
outros métodos existentes?
A. A Análise estruturada utiliza modelos computacionais, diferente da Orientada a
Objetos, que usa elementos do mundo real, chamados de objetos.
4. Qual dos itens a seguir é uma vantagem da análise estruturada quando comparada com
outras abordagens?
C. Através do diagrama de fluxo de dados, é possível se ter uma ideia mais clara do
sistema proposto.
5. Em um dicionário de dados, o que os símbolos { } significam?
D. Eles enquadram componentes que se repetem zero ou mais vezes.
Unidade 3 - Modelo de Análise de Software
(Orientada a Objetos)
1. Selecione a alternativa que melhor descreve os elementos em que se baseiam os
métodos orientados a objetos:
E. São baseados nos conceitos de objetos e atributos, totalidades e partes, classes e
membros.
2. Durante a análise orientada a objetos, qual preocupação um engenheiro de software
deve ter para garantir que o produto criado apresente mais facilidade de criação e
manutenção?
E. Em fazer uma modelagem de forma clara e bem organizada.
3. Acompanhe a seguinte situação:
A loja "Compre X" precisa que um sistema seja criado para registrar os produtos
comprados, vendas e controlar as comissões dos vendedores.
- Neste sistema, os estoquistas vão realizar todo o cadastro de novos produtos, inserindo
todas as informações necessárias. Além disso, os produtos adquiridos da loja "Compre X"
serão automaticamente inseridos no sistema pelo módulo X.
- Os vendedores irão inserir informações de venda, para automaticamente os produtos
serem removidos do estoque.
- O gerente poderá realizar a análise das vendas, estoque e comissões dos vendedores.
- Já os administradores terão acesso a todas as operações dos outros usuários, além de
poder inserir vendedores, gerentes e estoquistas.
Neste sistema, todos os usuários deverão realizar login.
Identifique quais são as possíveis classes para a situação descrita:
B. Loja, Produto, Vendedor, Venda e Estoque.
4. Selecione quais destas alternativas não corresponde ao uso do modelo de análise
orientada a objetos.
C. Maior facilidade de implementação do sistema pelos desenvolvedores.
5. Qual o objetivo principal do diagrama de objetos?
A. O objetivo é mostrar os objetos que foram instanciados das classes.
Unidade 4 - Conhecer as fases do ciclo de vida de
software
1. O que é um ciclo de vida de software?
A. Ciclo de vida de software refere-se aos estágios de concepção, projeto, criação e
implementação de um software.
2. Em qual fase do ciclo de vida de software são definidas as questões técnicas, como
banco de dados, localização, hardware e linguagens de programação?
A. Na fase de projeto.
3. No ciclo de vida de software, o que é realizado na etapa de "levantamento das
necessidades"?
B. É realizada uma verificação de todas as necessidades do cliente.
4. A figura ilustra um modelo de desenvolvimento de software no qual o fluxo é visto como
um fluir constante através das fases. Esse modelo utiliza como entrada as informações
obtidas nas fases anteriores e cada fase só inicia após o término da que antecede (não
existindo fases em paralelo). Com base nessas informações, qual é o modelo apresentado
na figura?
B. Cascata.
5. Qual é o maior problema encontrado no modelo cascata?
D. Apresenta o problema de reatividade a mudanças.
Unidade 5 - Conhecer os modelos tradicionais
1. Qual o maior problema encontrado no modelo cascata?
A. Dificuldade em detectar alterações e melhorias durante o desenvolvimento.
2. O que o modelo prototipação tentou corrigir nos modelos anteriores?
B. O problema de comunicação entre os usuários e os desenvolvedores.
3. Quais são as desvantagens do uso de um modelo prototipação?
C. Alto custo de projeto e retrabalho.
4. O modelo espiral combinou dois modelos, o cascata e o protótipo. Além disso, ele
adicionou mais um elemento que forneceu mais segurança na criação de software. Qual
elemento foi este?
E. Análise de risco.
5. Qual a diferença do protótipo descartável e do evolutivo no modelo prototipação?
A. O protótipo descartável é criado temporariamente e depois não é mais utilizado. Já
o evolutivo utiliza o próprio sistema como protótipo e, ao longo do tempo, evolui até
chegar no produto final.
Unidade 6 - Conhecer Modelo Incremental
1. No primeiro incremento do modelo incremental, que tipo de solução é oferecida ao
cliente?
A. São oferecidos elementos do sistema que permitem a operação básica ao usuário.
2. O que é esperado do cliente ao término de cada incremento?
D. Uso, avaliação e feedback sobre o sistema.
3. No final do último incremento, o que é esperado na entrega?
C. Espera-se um sistema completo e funcional.
4. Qual destas é uma vantagem do modelo incremental?
B. Usuários podem solicitar modificações no sistema durante o desenvolvimento.
5. Qual destas opções é uma desvantagem do modelo incremental?
A. O orçamento previsto do projeto pode ser ultrapassado.
Unidade 7 - Modelos Tradicionais X Métodos
Ágeis
1. O que foi o manifesto ágil?
B. Foi um conjunto de princípios e valores criados para ajudar a desenvolver software
de maior qualidade.
2. Os métodos ágeis possuem um conjunto amplo de ferramentas e técnicas. Um deles
possui uma característica muito interessante, que é o uso de um quadro branco e pequenos
papéis coloridos que representam tarefas. Ele é utilizado para ajudar o time a gerenciar as
atividades que devem ser realizadas ao longo de um determinado período de tempo. Quais
dos itens abaixo representa a técnica descrita?
A. Kanban.
3. "É muito mais importante que o cliente esteja plenamente satisfeito com o software e que
ele possa, durante o projeto, solicitar mudanças para obter vantagens competitivas do que
ter um plano/projeto bem definido e seguí-lo até o final para depois entregar o software ao
cliente". Dos valores expressos no manifesto ágil, qual deles que justifica essa afirmação?
E. Responder a mudanças mais que seguir um plano.
4. No fluxo de processo do scrum, o que significa "backlog"?
C. É uma lista com prioridades dos requisitos ou funcionalidades do projeto que
fornecem valor comercial ao cliente.
5. Qual é a preocupação que devemos ter ao utilizar os métodos ágeis?
B. Devemos analisar se as mudanças solicitadas são possíveis.
Unidade 8 - Analisar e desenvolver Planode
Projeto
1. O que é um plano de projeto de software?
A. É um documento que contém um conjunto de informações e permite não apenas
executar o projeto, mas também monitorar seu progresso e verificar se o executado
está em conformidade com o planejado.
2. Projeto é a única maneira pela qual podemos transformar precisamente os requisitos dos
envolvidos em um produto ou sistema de software finalizado.
Qual elemento do plano de projeto descreve os objetivos do projeto a ser desenvolvido e as
restrições que afetam seu gerenciamento?
C. Introdução.
3. Qual das características do plano de projeto permite que o time de desenvolvedores,
analistas, gerentes e outros membros entendam qual seu papel no projeto?
B. Um plano de projeto possui uma linguagem 'comum' para comunicação das
atividades do projeto e responsabilidades do time, bem como a rastreabilidade e
relatórios dessas atividades.
4. Pedro é gerente de um projeto e criou, junto ao seu time, um plano de projeto para um
novo software que será desenvolvido. Dos itens a seguir, quais podem estar presentes em
um plano de projeto, ajudando Pedro a pensar, prever e talvez evitar possíveis problemas
que podem ocorrer durante o projeto e afetar o resultado final?
E. O mapeamento de riscos de projeto.
5. Um plano de projeto de acordo com o PMBOK é um documento formal e aprovado,
utilizado para orientar a execução e o controle do projeto. Sobre plano de projeto podemos
afirmar que:
A. Possuem mecanismos de geração de relatório, que são documentos gerenciais
que devem ser produzidos para o projeto.
Unidade 9 - Conhecer requisitos
1. O que é um requisito de software?
A. Um requisito pode ser definido como uma condição ou uma capacidade com a qual
o sistema deve estar de acordo.
2. Qual é a característica de um requisito funcional?
B. Descrevem explicitamente as funcionalidades e serviços do sistema.
3. Qual é a característica de um requisito não funcional?
C. É um tipo de requisito que define propriedades e restrições do sistema. É mais
voltado para características que podem ser mensuradas e testadas facilmente.
4. O que é uma regra de negócio?
A. Regras de negócio são premissas e restrições aplicadas a uma operação comercial
de uma empresa, que precisam ser atendidas para que o negócio funcione da
maneira esperada.
5. Na engenharia de software, existe um processo genérico de levantamento e análise que
contém as seguintes atividades: compreensão do domínio, coleta de requisitos,
classificação, resolução de conflitos, definição das prioridades e verificação de requisitos.
Uma das atividades mais importantes deste processo é a coleta de requisitos. Informe quais
das descrições a seguir melhor descrevem esta atividade:
E. É o processo de interagir com os stakeholders do sistema para descobrir seus
requisitos.
Unidade 10 - Análise e preparo da lista de
requisitos
1. Os requisitos de software são classificados em três níveis de prioridade durante a
preparação da lista de requisitos, sendo essencial, importante e desejável. Das alternativas
abaixo, qual justifica esta classificação de requisitos em diferentes níveis de prioridades?
D. Devido à limitação de recursos e tempo, os requisitos são priorizados para que os
mais importantes sejam desenvolvidos primeiro e os menos importantes depois.
2. Especificação de Requisitos de Software incluir tanto os requisitos de usuário para um
sistema quanto uma especificação detalhada dos requisitos de sistema. Sobre os possíveis
usuários do Documento de Requisitos de Software podemos afirmar:
B. Engenheiros de sistema – usam os requisitos para compreender qual sistema será
desenvolvido
3. O que é um requisito de negócio?
D. São requisitos que descrevem, em termos do negócio, o que deve ser entregue ou
conseguido para fornecer valor.
4. O que é um requisito de usuário?
C. São basicamente as declarações, em linguagem natural e diagramas, sobre os
serviços que o sistema oferece e as restrições para a sua operação. Escrito para os
usuários.
5. Qual das abordagens listadas necessita que o analista ou engenheiro de software seja
inserido no ambiente da empresa/cliente para fazer o levantamento de requisitos?
A. Observação in loco/etnografia.
Unidade 11 - Entender a fase de projeto
(modelagem) de um sistema
1. Qual destes conceitos se refere ao diagrama de atividades?
B. É um diagrama de estado no qual considera-se que todos, ou a grande maioria dos
estados, representam as execuções de atividades.
2. O diagrama de estados é um grafo dirigido cujos nodos representam estados e cujos
arcos representam transições entre estados. Qual das imagens abaixo mostram um
diagrama de estados?
C.
3. O uso de diagramas apresenta uma grande quantidade de vantagens para um projeto de
software. Das vantagens apresentadas abaixo, qual possui uma relação direta com
questões de visão arquitetural do software, permitindo o entendimento de módulos e partes
do sistema?
D. Permite esclarecer as atribuições de cada elemento do sistema.
4. Qual é a primeira atividade que deve ser realizada durante a fase de projeto e que
representa como o sistema será composto, considerando suas diversas partes?
A. Representação da arquitetura do sistema.
5. Podemos definir a fase de projeto como "a transformação de requisitos de software em
uma descrição". Considerando isso, qual das alternativas melhor descreve a entrada e a
saída de uma fase de projeto?
A. Entrada: especificação de requisitos. Saída: modelos e artefatos que documentam
as principais decisões tomadas.
Unidade 12 - Conhecer e construir Diagrama de
Casos de Uso
1. O que é um diagrama de casos de uso?
D. É um diagrama que descreve as principais funcionalidades do sistema e a
interação dessas funcionalidades com os usuários do mesmo sistema.
2. Com qual figura geométrica um ATOR é representado no diagrama de casos de uso?
B. Com um simbolo de uma pessoa, também chamado de "stick man".
3. Além dos relacionamentos comuns do diagrama de casos de uso, também contamos com
os relacionamentos <<extend>>. Para que este tipo de relacionamento é utilizado?
A. Quando o caso de uso Y estende o caso de uso X, significa que quando o caso de
uso X for executado o caso de uso Y poderá (poderá – talvez não seja) ser executado
também.
4. O diagrama de casos de uso é geralmente utilizado no início do projeto em qual
atividade?
C. Definição dos requisitos e comunicação com o cliente.
5. Para que serve a multiplicidade no diagrama de casos de uso?
E. Serve para especificar o número de vezes que um ator pode utilizar um
determinado caso de uso.
Unidade 13 - Conhecer e construir Especificação
de Casos de Uso
1. Marque a alternativa que completa corretamente a frase: É correto afirmar que uma
especificação de casos de uso...
E. ...não deve detalhar aspectos de implementação.
2. Qual é a melhor definição para um ator no contexto de especificação de casos de uso?
C. Representa uma entidade externa que interage com o sistema.
3. "Deve representar o caminho mais simples, que é executado inicialmente quando o ator
acessa a referida funcionalidade". Esta explicação melhor se enquadra para qual
alternativa?
B. Fluxo básico.
4. Qual o objetivo do item "Referências a elementos internos e externos" na especificação
de casos de uso?
C. Permite referenciar três elementos internos e quatro elementos externos.
5. O que melhor define um caso de uso?
A. É um tipo de classificador representando uma unidade funcional coerente provida
pelo sistema.
Unidade 14 - Conhecer e construir Diagrama de
Atividades
1. O que é um diagrama de atividades?
C. É um diagrama comportamental (que especifica o comportamento do software) do
ponto de vista funcional.
2. O que um elemento de atividade representa no diagrama?
E. Um comportamento a ser realizado.
3. Qual o principal objetivo de um diagrama de atividades?
A. Ilustrar graficamente como será o funcionamento do software, como será a
execução de alguma de suas partes e como será a atuação do sistema na realidade
de negócio em que ele está inserido.
4. Para que servem os elementosde raias no diagrama de atividades?
C. Para diferenciar diferentes unidades organizacionais do sistema.
5. Para que e quando você deve criar um diagrama de atividades?
B. Para documentar o aspecto funcional (não estrutural) do software durante a
modelagem do sistema.
Unidade 15 - Teste de Software
1. Qual destas definições representa um teste de software?
A. O teste do software é a investigação do software a fim de fornecer informações
sobre sua qualidade em relação ao contexto em que ele deve operar. Isso inclui o
processo de utilizar o produto para encontrar seus defeitos.
2. O comportamento interno do componente de software trabalha diretamente sobre o
código-fonte do componente de software para avaliar aspectos como teste de condição,
teste de fluxo de dados, teste de ciclos, teste de caminhos lógicos e códigos nunca
executados. Das técnicas apresentadas a seguir, qual avalia esse comportamento interno
do componente de software?
B. Teste de caixa-branca.
3. Qual é a fase de teste em que se testam as menores unidades de software desenvolvidas
(pequenas partes ou unidades do sistema)?
E. Teste de unidade.
4. O que é TDD na Engenharia de Software?
E. O TDD é uma técnica de desenvolvimento de software que se baseia na criação
inicial de testes de software antes mesmo do desenvolvimento.
5. O ciclo de vida de testes de software tem cinco fases: planejamento, preparação,
especificação, execução e entrega. Qual fase tem como objetivo elaborar e revisar os casos
e roteiros de testes?
D. Especificação.
Unidade 16 - Manutenção de Software
1. Qual das descrições apresentadas define melhor a manutenção de software?
A. É o processo de melhoria e otimização de um sistema já desenvolvido, como
também é o reparo dos seus defeitos.
2. Um sistema de controle de vendas foi entregue para o cliente após passar por uma
bateria de testes. O cliente, após dois meses de uso, notou que um dos cálculos realizados
durante a preparação do relatório de vendas diário estava errado. Então, foi solicitada a
manutenção desse software com o objetivo de ajustar esse cálculo. Essa solicitação foi de
qual tipo de manutenção?
B. Manutenção corretiva.
3. Por que é importante que a manutenção do software seja prevista durante o
planejamento da criação?
D. Devido à manutenção de software, geralmente, possuir um custo mais elevado do
que o próprio desenvolvimento.
4. O processo de manutenção de software, em alguns casos, enfrenta problemas que
dificultam todo o processo. Qual é a principal causa desses problemas?
E. A maioria dos problemas com a manutenção do software é causada por
deficiências na maneira como ele foi planejado e desenvolvido.
5. O que significa manutenibilidade?
C. Manutenibilidade pode ser definida como a facilidade com que o software pode ser
entendido, corrigido, adaptado e/ou melhorado.
Unidade 17 - Processos de software (OPENUP,
XP, SCRUM)
1. São princípios dos métodos ágeis:
D. Entrega contínua ao usuário e maior ênfase nas pessoas em detrimento dos
processos.
2. Quais são os princípios da Extreming Programming (XP), método ágil relacionado ao
desenvolvimento de código:
C. Comunicação, Respeito, Coragem, Feedback e Simplicidade
3. Desenvolver um software de forma rápida é uma necessidade nos tempos atuais. Os
métodos ágeis possibilitam que um software seja desenvolvido rapidamente. Analise as
opções abaixo e assinale a que representa um dos princípios desse método.
B. Envolver o cliente.
4. Analise as alternativas abaixo e assinale a alternativa correta sobre Processos de
software.
B. Um processo de software são um conjunto de atividades previsíveis que levam à
produção de software de acordo com a necessidade do cliente.
5. Um processo de software é um conjunto de atividades e resultados associados que
levam à produção de um software.
Dentre essas atividades, existem as fundamentais comuns a todos. Leia as opções abaixo e
assinale as que representam essas atividades comuns.
E. Especificação, projeto, implementação, validação e evolução de software.
Unidade 18 - Métricas de software
1. Métricas de software são formas utilizadas para quantificar o esforço necessário para o
desenvolvimento de um sistema de software.
É correto afirmar que:
D. linhas de código, esforço e memória são consideradas métricas diretas.
2. As métricas de software são amplamente utilizadas para fazer gerenciamento de projetos
de software.
Sendo assim, assinale a alternativa que corresponde à utilidade principal das métricas.
A. Servem para medir a produtividade da equipe e indicar a qualidade do produto.
3. Um processo de métricas de software pode ser caracterizado por cinco atividades.
Assinale a alternativa que corresponde à atividade utilizada para acumular os dados.
A. Coleta.
4. Métricas de software podem ser diretas ou indiretas.
Sendo assim, assinale a alternativa correta.
A. Métricas diretas são aquelas que representam uma quantidade observada, tais
como custo, esforço, número de linhas de código, tempo de execução e número de
defeitos.
5. De acordo com as métricas de software, a análise dos pontos de função é uma forma de
medição das funcionalidades fornecidas por um software sob o ponto de vista:
B.dos usuários.

Continue navegando