Baixe o app para aproveitar ainda mais
Prévia do material em texto
Avaliação Final (Objetiva) Engenharia e Projeto de Software 1 . 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_soft ware?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. 2. Requisito de software é uma documentação que diz o que o software deverá realizar quando se estabelece e mantém acordo entre o cliente e a equipe do projeto. Enfim, é um modelo sistemático para encontrar, documentar, organizar e rastrear os requisitos variáveis de um sistema. Sobre algumas dificuldades no processo de obtenção de requisitos apresentada por Carvalho e Chiossi (2001), analise as sentenças a seguir: I- Falta de conhecimento do usuário das suas reais necessidades e do que o produto de software pode lhe oferecer. II- Falta de conhecimento do cliente do domínio do problema e dificuldade em tomar decisões, dificuldades não encontradas no desenvolvedor por obter domínio técnico. III- Comunicação inadequada entre desenvolvedores e clientes. IV- Problemas de comportamento do coordenador de projeto, levando em conta que a equipe de desenvolvimento apresente comportamento exemplar. Agora, assinale a alternativa CORRETA: FONTE: CARVALHO, Ariadne M. B. Rizzoni; CHIOSSI, Thelma C. dos Santos. Introdução à engenharia de software. CAMPINAS: UNICAMP, 2001. a) As sentenças I, II e III estão corretas. b) As sentenças I e III estão corretas. c) As sentenças II e IV estão corretas. d) As sentenças I, III e IV estão corretas. 3. Através de uma certificação de qualidade, as organizações buscam padronizar a forma de realizar as atividades, garantindo maior assertividade nos projetos. As normas da International Organization for Standardization (ISO) especificam requisitos para um sistema gerencial de qualidade de uma organização. Sobre as normas ISO mais utilizadas para dar suporte ao desenvolvimento de software, analise as sentenças a seguir: I- Norma ISO/IEC 12207: responsável por definir as características de funcionalidade, confiabilidade, eficiência, usabilidade, manutenibilidade e portabilidade de software. II- Norma ISO/IEC 15504: responsável pela norma da avaliação de processos de software organizacionais. III- Norma ISO/IEC 9126: responsável por definir o processo de ciclo de vida de software. IV- Norma ISO/IEC 27000: responsável por definir um processo da segurança da informação. V - Norma ISO/IEC 15939: responsável por definir um processo de métrica de software. Agora, assinale a alternativa CORRETA: a) As sentenças II, III e IV estão corretas. b) As sentenças I, IV e V estão corretas. c) As sentenças I, III e V estão corretas. d) As sentenças II, IV e V estão corretas. 4. 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) F - V - V - F - F. b) V - V - F - V - V. c) F - F - F - V - F. d) V - F - V - F - V. 5. Os projetos de software constituem-se em várias etapas e, para obter êxito em seu desenvolvimento, é necessário ter o conhecimento em técnicas e ferramentas de gerenciamento/planejamento. Entre os principais problemas que os projetos de software enfrentam, podemos citar mudança de requisitos afetando sua qualidade, provocando estorno de orçamento e atraso no prazo de entrega do projeto. Sobre as categorias de projeto subprojeto, programa e portfólio, analise as sentenças a seguir: I- Projetos grandes e complexos podem ser divididos em projetos menores chamados subprojetos. II- Portfólio é um grupo de projetos que são relacionados e gerenciados coletivamente de forma coordenada. III- Programa é composto por um conjunto de projetos ou subprojetos com objetivos comuns. IV- Um projeto pode ou não fazer parte de um programa, mas um programa sempre terá projetos. Agora, assinale a alternativa CORRETA: 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 I e III estão corretas. 6. O conceito de teste de software pode ser compreendido através de uma visão intuitiva ou mesmo de uma maneira formal. Testar um software significa verificar através de uma execução controlada se o seu comportamento corre de acordo com o especificado. Sobre os cinco passos de execução da metodologia ágil FDD (Feature Driven Development), que é o Desenvolvimento Guiado por Funcionalidades, assinale a alternativa CORRETA: a) O primeiro processo trata-se da modelagem do problema com o entendimento do domínio do negócio. O segundo processo é construir uma lista de funcionalidades. A terceira é a construção por funcionalidade, em que cada estrutura de código é preenchida e testada. O quarta parte é planejar por funcionalidade, considerando sua estimativa e valor para o negócio e o cliente, bem como a propriedade. A quinta parte trata-se do detalhamento por funcionalidade. b) O primeiro processo trata-se da modelagem do problema com oentendimento do domínio do negócio. O segundo processo é construir uma lista de funcionalidades. O terceira parte é planejar por funcionalidade, considerando sua estimativa e valor para o negócio e o cliente, bem como a propriedade. A quarta trata-se do detalhamento por funcionalidade. A quinta é a construção por funcionalidade, em que cada estrutura de código é preenchida e testada. O resultado é um incremento, que acoplado ao programa principal já poderá ser utilizado pelo cliente. c) A primeira parte é planejar por funcionalidade, considerando sua estimativa e o valor para o negócio e o cliente, bem como a propriedade. A segunda trata-se do detalhamento por funcionalidade. O terceiro processo trata-se da modelagem do problema com o entendimento do domínio do negócio. O quarto processo é construir uma lista de funcionalidades. A quinta parte é a construção por funcionalidade, em que cada estrutura de código é preenchida e testada. d) O primeiro processo trata-se da modelagem do problema com o entendimento do domínio do negócio. A segunda parte é a construção por funcionalidade, em que cada estrutura de código é preenchida e testada. O terceiro processo é construir uma lista de funcionalidades. A quarta trata-se do detalhamento por funcionalidade. A quinta parte é planejar por funcionalidade, considerando sua estimativa e valor para o negócio e o cliente, bem como a propriedade. 7. A qualidade tem um preço. Quando se pergunta quanto realmente obteve-se de retorno pela implantação dos programas de qualidade de software, a resposta normalmente é que ainda é muito cedo para dizer. As ferramentas da qualidade não medem os custos envolvidos na obtenção de melhores produtos e também não identificam os custos da falta de qualidade dentro e fora da organização. Sobre a definição de custos na qualidade de software, assinale a alternativa CORRETA: a) O custo de qualidade é categorizado em custos pela implantação de processos através da capacitação das pessoas e utilização de tecnologias robustas e eficientes. b) O custo de qualidade é categorizado em custos com treinamentos organizacionais para garantir a satisfação do cliente e o controle de qualidade objetiva a garantia da qualidade com um custo "ótimo", pois qualidade está diretamente ligada a custos. c) O custo de qualidade é categorizado em custos de prevenção e detecção de defeitos a fim de reduzir falhas internas e externas realizando amplo investimento nos custos de avaliação para melhoria contínua. d) O custo de qualidade é categorizado pelas necessárias técnicas e ferramentas que auxiliem na identificação das expectativas do consumidor e ao mesmo tempo forneçam informações que possibilitem a produção ao menor custo possível. 8. O ser humano está sujeito a cometer erros, porém estes enganos irão produzir defeitos. Como exemplo, temos a área de programação, em que o programador poderá cometer defeitos no código e após sua liberação sem os devidos testes não atenderá as expectativas dos seus usuários apresentando erros nas suas funcionalidades. ?O teste do software é um processo realizado pelo testador de software que permeia outros processos da Engenharia de Software, e envolve ações que vão do levantamento de requisitos (necessidades) até a execução do teste propriamente dito. O objetivo, por mais paradoxal que pareça, é encontrar defeitos nos produtos, para que estes possam ser corrigidos pela equipe de programadores, antes da entrega final. A maioria das pessoas pensa que o teste de software serve para demonstrar o correto funcionamento de um programa, quando, na verdade, ele é utilizado como um processo da engenharia de software para encontrar defeitos. O processo de teste de software é voltado para o alcance de um nível de qualidade de produto que, durante o processo de desenvolvimento de software, muda conforme avanço das atividades ? requisitos, protótipos, modelo de dados lógico, modelo de dados físico, código-fonte, módulos funcionais e, finalmente, um sistema?. No que se refere a testes de software, assinale a alternativa CORRETA: FONTE: TOZELLI, P. Teste de Software. [s.l.: s.n.], 2008. Disponível em: <http://imasters.com.br/artigo/9572/software/teste-de- software?trace=1519021197&source=single>. Acesso em: 15 jul. 2016. a) Testes exploram as funcionalidades do software evidenciando os seus defeitos e não conformidades. b) Considera-se um bom teste aquele que relata o menor número de problemas. c) Não é necessário controlar as atividades de aferição da qualidade em projetos de software. d) Testes não ajudam a garantir a qualidade do software. 9. O gerenciamento de projetos tem sido muito aplicado no mercado, pelo fato de auxiliar na excelência, qualidade e confiabilidade do processo de desenvolvimento de projetos. Ele tem como objetivo buscar projeções de tempo, custo, recursos, qualidade e aquisições necessárias. Atrasos na entrega podem trazer consequências negativas para a empresa, desde quebra de contrato, multa por atraso e prejuízos na imagem da empresa. Portanto, o gerenciamento de tempo atualmente é um dos pontos fundamentais, pois projeta para o cliente, a partir de levantamentos das atividades e recursos, qual será o tempo gasto para desenvolver o projeto através de um cronograma. Através da área de métrica de software, é possível identificar a quantidade de esforço, de custo e das atividades que serão necessárias para a realização do projeto. Sobre os métodos ou técnicas para estimativa de software, analise as sentenças a seguir: I- Linha de código (LOC): consiste em estimar o número de linhas que um programa deverá ter, comparando o tamanho de linhas de um projeto em relação a outro projeto. II- Pontos de História: consiste na análise da qualidade e complexidade dos atores e casos de uso do sistema. III- Análise de Pontos de Função (APF): consiste em medir o tamanho do escopo, e sua contagem independe da plataforma ou linguagem de programação e estilo de programação utilizado. IV- Pontos de Caso de Uso (PUC): consiste em identificar quanto tempo tantas pessoas levariam para terminar uma funcionalidade ou história de usuário para gerar o executável funcional. V- Modelo COCOMO II: consiste em estimar o custo do projeto. VI- Estimativa para Projetos Orientados a Objeto: utiliza qualquer método para decomposição de esforço, utilizando a modelagem UML e o número de classes. Agora, assinale a alternativa CORRETA: a) As sentenças I, III e IV estão corretas. b) As sentenças I, II, IV e V estão corretas. c) As sentenças I, III, V e VI estão corretas. d) As sentenças I, II, III e VI estão corretas. 10. No intuito de se atingir os objetivos definidos para os projetos, as atividades envolvidas devem ser criteriosamente definidas e controladas. Cabe ressaltar que todas as etapas possuem regras específicas. Podemos entender as regras como os requisitos necessários para a execução da etapa ou atividade em questão. Identificar, entender, documentar e priorizar os requisitos é de grande importância para o controle do projeto como um todo. Com relação aos requisitos, analise as sentenças a seguir: I- A gestão dos requisitos preocupa-se com a documentação, versionamento, controle de mudanças e qualidade dos requisitos levantados na fase de especificação de requisitos. II- A especificação de requisitos faz o detalhamento das regras de negócio, sinalizando o que o sistema deverá fazer. III- São duas as principais categorias de requisitos: de negócio e de sistemas. IV- Brainstorming não pode ser considerada uma técnica de levantamento de requisitos. Assinale a alternativa CORRETA: a) As sentenças I, III e IV estão corretas. b) As sentenças I, II e III estão corretas. c) As sentenças II, III e IV estão corretas. d) As sentenças I e IV estão corretas. 11. (ENADE, 2008)No processo de desenvolvimento de software, todo software passa pelas fases de análise e projeto, associadas, respectivamente, com o que deve ser feito e como deve ser feito. A partir dessa informação, assinale a alternativa correta: a) O objetivo do projeto arquitetural é desenvolver uma estrutura de programa e representar os diversos fluxos de dados entre os módulos. b) Na fase de projeto, dois níveis de projeto devem ser considerados: o projeto detalhado, que se preocupa com uma transformação dos requisitos em um projeto de dados e arquitetural; e o projeto preliminar, que se preocupa em aprimorar o projeto detalhado para que a implementação possa ser realizada em seguida. c) Para lidar com a complexidade do software, pode-se aplicar o princípio do particionamento, quebrando o problema em problemas menores. Esse princípio não é aplicado nas outras fases de desenvolvimento e ele não causa impacto nos custos de desenvolvimento. d) Na fase de análise, três modelos que devem ser considerados são: do domínio da informação, o funcional e o comportamental. 12. (ENADE, 2011) Modelos de ciclo de vida de processo de software são descrições abstratas do processo de desenvolvimento, mostrando as principais atividades e informações usadas na produção e manutenção de software, bem como a ordem em que as atividades devem ser executadas. Com relação aos modelos de ciclo de vida de processo de software, analise as seguintes asserções: I- O modelo de desenvolvimento em cascata acrescenta aspectos gerenciais (planejamento, controle e tomada de decisão) ao processo de desenvolvimento de software PORQUE II- Considera que o processo é composto por várias etapas que são executadas de forma sistemática e sequencial. Acerca dessas asserções, assinale a alternativa correta: a) A primeira asserção é uma proposição verdadeira, e a segunda, uma proposição falsa. b) A primeira asserção é uma proposição falsa, e a segunda, uma proposição verdadeira. c) As duas asserções são proposições verdadeiras, e a segunda é uma justificativa correta da primeira. d) As duas asserções são proposições verdadeiras, mas a segunda não é uma justificativa correta da primeira.
Compartilhar