Baixe o app para aproveitar ainda mais
Prévia do material em texto
Engenharia de Software – Engenharia de Requisitos Prof. Washington Almeida, MSC, ISF 27002 Engenharia de Requisitos • Existem diferentes definições encontradas na literatura técnica para engenharia de requisitos: • Termo usado para descrever as atividades relacionadas à investigação e definição de escopo de um sistema de software; • Processo sistemático de desenvolvimento de requisitos através de um processo cooperativo de análise onde os resultados das observações são codificados em uma variedade de formatos e a acurácia das observações é constantemente verificada; • Processo de descobrir, analisar, documentar e verificar as funções e restrições do sistema. 3 Atividades do Processo de Engenharia de Requisitos 4 (SOMMERVILLE, 2011) Verificação x Validação • Barry Boehm, pioneiro da engenharia de software, expressou sucintamente a diferença entre validação e verificação (BOEHM, 1979): • ‘Validação: estamos construindo o produto certo?’ • ‘Verificação: estamos construindo o produto da maneira certa?’ 5 Verificação • Examina a especificação do software, de forma a assegurar a definição sem ambigüidades, inconsistências ou omissões, detectando e corrigindo possíveis problemas ainda durante a fase de definição dos requisitos. • O custo da correção de defeitos aumenta na medida em que o processo de desenvolvimento progride. • Revisões de artefatos de software têm se mostrado uma abordagem eficiente e de baixo custo para encontrar defeitos. • Modelos de maturidade de processo de software, como o CMMI e o MPS.BR exigem a condução de revisões. 6 Validação • A validação representa a atividade em que obtemos o aceite do cliente sob determinado artefato. • No cenário de engenharia de requisitos, esta atividade significa aprovar junto ao cliente os requisitos que foram especificados. 7 Requisitos de Sistema/Software • Descrições do que o sistema de software deve fazer, os serviços que ele oferece, as restrições do seu funcionamento. • Demonstra as necessidades dos clientes que servem a uma finalidade determinada. 8 Níveis de Requisitos • Declaração Abstrata (alto nível) -> requisito de usuário • Linguagem natural (pode ser utilizado diagramas) • O que o sistema deve fornecer aos usuários • Restrições com os quais o sistema deve operar • Declaração detalhada (baixo nível) -> requisito de sistema • “Especificação de requisitos” • Definir exatamente o que deve ser implementado • Serve para os desenvolvedores 9 Requisitos Funcionais • Serviços que devem ser fornecidos • “Funcionalidades do sistema” • Como o sistema deve reagir a entradas especificas • Como o sistema deve se comportar em determinada situações • O que o sistema não deve fazer 10 Requisitos Não Funcionais • Restrições aos serviços ou funções do sistema • Incluem restrições de tempo e no processo. • Geralmente aplicam-se ao sistema como todo. • relacionados ao uso da aplicação em termos de desempenho, usabilidade, confiabilidade, segurança, disponibilidade, manutenção e tecnologias envolvidas. 11 Tipos de Requisitos Não Funcionais 12 Requisitos Não Funcionais • Requisitos de produto: especificam o comportamento do produto. • Exemplo: Incluem os requisitos de desempenho quanto à rapidez com que o sistema deve executar e quanta memória ele requer, os requisitos de confiabilidade que estabelecem a taxa aceitável de falhas, os requisitos de proteção e os requisitos de usabilidade. • Requisitos organizacionais: Esses são os requisitos gerais de sistemas derivados das políticas e procedimentos da organização do cliente e do desenvolvedor. • Exemplo: os requisitos do processo de desenvolvimento que especificam a linguagem de programação, o ambiente de desenvolvimento ou normas de processo a serem usadas, bem como os requisitos ambientais que especificam o ambiente operacional do sistema. • Requisitos externos: que abrange tópicos advindos de fatores externos ao sistema. Dentre eles destacam-se os requisitos de interoperabilidade, os requisitos éticos e os requisitos legais que devem ser observados a fim de garantir que o sistema opera de acordo com a lei. • Exemplo: o que deve ser feito para que o sistema seja aprovado para uso, por um regulador, tal como um banco central; requisitos legais, que devem ser seguidos para garantir que o sistema opere dentro da lei 13 Requisitos do Projeto • Requisitos do Negócio descrevem em termos do negócio o que deve ser entregue ou conseguido para fornecer valor. • Requisitos do Produto descrevem propriedades de um sistema ou produto (que poderá ser uma de várias maneiras de conseguir satisfazer um conjunto de requisitos de negócio.) • Requisitos do Processo podem especificar as metodologias específicas que devem ser seguidas, e as restrições a que a organização deve obedecer. 14 Questão 1 Ano: 2017 Banca: CESPE Órgão: TRE-PE Prova: CESPE - 2017 - TRE-PE - Analista Judiciário - Análise de Sistemas No contexto da análise de requisitos, confiabilidade e usabilidade são atributos de qualidade classificados como: a) requisitos funcionais. b) requisitos de domínio. c) requisitos não funcionais. d) dependências. e) regras de negócio. 15 LETRA C https://www.qconcursos.com/questoes-de-concursos/bancas/cespe https://www.qconcursos.com/questoes-de-concursos/institutos/tre-pe https://www.qconcursos.com/questoes-de-concursos/provas/cespe-2017-tre-pe-analista-judiciario-analise-de-sistemas Questão 2 Ano: 2019 Banca: FCC Órgão: AFAP Prova: FCC - 2019 - AFAP - Analista de Fomento - Tecnologia da Informação Um Analista de Informática levantou os requisitos para desenvolver um sistema de gestão. Dentre os requisitos levantados, I. o sistema deve apresentar a tela de login e senha antes de cada transação e validar o acesso com base nas políticas de segurança organizacional. II . o sistema deve estar disponível para a diretoria em tempo integral, ou seja, 24 x 7. III . o tempo de resposta de uma consulta da alta administração não pode exceder a 5 milissegundos. IV. cada Diretor que usa o sistema deve ser identificado apenas por sua matrícula de cinco dígitos seguidos do código de segurança. V. o sistema deverá gravar um log de autenticação a cada transação completada, contendo a identificação do usuário, data e equipamento utilizado. VI. os backups do sistema deverão ser feitos diariamente a fim de evitar a eventual perda de dados sem capacidade de recuperação. Contêm um requisito funcional e um requisito não funcional, respectivamente, APENAS os itens: a) II e I. b) V e I. c) IV e VI. d) II e III . e) VI e V. 16 LETRA C RF RNF RNF RF RNF RNF https://www.qconcursos.com/questoes-de-concursos/bancas/fcc https://www.qconcursos.com/questoes-de-concursos/institutos/afap https://www.qconcursos.com/questoes-de-concursos/provas/fcc-2019-afap-analista-de-fomento-tecnologia-da-informacao Questão 3 Ano: 2018 Banca: FCC Órgão: SEFAZ-SC Prova: FCC - 2018 - SEFAZ-SC - Auditor-Fiscal da Receita Estadual - Tecnologia da Informação Sobre a área de conhecimento “requisitos de software”, para um sistema que contém componentes de software, considere: I. Os requisitos do sistema são derivados dos requisitos do software, esses abrangem os requisitos do usuário, os requisitos de outras partes interessadas e os requisitos sem uma fonte humana identificável. II. Os requisitos do sistema são definidos de uma maneira restrita em relação aos requisitos do usuário, considerando apenas os requisitos dos clientes ou usuários finais do software. III. Os requisitos do produto são necessidades ou restrições do software a ser desenvolvido e os requisitos do processo são essencialmente restrições no desenvolvimento do software. Está correto o que se afirma em: a) I, apenas. b) II, apenas. c) III, apenas. d) I e II, apenas. e) I, II e III. 17 LETRA C Justificativa: I. Requisitos sem fonte humana não está no contexto. II. Definir exatamente o que deve ser implementado é o objetivo do requisito de sistema. https://www.qconcursos.com/questoes-de-concursos/bancas/fcchttps://www.qconcursos.com/questoes-de-concursos/institutos/sefaz-sc https://www.qconcursos.com/questoes-de-concursos/provas/fcc-2018-sefaz-sc-auditor-fiscal-da-receita-estadual-tecnologia-da-informacao-prova-3 Continua... • Atividades do Processo de Engenharia de Requisitos • Técnicas de Levantamento de Requisitos • Gerenciamento de Requisitos • Outros tipos de Requisitos 18 Gabarito 19 Questão Resposta 1 C 2 C 3 C Referências • PRESSMAN, Roger S. ; Bruce R. Maxim. Engenharia de Software, Uma Abordagem Profissional, 8° ed. Porto Alegre: AMGH, 2016. ISBN 978-85-8055- 533-2. • SOMMERVILLE, Ian. Engenharia de Software, 9. ed. São Paulo: Pearson Prentice Hall, 2011. ISBN 978-85-7936-108-1. 20
Compartilhar