Buscar

Prova 1 - Engenharia de Software II (com respostas)

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

(X) Prova ( ) Prova Semestral 
 ( ) Exercícios ( ) Segunda Chamada 
 ( ) Prova Modular ( ) Prova de Recuperação 
 ( ) Prática de Laboratório 
 ( ) Exame Final/Exame de Certificação 
 ( ) Aproveitamento Extraordinário de Estudos 
Nota: 
 
 
 
 
Disciplina: Engenharia de Software II Turma: 
Professor: Jucilane Rosa Citadin Data: 15/04/16 
 
Aluno (a): 
 
RQ 0501 Rev. 14 
Página 1 de 4 
1. (1,0 Ponto) Em 2001, alguns especialistas que vinham discutindo formas modernas de 
desenvolver software, estabeleceram a Aliança Ágil, e publicaram um Manifesto Ágil. O 
que diz este Manifesto? 
Indivíduos e interação 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 
 
2. (3,0 Pontos) Por trás do Manifesto Ágil temos ainda 12 Princípios. Descreva com suas 
palavras: 
1) O primeiro diz respeito à prioridade. Qual 
é ela? 
é satisfazer o cliente, através da 
entrega adiantada e contínua de 
software de valor 
2) O segundo diz respeito às mudanças. O 
que fazer com elas? 
Processos ágeis se adequam a 
mudanças, para que o cliente possa 
tirar vantagens competitivas. 
3) O terceiro diz respeito às entregas. Com 
que frequência deve ocorrer? 
Entregar software funcionando com 
freqüencia, na escala de semanas 
até meses, com preferência aos 
períodos mais curtos 
4) O quarto diz respeito à integração 
negócios x desenvolvedores. O que se 
recomenda? 
devem trabalhar em conjunto e 
diariamente, durante todo o curso 
do projeto 
5) O quinto diz respeito à equipe. Como 
deve ser a equipe? 
 De indivíduos motivados. Dando a 
eles o ambiente e suporte 
necessário, e confiar que farão seu 
trabalho 
6) O sexto diz respeito à comunicação da 
equipe. Como ela deve ser? 
através de uma conversa face a face 
7) O sétimo diz respeito à medida do 
progresso. Que medida é essa? 
Software funcional é a medida 
primária de progresso 
8) O oitavo diz respeito ao desenvolvimento 
sustentável. O que isso significa? 
Os patrocinadores, desenvolvedores 
e usuários, devem ser capazes de 
manter um ritmo constante 
indefinidamente 
RQ 0501 Rev. 14 
Página 2 de 4 
9) O nono diz respeito ao aumento da 
agilidade. O que se recomenda para 
isso? 
Contínua atenção à excelência 
técnica e bom design 
10) O décimo diz respeito à simplicidade. O 
que se recomenda quanto a isso? 
Simplicidade é essencial (keep it 
simple) 
11) O décimo-primeiro diz respeito também 
às equipes. O que se recomenda quanto 
ao líder? 
times auto-organizáveis e um líder 
facilitador 
12) O décimo-segundo diz respeito também 
às equipes. O que deve fazer a equipe 
periodicamente? 
Em intervalos regulares, o time 
reflete sobre como se tornar mais 
eficaz (reunião de retrospectiva 
Scrum) 
 
3. (1,0 Ponto) Os relatórios CHAOS (Standish Group) são publicados a cada ano desde 
1994 e são uma “fotografia” da indústria de desenvolvimento de software em todo o 
mundo. O CHAOS Report 2015, incluiu uma definição melhorada do sucesso 
considerando a Resolução Moderna (Modern Resolution) de sucesso como estar no 
prazo, no orçamento e alcançar um resultado satisfatório. As tabelas a seguir resumem 
alguns resultados: 
Resolução Moderna para Todos os projetos 
 2011 2012 2013 2014 2015 
Sucesso 29% 27% 31% 28% 29% 
Desafiado 49% 56% 50% 55% 52% 
Falhou 22% 17% 19% 17% 19% 
 
Resultados por tamanho do projeto (2011-2015) 
 
Muito 
Grande 
Grande Médio Moderado Pequeno 
Sucesso 2% 6% 9% 21% 62% 
Desafiado 7% 17% 26% 32% 16% 
Falhou 17% 24% 31% 17% 11% 
 
Comparação Ágil x Cascata (2011-2015) 
 Método 
Todos os 
projetos 
(tamanhos) 
Grande Médio Pequeno 
Sucesso 
Ágil 39% 18% 27% 58% 
Cascata 11% 3% 7% 44% 
Desafiado 
Ágil 52% 59% 62% 38% 
Cascata 60% 55% 68% 45% 
Falhou 
Ágil 9% 23% 11% 4% 
Cascata 29% 42% 25% 11% 
 
 
RQ 0501 Rev. 14 
Página 3 de 4 
Os resultados indicam que ainda há muito trabalho a ser feito em torno de alcançar 
resultados bem sucedidos em projetos de desenvolvimento de software. Com base nos 
resultados podemos afirmar que: 
I. A maioria dos projetos enfrenta algum tipo de desafio. 
II. À medida que aumenta o tamanho do projeto, maiores as chances de falhar. 
III. Utilizar métodos ágeis aumenta a chance de sucesso do projeto, 
independente de seu tamanho. 
 
(a) Todas as afirmações são verdadeiras. 
(b) Somente I e II são verdadeiras. 
(c) Somente I e III são verdadeiras. 
(d) Somente II e III são verdadeiras. 
(e) Todas as afirmações são falsas. 
 
4. (1,0 Ponto) Em relação ao SCRUM, colocamos em prática no miniprojeto o ciclo do processo 
deste framework. Descreva com suas palavras quais os papéis (e responsabilidades), eventos 
(cerimônias) e artefatos são gerados no processo. 
Papéis 
PO (Product Owner) – é quemm gerencia os stakeholders, a visão do produto e dá o aceite 
final da sprint 
Scrum Master – é quem promove a cultura scrum na equipe, realiza a daily scrum e facilita os 
trabalhos da equipe 
Time Desenv. – responsável pelo desenvolvimento e entrega de software de valor 
 
Eventos 
Sprint Planning – Definição de escopo e estimativas 
Daily Scrum – reunião diária de trabalho 
Revisão Sprint – entrega da Sprint, aceite do PO 
Retrospectiva Sprint – revisão do trabalho da equipe para melhorar sempre 
 
Artefatos 
Product Backlog – lista de requisitos para melhorar o produto 
Sprint Backlog – lista de resquisitos para a sprint em questão 
Entrega – incremento de software 
 
 
5. (1,0 Ponto) Em relação ao reuso de software, devemos fazer uso de todos os recursos 
existentes que forem possíveis (Sommerville, 2011). Existem várias técnicas de reuso, entre 
elas o uso de frameworks e uso de produtos COTS. Defina e dê um exemplo de cada um 
deles (framework e COTS). 
Framework é um conjunto integrado de artefatos de software (como classes, objetos e 
componentes) que colaboram para fornecer uma arquitetura reusável para uma família de 
aplicações relacionadas. Exemplo: .Net, Java Bens, Eclipse 
 
COTS – Commercial Off-The-Shelf systems (prateleira) - é um sistema de software que pode 
ser adaptado as necessidades de diferentes clientes sem alterar o código-fonte do sistema. 
Exemplo: Servidor de email, servidor web, SGBD, APIs de aplicações... 
 
 
6. (1,0 Ponto) Em relação à Engenharia de Software baseada em Componentes (CBSE- 
Component-Based Software Engineering) temos o desenvolvimento de componentes para 
reuso e o desenvolvimento com reuso de componentes. O que é um componente? Quais suas 
características? 
RQ 0501 Rev. 14 
Página 4 de 4 
Um componente é uma entidade executável independente que pode ser constituída por um 
ou mais objetos executáveis, passível de composição. 
As características são a padronização, independência, ser passível de composição, 
implantável e documentado. 
 
 
 
 
 
7. (1,0 Ponto) No processo CBSE de desenvolvimento com reuso, uma importante atividade é a 
identificação de componentes. Esta atividade se desdobra em outras três atividades, quais são 
elas? 
 
A busca de componentes (fornecedores confiáveis), a seleção de componentes (achar 
componentes que atendam os requisitos) e a validação dos componentes (funcionalidades). 
 
 
8. (1,0 Ponto) Em relação ao tipo de composição de componentes, temos três tipos: Sequencial, 
Hierárquica e Aditiva. Em alguns casos é necessário termos um códigoespecialmente escrito 
para “colar” os componentes (glue code). Em que caso não se usa o glue code e por quê? 
 
Na hierárquica, porque neste caso um componente chama o outro diretamente, sem a 
necessidade de códigos adicionais.

Continue navegando