Prévia do material em texto
Acadêmico: Disciplina: Engenharia e Projeto de Software Avaliação: Avaliação Final (Objetiva) - Individual Semipresencial ( peso.:3,00) Prova: Nota da Prova: 10,00 Legenda: Resposta Certa Sua Resposta Errada 1. O entendimento popular sobre o conceito de qualidade tem evoluído à medida que a experiência humana acompanha a evolução tecnológica. As gerações que viveram períodos em que as experiências se davam de forma exclusivamente tangível ainda têm em sua programação genética a ideia de que qualidade é sinônimo de durabilidade. Qualidade de software é um processo sistemático que focaliza todas as etapas e os artefatos produzidos com o objetivo de garantir a conformidade de processos e produtos, prevenindo e eliminando defeitos. Com base nessas informações, analise as sentenças a seguir: I- Técnicas de verificação e validação são aplicadas aos softwares durante e depois de seu desenvolvimento para garantir que ele atenda a sua especificação e forneça as funcionalidades esperadas pelos clientes. II- A análise de software é uma técnica de verificação e validação muito usada, que consiste em exercitar o programa usando dados reais processados pelo programa e verificar se as saídas obtidas estão de acordo com as saídas esperadas. III- Revisões não fazem parte das atividades de garantia de qualidade de software. Atividades exigidas para controlar o software e que devem ser aplicadas ao longo de todo processo de engenharia de software. IV- Atividades de testes do software se dão apenas nas fases de construção do software que terá a responsabilidade de implementar os componentes e realizar os testes de unidade e nas demais fases não realizará mais testes. Agora, assinale a alternativa CORRETA: a) As sentenças I, II e III estão corretas. b) As sentenças II e IV estão corretas. c) As sentenças I e III estão corretas. d) As sentenças I e II estão corretas. 2. O desenvolvimento de software é praticado por meio da execução geralmente sequencial de várias atividades que são agrupadas em cada etapa do processo. Dividir o projeto em atividades é relevante no sentido de entender como estas se relacionam e qual o nível de dependência estabelecido no momento de execução. Para colaborar com isso, utiliza-se o conceito de ciclo de vida do software para especificar um grupo de atividades e seus relacionamentos. Sobre o ciclo de vida de desenvolvimento de software, assinale a alternativa CORRETA: a) O modelo baseado em componentes não tem como foco a reutilização. b) O modelo em espiral serve como base para o modelo de prototipação e cascata. c) O modelo em cascata é o mais simples e tem as etapas bem definidas. d) O modelo incremental aumenta o tempo de desenvolvimento do projeto. 3. Friedrich Ludwig Bauer, em 1969, foi o teórico que originou o termo Engenharia de Software, lembrando que o próprio significado de engenharia já traz os conceitos de criação, construção, análise, desenvolvimento e manutenção. Sendo assim, engenharia de software, para o teórico, é a criação e a utilização de sólidos princípios de engenharia, a fim de obter software de maneira econômica, que seja confiável e que trabalhe em máquinas reais. A engenharia de software está fortemente relacionada ao software na medida que ela nos capacita para o desenvolvimento de sistemas complexos dentro do prazo e com alta qualidade. Observe a figura a seguir, que apresenta as camadas da engenharia de software. Em seguida, associe os itens, utilizando o código a seguir: I- Item qualidade. II- Item processos. III- Item método. IV- Item ferramentas. ( ) Tem como finalidade promover uma cultura de aperfeiçoamento contínuo de processos. ( ) Tem como finalidade manter as camadas de tecnologia coesas e também é quem possibilita o desenvolvimento de software de forma racional e dentro do prazo. ( ) Envolve diversas tarefas, como comunicação, análise de requisitos, modelagem de projeto, construção de software, testes e suporte. ( ) É responsável por fornecer suporte automatizado ou semiautomatizado para o processo e os métodos. FONTE DA IMAGEM: Disponível em: <http://www.devmedia.com.br/principios-da- engenharia-de-software/29630>. Acesso em: 3 ago. 2016. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) III - IV - II - I. b) II - I - IV - III. c) I - II - III - IV. d) I - III - II - IV. 4 . Partindo da premissa de que só se conhece o que se mede, muitas organizações adotaram a metodologia de utilização de indicadores de desempenho nos variados processos que a envolvem. Afinal, de nada adianta realizar as atividades dos processos sem saber qual é o seu andamento, objetivo e os resultados a serem alcançados. Portanto, "é indiscutível que qualidade é um item importante para qualquer produto ou serviço. Um software usado como ferramenta para suportar diversas linhas de negócios nas empresas também deve apresentar, a cada versão, níveis mais elevados de qualidade. Uma das ferramentas que a engenharia de software utiliza são as Métricas de Software. Essas métricas podem ser consideradas como um conjunto de atributos, previamente documentados e conhecidos do ciclo de desenvolvimento de software". Com relação às métricas de qualidade de software, analise as sentenças a seguir: I- A métrica não está associada à etapa de planejamento do projeto. II- A métrica permite validar a conformidade com os requisitos, favorecendo a melhoria da gerência dos projetos e o relacionamento com o cliente. III- A técnica de medição Linha de Código (LOC) conta a quantidade de programas de um sistema. IV- Permite estimar a adequação do software com relação às reais necessidades do usuário final. Assinale a alternativa CORRETA: FONTE: MARQUES, Daniela. Métricas de Software. [s.l: s.n.], 2011. Disponível em: <https://www.ibm.com/developerworks/community/blogs/tlcbr/entry/metricas_de_softwar e?lang=en>. Acesso em: 5 jul. 2016. a) As sentenças I e IV estão corretas. b) As sentenças II, III e IV estão corretas. c) As sentenças I, II e IV estão corretas. d) As sentenças II e IV estão corretas. 5. A evolução de software se ocupa em modificar os sistemas de software existentes, para que eles atendam a novos requisitos. Isso está se tornando a abordagem normal de desenvolvimento de software para sistemas pequenos e de porte médio. De acordo com a evolução histórica do software, podemos notar a ocorrência da crise do software e a ocorrência dos mitos de software. Com base na evolução de software, assinale a alternativa CORRETA: a) Os mitos profissionais são os requisitos de projeto que se modificam continuamente, mas as mudanças podem ser facilmente acomodadas, porque o software é flexível. Enfim, uma declaração geral dos objetivos é suficiente para se começar a escrever programas - podemos preencher os detalhes mais tarde. b) No que diz respeito à crise do software, é correto afirmar que ela se refere a problemas encontrados no desenvolvimento de software, tais como estimativas de prazo e de custo, que são frequentemente imprecisas. A produtividade das pessoas da área de software não tem acompanhado a demanda por seus serviços, e a qualidade de software às vezes é menos adequada. c) Com relação aos mitos de software relacionados o cliente, é correto dizer que, se nós estamos atrasados nos prazos, podemos adicionar mais programadores e tirar o atraso, porém o que acontece na realidade é o desenvolvimento de software não ser um processo mecânico igual à manufatura. Acrescentar pessoas em um projeto torna-oainda mais atrasado. Pessoas podem ser acrescentadas, mas somente de uma forma planejada. d) Com relação aos mitos administrativos, notamos que, enquanto não tivermos o programa "funcionando", não teremos realmente nenhuma maneira de avaliar sua qualidade, porém na realidade um programa funcionando é somente uma parte de uma Configuração de Software que inclui todos os itens de informação produzidos durante a construção e a manutenção do software. 6. A Governança de TI é definida como um sistema de relações e processos que orienta e controla uma organização com o intuito de somar valor ao negócio através do gerenciamento equilibrado do risco com o retorno do investimento de TI. Sobre Governança de TI, classifique V para as sentenças verdadeiras e F para as falsas: ( ) Nem sempre, só em última instância, é necessário o modelo de Governança de TI prover o alinhamento da tecnologia da informação aos negócios da empresa, sabendo que essa decisão deverá levar em consideração a razão da existência e da necessidade da implantação de Governança de TI . ( ) A Governança de TI inclui a seleção e o uso de mecanismos adequados para obter competências necessárias de TI. ( ) Deve haver o alinhamento da TI aos negócios em função de sua importância, digamos que é a razão da existência e da necessidade da implantação de Governança de TI. ( ) A Governança de TI tem como objetivo orientar e controlar as práticas de gestão e uso da TI de uma organização, tendo como principal favorecido a alta administração da instituição. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) F - V - V - V. b) F - V - V - F. c) V - F - F - V. d) V - V - F - F. 7. Processos de software podem ser compreendidos como as diversas fases necessárias para produzir e manter um software em funcionamento. Tais processos necessitam de organização lógica das atividades técnicas e gerenciais envolvendo usuários, desenvolvedores, modelos de processo e restrições que possibilitam disciplinar, sistematizar e organizar o desenvolvimento e manutenção dos softwares. Acerca dos processos de software, classifique V para as sentenças verdadeiras e F para as falsas: ( ) A validação de software consiste em assegurar que o software está em conformidade com os requisitos previstos. ( ) As atividades de processo de software podem ser implementadas com o auxílio de ferramentas CASE. ( ) A fase de Engenharia de Requisitos é o processo pelo qual os requisitos de um produto de software são coletados, analisados, documentados e gerenciados, necessitando ser compreendido somente pela equipe de desenvolvimento. ( ) No desenvolvimento de sistemas por meio de ciclo de vida iterativo, as necessidades dos usuários e os requisitos correspondentes não podem ser definidos no início do processo, já que são refinados em sucessivas iterações. ( ) O processo de software tem como meta entregar um produto de software de maneira eficiente, previsível e que corresponda às necessidades de negócio, conforme os requisitos estabelecidos. Assinale a alternativa que apresenta a sequência CORRETA: a) V - V - F - V - V. b) V - F - V - F - V. c) F - F - F - V - F. d) F - V - V - F - F. 8. Após atuar como analista e programador em uma empresa de desenvolvimento de software por aproximadamente 10 anos, um colaborador que se destacou por nunca atrasar um cronograma foi nomeado gerente de projetos. Ao assumir o primeiro projeto, o colaborador foi informado que sua principal responsabilidade era a realização da entrega conforme o cronograma estabelecido no contrato. Para o gerenciamento do escopo do projeto, o gerente de projetos utilizará o PMBOK. Considerando essa situação, é correto afirmar que o gerente de projetos deverá coordenar processos de: a) Coletar requisitos, criar estimativa do projeto, validar recursos do projeto, validar o escopo e encerrar o projeto. b) Estimar requisitos, criar a Estrutura Analítica de Processo (EAP), identificar as partes interessadas e verificar e controlar o escopo. c) Coletar requisitos, definir o escopo, criar a Estrutura Analítica de Processo (EAP), verificar o escopo e controlar o escopo. d) Desenvolver requisitos, orientar e gerenciar o escopo, monitorar e controlar o trabalho do projeto, executar o controle do escopo e encerrar o projeto. 9. A Gerência de Configuração é um conjunto de atividades projetadas para controlar as mudanças pela identificação dos produtos do trabalho que serão alterados, estabelecendo um relacionamento entre eles, definindo o mecanismo para o gerenciamento de diferentes versões desses produtos, controlando as mudanças impostas, e auditando e relatando as mudanças realizadas. Sobre o Gerenciamento de Configuração de Software em três níveis, analise as sentenças a seguir: I- Controle de versão: identifica em qual versão está o software e quais as característica de cada versão. Controle de mudanças: identifica quais foram as mudanças, efetuadas na versão. Integração contínua: tem como características testar as mudanças assim que são realizadas. II- Controle de versão: identifica em qual versão está o software e quais as características de cada versão. Controle de mudanças: tem como característica testar as mudanças assim que são realizadas. Integração contínua: identifica quais foram as mudanças, efetuadas na versão. III- Controle de versão: identifica os usuários dos sistemas. Controle de mudanças: tem como característica testar as mudanças assim que são realizadas. Integração contínua: identifica as aplicações do software. Agora, assinale a alternativa CORRETA: a) As sentenças II e III estão corretas. b) As sentenças I e II estão corretas. c) Somente a sentença I está correta. d) Somente sentença II está correta. 10. A engenharia de software é uma disciplina de engenharia relacionada a todos os aspectos de produção de software. Para desenvolver um produto de software com qualidade, deve- se utilizar durante seu desenvolvimento as técnicas de prevenção de defeitos e detecção de defeitos de forma consistente. A respeito das técnicas de prevenção e detecção, classifique V para as sentenças verdadeiras e F para as falsas: ( ) O uso de instruções de procedimentos (padrões formais), treinamentos, documentação, modelagem e reengenharia se dá pela técnica de prevenção de defeitos. ( ) A análise de código; revisão por pares; testes, auditorias, verificações e validações se dá pela técnica de prevenção de defeitos. ( ) A análise de código; revisão por pares; testes, auditorias, verificações e validações se dá pela técnicas de detecção de defeitos. ( ) O uso de instruções de procedimentos (padrões formais), treinamentos, documentação, modelagem e reengenharia se dá pela técnicas de detecção de defeitos. Agora, assinale a alternativa que apresenta a sequência CORRETA: a) F - F - F - V. b) V - F - V - F. c) V - V - F - F. d) F - F - V - F. 11. (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: a) II, apenas. b) I e III, apenas. c) III, apenas. d) I e II, apenas. 12. (ENADE, 2011) O levantamento de requisitos é uma etapa fundamental do projeto de sistemas. Dependendo da situação encontrada, uma ou mais técnicas podem ser utilizadas para a elicitação dos requisitos. A respeito dessas técnicas, analise as afirmações a seguir: I- Workshop de requisitos consiste na realização de reuniões estruturadas e delimitadas entre os analistas de requisitos do projeto e representantes do cliente. II- Cenário consiste na observação das ações do funcionário na realização de uma determinada tarefa, para verificar os passos necessários para sua conclusão. III- As entrevistas são realizadas com os stakeholders e podem ser abertas ou fechadas. IV- A prototipagem é uma versão inicial do sistema, baseado em requisitos levantados em outros sistemas da organização. É correto apenas o que se afirma em: a) I, III e IV. b) II e IV. c) I e II. d) I e III.