Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal do Piauí Centro de Tecnologia Engenharia de Produção 2014.1 Lista de Atividades Introdução Engenharia de Software 1. Qual foi a principal causa do surgimento da Engenharia de software? 2. No levantamento de requisitos para um sistema de controle acadêmico, seguem alguns exemplos de requisitos levantados. Qual deles é um exemplo de requisito não-funcional? A) Os coordenadores de cursos devem poder obter a quantidade de aprovações e reprovações de cada disciplina em um determinado período. B) O tempo de resposta esperado para a emissão de um histórico escolar de um determinado aluno deve ser, no máximo, de um minuto. C) O sistema deve permitir que cada professor realize o lançamento de notas das turmas nas quais lecionou num determinado período. D) A secretaria escolar deve poder atualizar os dados cadastrais de alunos e professores. E) O sistema deve permitir que um aluno realiza a sua inscrição em disciplinas oferecidas em um período letivo. 3. Quais eram os problemas associados à Crise do Software? 4. A crise do software realmente acabou? Comente sobre isso. 5. Sobre testes de software e avaliação de qualidades de testes é INCORRETO afirmar que a) testes podem anunciar a presença de defeitos em um programa e podem demonstrar que não existem defeitos remanescentes. b) teste de aceitação é um processo de teste de usuário no qual o objetivo é decidir se o software é bom o suficiente para ser implantado e usado em seu ambiente operacional. c) testes de desenvolvimento são de responsabilidade da equipe de desenvolvimento de software, enquanto outra equipe deve ser responsável por testar o sistema antes que ele seja liberado para os clientes. d) testes de desenvolvimento incluem testes unitários, nos quais são testados objetos e métodos específicos. e) sempre que possível é recomendado escrever testes automatizados. Os testes são incorporados em um programa que pode ser executado cada vez que uma alteração é feita para um sistema. 6. Faca uma comparação entre a Engenharia de Software e o desenvolvimento de um carro. 7. Defina Engenharia de Software. 8. Durante a fase de validação de requisitos, diferentes tipos de verificação devem ser neles efetuados no documento de requisitos. A verificação que demonstra aos usuários finais e clientes um modelo executável do sistema em questão, possibilitando a experimentação do modelo e verificando se ele atende às suas reais necessidades é chamada de a) verificabilidade. b) geração de casos de teste. c) prototipação. d) revisões de requisitos. e) verificação de consistência. 9. Qual o tripé em que a Engenharia de Software está baseada? 10. O que é um sistema? Quais seus principais componentes? 11. Sobre os métodos ágeis de desenvolvimento, considere: I. Métodos ágeis são métodos de desenvolvimento incremental que se concentram em desenvolvimento rápido, releases frequentes do software, redução de overheads dos processos e produção de códigos de alta qualidade. II. Extreme Programming é um método ágil que integra um conjunto de práticas de programação, como releases frequentes do software, programação em pares, melhorias contínuas do software e participação do cliente na equipe de desenvolvimento. III. Um ponto fraco no método Extreme Programming é a ausência de desenvolvimento automatizado de testes antes da criação de um recurso do programa, como é possível nos métodos ágeis TDD e Scrum. Está correto o que se afirma em a) I e II, apenas. b) I, II e III. c) I e III, apenas. d) II e III, apenas. e) III, apenas. 12. É possível fazer a estimativa de custo e prazo para desenvolvimento de um software com apenas alguns poucos minutos de conversa? Comente sobre isso relacionando sua resposta a outras áreas. 13. O que são os mitos do Software? 14. Há diversos métodos que podem ser utilizados na construção de sistemas de informação. Sobre eles, analise: I. O desenvolvimento é feito em estágios formais, que devem evoluir em sequência e ter resultados definidos. Cada um precisa ser formalmente aprovado antes que o próximo se inicie. É indicado para grandes projetos que exijam especificações formais e rígido controle administrativo sobre cada estágio do desenvolvimento. II. Consiste em desenvolver um sistema experimental de maneira rápida e barata para que os usuários finais interajam com ele e o avaliem. Esse sistema é refinado e aperfeiçoado até que os usuários sintam que ele atende às suas necessidades, podendo ser usado como modelo para criar o sistema final. Os itens I e II referem-se, respectivamente, a) ao Ciclo de Vida de Sistema Tradicional e à Prototipagem. b) ao Modelo Espiral e ao Modelo em Cascata. c) ao Modelo V e ao Modelo de Entrega por Estágios. d) aos Modelos Prescritivos e aos Modelos Ágeis. e) ao Modelo Orientado a Cronograma e ao Modelo Orientado a Teste. 15. Cite alguns mitos relacionados ao gerenciamento, comentando a realidade relacionada aos mitos. 16. Cite alguns mitos relacionados aos clientes, comentando a realidade relacionada aos mitos. 17. O teste de software é destinado a mostrar que um programa faz o que é proposto a fazer e a descobrir seus defeitos antes do uso. O processo de teste tem dois objetivos distintos: 1. Demonstrar ao desenvolvedor e ao cliente que o software atende a seus requisitos. 2. Descobrir situações em que o software se comporta de maneira incorreta, indesejável ou de forma diferente das especificações. Desse modo, é correto afirmar que a) não é objetivo final dos processos de verificação validar os requisitos de especificação que não reflitam os desejos ou necessidades dos clientes. b) os testes podem mostrar a presença de erros e sua ausência. c) o objetivo de todo teste é verificar se ele atende apenas aos requisitos funcionais. d) verificação e validação não são a mesma coisa em relação a testes de sistema. e) os testes podem demonstrar que um determinado software está livre de defeitos. 18. Cite alguns mitos relacionados aos profissionais do desenvolvimento de software, comentando a realidade relacionada aos mitos. 19. Quais são as principais fases do ciclo de vida de um produto de software? 20. Sobre testes de software e avaliação de qualidades de testes é INCORRETO afirmar que a) testes podem anunciar a presença de defeitos em um programa e podem demonstrar que não existem defeitos remanescentes. b) teste de aceitação é um processo de teste de usuário no qual o objetivo é decidir se o software é bom o suficiente para ser implantado e usado em seu ambiente operacional. c) testes de desenvolvimento são de responsabilidade da equipe de desenvolvimento de software, enquanto outra equipe deve ser responsável por testar o sistema antes que ele seja liberado para os clientes. d) testes de desenvolvimento incluem testes unitários, nos quais são testados objetos e métodos específicos. e) sempre que possível é recomendado escrever testes automatizados. Os testes são incorporados em um programa que pode ser executado cada vez que uma alteração é feita para um sistema. 21. Qual a ligação entre Ciclo de Vida e Processo de Software? 22. Qual a definição para Processo de Software? 23. Sobre Análise de Requisitos em Engenharia de Software, julgue as afirmativas a seguir e assinale a alternativa correta. I. Resulta na especificação das características operacionais do software. II. Indica as interfaces do software comoutros elementos do sistema. III. Estabelece restrições a que o software deve satisfazer. a) Apenas as afirmativas I e II são corretas. b) Apenas as afirmativas II e III são corretas. c) Todas as afirmativas são corretas. d) Apenas as afirmativas I e III são corretas. e) Nenhuma das afirmativas é correta. 24. Quais são os principais subprocessos (também conhecidos como fluxos ou disciplinas) ligados ao desenvolvimento de software? 25. Descreve o modelo de ciclo de vida denominado Codifica-Remenda. 26. Dentre as atividades típicas de um processo de desenvolvimento de software, aquela em que se determina como o sistema funcionará para atender aos requisitos, de acordo com os recursos tecnológicos existentes, é denominada a) análise. b) projeto. c) implementação. d) testes. e) implantação. 27. Quais são os problemas relacionados ao modelo de ciclo de vida em cascata? 28. Como podemos relacionar o modelo em cascata e o modelo em espiral? 29. Qual a grande diferença entre o modelo em espiral e o modelo incremental? 30. Os métodos ágeis são baseados no manifesto ágil. Quais são os conceitos chaves desse manifesto?
Compartilhar