Baixe o app para aproveitar ainda mais
Prévia do material em texto
Engenharia de Software Simulado para a 1ª Avaliação Bimestral Professor: Danilo Giacobo - RESPOSTAS 1. Com relação à engenharia de software, julgue os itens seguintes. Engenharia de software não está relacionada somente aos processos técnicos de desenvolvimento de softwares, mas também a atividades como gerenciamento de projeto e desenvolvimento de ferramentas, métodos e teorias que apoiem a produção de softwares. ( x ) Certo ( ) Errado A engenharia de software engloba processos, métodos e ferramentas. Um de seus focos é a produção de software de alta qualidade a custos adequados. ( x ) Certo ( ) Errado A engenharia de software, disciplina relacionada aos aspectos da produção de software, abrange somente os processos técnicos do desenvolvimento de software. ( ) Certo ( x ) Errado 2. A Engenharia de Software: a) é uma área da computação que visa abordar de modo sistemático as questões técnicas e não técnicas no projeto, implantação, operação e manutenção no desenvolvimento de um software. b) consiste em uma disciplina da computação que aborda assuntos relacionados a técnicas para a otimização de algoritmos e elaboração de ambientes de desenvolvimento. c) trata-se de um ramo da TI que discute os aspectos técnicos e empíricos nos processos de desenvolvimento de sistemas, tal como a definição de artefatos para a modelagem ágil. d) envolve um conjunto de itens que abordam os aspectos de análise de mercado, concepção e projeto de software, sendo independente da engenharia de um sistema. e) agrupa as melhores práticas para o concepção, projeto, operação e manutenção de artefatos que suportam a execução de programas de computador, tais como as técnicas de armazenamento e as estruturas em memória principal. 3. No que se refere a engenharia de software, aos modelos de ciclo de vida e aos requisitos funcionais e não funcionais, julgue o item a seguir. As fases do modelo de ciclo de vida em cascata são demonstração, análise de requisitos, pré-projeto, desenvolvimento, projeto básico, homologação, implantação e manutenção, respectivamente. ( ) Certo ( x ) Errado 4. Considere: “é uma disciplina que se ocupa de todos os aspectos da produção de software, desde os estágios iniciais de especificação do sistema até a manutenção desse sistema, depois que ele entrou em operação. Seu principal objetivo é fornecer uma estrutura metodológica para a construção de software com alta qualidade”. A definição refere-se a) ao ciclo de vida do software. b) à programação orientada a objetos. c) à análise de sistemas. d) à engenharia de requisitos. e) à engenharia de software. 4. Sobre a engenharia de software, considere: I. Atualmente todos os problemas na construção de software de alta qualidade no prazo e dentro do orçamento foram solucionados. II. Ao longo dos últimos 50 anos, o software evoluiu de um produto de indústria para um ferramental especializado em solução de problemas e análise de informações específicas. III. Todo projeto de software é iniciado por alguma necessidade do negócio. IV. O intuito da engenharia de software é fornecer uma estrutura para a construção de software com alta qualidade. São verdadeiras as: a) III e IV, somente. b) II e III, somente. c) I, II e IV, somente. d) II, III e IV, somente. e) I, II, III e IV. 6. O modelo de ciclo de vida em cascata é considerado o paradigma mais antigo da engenharia de software. Apesar de apresentar diversas desvantagens em relação ao modelo incremental, pode ser útil principalmente em situações que: a) a equipe de desenvolvimento é grande. b) os requisitos são fixos. c) o prazo é curto. d) o cliente é indeciso. e) os requisites são instáveis. 7. Entre os desafios enfrentados pela engenharia de software estão: lidar com sistemas legados, atender à crescente diversidade e atender às exigências quanto a prazos de entrega reduzidos. ( x ) Certo ( ) Errado 8. A Engenharia de Software: a) não tem como método a abordagem estruturada para o desenvolvimento de software, pois baseia-se exclusivamente nos modelos de software, notações, regras e técnicas de desenvolvimento. b) se confunde com a Ciência da Computação quando ambas tratam do desenvolvimento de teorias, fundamentações e práticas de desenvolvimento de software. c) tendo como foco apenas o tratamento dos aspectos de construção de software, subsidia a Engenharia de Sistemas no tratamento dos sistemas baseados em computadores, incluindo hardware e software. d) tem como foco principal estabelecer uma abordagem sistemática de desenvolvimento, através de ferramentas e técnicas apropriadas, dependendo do problema a ser abordado, considerando restrições e recursos disponíveis. e) segue princípios, tais como, o da Abstração, que identifica os aspectos importantes sem ignorar os detalhes e o da Composição, que agrupa as atividades em um único processo para distribuição aos especialistas. 9. Considere o seguinte problema encontrado em projetos de desenvolvimento de software: Projetos reais raramente seguem um fluxo sequencial. Apesar de um modelo linear poder acomodar a iteração, ele o faz indiretamente. Como resultado, as modificações podem causar confusão à medida que a equipe de projeto prossegue. Esse é um dos problemas que são algumas vezes encontrados quando é aplicado o modelo de desenvolvimento. a) em cascata. b) ágil. c) espiral. d) incremental. e) unificado. 10. O processo de desenvolvimento de software conhecido como modelo em espiral (Modelo Espiral de Boehm), divide cada volta da espiral em quatro setores, sendo um destes setores denominado de: a) gerenciamento de configuração e mudança. b) setor administrativo. c) definição de objetivos. d) refatoração. e) estudos de caso. 11. A metodologia de desenvolvimento de software desenvolvida pela marinha norte-americana nos anos 60 para permitir o desenvolvimento de softwares militares complexos, onde o projeto segue uma série de passos ordenados e, ao final de cada fase, a equipe de projeto finaliza uma revisão, onde o desenvolvimento não continua até que o cliente esteja satisfeito com os resultados é: a) A Metodologia RUP b) A Metodologia "Codifica-Corrige" c) A Metodologia de Prototipagem Evolutiva d) A Metodologia de Entregas por Estágios e) A Metodologia de Desenvolvimento em Cascata 12. Sobre Modelos de Processos de Softwares, analise as assertivas e assinale a alternativa que aponta a (s) correta (s). I. Um Modelo de Processo de Software é uma representação simplificada de um processo de software. II. O Modelo de Processo de Software, Modelo em Pirâmide, considera as atividades fundamentais do processo de especificação, desenvolvimento, validação e evolução. III. Desenvolvimento incremental é um Modelo de Processo de Software baseado na existência de um número significativo de componentes reusáveis. O processo de desenvolvimento do sistema concentra-se na integração desses componentes em um sistema já existente em vez de desenvolver um novo sistema a partir do zero. IV. O Modelo em cascata foi o segundo Modelo de Processo de Software a ser publicado, ele foi derivado de processos mais gerais da engenharia de sistemas (ROYCE, 1970). Por causa do encadeamento entre uma fase e outra, esse modelo possui o nome Modelo rotativo. a) Apenas I. b) Apenas I e II. c) Apenas I e IV. d) Apenas II, III e IV. e) I, II, III e IV.13. Com relação a processos de desenvolvimento de software, julgue o item abaixo. A realização de protótipos descartáveis, com o objetivo de compreender os requisitos do cliente e desenvolver melhor definição do produto, faz parte do modelo de desenvolvimento em cascata. ( ) Certo ( X ) Errado 14. No modelo de desenvolvimento de software iterativo, as atividades do processo são realizadas de maneira sequencial, iniciando-se uma após o término da outra, e com muitas interações entre as partes do sistema que já existem. ( ) Certo ( X ) Errado 15. No modelo em cascata, o projeto segue uma série de passos ordenados. Ao final de cada projeto, a equipe de projeto finaliza uma revisão. O desenvolvimento continua e, ao final, o cliente avalia a solução proposta. ( ) Certo ( X ) Errado 16. No modelo de desenvolvimento de software em espiral, cada loop na espiral representa: a) a necessidade de retornar ao início da fase em que se encontra. b) um processo de reengenharia. c) uma disciplina de software. d) uma fase do processo de software. e) uma atividade paralela. 17. O modelo em espiral é um modelo de processos de software que reúne a natureza iterativa da prototipação com os aspectos sistemáticos e controlados do modelo sequencial linear. ( ) Certo ( X ) Errado 18. No modelo sequencial linear, os produtos do projeto são entregues somente após a validação do produto. ( ) Certo ( X ) Errado 19. O desenvolvimento com base em componentes é uma abordagem típica da programação estruturada e tem foco na produção de bibliotecas de software reutilizáveis. ( ) Certo ( X ) Errado 20. O uso de metodologias de desenvolvimento de sistemas tem como objetivo garantir que: a) a equipe de desenvolvimento siga corretamente a estrutura de banco de dados orientado a objeto, eliminando etapas de análise. b) o código gerado pelo desenvolvedor implemente corretamente as definições de processamento, entrada e saída, considerando os recursos de rede como principal requisito. c) o modelo relacional desenvolvido represente estritamente as funcionalidades até, no máximo, a segunda forma normal. d) o software a ser desenvolvido seja realizado conforme os requisitos de sistema, no prazo solicitado e com a qualidade desejada. e) o software, depois de desenvolvido, não possa sofrer alteração em sua estrutura nem em seu código para não serem modificados os requisitos. 21. Quanto à aplicação de uma Metodologia de Desenvolvimento de Sistemas pode-se afirmar que, EXCETO: a) Busca atender os requisitos de negócio estabelecidos para o projeto. b) Não se aplica a sistemas a serem desenvolvidos com a Análise Orientada a Objetos, pois, para esse fim já há a UML. c) Busca garantir a qualidade do produto gerado no que se refere à flexibilidade para incorporação de evoluções do negócio. d) Possibilita o acompanhamento / gerenciamento do processo passo a passo. e) Disponibiliza documentação como um subproduto natural da aplicação da metodologia. 22. Que paradigma da Engenharia de Software é sequencial e sistemático, iniciando no nível de sistemas e se estendendo pela análise, projeto, codificação, teste e manutenção? a) Espiral b) Clássico c) Prototipação d) Técnicas de quarta geração e) Iterativo e incremental 23. No modelo iterativo, divide-se o desenvolvimento em iterações. A cada iteração, podem ser acrescentadas novas funcionalidades ao software. Uma iteração parte do estado no qual se encontravam os artefatos ao término da iteração anterior e resulta em um incremento. Uma iteração pode ter disciplinas como captura de requisitos, análise, projeto, implementação e teste. ( X ) Certo ( ) Errado 24. O desenvolvimento ágil de sistemas consiste em uma linguagem de modelagem que permite aos desenvolvedores visualizarem os produtos de seu trabalho em gráficos padronizados. ( ) Certo ( X ) Errado 25. Kanban é um método de desenvolvimento de software que tem como uma de suas práticas o gerenciamento do fluxo de trabalho, que deve ser monitorado, medido e reportado a cada estado do fluxo. ( X ) Certo ( ) Errado 26. Em virtude de as metodologias ágeis gerarem excessiva documentação, a gestão do conhecimento depende diretamente dos programadores envolvidos no projeto. ( ) Certo ( X ) Errado 27. O XP (extreme programming) é um método ágil, que preconiza a criação de um caso de teste unitário antes do início da codificação. ( X ) Certo ( ) Errado
Compartilhar