Prévia do material em texto
Prova Impressa GABARITO | Avaliação Final (Objetiva) - Individual (Cod.:765728) Peso da Avaliação 3,00 Prova 59473644 Qtd. de Questões 12 Acertos/Erros 9/3 Nota 9,00 Métricas de Software possibilitam realizar uma das atividades mais fundamentais do processo de gerenciamento de projetos: o planejamento. As tarefas de estimativa são executadas durante todo projeto de desenvolvimento, sendo na fase de iniciação e elaboração sua maior atuação, pois é nessas fases que se determinará quanto de dinheiro, esforço, recursos e tempo de duração serão necessárias para criar um sistema. Com base nisso, avalie as asserções a seguir e a relação proposta entre elas: I- A estimativa de custo faz parte da engenharia de software. PORQUE II- Na engenharia de software, o custo principal do projeto é seu esforço, devendo-se dimensionar as atividades de cada pessoa e calcular as horas de trabalho baseadas nos requisitos levantados no início do projeto até o seu término. Assinale a alternativa CORRETA: A As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira. B As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira. C A primeira asserção é uma proposição falsa, e a segunda é uma proposição verdadeira. D As duas asserções são proposições falas. Segundo Sommerville (2003), uma métrica de software é qualquer tipo de medição que se refira a um sistema de software, processo ou documentação relacionada. Essa métrica tem como principal objetivo especificar as funções de coleta de dados de avaliação e desempenho, atribuindo essas responsabilidades a toda a equipe envolvida no projeto e analisando os históricos dos projetos anteriores. Uma área fundamental para a Engenharia de software, pois possibilita realizar um correto planejamento em projetos de desenvolvimento de software. A respeito dos quatro processos principais para o gerenciamento de cursos em um projeto de software, assinale a alternativa CORRETA: FONTE: SOMMERVILLE, I. Engenharia de Software. 6. ed. São Paulo: Addison Wesley, 2003. A Plano de Custos Organizacionais; Estimar Tarefas; Definir Equipe; e Controlar Custos. B Planejar Gerenciamento dos Orçamentos; Estimar Orçamentos; Definir custos e Controlar Custos. C Planejar Gerenciamento dos Custos; Estimar Custos; Definir Custos e Manipular Custos. VOLTAR A+ Alterar modo de visualização 1 2 D Planejar Gerenciamento dos Custos; Estimar Custos; Definir Orçamento e Controlar Custos. A aplicação da Engenharia de Software segue uma abordagem bem completa, onde são recomendados caminhos como referência para sua correta e benéfica utilização. Sobre os princípios da Engenharia de Software, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Flexibilidade: diz respeito tanto ao processo como ao produto do software. O produto sofre constantes mudanças, pois, em muitos casos, a aplicação é desenvolvida incrementalmente enquanto seus requisitos ainda não foram totalmente entendidos. ( ) Rastreabilidade: padronizar o processo de construção do software para facilitar o entendimento e manutenção. ( ) Padronização: modo de saber o que já foi feito e o que ainda não foi feito. ( ) Desenvolvimento iterativo: toda a equipe é engajada na solução. Exemplo: SCRUM. Assinale a alternativa que apresenta a sequência CORRETA: A F - F - V - V. B V - V - V - F. C F - V - F - V. D V - F - F - V. Os modelos de processo de ciclo de vida durante o desenvolvimento do software podem ser, por exemplo, linear, incremental ou iterativo, logo, compreendê-los poderá auxiliar na adoção de um dos modelos mais adequados à realidade e necessidade da organização. Referente aos modelos mais conhecidos, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O modelo incremental é um modelo de desenvolvimento de software que combina elementos do modelo em cascata com a filosofia da prototipação, em que são definidos incrementos na qual o software será desenvolvido, bem como da entrega para o cliente. ( ) O modelo baseado em componentes permite agrupar rotinas relacionadas de forma a montar componentes que possam ser reutilizados em diversos módulos do sistema. ( ) A prototipação fornece o potencial para o desenvolvimento rápido de versões incrementais do software e desenvolve uma visão da sua interface e depois reaproveita as telas para configurar e programar o restante do produto de software. ( ) O modelo espiral é dividido em fase de obtenção de requisitos, projeto rápido, construção do protótipo, avaliação o protótipo e refinamento do protótipo. Assinale a alternativa que apresenta a sequência CORRETA: A F - F - V - F. B V - F - F - V. C F - V - V - F. D V - V - V - F. 3 4 A partir dos anos 60, a Crise de Software explodiu pelo motivo de que progressivamente aumentou a complexidade dos softwares. A Crise de Software referiu-se a um conjunto de problemas encontrados no desenvolvimento de software e na etapa de manutenção. Sobre as principais causas da Crise de Software, analise as seguintes sentenças: I- As estimativas de prazo e de custo frequentemente eram imprecisas e não existiam equipes para realizar um planejamento do desenvolvimento de software, o que influenciava diretamente em constantes desvios no prazo de entrega e no alto custo de produção do software. II- Desagrado do cliente com o sistema concluído. Os projetos deveriam ser ágeis e adaptáveis, porém, eram desenvolvidos softwares com vaga indicação das exigências do cliente, evidenciando o não cumprimento dos requisitos preestabelecidos. III- A alta qualidade de software envolvia manutenção, que devorava os prazos e orçamentos destinados ao software. Neste período, a facilidade de manutenção não foi enfatizada como um critério importante. Agora, assinale a alternativa CORRETA: A As sentenças I e II estão corretas. B As sentenças II e III estão corretas. C As sentenças I e III estão corretas. D Somente a sentença III está correta. Um método ágil pode trazer muitos benefícios para uma organização, devido às crescentes pressões do mercado por inovação, produtividade, flexibilidade e melhoria na qualidade dos projetos de desenvolvimento de software, a fim de satisfazer seus clientes. Sobre os principais e mais importantes métodos ágeis utilizados nas organizações, assinale a alternativa CORRETA: A OpenUP, CMMI, Adaptative Software Development (ASD), Dynamic System Development Method (DSDM), Crystal Clear, Lean Development, ISO 27001 e Scrum. B Scrum, Extreme Programming, Adaptative Software Development (ASD), Dynamic System Development Method (DSDM), Crystal Clear e Feature-Driven Development (FDD). C Extreme Programming, COCOMO II, Lean Development, Adaptative Software Development (ASD), Dynamic System Development Method (DSDM), OpenUP e Feature-Driven Development (FDD). D CMMI, Adaptative Software Development (ASD), Dynamic System Development Method (DSDM), MPSBr, Extreme Programming e ISO 27001. A Governança de TI é uma estrutura de relações e procedimentos para apontar e controlar o emprego de TI numa organização, a fim de alcançar seus objetivos, adicionando valor, compensando riscos com relação ao retorno sobre TI e seus processos. Elementos da Governança de TI objetivam projetar, ponderar um conjunto de princípios para governar as normas e as funções da TI. Um modelo de Governança de TI constitui-se de estruturas, processos e mecanismos relacionais que são contingentes a uma série de fatores internos e externos à organização. Sobre as áreas de foco da Governança de TI, analise as sentenças a seguir: I- Alinhamento estratégico, vinculação entre TI e negócios (planejamento e operações). É 5 6 7 II- É um conjunto de práticas, padrões e relacionamentos estruturados, assumidos por executivos, gestores, técnicos e usuários de TI de uma organização com a finalidade de garantir controles efetivos, ampliar os processos de segurança e minimizar os riscos.III- É a área que auxilia os executivos e os gestores no planejamento, implantação, controle e monitoramento de programas e projetos de governança sob os aspectos operacionais e suas aplicações legais. IV- Análise de guarda: inclui as práticas para gerenciar serviços de TI, utilizando para isso um framework de arquitetura orientada a serviços (SOA). Agora, assinale a alternativa CORRETA: A As sentenças II, III e IV estão corretas. B Somente a sentença II está correta. C As sentenças I e IV estão corretas. D As sentenças I, II e III estão corretas. Existem 12 princípios da Engenharia de Software. Uma das maneiras de lidar com a complexidade é subdividir o processo em atividades específicas, diminuindo a complexidade do problema, provavelmente atribuídas a especialistas de diferentes áreas. A decomposição das atividades leva, também, à separação das preocupações ou responsabilidades. Esse conceito trata de qual princípio? A Formalidade. B Abstração. C Decomposição. D Generalização. Cada vez mais, os métodos ágeis têm despertado o interesse da comunidade de Engenharia de Software como uma alternativa para o desenvolvimento de sistemas de uma maneira mais rápida, eficiente e que atenda às reais necessidades dos clientes. Existe no mercado uma série de métodos disponíveis que utilizam a abordagem ágil e que, por seguirem os princípios ágeis, apresentam uma série de atividades semelhantes no seu processo de desenvolvimento. Sobre os métodos ágeis mais utilizados em empresas desenvolvedoras de software, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Scrum: o escopo do projeto é construído através de sprints, em que são realizadas reuniões curtas para decidir quem trabalha nos sprints e quanto tempo dura cada tarefa. ( ) Extreme Programming: proposto para projetos grandes e complexos e concentra-se na colaboração humana, prezando pelas metodologias iterativa e incremental. ( ) Adaptative Software Development (ASD): valoriza o trabalho em equipe através da programação em pares. ( ) Dynamic System Development Method (DSDM): baseada em Desenvolvimento Rápido de Aplicação (RAD) via metodologia incremental, que enfatiza a participação do usuário final. ( ) Crystal Clear: possui foco nas habilidades e talentos de cada pessoa envolvida possibilitando a 8 9 adaptação a diversos projetos, pois não é feita para empresas padronizadas. Agora, assinale a alternativa que apresenta a sequência CORRETA: A V - V - F - F - F. B V - F - F - V - V. C F - F - V - V - V. D V - V - F - F - V. "O gerenciamento de projeto de software é uma atividade de apoio da engenharia de software. Inicia-se antes de qualquer atividade técnica e prossegue ao longo da modelagem, construção e utilização do software" (PRESSMANN, 2011, p. 15). A respeito do Gerente de Projeto, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Tem responsabilidade com todos os envolvidos no projeto, é quem gerencia atividades diárias, planejando e monitorando as atividades técnicas. ( ) É responsável pelo planejamento, monitoração e controle de pessoas, processos e eventos que ocorrem à medida que o software evolui desde os conceitos preliminares até sua disponibilização completa. ( ) Exerce atividades como definição do escopo do projeto, estimativas, análise de riscos, elaboração de cronograma, elaboração do plano de projeto e acompanhamento de projetos. ( ) É responsável pela capacitação do controle das pessoas e responsável pela definição dos processos de engenharia de software. Assinale a alternativa que apresenta a sequência CORRETA: FONTE: PRESSMAN, R. S. Engenharia de software: uma abordagem profissional. 7. ed. Porto Alegre: AMGH Editora Ltda., 2011. A F - V - F - V. B V - V - F - F. C V - V - V - F. D V - F - F - V. (ENADE, 2014) Requisitos funcionais e não funcionais podem definir características e funcionalidades presentes na interface a ser desenvolvida para um sistema. Com relação aos requisitos não funcionais, também chamados de requisitos de qualidade, avalie as afirmações a seguir: I- São levantados e elicitados após os requisitos funcionais, uma vez que os requisitos funcionais determinarão as funcionalidades da interface. II- Sempre serão definidos de forma mais concreta, através de requisitos funcionais, uma vez que o usuário manipula na interface somente as funcionalidades levantadas. III- Podem completar os requisitos funcionais. É correto o que se afirma em: 10 11 A II, apenas. B I e III, apenas. C I e II, apenas. D III, apenas. (ENADE, 2011) Várias técnicas relacionadas à programação extrema (XP) são diretamente ligadas ao código, incluindo a refatoração, programação em pares e integração contínua. A programação em pares é a prática preferida dos desenvolvedores XP trabalhando em pares em um computador. FONTE: SCOTT, K. O Processo Unificado Explicado. Porto Alegre: Artmed, 2002. BECK, K. Programação Extrema (XP) Explicada. Porto Alegre: Artmed, 2000. A Estão acostumados ao desenvolvimento e à propriedade coletiva, limitando-se a fazer pequenas mudanças na ocorrência de erros em tempo de execução. B Trabalham em projetos complexos onde a codificação seja desenvolvida de forma conjunta, minimizando erros e agregando valor onde quer que o sistema necessite. C Minimizam os riscos de insucesso no projeto através da utilização de ferramentas para a geração automática de testes funcionais e protótipos de interface. D A programação em pares auxilia no desenvolvimento de código de melhor qualidade quando os pares a elaboram e utilizam padrões de codificação conjuntamente, os quais, quando utilizados corretamente e apropriadamente, reduzem problemas individuais. 12 Imprimir