apostila (1)
74 pág.

apostila (1)


DisciplinaEx Metologia Cientifica39 materiais198 seguidores
Pré-visualização22 páginas
Para projetos de software não é diferente. Relacione as principais ques-
tões que se deve considerar no estudo de viabilidade de um projeto de software.
11) Cite algumas técnicas de levantamento de requisitos estudadas na disciplina.
Engenharia de Softwares e Engenharia de Requisitos 
63
Considerações Finais
Caro aluno, essa disciplina introduziu muitos aspectos essenciais para a prática da Engenharia de Softwa-
re. Vimos que o processo de desenvolvimento de software envolve atividades, recursos e produtos.
Vimos que um modelo de processo é útil para orientar o comportamento quando você estiver trabalhan-
do em grupo. Modelos de processo detalhados nos dizem como coordenar e colaborar com nossos colegas, 
enquanto se projeta e se contrói um sistema. Os modelos também mostram a cada membro da equipe quais 
atividades ocorrem, quando e por quem elas são realizadas, de modo a tornar clara a divisão de tarefas.
Vimos que os requisitos podem ser modificados até mesmo enquanto analisamos o problema e desenvol-
vemos a solução. E que a solução deve estar bem documentada e ser flexível, devendo-se documentar as 
suposições e os algoritmos utilizados, de tal modo que seja fácil mudá-los posteriormente.
Possivelmente, caro aluno, você fará grande parte do seu trabalho como membro de uma equipe de 
desenvolvimento maior. Como vimos nessa disciplina, o desenvolvimento de software envolve análise de 
requisitos, projeto, implementação, teste, gerência de configuração, garantia da qualidade, dentre outras 
atividades. Você e outras pessoas de sua equipe podem desempenhar vários papéis, e o sucesso do projeto 
depende em larga escala da comunicação e coordenação entre os membros da equipe. 
Vimos também que você pode ajudar no sucesso de seu projeto, selecionando um processo de desen-
volvimento apropriado ao tamanho da equipe, ao nível de risco do projeto e ao domínio do aplicativo, bem 
como utilizando ferramentas bem integradas que apóiem o tipo de comunicação necessária ao seu projeto. 
No andamento do nosso curso, vários aspectos fundamentais estudados nesta disciplina serão abordados 
em maiores detalhes, proporcionando a você, caro aluno, um entendimento e um conhecimento maior dos 
conceitos, métodos, técnicas e ferramentas da Engenharia de Software que auxiliam na obtenção de um 
produto de qualidade, respeitando os prazos, custos e escopo estabelecidos.
Prof. Marcelo Pintaud e Profa. Elisamara
Engenharia de Softwares e Engenharia de Requisitos 
64
Respostas Comentadas dos Exercícios
Capítulo 1
1) Qual das questões abaixo não é mais uma das grandes preocupações de um engenheiro 
de software?
d) Por que hardware é tão caro?
2) Software é um produto que pode ser manufaturado usando as mesmas tecnologias usadas 
para outros artefatos de engenharia.
b) Falso
3) Software deteriora-se ao invés de se desgastar porque:
c) Mudanças frequentes aumentam a probabilidade de introduzir erros no software
4) Atividades \u201cguarda-chuva\u201d de engenharia de software são aplicadas somente durante as 
fases iniciais do desenvolvimento de software:
b) Falso
5) O que caracterizou a chamada \u201ccrise do software\u201d?
A \u201ccrise do software\u201d foi um termo criado para descrever as dificuldades enfrentadas no desenvolvimento 
de software no final da década de 1960. A complexidade dos problemas, a ausência de técnicas bem estabe-
lecidas e a crescente demanda por novas aplicações começavam a se tornar um problema sério. Essa crise 
teve como origem a introdução de computadores \u201cmais poderosos\u201d. Mas a caracterização da crise teve como 
ponto fundamental o fato de que os softwares eram entregues fora do prazo, com custos mais elevados do 
que os projetados inicialmente e com uma qualidade aquém do esperado.
6) Conforme vimos, Engenharia de Software é uma disciplina da Engenharia que se ocupa 
de todos os aspectos da produção de software. Seu principal objetivo é fornecer uma estrutura 
metodológica para a construção de software com alta qualidade. O que é necessário para que 
isso aconteça?
 D aplicar teorias, métodos e ferramentas nas situações apropriadas nas diversas etapas do desenvolvi-
mento
 D trabalhar de acordo com as restrições organizacionais e financeiras procurando soluções que estejam 
dentro dessas restrições
 D gerenciar os projetos de software para que o resultado final esteja dentro do escopo, custo e prazos 
planejados
 D adotar uma abordagem sistemática e organizada (maneira mais eficaz de produzir software de alta 
qualidade)
7) Normalmente, para o leigo, software se constitui no \u201ccódigo fonte + código executável\u201d. 
Vimos que para a Engenharia de Software, o conceito de software é algo mais abrangente. 
Como Pressman conceitua software?
Engenharia de Softwares e Engenharia de Requisitos 
65
\u201cInstruções (programas de computador) que, quando executadas, produzem a função e o desempenho 
desejados; (2) Estruturas de dados que possibilitam que os programas manipulem adequadamente a infor-
mação; (3) Documentos que descrevem a operação e o uso dos programas\u201d.
8) O processo de desenvolvimento do software apresenta diferenças fundamentais em rela-
ção ao hardware. Cite algumas dessas diferenças.
 D O processo criativo do hardware gera algo físico (por exemplo, placas de circuitos). O desenvolvimento 
de software resulta em um elemento pertencente a um sistema lógico, intangível;
 D O software geralmente é desenvolvido sob medida, ao contrário do hardware, no qual o projetista tem 
acesso a componentes existentes que executam tarefas definidas. 
 D O projetista do software nem sempre terá acesso a módulos prontos para utilização e quando o faz, 
pode elevar o risco do produto devido a questões de segurança;
 D Os custos do software estão concentrados no desenvolvimento e não no processo de manufatura. Isto 
significa que não pode ser gerido como projeto de manufatura;
 D Ao longo do tempo, o produto de software não se desgasta, mas se deteriora em função da introdução 
de erros oriundos de atividades de manutenção ou evoluções implícitas no processo que devem ser 
reconsideradas no modelo original.
9) Faça um esboço das curvas de taxa de falhas do hardware e do software. Explique as dife-
renças entre as curvas.
Hardware: Software:
Diferenças: no caso do hardware, há um alto índice de falhas no início do seu ciclo de vida originadas de 
defeitos de fabricação e projeto; depois os defeitos são corrigidos dando estabilidade nas falhas; no final do 
ciclo de vida do produto podem surgir problemas relacionados ao desgaste do uso. Diferentemente da curva 
teórica de falhas do hardware, o software não sofre processos de envelhecimento como o hardware, pois 
o software não é algo físico. No início do ciclo de vida do software, há problemas que serão ajustados no 
decorrer do desenvolvimento e se estabilizarão gerando uma tendência de achatamento da curva; durante o 
processo de refinamento do produto ou mudanças aumenta-se a probabilidade de inserção de novos erros, 
gerando picos na curva de falhas; as sucessivas alterações do software tendem a introduzir mais erros antes 
da estabilização dos erros de alterações anteriores, ocasionando a tendência crescente do índice de falhas.
Engenharia de Softwares e Engenharia de Requisitos 
66
Capítulo 2
1) Processos de software podem ser construídos de modelos pré-existentes objetivando se 
adequar às necessidades de um determinado projeto
a) Verdadeiro
2) A essência da prática da engenharia de software pode ser resumida em compreender o 
problema, planejar a solução, executar o plano e examinar o resultado.
a) Verdadeiro
3) Qual dos itens listados abaixo não se constitui numa das camadas da engenharia de sof-
tware?
b) Manufatura
4) Cite que tipos de manutenção um software pode sofrer.
 D Manutenção Corretiva: modifica o