Baixe o app para aproveitar ainda mais
Prévia do material em texto
AO2 Iniciado: 2 dez em 8:32 Instruções do teste Importante: Caso você esteja realizando a atividade através do aplicativo "Canvas Student", é necessário que você clique em "FAZER O QUESTIONÁRIO", no final da página. Sinalizar pergunta: Pergunta 1 Pergunta 10,6 pts Leia o texto abaixo: Não existe bala de prata Como começamos a afirmar no parágrafo anterior, desenvolvimento de software é diferente de qualquer outro produto de Engenharia, principalmente quando se compara software com hardware. Frederick Brooks, Prêmio Turing em Computação (1999) e um dos pioneiros da área de Engenharia de Software, foi um dos primeiros a chamar a atenção para esse fato. Em 1987, em um ensaio intitulado "Não Existe Bala de Prata: Essência e Acidentes em Engenharia de Software" (link), ele discorreu sobre as particularidades da área de Engenharia de Software. Segundo Brooks, existem dois tipos de dificuldades em desenvolvimento de software: dificuldades essenciais e dificuldades acidentais. As essenciais são da natureza da área e dificilmente serão superadas por qualquer nova tecnologia ou método que se invente. Daí a menção à bala de prata no título do ensaio. Diz a lenda que uma bala de prata é a única maneira de matar um lobisomem, desde que usada em uma noite de lua cheia. Ou seja, por causa das dificuldades essenciais, não podemos esperar soluções milagrosas em Engenharia de Software, na forma de balas de prata. O interessante é que, mesmo conhecendo o ensaio de Brooks, sempre surgem novas tecnologias que são vendidas como se fossem balas de prata. Segundo Brooks, as dificuldades essenciais são as seguintes: Complexidade: dentre as construções que o homem se propõe a realizar, software é uma das mais desafiadoras e mais complexas que existe. Na verdade, como dissemos antes, mesmo construções de engenharia tradicional, como um satélite, uma usina nuclear ou um foguete, são cada vez mais dependentes de software. Conformidade: pela sua natureza software tem que se adaptar ao seu ambiente, que muda a todo momento no mundo moderno. Por exemplo, se as leis para recolhimento de impostos mudam, normalmente espera-se que os sistemas sejam rapidamente adaptados https://famonline.instructure.com/courses/24295/quizzes/110307/take à nova legislação. Brooks comenta que isso não ocorre, por exemplo, na Física, pois as leis da natureza não mudam de acordo com os caprichos dos homens. Facilidade de mudanças (changeability): que consiste na necessidade de evoluir sempre, incorporando novas funcionalidades. Na verdade, quanto mais bem sucedido for um sistema de software, mais demanda por mudanças ele recebe. Invisibilidade: devido à sua natureza abstrata, é difícil visualizar o tamanho e consequentemente estimar o desafio de construir um sistema de software. (Fonte: Disponível em: https://engsoftmoderna.info/cap1.html Links to an external site.. Acesso em: 12 mar. 2020) Considerando as informações apresentadas, avalie as afirmações abaixo: I. De acordo com Brooks existem dois tipos de dificuldades em desenvolvimento de software: são as dificuldades essenciais e dificuldades acidentais. II. Complexidade, Conformidade, facilidade de mudanças, invisibilidade são fatores sobre dificuldades essenciais segundo Brooks. III. É possível obter soluções milagrosas no que se refere a desenvolvimento de software. IV. Conformidade é o fato que o ambiente tem que adaptar ao software, toda estrutura tem que ser alterada para atender o software. É correto o que se afirma apenas em: Grupo de escolhas da pergunta III e IV I e IV II e III https://engsoftmoderna.info/cap1.html https://engsoftmoderna.info/cap1.html I e II II e IV Sinalizar pergunta: Pergunta 2 Pergunta 20,6 pts Leia o texto a seguir: As metodologias para gestão do desenvolvimento de software Links to an external site. servem para não tornar a tarefa, complexa por natureza, um verdadeiro caos. O problema é que, dependendo do projeto, os métodos tradicionais podem deixar os desenvolvedores amarrados a requisitos desatualizados, que não correspondem às reais necessidades do cliente. Em mercados altamente competitivos, ou em momentos de crise econômica, a flexibilidade e a facilidade de mudar o rumo são qualidades muito valiosas para serem deixadas de lado. Existem outros tipos de metodologias, denominadas ágeis (do inglês agile), que, ao contrário, oferecem ao desenvolvedor total flexibilidade e aproximam a equipe de tecnologia da informação do usuário final do software, seja ele um cliente interno ou externo. Com esse tipo de metodologia, a homologação dos projetos é feita em etapas, o que resulta em tempos de entrega mais curtos, geralmente de três a seis semanas, e a capacidade de promover alterações rapidamente. Fonte:Disponível em:< https://computerworld.com.br/acervo/metodologias-de- desenvolvimento-qual-a-mais-adequada/ Links to an external site.> Acesso em: 08/04/2021. Quais os três benefícios da adoção de metodologias no desenvolvimento de software? Grupo de escolhas da pergunta https://famonline.instructure.com/courses/24295/quizzes/110307/take http://computerworld.uol.com.br/tecnologia/2008/07/02/polos-de-desenvolvimento-no-sudeste-ganham-vida-propria http://computerworld.uol.com.br/tecnologia/2008/07/02/polos-de-desenvolvimento-no-sudeste-ganham-vida-propria https://computerworld.com.br/acervo/metodologias-de-desenvolvimento-qual-a-mais-adequada/ https://computerworld.com.br/acervo/metodologias-de-desenvolvimento-qual-a-mais-adequada/ Os benefícios podem ser: 1 - Melhoria no atendimento dos requisitos; 2 – Diminuição nos prazos de projetos; 3 – Facilidade de acomodar mudanças ao longo do projeto. Os benefícios podem ser: 1 - Melhoria no atendimento dos requisitos; 2 – Diminuição nos prazos de projetos; 3 – Diminuição de erros ao longo do desenvolvimento. Os benefícios podem ser: 1 – Diminuição nos custos dos projetos; 2 – Diminuição nos prazos de projetos; 3 – Diminuição de erros ao longo do desenvolvimento. Os benefícios podem ser: 1 - Melhoria no atendimento dos requisitos; 2 – Utilização de processos e padrões; 3 – Diminuição de erros ao longo do desenvolvimento. Os benefícios podem ser: 1 - Melhoria no atendimento dos requisitos; 2 – Utilização de processos e padrões; 3 – Trazer o cliente para dentro da equipe. Sinalizar pergunta: Pergunta 3 Pergunta 30,6 pts Leia o texto abaixo: Profissão de engenheiro de software Com cada vez mais empresas automatizando seus serviços e criando suas próprias plataformas digitais, a profissão de engenheiro de software foi considerada a 2ª melhor da área de TI em crescimento e remuneração, segundo o site especializado em carreiras de tecnologia. O software consiste na “parte lógica” do computador, que inclui sistema operacional e programas. Então, basicamente, estes profissionais projetam e guiam o desenvolvimento de programas, aplicativos e sistemas, de forma que https://famonline.instructure.com/courses/24295/quizzes/110307/take atendam aos requisitos e cumpram as funções determinadas. Entre as principais atribuições do engenheiro de software, estão: - Desenvolver softwares e apps; - Gerenciar projetos ligados aos softwares; - Arquitetar o design estrutural dos programas; - Realizar testes nos sistemas. Além destas, engenheiros de software podem ter funções ligadas à administração de bancos de dados, manutenção dos sistemas e até algumas de documentação, relacionadas à gestão de projetos e à composição dos manuais de instruções. (Fonte: Disponível em: https://www.napratica.org.br/profissao-engenheiro-de- software/ Links to an external site.. Acesso em: 04 de mar. de 2020)(adaptado) Considerando as informações apresentadas, avalie as informações abaixo: I. A profissão de engenheiro de software tem ganhado destaque na área de TI. II. Além das funções referentes a sistemas, engenheiros de softwares podem trabalharcom rotinas de administração de bancos de dados. III. Engenheiros de software trabalham apenas com projetos de software. IV. Engenheiros de software tem como atribuição realizar testes nos sistemas apenas. É correto o que se afirma apenas em: Grupo de escolhas da pergunta IV e I I e II I e III https://www.napratica.org.br/profissao-engenheiro-de-software/ https://www.napratica.org.br/profissao-engenheiro-de-software/ III e IV II e IV Sinalizar pergunta: Pergunta 4 Pergunta 40,6 pts Vamos ler o texto: Em março o Stack Overflow publicou a Pesquisa para Desenvolvedores de 2018 e, pela primeira vez, incluiu perguntas sobre ética. A boa notícia é que para pergunta "os desenvolvedores têm obrigação de considerar as implicações éticas de seu código?" quase 80% responderam "sim". No entanto, apenas 20% se sentiram responsáveis por seu código antiético. 40% escreveriam código antiético se solicitado (a maioria disse que "depende" - o que eu leio como 'sim' - "mas eu me sentiria mal"), e apenas 50% denunciariam código antiético se o vissem. Se o código tivesse pouco impacto no mundo, talvez isso não fosse um problema. Se eu escrever um algoritmo que prejudique 100 pessoas, isso é ruim, mas o efeito é limitado. No entanto, se eu fizer a mesma coisa no Facebook ou no Google com bilhões de usuários, o resultado será muito mais grave. O aumento na escala pode ser ruim e bom. A maioria de nós não trabalha para empresas de hiper escala, mas o objetivo geralmente é crescer, e cultura é algo difícil de mudar. Tomar atalhos ou usar práticas duvidosas no começo podem parecer algo justificado ou pragmático (como a decisão de Uber de testar um carro autônomo sem licença), mas é notoriamente difícil escalar de volta dessa escorregada ética mais tarde. (Fonte: Disponível em: https://www.infoq.com/br/articles/developers-tech- ethics/ Links to an external site.. Acesso em: 04 de mar. de 2020) De acordo com o texto acima, avalie as asserções abaixo e a relação proposta entre elas: I. Usar ética na criação de códigos é certo e aprovado por desenvolvedores. https://famonline.instructure.com/courses/24295/quizzes/110307/take https://www.infoq.com/br/articles/developers-tech-ethics/ https://www.infoq.com/br/articles/developers-tech-ethics/ Porque II. Em casos de empresas grandes como Google e Facebook, prejudicariam governos e milhões de usuários. A respeito das asserções acima, assinale a alternativa correta: Grupo de escolhas da pergunta A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. As asserções I e II são proposições falsas. As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. Sinalizar pergunta: Pergunta 5 Pergunta 50,6 pts Leia o texto e analise a ilustração a seguir: https://famonline.instructure.com/courses/24295/quizzes/110307/take Você está gerenciando o projeto de rollout para implantação da nova versão do sistema de vendas da empresa onde você trabalha que tem mais de 300 pontos de venda. Você já definiu o escopo, já fez a lista de atividades, recursos, já criou o cronograma do projeto, já conseguiu chegar no custo do projeto. Agora você irá verificar o planejamento da qualidade do projeto. Você está analisando os processos abaixo, que são recomendados no PMBOK do PMI. Com base no texto e ilustração acima, selecione a opção correta. Grupo de escolhas da pergunta No processo de planejar o gerenciamento da qualidade, você irá identificar os requisitos e/ou padrões da qualidade do projeto e suas fases e entregas, documentar como o projeto está em relação à conformidade referente aos requisitos e padrões de qualidade. No processo de planejar o gerenciamento da qualidade, serão planejados todos os testes necessários para que o sistema, que está sendo desenvolvido, tenha a qualidade mínima exigida pelo usuário. No processo de realizar o controle da qualidade, a auditoria dos requisitos de qualidade será o resultado das medições do controle de qualidade que servem para garantir o uso dos padrões de qualidade e das definições operacionais apropriadas. No processo de realizar a garantia da qualidade, serão efetuados todos os testes necessários para que o sistema que está sendo desenvolvido tenha a qualidade mínima exigida pelo usuário. No processo de realizar a garantia da qualidade, o monitoramento e o registro dos resultados da execução das atividades de qualidade, servem para avaliar o desempenho e recomendar mudanças necessárias. Sinalizar pergunta: Pergunta 6 Pergunta 60,6 pts Leia o texto a seguir: https://famonline.instructure.com/courses/24295/quizzes/110307/take A adoção do modelo CMMI estagiado implica que a organização deve atingir cada nível de maturidade na seqüência em que o modelo apresenta, iniciando a primeira meta pelo nível 2 de maturidade. Para tanto, a organização deve demonstrar o atendimento às exigências das seguintes áreas de processos: Planejamento de projetos - estabelecer e manter planos com as atividades e os produtos de trabalho do desenvolvimento e manutenção de todos os projetos, cada qual segundo seu escopo, elaborar os orçamentos e cronogramas. Prevê também a formalização do compromisso, através das revisões periódicas e com a disponibilização dos recursos; Monitoramento e controle de projetos - fornecer o entendimento do progresso do projeto e identificar os desvios, os riscos, os dados de controle e as ações corretivas; Medições e análises - Desenvolver e manter as medições necessárias para prover informações de gerenciamento adequadas à organização; Gerenciamento de requisitos - identificar os requisitos funcionais e não funcionais do produto e as correspondentes mudanças; Gerenciamento de configuração - identificar os itens de configuração dos produtos finais e de seus componentes (baselines), sua integridade e mudanças; Gerenciamento da qualidade do produto e do processo - prover a visibilidade objetiva e a comunicação adequada do andamento e da qualidade do processo e dos produtos de trabalho e final; Gerenciamento dos acordos de fornecimento - gerenciar a aquisição de produtos, a seleção dos fornecedores e cumprir mutuamente as responsabilidades e manter os registros do aceite e de transferência. (Fonte: Disponível em: http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0103- 65132008000200006 Links to an external site.. Acesso em: 05 de mar. de 2020) O CMMI é um modelo de maturidade de software que de acordo com o texto baseia o segundo nível em: Grupo de escolhas da pergunta Operações Equipes http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0103-65132008000200006 http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0103-65132008000200006 Projetos Usuários Desenvolvedores Sinalizar pergunta: Pergunta 7 Pergunta 70,6 pts Leia o texto a seguir: De quem é a culpa da má qualidade dos softwares? Acho que todos já ouvimos falar sobre modelos de maturidade como CMMI ou MPS.BR e processos como o RUP, Scrum ou XP. Quase sempre isso vem acompanhado de comentários críticos e pessimistas de como a nossa empresa está longe de ser madura e prover produtos de qualidade. Por outro lado, mesmo empresas que investem em maturidade do processo muitas vezes esquecem que ele não é uma bala de prata. Não existe processo ótimo sem ótimas pessoas. É um mito industrial a possibilidade de criar um processo perfeito que seja independentemente do nível e da maturidade dos indivíduos envolvidos. Isso pode ser bem observado na literatura sobre processos. Processos “pesados” ou rígidos são recomendados quando há equipes imaturas, sem experiência e disciplina adequadas. Já com equipes experientes, maduras e disciplinadasquase não existe necessidade de processo. Por isso é que os processos ágeis, por exemplo, somente são recomendados quando há pessoas muito competentes envolvidas no projeto. Como disse meu orientador: “coloque uma equipe de juniors num processo ágil, eles vão começar a estimar usando planning poker e provavelmente vão continuar jogando poker até o final do projeto”. O mesmo é aplicável a empresas que disponibilizam salas de entretenimento, por exemplo. Muita gente gostaria de trabalhar no Google e ter uma sala com videogame, mas o que geralmente não se pensa é que quaisquer vagas nesse https://famonline.instructure.com/courses/24295/quizzes/110307/take tipo de empresa são preenchidas por pessoas maduras e focadas, que possuem muito compromisso e dedicação. (Fonte: Disponível em: http://luizricardo.org/2012/10/psp-personal-software- process/ Links to an external site.. Acesso em: 05 de mar. de 2020) Depois de ler o texto acima-, considere as afirmações abaixo: I. Investir em processos de maturidade não necessariamente vai excluir todos os problemas da empresa II. Os processos não podem ser melhorados sem as pessoas III. Processos “pesados” ou rígidos são recomendados quando há equipes maduras, com experiência e disciplina adequadas IV. A culpa pela falta de qualidade e organização em uma empresa é mantido na diretoria É correto o que se afirma apenas em: Grupo de escolhas da pergunta II e III I e II I e III IV e I III e IV http://luizricardo.org/2012/10/psp-personal-software-process/ http://luizricardo.org/2012/10/psp-personal-software-process/ Sinalizar pergunta: Pergunta 8 Pergunta 80,6 pts Leia o texto a seguir: Qualidade de Produto No contexto de produtos de software, o termo qualidade se refere a atributos positivos, desejáveis, de sistemas de software. Naturalmente, a noção de qualidade é subjetiva, de modo que indivíduos diferentes podem ter percepções de qualidade distintas sobre um mesmo produto. Tal subjetividade não impede que, ao longo do tempo, diversos indivíduos e organizações tenham buscado sistematizar o conceito de qualidade de software, dando origem a modelos de qualidade. Modelos de qualidade de software definem um conjunto de características a serem consideradas para se avaliar a qualidade de um software [ISO/IEC 2001]. Exemplos de modelos de qualidade incluem o modelo de Boehm [Boehm et al. 1976], o modelo de Cavano e McCall [Cavano and McCall 1978], o modelo FURPS+ [Grady 1992] e a ISO/IEC 9126 [ISO/IEC 2001]. No modelo de Cavano e McCall, as características de qualidade são agrupadas em três dimensões: revisão do produto: manutenibilidade, flexibilidade e testabilidade; transição do produto: portabilidade, reusabilidade e interoperabilidade; operação do produto: corretude, confiabilidade, eficiência, integridade e usabilidade. Ainda que antigo, o modelo de Cavano e McCall propõe uma classificação ainda hoje relevante — basta observar que o padrão ISO 9126 usa o modelo como uma das fontes de inspiração. Além disso, cada dimensão se refere a atributos de qualidade que são especialmente relevantes para um stakeholder: a dimensão de revisão é relevante para desenvolvedores; transição, para administradores de sistemas; operação, para o usuário. SOUZA E GOMES, R. R.; CHEVEZ, C. F.G.; BITTENCOURT, R. A. Reabertura de Defeitos Corrigidos: Impactos e Prevenção Observe as asserções abaixo: I. O modelo Cano e Mcall é antigo, mas prático, atual e relevante, ainda serve como modelo para normas como a ISO 9126. PORQUE https://famonline.instructure.com/courses/24295/quizzes/110307/take II. Propõe uma classificação relevante para os dias de hoje e dimensões que se referem a atributos de qualidade que são relevantes para os stakeholders. Escolha a alternativa correta: Grupo de escolhas da pergunta A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições falsas. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. Sinalizar pergunta: Pergunta 9 Pergunta 90,6 pts Leia o texto a seguir: Você acaba de entrar em uma nova equipe na área de TI da empresa onde trabalha, trata-se da equipe de testes de sistemas financeiros. Seu novo coordenador, Marcos te chama para te apresentar seu primeiro trabalho. https://famonline.instructure.com/courses/24295/quizzes/110307/take Você irá trabalhar no projeto de integração do software XPTO, que faz todo o tratamento de notas fiscais, desde a emissão delas, até o pagamento dos impostos devidos sobre as vendas. O XPTO é um pacote de software pronto que está sendo integrado ao ambiente já existente da empresa, você irá realizar os testes do módulo inteiro de emissão de notas fiscais. Para realizar este trabalho, você considerará os principais tipos de testes: Testes Unitários, testes de integração de software, sendo que este último é muito semelhante aos testes de sistemas de software, e finalmente, testes de aceite de software que são realizados pelos usuários que definem os requisitos de software. Considerando as informações apresentadas, selecione a opção correta. Grupo de escolhas da pergunta Você terá de realizar os testes unitários, de integração de software, de sistemas de software, e de aceite, pois o pacote de software só é completamente testado quando da implantação do mesmo, na empresa compradora do pacote. Você realizará os testes de integração e de aceite, pois os testes de integração e aceite precisam ser feitos somente pela empresa que compra o pacote. Você realizará os testes unitários e de sistemas, pois esses testes precisam ser realizados somente pela empresa que compra o pacote de software. Você realizará os testes de integração, de sistemas, e de aceite, pois como trata-se de pacote de software, os testes unitários precisam ter sido feitos antes do lançamento do pacote no mercado. Você realizará os testes unitários e de aceite, pois é preciso testar cada programa que compõe o pacote de software e obter o aceite do usuário de negócio sobre o alinhamento do resultado em relação aos requisitos. Sinalizar pergunta: Pergunta 10 Pergunta 100,6 pts Leia o texto a seguir: A gestão da qualidade de software consiste em vários conceitos, sendo parte deles, aplicados ao processo de desenvolvimento e teste, gerando uma gama de atividades que em conjunto podem garantir um software com qualidade, essas atividades são realizadas em ciclos, sendo o Processo de Testes x Processo de Desenvolvimento. Roger S. Pressman (2011) afirma que o processo de software é dividido em cinco atividades que fazem parte de uma metodologia genérica, são elas Comunicação, Planejamento, Modelagem, Construção e Emprego. Com essas atividades se faz necessário o uso de uma metodologia (ágil, adaptável e flexível) de processo, o uso da metodologia é uma base para o desenvolvimento e teste, aplicando-a corretamente. Atualmente faz-se difícil a aplicação à risca de uma metodologia, é necessário adaptá-la, ser ágil e flexível, para isso, é preciso que os envolvidos colaborem e tenham em mente o lucro intelectual que a equipe vai ter ao final do ciclo. De onde tudo começa e quando termina? Bem, em poucas palavras, desenvolver um software consiste em um problema e uma solução. Durante toda nossa vida, nos deparamos com problemas e mais problemas em nosso dia, seja no problema na sua cozinha, onde sua geladeira que antes não tinha sensor para avisar quando faltar gelo, sensor para avisar que a porta estava aberta a um problema em um equipamento que faz cirurgias remotamente, onde um sensor especifico traz um resultado inesperado/inconsistente, até nos Smartphones, quando deixamos de ouvirele tocar, por conta de um problema no software ou hardware. Referencia : https://www.linkedin.com/pulse/import%C3%A2ncia-da- gest%C3%A3o-qualidade-de-software-processo-helder/Links to an external site. Segundo o texto lido avalie a asserções abaixo: https://famonline.instructure.com/courses/24295/quizzes/110307/take https://www.linkedin.com/pulse/import%C3%A2ncia-da-gest%C3%A3o-qualidade-de-software-processo-helder/ https://www.linkedin.com/pulse/import%C3%A2ncia-da-gest%C3%A3o-qualidade-de-software-processo-helder/ https://www.linkedin.com/pulse/import%C3%A2ncia-da-gest%C3%A3o-qualidade-de-software-processo-helder/ I. Desenvolver um software é um processo relativamente semelhante ao nosso processo de existência. Porque II. Consiste basicamente em problemas e soluções que quando mapeados a tempo nos dão condições de uma melhor resolução. A partir das asserções assinale a alternativa: Grupo de escolhas da pergunta As asserções I e II são proposições falsas. A asserção I é uma proposição verdadeira, e a II é uma proposição falsa. A asserção I é uma proposição falsa, e a II é uma proposição verdadeira. As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I. As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.
Compartilhar