Baixe o app para aproveitar ainda mais
Prévia do material em texto
Aula 1 1. Um gerente de projeto está tentando concluir um projeto de desenvolvimento de software, mas não consegue obter atenção suficiente para o projeto. Os recursos estão concentrados em realizar trabalho relacionado a processos e o gerente do projeto tem pouca autoridade para designar recursos adequadamente. Em qual forma de organização o gerente de projeto trabalha? Funcional Fraca Matricial Facilitador Coordenador Explicação: Em uma organização funcional o gerente de projeto tem o menor apoio e pouca autoridade para ddesignar recursos. Facilitador e coordenador são formas de matriz fraca. 2. Um gerente de projetos tem pouca experiência, mas foi designado para assumir um novo projeto. Como trabalhará em uma organização matricial, ele pode esperar que as comunicações serão: (Assinale a alternativa CORRETA). Simples Difíceis de automatizar Abertas Complexas Fechadas Explicação: Como um projeto realizado em uma organização matricial envolve pessoas de bárias partes da organização, as comunicações são mais complexas. 3. Em uma organização de matriz fraca dois gerentes de projetos acabam de perceber que seu poder é limitado. Um deles é facilitador de projetos e o outro atua como coordenador de projetos. Qual é a diferença entre um facilitador e um coordenador de projetos? O facilitador do projeto tem alguma autoridade. O facilitador do projeto está subordinado a um gerente de nível mais alto. O facilitador do projeto pode tomar decisões. O facilitador do projeto não pode tomar decisões. O facilitador do projeto gerencia o projeto até a entrega do produto/serviço. Explicação: O coordenador do projeto está subordinado a um gerente de nível mais alto e tem autoridade para tomar algumas decisões. O facilitador do projeto não tem autoridade para tomar decisões. 4. Em uma organizacão por projetos: (Assinale a alternativa CORRETA). Está subordinada a muitos chefes. Não é fiel ao projeto. Está subordinada ao gerente funcional. Nem sempre terá um "lar" de retorno ao final do projeto. Não consegue atingir seus objetivos. Explicação: A principal desvantagem de uma organização por projetos é que, no fim do projeto, a equipe se dispersa e não tem um departamento funcional ("lar") para o qual voltar. 5. (I) é "uma sequência de instruções a serem executadas, com o objetivo de gerar informações a partir de uma série de dados coletados ou armazenados". Também podemos definir como sendo "os programas que comandam o funcionamento de um computador". Após a leitura do conceito acima, analise cada uma das alternativas abaixo e assinale a correta, com relação a (I) Software Portifólio Projeto Processo Conhecimento Explicação: Software é "uma sequência de instruções a serem executadas, com o objetivo de gerar informações a partir de uma série de dados coletados ou armazenados". Também podemos definir como sendo "os programas que comandam o funcionamento de um computador". 6. A aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de atender aos seus requisitos denomina-se: Gestão de pessoas. Gerenciamento Contábil Financeiro. Gestão do Conhecimento. Gestão de Risco. Gerenciamento de Projetos. Explicação: O gerenciamento de projetos reúne habilidades que o líder dever possuir como liderança e conhecimento técnico, além de ferramentas de apoio. 7. Um software é composto por módulos, instruções, bibliotecas, que gera um programa executável que lê dados denominados "entradas" ou inputs ao final do processo de desenvolvimento, e este, quando executado, recebe algum tipo de "entrada" de dados (input), processa as informações e libera uma "saída" (output) como resultado deste processamento. Os softwares são classificados em três tipos, os quais: I. Software de Sistema: é o conjunto de informações que gerenciam o hardware, permitindo a interação entre o usuário e os periféricos do computador. Exemplos: Windows e Linux. II. Software de Programação: são programas de computadores que permitem ao usuário executar uma série de tarefas específicas em diversas áreas de atividade. Exemplos: planilha eletrônica, editores de texto e editores de apresentações (como PowerPoint). III. Software de Aplicação: é o conjunto de ferramentas que permitem ao programador desenvolver sistemas informáticos. Exemplos: C++, C#, VB, ASP, Delphi, GO. Após a leitura, analise as alternativas a seguir e assinale a correta. Somente a afirmação II está correta Somente a afirmação I está correta Somente a afirmação III está correta Somente as afirmações I e II estão corretas Somente as afirmações I e III estão corretas Explicação: Os softwares sao classificados em 3 tipos, os quais: · Software de Sistema: é o conjunto de informações que gerenciam o hardware, permitindo a interação entre o usuário e os periféricos do computador. Exemplos: Windows e Linux. · Software de Programação: é o conjunto de ferramentas que permitem ao programador desenvolver sistemas informáticos. Exemplos: exemplo, C++, C#, VB, ASP, Delphi, GO. · Software de Aplicação: são programas de computadores que permitem ao usuário executar uma série de tarefas específicas em diversas áreas de atividade. Exemplos: planilha eletrônica, editores de texto e editores de apresentações (como PowerPoint). 1. Um software é composto por módulos, instruções, bibliotecas, que gera um programa executável que lê dados denominados "entradas" ou inputs ao final do processo de desenvolvimento, e este, quando executado, recebe algum tipo de "entrada" de dados (input), processa as informações e libera uma "saída" (output) como resultado deste processamento. Os softwares são classificados em três tipos, os quais: I. Software de Sistema: é o conjunto de informações que gerenciam o hardware, permitindo a interação entre o usuário e os periféricos do computador. Exemplos: Windows e Linux. II. Software de Programação: são programas de computadores que permitem ao usuário executar uma série de tarefas específicas em diversas áreas de atividade. Exemplos: planilha eletrônica, editores de texto e editores de apresentações (como PowerPoint). III. Software de Aplicação: é o conjunto de ferramentas que permitem ao programador desenvolver sistemas informáticos. Exemplos: C++, C#, VB, ASP, Delphi, GO. Após a leitura, analise as alternativas a seguir e assinale a correta. Somente a afirmação I está correta Somente as afirmações I e II estão corretas Somente as afirmações I e III estão corretas Somente a afirmação III está correta Somente a afirmação II está correta Explicação: Os softwares sao classificados em 3 tipos, os quais: · Software de Sistema: é o conjunto de informações que gerenciam o hardware, permitindo a interação entre o usuário e os periféricos do computador. Exemplos: Windows e Linux. · Software de Programação: é o conjunto de ferramentas que permitem ao programador desenvolver sistemas informáticos. Exemplos: exemplo, C++, C#, VB, ASP, Delphi, GO. · Software de Aplicação: são programas de computadores que permitem ao usuário executar uma série de tarefas específicas em diversas áreas de atividade. Exemplos: planilha eletrônica, editores de texto e editores de apresentações (como PowerPoint). 2. (I) é "uma sequência de instruções a serem executadas, com o objetivo de gerar informações a partir de uma série de dados coletados ou armazenados". Também podemos definir como sendo "os programas que comandam o funcionamento de um computador". Apósa leitura do conceito acima, analise cada uma das alternativas abaixo e assinale a correta, com relação a (I) Processo Conhecimento Projeto Portifólio Software Explicação: Software é "uma sequência de instruções a serem executadas, com o objetivo de gerar informações a partir de uma série de dados coletados ou armazenados". Também podemos definir como sendo "os programas que comandam o funcionamento de um computador". 3. Em uma organização de matriz fraca dois gerentes de projetos acabam de perceber que seu poder é limitado. Um deles é facilitador de projetos e o outro atua como coordenador de projetos. Qual é a diferença entre um facilitador e um coordenador de projetos? O facilitador do projeto tem alguma autoridade. O facilitador do projeto está subordinado a um gerente de nível mais alto. O facilitador do projeto não pode tomar decisões. O facilitador do projeto gerencia o projeto até a entrega do produto/serviço. O facilitador do projeto pode tomar decisões. Explicação: O coordenador do projeto está subordinado a um gerente de nível mais alto e tem autoridade para tomar algumas decisões. O facilitador do projeto não tem autoridade para tomar decisões. 4. A aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de atender aos seus requisitos denomina-se: Gerenciamento Contábil Financeiro. Gerenciamento de Projetos. Gestão de Risco. Gestão de pessoas. Gestão do Conhecimento. Explicação: O gerenciamento de projetos reúne habilidades que o líder dever possuir como liderança e conhecimento técnico, além de ferramentas de apoio. 5. Um gerente de projetos tem pouca experiência, mas foi designado para assumir um novo projeto. Como trabalhará em uma organização matricial, ele pode esperar que as comunicações serão: (Assinale a alternativa CORRETA). Difíceis de automatizar Simples Complexas Fechadas Abertas Explicação: Como um projeto realizado em uma organização matricial envolve pessoas de bárias partes da organização, as comunicações são mais complexas. 6. Em uma organizacão por projetos: (Assinale a alternativa CORRETA). Está subordinada ao gerente funcional. Está subordinada a muitos chefes. Não consegue atingir seus objetivos. Nem sempre terá um "lar" de retorno ao final do projeto. Não é fiel ao projeto. Explicação: A principal desvantagem de uma organização por projetos é que, no fim do projeto, a equipe se dispersa e não tem um departamento funcional ("lar") para o qual voltar. 7. Um gerente de projeto está tentando concluir um projeto de desenvolvimento de software, mas não consegue obter atenção suficiente para o projeto. Os recursos estão concentrados em realizar trabalho relacionado a processos e o gerente do projeto tem pouca autoridade para designar recursos adequadamente. Em qual forma de organização o gerente de projeto trabalha? Fraca Coordenador Matricial Funcional Facilitador Explicação: Em uma organização funcional o gerente de projeto tem o menor apoio e pouca autoridade para ddesignar recursos. Facilitador e coordenador são formas de matriz fraca. Aula 2 1. Fonte: FUNRIO 2013 ¿ MPOG Analista de Tecnologia da Informação 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. iterativo em cascata iterativo e incremental incremental evolutivo Explicação: O modelo em Cascata possui este problema de ter a necessidade de um fluxo sequencial e os projetos do mundo real não seguem necessariamente esta sequencialidade. 2. Fonte: FCC 2013 - AL-RN Analista Legislativo - Analista de Sistemas O primeiro modelo de desenvolvimento de software a ser publicado foi derivado de processos mais gerais da engenharia de sistemas. Por causa do encadeamento entre uma fase e outra, esse modelo é conhecido como modelo em cascata ou ciclo de vida de software. Dentre seus principais estágios se encontram a análise e definição de requisitos, o projeto de sistema e software e: A|ssinale a complementação correta. desenvolvimento incremental pesquisa e testes. implementação e teste unitário análise de recursos e software geração de relatórios de teste Explicação: De acordo com o modelo cascata apresentado, após a fase de projeto vem a de implementação e teste unitário. 3. A prototipação representa uma técnica poderosa para o desenvolvimento de sistemas, mais especificamente do software desses sistemas. Sobre as funções desempenhadas por um protótipo, é correto afirmar que ele Pode auxiliar na validação de requisitos do sistema, bem como propiciar a inserção de novos requisitos ainda não identificados. Não possibilita avaliar a qualidade do software produzido. Não permite que sejam realizados testes, visando verificar o funcionamento do sistema final, ainda que sejam testes parciais. Permite avaliar o desempenho geral da equipe de desenvolvimento de software É inteiramente descartado, não sendo aproveitada nenhuma parte do código de software no sistema final entregue ao cliente. Explicação: O proposito básico da prototipação é sempre auxiliar na validação e elicitação de requisitos (necessidades) do software. 4. Propriedade: Seu nome foi atribuído devido à sequência com que cada fase do desenvolvimento dependia do término da fase anterior, Como se chama o processso de desenvolvimento de software com essa propriedade? RUP iterativo incremental àgil UML Cascata Explicação: esse é o modelo de processo de desenvolvimento chamado CASCATA, onde uma fase somente iniciava com o término da anterior 5. Fonte: FUMARC 2012 - TJ-MG Oficial Judiciário - Assistente Técnico de Sistemas Em relação aos modelos de processos de software, pode-se dizer que os modelos incremental e evolucionário possuem a característica de serem iterativos. Assinale a alternativa que melhor descreve um modelo de produção de software iterativo. Um modelo de produção de software iterativo é composto pelas fases de análise de requisitos, projeto, implementação, testes (validação), integração e manutenção de software. A abordagem iterativa possibilita desenvolver um sistema de software de forma incremental, permitindo ao desenvolvedor tirar vantagem daquilo que foi aprendido durante a fase inicial de desenvolvimento de uma versão do sistema. O aprendizado ocorre simultaneamente tanto para o desenvolvedor, quanto para o usuário do sistema. Os incrementos de um software são entregues ao cliente somente duas vezes. Os incrementos de um software são entregues ao cliente de uma só vez. Um modelo de produção de software iterativo é composto pelas fases de análise de requisitos, projeto e implementação. Explicação: Os incrementos são entregues durante todos os ciclos. A etapa de manutenção não entra no ciclo, vai até desde a elicitação de requisitos até a integração e implantação no cliente. A abordagem iterativa trabalha também de forma incremental. 6. Propriedade: Este modelo se propõe a aumentar poucoa pouco o software, conforme as necessidades surgem. Como se chama o modelo que apresenta essa propriedade? Incremental ágil cascata RUP sequencial Explicação: o pouco a pouco descrito na propriedade, sugere que o software vai sendo incrementado logo o modelo é o incremental 7. Fonte: UFF 2009 ¿ Analista de Tecnologia da Informação Em relação aos ciclos de vida do software, o desenvolvimento de sistemas por meio de ciclo de vida iterativos garante ao sistema: legalidade segurança legibilidade atualização contínua utilização mínima de recursos Explicação: De acordo com o discutido nas aulas, o modelo iterativo permite que o software seja desenvolvido em ciclos, atualizando as suas necessidades em cada ciclo. 1. Propriedade: Este modelo se propõe a aumentar pouco a pouco o software, conforme as necessidades surgem. Como se chama o modelo que apresenta essa propriedade? cascata ágil RUP Incremental sequencial Explicação: o pouco a pouco descrito na propriedade, sugere que o software vai sendo incrementado logo o modelo é o incremental 2. Propriedade: Seu nome foi atribuído devido à sequência com que cada fase do desenvolvimento dependia do término da fase anterior, Como se chama o processso de desenvolvimento de software com essa propriedade? Cascata iterativo incremental UML RUP àgil Explicação: esse é o modelo de processo de desenvolvimento chamado CASCATA, onde uma fase somente iniciava com o término da anterior 3. Fonte: UFF 2009 ¿ Analista de Tecnologia da Informação Em relação aos ciclos de vida do software, o desenvolvimento de sistemas por meio de ciclo de vida iterativos garante ao sistema: legibilidade legalidade utilização mínima de recursos segurança atualização contínua Explicação: De acordo com o discutido nas aulas, o modelo iterativo permite que o software seja desenvolvido em ciclos, atualizando as suas necessidades em cada ciclo. 4. Fonte: FUMARC 2012 - TJ-MG Oficial Judiciário - Assistente Técnico de Sistemas Em relação aos modelos de processos de software, pode-se dizer que os modelos incremental e evolucionário possuem a característica de serem iterativos. Assinale a alternativa que melhor descreve um modelo de produção de software iterativo. Os incrementos de um software são entregues ao cliente de uma só vez. A abordagem iterativa possibilita desenvolver um sistema de software de forma incremental, permitindo ao desenvolvedor tirar vantagem daquilo que foi aprendido durante a fase inicial de desenvolvimento de uma versão do sistema. O aprendizado ocorre simultaneamente tanto para o desenvolvedor, quanto para o usuário do sistema. Um modelo de produção de software iterativo é composto pelas fases de análise de requisitos, projeto e implementação. Um modelo de produção de software iterativo é composto pelas fases de análise de requisitos, projeto, implementação, testes (validação), integração e manutenção de software. Os incrementos de um software são entregues ao cliente somente duas vezes. Explicação: Os incrementos são entregues durante todos os ciclos. A etapa de manutenção não entra no ciclo, vai até desde a elicitação de requisitos até a integração e implantação no cliente. A abordagem iterativa trabalha também de forma incremental. 5. A prototipação representa uma técnica poderosa para o desenvolvimento de sistemas, mais especificamente do software desses sistemas. Sobre as funções desempenhadas por um protótipo, é correto afirmar que ele Não possibilita avaliar a qualidade do software produzido. Pode auxiliar na validação de requisitos do sistema, bem como propiciar a inserção de novos requisitos ainda não identificados. Permite avaliar o desempenho geral da equipe de desenvolvimento de software É inteiramente descartado, não sendo aproveitada nenhuma parte do código de software no sistema final entregue ao cliente. Não permite que sejam realizados testes, visando verificar o funcionamento do sistema final, ainda que sejam testes parciais. Explicação: O proposito básico da prototipação é sempre auxiliar na validação e elicitação de requisitos (necessidades) do software. 6. Fonte: FCC 2013 - AL-RN Analista Legislativo - Analista de Sistemas O primeiro modelo de desenvolvimento de software a ser publicado foi derivado de processos mais gerais da engenharia de sistemas. Por causa do encadeamento entre uma fase e outra, esse modelo é conhecido como modelo em cascata ou ciclo de vida de software. Dentre seus principais estágios se encontram a análise e definição de requisitos, o projeto de sistema e software e: A|ssinale a complementação correta. análise de recursos e software desenvolvimento incremental geração de relatórios de teste implementação e teste unitário pesquisa e testes. Explicação: De acordo com o modelo cascata apresentado, após a fase de projeto vem a de implementação e teste unitário. 7. Fonte: FUNRIO 2013 ¿ MPOG Analista de Tecnologia da Informação 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. incremental iterativo evolutivo em cascata iterativo e incremental Explicação: O modelo em Cascata possui este problema de ter a necessidade de um fluxo sequencial e os projetos do mundo real não seguem necessariamente esta sequencialidade. Aula 3 1. Podemos conceituar Qualidade de Software como: Um processo sistemático que focaliza todas as etapas e artefatos gerados com o objetivo de garantir a conformidade e uniformidade de processos e produtos, prevenindo e eliminado defeitos. Um processo que demonstra que algo funciona corretamente. Um processo que foca em todos os produtos de software gerados pela equipe de desenvolvimento. Um processo para demonstrar que os defeitos não estão presentes. Um processo para provar que determinadas coisas (funções) fazem o que devem fazer. Explicação: O conceito de teste ganha complexidade, pois os riscos dos softwares não funcionarem a contento, cresce de forma exponencial. Ainda assim poucas empresas percebem que a implantação de um ¿processo de garantia de qualidade de software¿ é uma questão de estratégia de sobrevivência em um mercado cada vez mais exigente e competitivo. Teste é o processo de demonstrar que os defeitos não estão presentes. Teste é o processo de demonstrar que algo funciona corretamente. Teste é o processo de provar que determinadas coisas (funções) fazem o que devem fazer. O objetivo real do teste de software é mostrar que um software está de acordo com suas especificações e que ele atende as expectativas do cliente. 2. É importante conhecermos o histórico das atividades de teste, para tratarmos os sistemas com qualidade. Myers foi um precursor sobre os processos de teste de software. Ele ficou conhecido pela "regra 10 de Myers" e concluiu também que zero-defeito é algo inatingível. Essa regra e conclusão estabelecem que: I- Todas as decisões tomadas durante o processo de desenvolvimento do software podem comprometer a sua qualidade final. II- A partir de processos uniformes econsistentes, a tendência é que o produto final gerado, ou seja, o software seja eficiente. III- Quanto mais tarde os defeitos forem encontrados tanto mais caro será corrigi-los. Assinale a assertiva correta. Apenas o item I está correto. Apenas os itens II e III estão corretos. Apenas o item III está correto. Apenas o item II está correto. Apenas os itens I e II estão corretos. Explicação: O item I indica a importância da qualidade de software que é é um processo sistemático que focaliza todas as etapas e artefatos gerados com objetivo de garantir a conformidade e uniformidade de processos e produtos, prevenindo e eliminado defeitos. Myers concluiu que zero-defeito é algo inatingível, ou seja, pela complexidade envolvida e pelo número altíssimo de situações existentes, torna-se impossível imaginar um produto de software ¿livre de erros¿. Sempre existirão erros a serem descobertos. Myers foi criador de termos muito usados como `Caixa Branca e Caixa Preta¿ e "Caso de Teste" e também ficou conhecido pela regra 10 de Myers. 3. A qualidade de software é um processo sistemático que focaliza todas as etapas e artefatos gerados com objetivo de garantir a conformidade e uniformidade de processos e produtos, prevenindo e eliminado defeitos. Vários fatores podem afetar a qualidade, como fatores externos e internos. São eles: I- Fatores externos - são percebidos tanto pelas pessoas que desenvolvem software quanto pelos usuários. II- Fatores internos - são percebidos apenas pelas pessoas que desenvolvem software. III- Fatores externos - são percebidos apenas pelas pessoas que desenvolvem software. IV- Fatores internos - são percebidos tanto pelas pessoas que desenvolvem software quanto pelos usuários. Assinale a assertiva correta. Apenas os itens I e II estão corretos. Apenas o item I está correto. Apenas os itens III e IV estão corretos. Apenas os itens II e III estão corretos. Apenas os itens I e IV estão corretos. Explicação: Se desejarmos desenvolver e produzir software com qualidade, é necessário investir em qualidade em todos os pontos do processo. Alguns fatores podem afetar a qualidade, como fatores externos e internos de `Qualidade de Software¿. Vejamos alguns exemplos: Fatores externos - são percebidos tanto pelas pessoas que desenvolvem software quanto pelos usuários. Por exemplo: confiabilidade, eficiência e facilidade de uso. Fatores internos - são percebidos apenas pelas pessoas que desenvolvem software. Por exemplo: modularidade e legibilidade. 4. O que podemos concluir do gráfico abaixo apresentado? No eixo vertical, temos o custo de conserto de erros em software No eixo horizontal, temos as fases do processo de desenvolvimento de software quando mais cedo os defeitos forem encontrados, mais caro é o custo da correção os testes não interferem na qualidade do produto de software os erros mais caros são detectados no inicio quando mais cedo os defeitos forem encontrados, mais barato é o custo da correção o ideal é detectarmos erros no software ao final do processo de desenvolvimento Explicação: Myers também ficou conhecido pela Regra de 10 de Myers, que mostra que ¿quanto mais tarde os defeitos forem encontrados, tanto mais caro será corrigi-los Consequentemente: quando mais cedo os defeitos forem encontrados, mais barato é o custo da correção 5. O teste do software deve acontecer (assinale a única opção correta): No início do processo de desenvolvimento No final do processo de desenvolvimento de software Em todo o processo de desenvolvimento No meio do processo de desenvolvimento No inicio e no final do processo de desenvolvimento Explicação: O teste de software tem que ocorrer em todo o processo de desenvolvimento. A garantia de qualidade de software (Software Quality Assurance) não é algo com a qual começamos a nos preocupar depois que o código foi gerado, e sim, ao longo de todo o processo de engenharia de software. 6. Com relação ao tamanho e complexidade de software, assinale a opção correta, considerando tais características nos anos 60, 80 e 2000. Em 1960 o tamanho era mínimo e em 2000 o tamanho é o mesmo. Em 1960 o tamanho era mínimo e em 1980 a complexidade era relativa. Em 1960 o tamaho era minimo e em 2000 a complexidade era média. Em 1980 a complexidade era média e em 2000 a complexidade era alta. Em 1980 o tamanho era pequeno e a complexidade alta. Explicação: No Cenário Atual do desenvolvimento de o conceito de teste ganha complexidade, pois os riscos dos softwares não funcionarem a contento, cresce de forma exponencial. Myers concluiu que zero-defeito é algo inatingível? Ou seja, pela complexidade envolvida e pelo número altíssimo de situações existentes, torna-se impossível imaginar um produto de software 'livre de erros'. Sempre existirão erros a serem descobertos. Aula 4 1. Sobre o conceito de Teste de Software, analise abaixo algumas citações de autores variados e, a seguir, assinale a alternativa correta: I. "Teste é uma parte inevitável de qualquer esforço necessário para desenvolver um sistema de software" II. "O teste de software é um conjunto de atividades que podem ser planejadas e executadas concomitantemente" III. "Qualquer atividade que, a partir da avaliação de um atributo ou capacidade de um programa ou sistema, seja possível determinar se alcança resultados desejados" IV. "Processo de executar um programa ou sistema com a itenção de encontrar defeitos" Somente as asserções I, II e IV estão corretas Somente as asserções I e II estão corretas Somente as asserções I, II e III estão corretas Somente as asserções II, III e IV estão corretas Somente as asserções I, III e IV estão corretas Explicação: "Teste é uma parte ineevitável de qualquer esforço necessário para desenvolver um sistema de software" (HOWDEN, 1987) "O teste de software é um conjunto de atividades que podem ser planejdas com antecedência e executadas sistematicamente" (PRESSMAN, 1985) "Qualquer atividade que, a partir da avaliação de um atributo ou capacidade de um programa ou sistema, seja possível determinar se alcança resultados desejados" (HETZEL, 1988) "Processo de executar um programa ou sistema com a itenção de encontrar defeitos" (MYERS, 1979) 2. A Engenharia de Software nos auxilia em muitas situações. Uma delas é a atividade de teste de software. Sobre este assunto, analise as asserçoes abaixo e, a seguir, assinale a alternativa correta: I. Existem dois tipos de teste de software: teste de baixo nível e teste de alto nível; II. O teste de software é o processo de executar o software de uma maneira controlada, com o objetivo de descobrir diferenças entre o comportamento previsto e o comportamento observado. III. Os testes de software podem ser usados para descobrir a ausência de erros no produto (software). Somente a asserção I está correta Somente as asserções I e III estão corretas Somente as asserções II e III estão corretas Somente as asserções I e II estão corretas Somente a asserção III está correta Explicação: A Engenharia de Software nos auxilia em muitas situações. Uma delas é a atividade de teste, que é um passo do processo de que visa encontrar ou corrigir erros durante toda a construção do software. Devemos incorporar dois tipos de testes: 1-Teste de baixo nível: utilizado para veerificar um pequeno fragmento de código-fonte. Nesse caso, saberemos se ele foi implementado corretamente. 2 - Teste de alto nível: tem a característica de validar as principais funções do sistema ccom base nos requisitos definidos pelo cliente. Os testes podem ser usados para descobrir a presençade erros nos softwares, mas infelizmente não mostram a sua ausência. Assim, conseguimos chegar à conclusão que "o teste de software é o processo de executar o software de uma maneira controlada, com o objetivo de descobrir diferenças entre o comportamento previsto e o comportamento observado". 3. Quanto às estratégias, existem muitas que podem ser utilizadas para testar um software. Uma das estratégias de teste é o Teste Unitário. O que visam os testes unitários? Visam tratar os testes como um processo organizado e muitas vezes paralelo e integrado ao processo de desenvolvimento. Visam garantir que cada unidade de programa atenda as especificações e funcione corretamente. Visam a execução do sistema como um todo ou um subsistema. Visam verificar se a solução atende aos objetivos do negócio e aos seus requisitos. Visam verificar se os componentes funcionam corretamente juntos, conforme as especificações. Explicação: Testes Unitários: São realizados no estágio mais baixo da escala de testes e são aplicados nas menores componentes de códigos criados, visando garantir que estes atendem as especificações, em termos de garantia e de funcionalidade. Testes de integração: São executados em uma combinação de componentes para verificar se eles funcionam corretamente juntos, conforme as especificações. Teste de sistema: São realizados pela equipe de testes, visando a execução do sistema como um todo ou um subsistema. Teste de aceitação: São os testes finais de execução do sistema, realizados pelos usuários, visando verificar se a solução atende aos objetivos do negócio e aos seus requisitos. Ao tratar os testes como um processo organizado e muitas vezes paralelo e integrado ao processo de desenvolvimento, os custos de manutenção serão reduzidos. 4. Quando devemos terminar os testes? I. Nunca, o projetista estará sempre testando. II. Quando o dinheiro ou o tempo acabar. III. O teste termina quando não houver mais erros. Assinale a única alternativa correta. Apenas os itens II e III estão corretos. Apenas os itens I e II estão corretos. Apenas o item III está correto. Todos os itens estão corretos. Apenas o item II está correto. Explicação: Você jamais terá completado a atividade de teste. A carga simplesmente transfere-se do projetista para o cliente. O teste para quando não houver mais erros `visíveis¿. O teste acaba quando o tempo acaba ou o dinheiro acaba: · Por restrição de tempo (nesse caso, deve-se negociar esse tempo); · Por restrição financeira (nesse caso, deve-se evitar). 5. O teste de software visa garantir a qualidade, minimizando as incertezas e sistematizando os critérios de aceitação, porém isso não pode ser feito sem uma estratégia de teste. Para que tenhamos uma estratégia de teste de software bem elaborada ela deve incorporar alguns testes como: I- Testes de baixo nível, necessários para verificar se um pequeno segmento de código fonte foi implementado corretamente. II- Testes de alto nível, que validam as funções principais do sistema de acordo com os requisitos do cliente. III- Documento básico para organizar a atividade de testar aplicações no contexto da empresa. Assinale a assertiva correta. Apenas o item II está correto. Apenas os itens I e II estão corretos. Apenas o item III está correto. Apenas os itens II e III estão corretos. Apenas o item I está correto. Explicação: O documento básico para organizar a atividade de testar aplicações no contexto da empresa é considerado uma metodologia. 6. 1. O que é necessário para se obter resultados positivos nos projetos de testes? I. Que o mesmo inicie desde a especificação dos requisitos do sistema a ser implementado. II. Que o mesmo inicie quando a programação estiver sendo desenvolvida. III. Que o mesmo inicie com o usuário para verificar se o mesmo está funcionando corretamente. Assinale a única alternativa correta. Apenas os itens II e III estão corretos. Apenas o item I está correto. Apenas os itens I e II estão corretos. Apenas o item III está correto. Apenas o item II está correto. Explicação: Para se obter resultados positivos nos projetos de testes é necessário que o mesmo inicie desde a especificação dos requisitos do sistema a ser implementado, ou seja, tão logo comece o projeto de desenvolvimento do software inicia-se também em conjunto o projeto de testes de software. 1. Sobre o conceito de Teste de Software, analise abaixo algumas citações de autores variados e, a seguir, assinale a alternativa correta: I. "Teste é uma parte inevitável de qualquer esforço necessário para desenvolver um sistema de software" II. "O teste de software é um conjunto de atividades que podem ser planejadas e executadas concomitantemente" III. "Qualquer atividade que, a partir da avaliação de um atributo ou capacidade de um programa ou sistema, seja possível determinar se alcança resultados desejados" IV. "Processo de executar um programa ou sistema com a itenção de encontrar defeitos" Somente as asserções I, III e IV estão corretas Somente as asserções I, II e III estão corretas Somente as asserções I, II e IV estão corretas Somente as asserções II, III e IV estão corretas Somente as asserções I e II estão corretas Explicação: "Teste é uma parte ineevitável de qualquer esforço necessário para desenvolver um sistema de software" (HOWDEN, 1987) "O teste de software é um conjunto de atividades que podem ser planejdas com antecedência e executadas sistematicamente" (PRESSMAN, 1985) "Qualquer atividade que, a partir da avaliação de um atributo ou capacidade de um programa ou sistema, seja possível determinar se alcança resultados desejados" (HETZEL, 1988) "Processo de executar um programa ou sistema com a itenção de encontrar defeitos" (MYERS, 1979) 2. A Engenharia de Software nos auxilia em muitas situações. Uma delas é a atividade de teste de software. Sobre este assunto, analise as asserçoes abaixo e, a seguir, assinale a alternativa correta: I. Existem dois tipos de teste de software: teste de baixo nível e teste de alto nível; II. O teste de software é o processo de executar o software de uma maneira controlada, com o objetivo de descobrir diferenças entre o comportamento previsto e o comportamento observado. III. Os testes de software podem ser usados para descobrir a ausência de erros no produto (software). Somente a asserção I está correta Somente as asserções I e II estão corretas Somente as asserções II e III estão corretas Somente a asserção III está correta Somente as asserções I e III estão corretas Explicação: A Engenharia de Software nos auxilia em muitas situações. Uma delas é a atividade de teste, que é um passo do processo de que visa encontrar ou corrigir erros durante toda a construção do software. Devemos incorporar dois tipos de testes: 1-Teste de baixo nível: utilizado para veerificar um pequeno fragmento de código-fonte. Nesse caso, saberemos se ele foi implementado corretamente. 2 - Teste de alto nível: tem a característica de validar as principais funções do sistema ccom base nos requisitos definidos pelo cliente. Os testes podem ser usados para descobrir a presença de erros nos softwares, mas infelizmente não mostram a sua ausência. Assim, conseguimos chegar à conclusão que "o teste de software é o processo de executar o software de uma maneira controlada, com o objetivo de descobrir diferenças entre o comportamento previsto e o comportamento observado". 3. Quando devemos terminar os testes? I. Nunca, o projetista estará sempre testando. II. Quando o dinheiro ou o tempo acabar. III. O teste termina quando não houver mais erros.Assinale a única alternativa correta. Apenas o item III está correto. Todos os itens estão corretos. Apenas os itens II e III estão corretos. Apenas os itens I e II estão corretos. Apenas o item II está correto. Explicação: Você jamais terá completado a atividade de teste. A carga simplesmente transfere-se do projetista para o cliente. O teste para quando não houver mais erros `visíveis¿. O teste acaba quando o tempo acaba ou o dinheiro acaba: · Por restrição de tempo (nesse caso, deve-se negociar esse tempo); · Por restrição financeira (nesse caso, deve-se evitar). 4. O teste de software visa garantir a qualidade, minimizando as incertezas e sistematizando os critérios de aceitação, porém isso não pode ser feito sem uma estratégia de teste. Para que tenhamos uma estratégia de teste de software bem elaborada ela deve incorporar alguns testes como: I- Testes de baixo nível, necessários para verificar se um pequeno segmento de código fonte foi implementado corretamente. II- Testes de alto nível, que validam as funções principais do sistema de acordo com os requisitos do cliente. III- Documento básico para organizar a atividade de testar aplicações no contexto da empresa. Assinale a assertiva correta. Apenas o item II está correto. Apenas o item III está correto. Apenas os itens II e III estão corretos. Apenas os itens I e II estão corretos. Apenas o item I está correto. Explicação: O documento básico para organizar a atividade de testar aplicações no contexto da empresa é considerado uma metodologia. 5. 1. O que é necessário para se obter resultados positivos nos projetos de testes? I. Que o mesmo inicie desde a especificação dos requisitos do sistema a ser implementado. II. Que o mesmo inicie quando a programação estiver sendo desenvolvida. III. Que o mesmo inicie com o usuário para verificar se o mesmo está funcionando corretamente. Assinale a única alternativa correta. Apenas os itens II e III estão corretos. Apenas os itens I e II estão corretos. Apenas o item III está correto. Apenas o item II está correto. Apenas o item I está correto. Explicação: Para se obter resultados positivos nos projetos de testes é necessário que o mesmo inicie desde a especificação dos requisitos do sistema a ser implementado, ou seja, tão logo comece o projeto de desenvolvimento do software inicia-se também em conjunto o projeto de testes de software. 6. Quanto às estratégias, existem muitas que podem ser utilizadas para testar um software. Uma das estratégias de teste é o Teste Unitário. O que visam os testes unitários? Visam a execução do sistema como um todo ou um subsistema. Visam verificar se os componentes funcionam corretamente juntos, conforme as especificações. Visam verificar se a solução atende aos objetivos do negócio e aos seus requisitos. Visam garantir que cada unidade de programa atenda as especificações e funcione corretamente. Visam tratar os testes como um processo organizado e muitas vezes paralelo e integrado ao processo de desenvolvimento. Explicação: Testes Unitários: São realizados no estágio mais baixo da escala de testes e são aplicados nas menores componentes de códigos criados, visando garantir que estes atendem as especificações, em termos de garantia e de funcionalidade. Testes de integração: São executados em uma combinação de componentes para verificar se eles funcionam corretamente juntos, conforme as especificações. Teste de sistema: São realizados pela equipe de testes, visando a execução do sistema como um todo ou um subsistema. Teste de aceitação: São os testes finais de execução do sistema, realizados pelos usuários, visando verificar se a solução atende aos objetivos do negócio e aos seus requisitos. Ao tratar os testes como um processo organizado e muitas vezes paralelo e integrado ao processo de desenvolvimento, os custos de manutenção serão reduzidos. Aula 5 1. O Modelo V é uma melhoria do Modelo Cascata (modelo Waterfall) do Desenvolvimento de Produto. A configuração desse modelo é representada por: Validação: unitário, código, sistema e programação. Verificação: requisitos, análise, arquitetura e código. Validação: requisitos, integração, sistema e programação. Validação: unitário, integração, sistema e programação. Verificação: integração, análise, desenvolvimento e código. Explicação: O Modelo V é uma melhoria do Modelo Cascata (modelo Waterfall) do Desenvolvimento de Produto, pois esse modelo tinha um problema de reatividade. Ele permite que, durante a integração de um sistema, os testes sejam feitos contra os próprios requisitos do componente ou interface que está sendo testado, em contraste com modelos anteriores onde o componente era testado contra a especificação do componente/interface. Verificação: requisitos, análise, arquitetura e código. Validação: unitário, integração, sistema e aceitação. 2. __________________ geralmente são executados após a correção de algum defeito ou após a adição de uma nova funcionalidade. Seu objetivo é garantir que nenhum defeito foi acrescentado ao sistema após sua modificação. Complete a lacuna. Testes de estresse Teste Integração Teste alfa Testes de regressão Teste fumaça Explicação: Os objetivos desse teste são garantir que nenhum defeito foi acrescentado ao sistema após sua modificação e também garantir que as mudanças realizadas nessa nova versão não gerarão erros em componentes prontos e testados. O teste de regressão é uma técnica aplicável a cada alteração realizada no software. Consiste em aplicar, antes e depois da alteração, todos os testes que já foram aplicados nas versões anteriores. Por ter essa natureza de repetição, torna-se imprescindível que seja adotada uma ferramenta de automação de testes. Esta técnica pode ser bem aplicada nas fases de testes de unidade, de integração e de sistema. 3. O (I) é um modelo mais robusto e completo do que o cascata, podendo produzir softwares de maior qualidade do que com ele. O (II) acrescenta duas partes importantes, que são: Verificação e Validação. Após a leitura das sentenças (I) e (II), assinale a alternativa que as preencher corretamente e respectivamente. (I) Modelo Iterativo; (II) Modelo Cascata (I) Modelo V; (II) Modelo Cascata (I) Modelo Iterativo; (II) Modelo Iterativo (I) Modelo V; (II) Modelo V (I) Modelo V; (II) Modelo Iterativo Explicação: É um modelo mais robusto e completo do que o cascata, podendo produzir softwares de maior qualidade do que com ele. Esse modelo acrescenta duas partes importantes, que são: - Verificação: Que está relacionado com a questão: O produto está sendo feito corretamente? - Validação: Está relacionado com a questão: O produto está sendo feito, ou seja, o software atende ao objetivo pretendido com precisão? 4. O Modelo V de desenvolvimento de software apresenta algumas vantagens e desvantagens. Sobre tais aspectos, leia as asserções abaixo e, a seguir, assinale a alternativa correta. I. No Modelo V, a relação entre os estágios de desenvolvimento e os diferentes tipos de testes facilita a localização de falhas. II. O Modelo V é altamente complexo e requer investimento para conseguir aprender. III. O Modelo V especiffica os papéis dos diferentes tipos de testes para serem executados. IV. O Modelo V envolve apenas os programadores no teste. Apenas as asserções I, II e III estão corretas Apenas as asserções I, II e IV estão corretas Apenas as asserções I e III estão corretas Apenas as asserções II, III e IV estão corretas Apenas as asserçoes II e IV estão corretasExplicação: Modelo V: Vantagens: · A relação entre os estágios de desenvolvimento e os diferentes tipos de testes facilita a localização de falhas; · É um modelo simples e fácil de aprender; · Especifica os papéis dos diferentes tipos de testes para ser executada; · Envolve o usuário no teste. Desvantagens: · É difícil para o cliente expor explicitamente todos os requisitos; · O cliente deve ter paciência, pois receberá o produto no fim do ciclo de vida; · O teste pode ser caro e às vezes não ser suficientemente eficaz; · O produto final pode não refletir todas as necessidades dos utilizadores. 5. O Modelo V é uma melhoria do Modelo Cascata (modelo Waterfall) do Desenvolvimento de Produto. Ela tem vantagens e desvantagens. As desvantagens são representadas por: Ele é um modelo simples e fácil de aprender. A relação entre os estágios de desenvolvimento e os diferentes tipos de testes facilita a localização de falhas. O cliente deve ter paciência, pois ele receberá o produto no fim do ciclo de vida. Especifica os papéis dos diferentes tipos de testes para ser executada. Envolver o usuário no teste. Explicação: As vantagens desse modelo são: A relação entre os estágios de desenvolvimento e os diferentes tipos de testes facilita a localização de falhas. Ele é um modelo simples e fácil de aprender. Especifica os papéis dos diferentes tipos de testes para ser executada. Envolver o usuário no teste. 6. O Modelo V é uma melhoria do Modelo Cascata do desenvolvimento de produto. Ele possui alguns objetivos, dentre os quais estão explicitados nas alternativas abaixo, EXCETO (ou seja, assinale a alternativa INCORRETA, isto é a que não representa um dos objetivos do Modelo V). Um dos objetivos do Modelo V é melhorar e garantir a qualidade do projeto. Um dos objetivos do Modelo V é melhorar a comunicação entre as partes interessadas. Um dos objetivos do Modelo V é mimizar os riscos do projeto. Um dos objetivos do Modelo V é reduzir os custos totais ao longo do ciclo de vida do projeto Um dos objetivos do Modelo V é maximizar os lucros da empresa desenvolvedora. Explicação: Objetivos do Modelo V: · Minimizar os riscos do projeto; · Melhorar e garantir a qualidade do projeto; · Reduzir os custos totais ao longo do ciclo de vida do projeto; · Melhorar a comunicação entre as partes interessadas. 7. A utilização do Modelo V minimiza os custos da qualidade do software, assim, segundo a regra 10 de Myers, os testes devem ser iniciados nas inspeções/revisões de código até os testes de software. Identifique se essa afirmação está certa ou errada. Essa afirmativa está errada, porque o Modelo V aumenta os custos da qualidade do software. Essa afirmativa está errada, porque o custo de correção de defeitos tende a aumentar quanto mais tarde o defeito é detectado. Essa afirmativa está certa, porque o Modelo V minimiza os custos da qualidade do software. Essa afirmativa está certa, porque o custo os testes devem ser iniciados nas inspeções/revisões de código até os testes de software. Essa afirmativa está errada, porque os teste devem ser iniciados quando já tivermos algum desenvolvimento. Explicação: Segundo Myers, o custo de correção de defeitos tende a aumentar quanto mais tarde o defeito é detectado. Os defeitos encontrados durante a produção tendem a custar muito mais que defeitos encontrados em modelos de dados e em outros documentos do projeto do software. Aula 6 1. "Caracteriza-se por testar, como um todo, o software e outros elementos do sistema" corresponde à definição do teste: Unidade. Integração. Caixa preta. Sistema. Validação. Explicação: O teste de sistema envolve uma série de diferentes testes, cujo propósito primordial é pôr completamente à prova o sistema baseado em computador. 2. O gerente de um departamento de sistemas decidiu que os produtos de software criados pela equipe A serão homologados pela equipe B, e vice-versa. Percebeu-se com o tempo, no entanto, o surgimento de diversos conflitos entre as equipes A e B. Qual a origem desses conflitos? A origem do problema é que os desenvolvedores testam para 'provar que funciona' e os homologadores para 'provar que não funciona', agravados no caso pela proximidade entre as equipes e pela constante troca de papéis no processo. A origem do problema foi a visão dos Caminhos de Manipulação de Erro. A origem do problema é que o erro mencionado não corresponde ao erro encontrado. A origem do problema foi a criação de um Grupo Independente de Teste (ITG). A origem do problema é que a condição de erro provocada pela execução no sistema antes da mensagem de manipulação de erro. Explicação: Neste caso, a origem do problema se deu porque a função dos desenvolvedores é testar para 'provar que funciona' e os homologadores para 'provar que não funciona', agravados no caso pela proximidade entre as equipes e pela constante troca de papéis no processo. 3. A equipe Z realizou a codificação de uma nova tela para o sistema de controle de estoque. O objetivo da equipe é garantir que não existem erros considerando apenas a parte 'nova' do produto. Quais as diferentes visões que devem ser consideradas ao aplicarmos este tipo de teste? Visão da Engenharia de Software, das interfaces, da estrutura lógica de dados, de condições limites, dos caminhos de manipulação de erro. Visão dos objetivos de negócio da empresa, das interfaces, da estrutura lógica de dados, de condições limites, dos caminhos de manipulação de erro. Visão das interfaces, da estrutura lógica de dados, dos caminhos independentes, das condições limites, dos caminhos de manipulação de erro. Visão da Engenharia de Software, dos objetivos de negócio da empresa, das interfaces, da estrutura lógica de dados, de condições limites. Visão da Engenharia de Software, dos objetivos de negócio da empresa, das interfaces, da estrutura lógica de dados, dos caminhos de manipulação de erro. Explicação: Para se ter uma visão de teste de unidade, são consideradas a Interface; Estrutura Lógica de Dados; Caminhos Independentes; Condições Limite e Caminhos de Manipulação de Erro. 4. Não é uma estratégia de software: Teste de integração. Teste de unidade. Teste de caixa marrom. Teste de sistema. Teste de validação. Explicação: Teste de caixa marrom não configura teste algum dentro da engenharia de software. 5. A equipe Z realizou a codificação de uma nova tela para o sistema de controle de estoque. O objetivo da equipe é garantir que não existem erros considerando apenas a parte "nova" do produto. Qual o tipo de teste que deve ser realizado? Teste Caixa-preta. Teste de validação Teste de integração Teste Caixa-branca Teste de unidade Explicação: O teste de unidade é também chamado de teste de componentes. Concentra-se em cada componente individual do software, de acordo com o que é implementado no código fonte. 6. A equipe de desenvolvimento recebe o documento de Resultado de Testes gerado pelos homologadores. Qual processo os desenvolvedores devem executar agora? Os desenvolvedores farão o reparo do erro. Os desenvolvedores irão planejar o reparo do erro. Os desenvolvedores farão a localização do erro. Os desenvolvedores irão refazer os testes. Os desenvolvedores farão a depuração. Explicação: Os testes já foram efetuados pela equipe e os desenvolvedores tem que fazer a depuração. 7. "É caracterizadopor concentrar-se no projeto e na construção da arquitetura de software" refere-se ao teste de: Integração. Caixa preta. Sistema. Validação. Unidade. Explicação: No teste de integração os módulos são montados ou integrados para formar um pacote de software. Utiliza principalmente as técnicas de teste de caixa preta. Aula 7 1. Sobre os planos de teste é incorreto afirmar que: É importante que os planos de testes contenham um cronograma de atividades. O planejamento dos planos englobam, no total, duas atividades principais: definir um cronograma de atividades e fazer alocação de recursos. Planos de testes são um dos documentos produzidos na condução de um projeto. Quem pode elaborar os planos de testes é o gerente de projeto ou o gerente de testes. Definem quantos e quais testes serão realizados. Explicação: O planejamento engloba três atividades principais: definir um cronograma de atividades, fazer alocação de recursos e definir marcos de projeto: estabelecer os marcos a serem alcançados, com o objetivo de fazer o acompanhamento. 2. Sobre os casos de teste é incorreto afirmar que: Podemos utilizar a ferramenta de casos de uso para criar e rastrear um caso de teste, facilitando assim identificação de possíveis falhas. Podem ser elaborados para identificar defeitos na estrutura interna do software por meio de situações que exercitem adequadamente todas as estruturas utilizadas na codificação. Numa situação ideal, no desenvolvimento de casos de teste, se espera encontrar o subconjunto dos casos de teste possíveis com a maior probabilidade de encontrar a maioria dos erros. Devem especificar unicamente os valores de entrada e os resultados esperados do processamento. Garantem que os requisitos do software que foi construído sejam plenamente atendidos. Explicação: O caso de teste deve especificar os valores de entrada e os resultados esperados do processamento. 3. "Trata-se de uma aplicação open source voltada para a gestão de testes, desenvolvida e mantida por várias equipes ao longo dos anos. Oferece suporte para criação, execução e manutenção de casos de teste, planos de testes e requisitos. Permite a geração de relatórios gerenciais e estatísticos sobre os testes executados e a integração com outras ferramentas de gerenciamento de bugs". (Caetano, 2007). O texto refere-se a ferramenta: Dev C++ Skype TestLink Microssoft Teams Hangouts Meet Explicação: TestLink é um software web desenvolvido para teste de software que visa facilitar testes e assegurar a qualidade de software. 4. Existem diferentes papéis com diferentes reponsabilidade dentro de uma equipe de teste independente. Marque a opção INCORRETA: Analista de Teste - responsável pela modelagem e elaboração dos casos de testes e scripts de teste. Product Owner - Responsável pela análise dos dados de teste. Gerente de Teste - responsável pela liderança de um projeto de teste específico. Arquiteto de Teste - Responsável pela montagem do ambiente de teste (infraestrutura) e escolha de ferramentas. Testador - Responsável pela execução dos casos de teste e script de teste. Explicação: O Product Owner não faz parte dos papéis e reponsabilidade dentro de uma equipe de teste independente. Sem planejamento, fica mais difícil o desenvolvimento de qualquer projeto. O plano é como se fosse um mapa. Com ele podemos chegar ao nosso destino. A Equipe (responsabilidades e requisitos humanos) e Infraestrutura: - Mostram as necessidades físicas para a realização do teste. - Mostram os diferentes papéis desempenhados no projeto de teste. - Os recursos humanos e requisitos de treinamento da equipe de teste. 5. Na empresa, seu chefe solicitou que você elaborasse a documentação da abordagem da equipe de software para os testes a serem realizados em uma importante aplicação web da sua empresa. Esta documentação deve conter a definição do plano que descreve a estratégia global e o procedimento designando as etapas específicas do teste, assim como os tipos de testes que serão aplicados. Neste caso qual documento você deverá elaborar? Caso de uso. Massa de teste. Script de teste. Especificação de teste. Caso de teste. Explicação: Neste caso, a especificação de teste é um documento que especifica um procedimento de teste com objetivo determinado, assim, é dada a condição de entrada e o resultado esperado após a execução do teste. 6. Existem alguns grupos importantes de erros comumente cometidos por quem testa software. O propósito da atividade de teste ocorre quando o ator que controla a execução não entende bem qual o sentido de se fazer a atividade de testar e não aproveita os resultados de forma eficaz. Quais são os erros mais comuns que ocorrem nesse grupo? Assinale a afirmativa INCORRETA. Não encontrar os erros importantes. Atribuir a responsabilidade pela qualidade unicamente à equipe de teste. Não enfatizar o teste de configuração. Não informar sobre erros de usabilidade. Achar que a tarefa de equipe de testes é simplesmente encontrar erros. Explicação: Esse item pertence ao planejamento de teste. 7. Sobre a elaboração do plano de teste é incorreto afirmar que: A equipe define os diferentes papéis desempenhados no projeto de teste. O cronograma de atividades descreve marcos importantes das atividades. Estratégias e ferramentas de testes definem questões como atividades e ferramentas usadas no test. Os requisitos devem ser descritos aos pares para que as funcionalidades do software sejam testadas. A documentação estabelece uma relação dos documentos pertinentes ao projeto. Explicação: Descreve-se, isoladamente, os requisitos para que as funcionalidades do software sejam testadas. Aula 8 1. A utilização de uma ferramenta para a automatização dos testes permite: Aumentar a qualidade final do produto. Economizar recursos, mas não tempo durante a execução dos testes. Executar os mesmos testes por uma quantidade fixa de vezes. Economizar tempo, mas não recursos durante a execução dos testes. Automatizar qualquer caso sem que se avalie a sua necessidade. Explicação: Economizam tempo e recursos durante a execução dos testes; Aumentam a qualidade final do produto, pois a execução de todos os testes funcionais que existem no sistema garante uma menor incidência de erros e falhas no programa. Possibilitam executar os mesmos testes repetidas vezes. É importante considerar os casos em que cabe utilizar a automação,em nem todos os casos é interessante a automação de testes. 2. De quem é a responsabilidade do teste de aceitação? Do gerente e do desenvolvedor Do desenvolvedor Do cliente Do gerente de projeto Do cliente e do desenvolvedor Explicação: No Teste de Aceitação, é impossível prever como o cliente realmente usará um programa. Por isso esse teste é de responsabilidade do cliente. 3. Sobre os testes automatizados de software é incorreto afirmar que: Preparação do ambiente, execução dos testes e conferência dos testes são etapas dos testes automatizados. Cucumber é uma ferramenta de automação de testes. Um projeto de automação de software é um investimento alto e de longa duração. Todo caso de teste é naturalmente candidato a automação, mas com toda a certeza nem todos são recomendáveis para a automação. Os testes automatizados substituem os testes manuais. Explicação: Ostestes automatizados não podem substituir os testes manuais. Eles são complementares. 4. Quais são as estratégias que podem ser usadas no teste de aceitação? Teste de implantação, teste de requisitos e teste de unidade Teste formal, teste caixa-branca e teste alfa Teste formal, teste informal e teste beta Teste formal, teste de unidade e teste alfa Teste de implantação, teste caixa-branca e teste alfa Explicação: Como é a última etapa de teste antes da implantação do software, seu objetivo é verificar se o software está pronto e se pode ser utilizado pelos usuários finais executando as tarefas e funções para as quais foi criado, então as estratégias de testes a serem executados são: Teste formal, teste informal e teste beta. 5. Sobre o teste de aceitação é correto afirmar que: Um defeito encontrado em um artefato de software chama-se de falha. O comportamento do software diferente do esperado pelo usuário final chama-se de erro. Ato inconsistente realizado por um indivíduo ao tentar compreender uma informação chama-se de defeito. Erro e falha são, do ponto de vista do teste de aceitação, semanticamente equivalentes. Um bug gerado por um programador não pode ser considerado uma falha. Explicação: Erro é um defeito encontrado em um artefato de software. Falha é o comportamento do software diferente do esperado pelo usuário final. Erros e falhas não são semanticamente equivalentes. Bugs são falhas. 6. A MTS (Metodologia de Teste de Sistema) define os Requisitos de Negócio como: Escritos para informar em algumas linhas como o requisito será testado Base para os Requisitos Detalhados Serve de base para os Requisitos Não-Funcionais e Detalhados Escritos para o projeto físico e a programação Escritos na linguagem da área de negócios e podem conter gráficos, tabelas e diagramas Explicação: A MTS (Metodologia de Teste de Sistema) define os Requisitos de Negócio como sendo escritos na linguagem da área de negócios e podem conter gráficos, tabelas e diagramas. Correspondem a objetivos, metas ou ¿desejos¿ da área de negócios. 7. São considerados testes de baixo nível: Unidade e Sistema. Unidade e Aceitação. Integração e Sistema. Unidade e Integração. Integração e Aceitação. Explicação: Sistema e Aceitação são considerados testes de alto nível. Aula 9 1. Não é status de um bug cadastrado pela ferramenta Mantis: Fechado. Pendente. Em execução. Retorno. Descartado. Explicação: Os status válidos são: novo, retorno, atribuído, em execução, pendente, concluído e fechado. 2. Não é uma ferramenta de software que permite a gestão de Bugs: Zephyr Jira Trac Scrum Eventum Explicação: O Scrum é um framework de gerenciamento de projetos. 3. O que é um BugTracker? É uma aplicação J2EE de acompanhamento e gestão dos problemas Um sistema de rastreamento de defeitos É um software que elimina o histórico dos bugs do sistema Um software que não possuía um kernel (núcleo) estável É uma ferramenta possui a funcionalidade de wiki para documentação Explicação: Os outros itens referem-se a outros softwares livres. 4. Segundo o padrão IEEE 610.12-1990 (IEEE Standard Glossary of Software Engineering Terminology), o processo de gestão de defeitos tem como etapa conseguinte a "identificação do defeito" é: Solução do defeito. Prevenção de defeito. Linha base entregável. Melhoria do processo. Definir relatório de gestão. Explicação: A ordem das etapas no proceso é: prevenção de defeito, linha base entregável, identificação do defeito, solução do defeito e melhoria do processo. 5. Qual tarefa não é necessárias para pré-instalação do MantisBT? Visualizar os usuários que possuem apenas permissão de consulta Extraia o lançamento Renomeie o diretório Faça o download do MantisBT Transferir o arquivo baixado para o seu servidor Explicação: Cada nível de usuários do Mantis possui diferentes responsabilidades dentro da ferramenta. O Visualizador é um dos níveis. 6. Qual sistema de banco de dados não é suportado pelo Mantis BugTRaker? ADABAS MySQL DB2 PostgreSQL MS SQL Explicação: ADABAS (Adaptable DAta BAse System)- Sistema de Banco de Dados Adaptável é o principal sistema gerenciador de banco de dados em modelo de rede desenvolvido pela empresa Software AG, usado inicialmente apenas em Mainframes, mas agora suportado por diversos sistemas diferentes, inclusive os de plataforma baixa. 7. Sobre o controle de Bugs é correto afirmar: Ao encontrar um bug, o responsável deve, obrigatoriamente, avisar o desenvolvedor via e-mail. Devido a complexidade do tema, não é possível o desenvolvimento de um sistema de rastreamento de bugs. Um BugTracke é um aplicativo de software que controla os erros de software relatados em projetos de desenvolvimento de software. A melhor maneira de relatar a existência de bugs é por meio de protocolos internacionais de desenvolvimento de software. O analista de requisitos é o responsável por encontrar erros, falhas, bugs e outros tipos de problemas que não foram detectados durante o desenvolvimento de um software. Explicação: Um BugTracker é um sistema de rastreamento de bugs, ou seja, de defeitos. É um aplicativo de software que controla os erros de software relatados em projetos de desenvolvimento de software. Pode ser considerado também um tipo de sistema de rastreamento de problemas. O tester (isto é, o analista de teste) - é o responsável por encontrar erros, falhas, bugs e outros tipos de problemas que não foram detectados durante o desenvolvimento de um software. Ao encontrar um bug, ele pode avisar o desenvolvedor, de várias formas. Exemplo: pessoalmente, msn, por e-mail, documentos, ferramentas de bug tracking, etc. A melhor maneira de relatar a existência de bugs por meios formais e informais dependerá da dinâmica da equipe de testes e do seu processo dentre essas alternativas apresentas. Aula 10 1. Sobre filtrar casos de teste na ferramenta TestLink é incorreto afirmir: Os usuários podem filtrar casos de testes por palavra-chave. Permite ao usuário filtrar os casos de testes para uma navegação inteligente antes que eles sejam executados. Os usuários podem filtrar casos de teste por resultados. Os usuários podem filtrar casos de testes por seus testadores. Pode-se apenas criar e ediar palavras-chave. Explicação: As palavras-chave são definidas usando o Criar/Editar/Deletar casos de testes ou pelo Atribuir palavras-chave para múltiplos casos. Palavras-chave só podem ser criadas, editadas ou apagadas pelo líder, mas podem ser renomeadas aos casos de testes por testadores. 2. São a base organizacional da unidade do TestLink: Marcos de teste. Usuário. Planos de teste. Casos de teste. Projetos de teste. Explicação: Os projetos de teste são a base organizacional da unidade de TestLink. Os projetos de teste são lançamentos da sua empresa que podem alte rar as suas características e funcionalidades ao longo do tempo, mas, na maior parte dos casos, continuam a ser os mesmos. O projeto de teste inclui requisitos de documentação, especificação de testes, planos de testes e direitos específicos dos usuários.3. Dentre as tarefas do Testlink encontramos o conceito de criação de usuários. Cada usuário envolvido no projeto de testes deve ser cadastrado na ferramenta incluindo: I- Profissionais da equipe de testes como gerente de testes, coordenador de testes, analistas de teste e testadores. II- Profissionais da equipe de desenvolvimento como gerente de desenvolvimento, coordenador de desenvolvimento, analistas de sistema, projetistas e desenvolvedores. III- Profissionais envolvidos no projeto que necessitem pelo menos visualizar as informações que estão na ferramenta, como gerentes de projeto, analistas de negócios, equipem de ambiente, diretores. Assinale a assertiva correta. Apenas o item I está correto. Apenas os itens I e II estão corretos. Os itens I, II e III estão corretos. Apenas o item II está correto. Apenas os itens II e III estão corretos. Explicação: Todas as assertivas estão corretas. Os usuários no Testlink ao serem criados, recebem um perfil específico, que será seu perfil padrão. Para cada projeto que atuem, podem ter perfis diferentes. Exemplo: um coordenador de testes pode atuar como líder em um projeto que está sob sua responsabilidade, mas pode ser visitante em outro projeto que é coordenado por outro usuário. 4. Existem várias ferramentas para encontrar erros, falhas, bugs e outros tipos de problemas que não foram detectados durante o desenvolvimento de um software. Uma delas é o TestLinkMantis. As características dessa ferramenta são: I- Permite a escrita e armazenamento de projetos de teste, planos de teste, casos de teste bem como a execução manual dos testes. II- É escrita em C++ e roda no banco de dados MySql. III- Possui relatórios que permitem verificar o andamento do projeto de testes. Assinale a assertiva correta. Apenas o item II está correto. Apenas os itens I e III estão corretos. Apenas os itens I e II estão corretos. Apenas os itens II e III estão corretos. Apenas o item I está correto. Explicação: O item II está incorreto porque a ferramenta Testlink é escrita em PHP e roda no banco de dados MySql. 5. As métricas ajudam na geração do processo de teste. Essas métricas devem ser relatadas como um fator de qualidade do software. Classifique a métrica Auditabilidade para testar e relatar o que acontece com o software testado. O dano que ocorre quando o programa encontra um erro. A facilidade de operação de um programa. A independência funcional dos componentes do programa. Facilidade com que se pode checar a conformidade aos padrões. O quanto o software é desvinculado do hardware em que opera. Explicação: As outras métricas referem-se a: Tolerância a erros, Independência de hardware, Modularidade, Operabilidade. 6. Sobre a criação de um novo projeto de teste no TestLink é correto: O usuário comum pode desativar o projeto de teste se ele estiver obsoleto. As cores de fundo podem ser atribuídas a modelos de projeto de teste para distingui-los visualmente. Há suporte de importação de dados em HTML para dentro do Projeto de Teste. Qualquer usuário pode criar um novo projeto. Os nomes dos projetos podem ser repitidos. Explicação: Criar um novo projeto de teste exige direitos de administrador. Cada projeto deve ter um nome exclusivo. TestLink suporta importação de dados em XML ou CSV dentro do Projeto de Teste. A edição de projetos de testes requer direitos de a dministrador. Somente como administrador o usuário pode desativar o projeto de teste se ele estiver obsoleto. 7. Sobre as baselines/releases no TestLink é correto afirmar: Representam o encerramento de um novo release do software, que é um novo build contendo modificações em relação ao release anterior. Representam a liberação de um novo release do software, que é um novo build contendo modificações em relação ao release anterior. Representam a liberação de um novo build do software, que é um novo release contendo modificações em relação ao build anterior. Representam a liberação de um novo build do software, que é um novo release contendo modificações em relação ao release anterior. Representam o encerramento de um novo build do software, que é um novo release contendo modificações em relação ao release anterior. Explicação: Baselines/ releases no TestLink representam a liberação de um novo build do software, que é um novo release contendo modificações em relação ao release anterior.
Compartilhar