Baixe o app para aproveitar ainda mais
Prévia do material em texto
Engenharia de Requisitos Prof Tavares Tema 02 Engenharia de Requisitos 1 Engenharia de Requisitos Prof Tavares Atividades típicas de um PDS • Levantamento de requisitos • Análise de requisitos • Projeto • Implementação • Testes • Implantação 2 Engenharia de requisitos Engenharia de Requisitos Prof Tavares Engenharia de Requisitos • Processo de descobrir, analisar, documentar e verificar os serviços fornecidos pelo sistema e suas restrições operacionais. • Parte do Processo de Desenvolvimento de Software. 3 Engenharia de Requisitos Prof Tavares 4 Requisitos como documentação de uma necessidade a ser satisfeita ou uma propriedade de um produto Engenharia de Requisitos Prof Tavares Requisito de software • Corresponde a uma descrição de um serviço a ser fornecido pelo sistema ou uma restrição operacional . • Uma condição ou capacidade que deve ser alcançada ou possuída por um sistema, produto, serviço, resultado ou componente para satisfazer um contrato, padrão, especificação ou outro documento formalmente imposto. 5 Engenharia de Requisitos Prof Tavares Requisito de software • A especificação de requisitos é um contrato entre clientes e equipe de desenvolvimento, devendo esclarecer aos clientes o que será entregue como produto do trabalho da equipe de desenvolvimento. • Esses clientes devem ser capazes de compreender a mensagem e fornecer feedback sobre eventuais falhas na especificação, para que estas sejam corrigidas de imediato, antes que trabalho errado seja produzido mais tarde no projeto. • O objetivo principal da especificação é documentar de forma fiel e completa todas as necessidades dos clientes e obter um aceite (aprovação) sobre o que se está propondo entregar em termos de produto. 6 Engenharia de Requisitos Prof Tavares Especificação de requisitos para quem? ▪ Dois tipos de leitores principais: clientes e membros da equipe de desenvolvimento. ▪ Em relação aos clientes, quase nunca isso abrange uma única pessoa ou somente o usuário final. Um software costuma ter vários tipos de usuário. Um projeto tem interessados em várias unidades organizacionais da empresa. ▪ O desafio é construir uma visão da especificação de requisitos que seja compreendida por essas várias pessoas presentes no lado cliente da história. 7 Engenharia de Requisitos Prof Tavares Rastreabilidade dos requisitos • Uma especificação rastreável é aquela que estabelece relação entre requisitos, suas origens e produtos derivados. Isso torna a especificação mais modificável, mais fácil de verificar se está correta e completa, além de facilitar a análise de impacto das mudanças. • A rastreabilidade auxilia a verificar a conformidade do produto com os requisitos, seja identificando requisitos que estão faltando (especificação incompleta) ou sobrando (especificação incorreta). A rastreabilidade também ajuda a identificar se todos os objetivos de negócio estão cobertos pelos requisitos e produtos gerados, prevenindo insatisfações das partes interessadas. 8 Engenharia de Requisitos Prof Tavares Correta ▪ Uma especificação de requisitos é correta quando cada requisito especificado ajuda a satisfazer ao menos uma necessidade ou demanda legítima do negócio presente nos objetivos do projeto. ▪ O vínculo (ou rastreabilidade) dos requisitos na especificação para as necessidades de negócio facilita a verificação se todos os requisitos estão corretos. ▪ Um requisito presente na especificação que não tem relação alguma com nenhuma necessidade de negócio é um requisito incorreto. Completa ▪ Todos os elementos significativos do domínio do problema devem ser descritos. Exemplos: ✓ Funcionalidades, aspectos de qualidade, restrições de projeto e interfaces externas. ✓ Definição de todo comportamento de resposta para cada tipo de entrada possível para o software. ✓ Rótulos e referências para todas as figuras, tabelas e diagramas presentes na especificação. 9 Engenharia de Requisitos Prof Tavares • Funcionais • Não funcionais • Domínio Tipos de Requisitos 10 Engenharia de Requisitos Prof Tavares Requisitos Funcionais • São as declarações de serviços que o sistema deve fornecer, como o sistema deve reagir a entradas específicas e como o sistema deve se comportar em determinadas situações. • Definem as funcionalidades do sistema. • Descrevem o que o sistema deve fazer. 11 Engenharia de Requisitos Prof Tavares Requisitos Funcionais Exemplo: Grau de prioridade Função da adição de valor que o desenvolvimento do requisito trouxer ao usuário 12 Engenharia de Requisitos Prof Tavares Requisitos Não funcionais • São restrições sobre os serviços ou funções oferecidas pelo sistema. 13 Engenharia de Requisitos Prof Tavares Requisitos Não funcionais • Requisitos de produtos: especificam o comportamento do produto. • Requisitos organizacionais: procedentes de políticas e procedimentos nas organizações do cliente e do desenvolvedor. • Requisitos externos: abrange os requisitos procedentes de fatores externos ao sistema e a seu processo de desenvolvimento. 14 Engenharia de Requisitos Prof Tavares Requisitos Não funcionais Produto Organizacionais Externos Eficiência Confiabilidade Portabilidade Usabilidade Padrões Implemen- tação Entrega Interopera- bilidade Legislativos Privacidade Segurança Éticos Requisitos Não Funcionais 15 Engenharia de Requisitos Prof Tavares Requisitos Não funcionais • Incluem, ainda, as caracteríticas de qualidade que o sistema deve possuir, devendo estas serem expressas quantitativamente, por meio de métricas que possam ser testadas. • As medições deverão ser feitas durante o teste de sistema, com a finalidade de se determinar se o sistema cumpre ou não com os requisitos. 16 Engenharia de Requisitos Prof Tavares Propriedade Métrica para Especificar Requisito Não Funcional Velocidade Transações processadas/segundo Tempo de resposta ao evento/usuário Tempo de refresh de tela Tamanho K bytes RAM Facilidade de uso Tempo de treinamento Número de frames de ajuda Confiabilidade Tempo médio para falhar Probabilidade de indisponibilidade Taxa de ocorrência de falhas Disponibilidade Robustez Tempo de reinício depois de uma falha Porcentagem de eventos que causam falhas Probabilidade de que os dados sejam corrompidos por falhas Portabilidade Porcentagem de declarações dependentes de sistemas-alvo Número de sistemas-alvo 17 Engenharia de Requisitos Prof Tavares Requisitos de Domínio: Regras de negócio • Requisitos que se originam do domínio de aplicação do sistema, em vez das necessidades específicas dos usuários do sistema. • Podem ser requisitos funcionais novos (1), restrições sobre requisitos existentes (2) ou computações específicas(3). • Exemplos de requisitos de domínio: 1) Devido às restrições de direitos autorais, algumas classes de documentos serão excluídas após a impressão. 2) Um aluno pode se matricular em uma disciplina desde que ele tenha sido aprovado nas disciplinas consideradas pré-requisitos. 3) O cálculo da média final de cada aluno é dado pela fórmula: (Nota1 * 2 + Nota2 * 3)/5. 18 Engenharia de Requisitos Prof Tavares Atividades típicas de um PDS • Levantamento de requisitos • Análise de requisitos • Projeto • Implementação • Testes • Implantação 19 Engenharia de requisitos Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Engenharia de Requisitos Prof Tavares • A atividade (também conhecida como levantamento de requisitos) que corresponde à etapa de compreensão do problema aplicada ao desenvolvimento de software. • O principal objetivo do levantamento de requisitos é que usuários e desenvolvedores tenham a mesma visão do problema a ser resolvido. • Nessa etapa, os desenvolvedores,juntamente com os clientes, tentam levantar e definir as necessidades dos futuros usuários do sistema a ser desenvolvido. • Essas necessidades são geralmente denominadas requisitos. elicitação de requisitos Engenharia de Requisitos Prof Tavares • Durante o levantamento de requisitos, a equipe de desenvolvimento tenta entender o domínio que deve ser automatizado pelo sistema de software. • Há várias técnicas utilizadas para isso, como, por exemplo: ✓ leitura de obras de referência e livros-texto; ✓ observação do ambiente do usuário; ✓ realização de entrevistas com os usuários; ✓ entrevistas com especialistas do domínio; ✓ reutilização de análises anteriores; ✓ comparação com sistemas preexistentes do mesmo domínio do negócio. ELICITAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares Frequentemente, a especificação de requisitos não é único documento, mas uma composição de vários tipos de documentos, sendo comum que uma especificação de requisitos abranja: • Visão geral: cita os objetivos do projetos, principais partes interessadas, um escopo preliminar com uma breve descrição das funções que o sistema deverá desempenhar. • Glossário: definição dos termos técnicos do negócio. • Modelos do sistema: mostram as perspectivas do sistema – modelo de casos de uso, modelo de classes, etc • Lista de requisitos funcionais • Lista de requisitos não funcionais • Especificação detalhada de requisitos: detalha os requisitos funcionais (por exemplo, especificações de casos de uso, regras de negócio). Engenharia de Requisitos Prof Tavares • O envolvimento do cliente desde o início do processo de desenvolvimento ajuda a assegurar que o produto desenvolvido realmente atenda às necessidades identificadas. • Além disso, o documento de requisitos estabelece o escopo do sistema (isto é, o que faz parte e o que não faz parte do sistema). • O escopo de um sistema muitas vezes muda durante o seu desenvolvimento. Dessa forma, se o escopo muda, tanto clientes quanto desenvolvedores têm um parâmetro para decidir em que medida os recursos de tempo e financeiros devem mudar. • Contudo, o planejamento inicial do projeto deve se basear no escopo inicial. ELICITAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Documentos de Requisitos Engenharia de Requisitos Prof Tavares • Formalmente, o termo análise corresponde a "quebrar" um sistema em seus componentes e estudar como tais componentes interagem com o objetivo de entender como esse sistema funciona. • No contexto dos sistemas de software, esta é a etapa em que os analistas realizam um estudo detalhado dos requisitos levantados na atividade anterior. A partir desse estudo, são construídos modelos para representar o sistema a ser construído. ANÁLISE DE REQUISITOS Engenharia de Requisitos Prof Tavares • Nesta atividade, o foco de interesse é tentar construir uma estratégia de solução sem se preocupar com a maneira como essa estratégia será realizada. A razão desta prática é tentar obter a melhor solução para o problema sem se preocupar com os detalhes da tecnologia a ser utilizada. • Em outras palavras, é necessário saber o que o sistema proposto deve fazer para, então, definir como esse sistema irá fazê-lo. ANÁLISE DE REQUISITOS Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Documentos de Requisitos Modelos Engenharia de Requisitos Prof Tavares • Com a validação, os analistas querem se assegurar de que a especificação que construíram do software é correta, consistente, completa, realista e sem ambiguidades. • Nessa atividade, os analistas apresentam os modelos criados para representar o sistema aos futuros usuários para que esses modelos sejam validados. • Quando um usuário valida um modelo, quer dizer que entendeu o modelo construído e que, segundo esse entendimento, o modelo reflete suas necessidades com relação ao sistema a ser desenvolvido. VALIDAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares • Um erro na etapa de levantamento de requisitos, se identificado tardiamente, implica a construção de um sistema que não corresponde às expectativas do usuário. • Um fator decisivo para o sucesso de um sistema é o envolvimento de especialistas do domínio durante o desenvolvimento. • Por isso, a atividade de validação dos requisitos por parte dos usuários é tão importante. VALIDAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Documentos de Requisitos Modelos Engenharia de Requisitos Prof Tavares • A verificação tem o objetivo de analisar se os modelos construídos estão em conformidade com os requisitos definidos: será que o software está sendo construído corretamente? • Na verificação dos modelos, são analisadas a exatidão de cada modelo em separado e a consistência entre os modelos. VERIFICAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Documentos de Requisitos Modelos Engenharia de Requisitos Prof Tavares • Levantamento de requisitos • Análise de requisitos • Projeto • Implementação • Testes • Implantação 34 Engenharia de requisitos APÓS A ANÁLISE..... Engenharia de Requisitos Prof Tavares • O foco principal da análise são os aspectos lógicos e independentes de implementação de um sistema (os requisitos). • Na fase de projeto, determina-se "como" o sistema funcionará para atender aos requisitos, de acordo com os recursos tecnológicos existentes (a fase de projeto considera os aspectos físicos e dependentes de implementação). • Aos modelos construídos na fase de análise são adicionadas as denominadas "restrições de tecnologia". APÓS A ANÁLISE..... Engenharia de Requisitos Prof Tavares • Durante o levantamento de requisitos, a equipe de desenvolvimento tenta entender o domínio que deve ser automatizado pelo sistema de software. • Há várias técnicas utilizadas para isso, como, por exemplo: ▪ leitura de obras de referência e livros-texto; ▪ observação do ambiente do usuário; ▪ realização de entrevistas com os usuários; ▪ entrevistas com especialistas do domínio; ▪ reutilização de análises anteriores; ▪ comparação com sistemas preexistentes do mesmo domínio do negócio. ELICITAÇÃO DE REQUISITOS Engenharia de Requisitos Prof Tavares Domínio do Problema Elicitação de Requisitos Análise de Requisitos Validação de Requisitos Verificação de Requisitos Documentos de Requisitos Engenharia de Requisitos Prof Tavares Análise de documentos ✓ A análise de documentos é um meio de elicitar requisitos pelo estudo de documentação disponível sobre uma solução existente para identificação de informação relevante para o desenvolvimento de uma nova solução. ✓ O termo "documentação" neste caso deve ter um significado mais amplo do que as especificações dos requisitos da solução e incluir documentos sobre o domínio do problema que permitam alcançar os objetivos de informação presentes em momentos iniciais e com importância estruturante para todo o ciclo de vida do projeto. ✓ São dois os objetivos de informação: ❖ Identificar as necessidades de negócio (oportunidades a aproveitar, problemas a resolver, objetivos a alcançar). ❖ Identificar, inicialmente, as partes interessadas chave e, em seguida, as demais. Engenharia de Requisitos Prof Tavares Glossário ✓ O glossário identifica e define termos-chave para o domínio do problema, capturando o vocabulário comum das partes interessadas. A observação- Etnografia ✓ Pode ser usada para entender requisitos sociais e organizacionais. ✓ O observador imerge no ambiente de trabalho onde a solução será usada observando o trabalho cotidiano e tomando notas das tarefas em execução nas quais as partes interessadas estão envolvidas. Engenharia de Requisitos Prof Tavares A entrevista ❖ Forma de diálogo, formal ou informal, entre duas ou mais pessoas, onde o entrevistador busca respostas para um conjunto de questões previamente planejadas e os entrevistados se apresentam como fontes de informação. ❖Para os projetos de software o entrevistado deve ter o papel principal e o entrevistador ser um mero facilitador da conversa, para que ela flua no sentido de responder às questões planejadas. ❖O entrevistador deve ter uma habilidade de comunicação interpessoal muito bem desenvolvida para que consiga lidar com as distintas personalidades dos entrevistados e fazer a conversa ser fluida e objetiva. Engenharia de Requisitos Prof Tavares A entrevista - Preparação ❖O roteiro de questões é fundamental para conseguir melhor resultado na entrevista. ❖Tão importante quanto orientar o entrevistado, a elaboração do roteiro é também uma forma de o entrevistador se preparar, ou seja, pensar na seleção ideal de perguntas, imaginar possíveis respostas; algumas respostas podem precisar de perguntas adicionais, tentar antecipá-las etc. Engenharia de Requisitos Prof Tavares A entrevista - Preparação ❖A técnica do 5W + 2H ajuda a não esquecer nenhum aspecto relevante do assunto tratado. Seu nome deriva do acrônimo das perguntas em inglês abordadas: what? (o quê, de quê, para quê?), who? (quem, com quem, de quem?), when? (quando?), where? (onde, de onde, para onde?), why? (por quê?), how? (como?) e how much? (quanto?). ❖Então, imagine que o interesse seja conhecer melhor um processo de negócio — por exemplo, reembolso de despesas de viagem. Se na entrevista conseguimos obter resposta a todas as dimensões do assunto abordadas pelo 5W + 2H, então dificilmente algo relevante ficou omisso. ❖Evite questões longas ou complexas. Em uma pergunta longa é provável que o entrevistado só responda a uma parte dela, sendo melhor fracioná-la e simplificar. Engenharia de Requisitos Prof Tavares Pesquisa/questionário ✓ A pesquisa consiste na aplicação de um questionário às partes interessadas e posterior análise das respostas. ✓ Tanto ajuda para complementar quanto para preparar uma entrevista. ✓ Técnica que permite a rápida obtenção de informações quantitativas e qualitativas de um público-alvo numeroso. Quando aplicada a uma amostra representativa do público, permite representar as opiniões de toda a população. ✓ É também interessante de se aplicar quando as partes interessadas não estão em um único local físico. Imagine um projeto de escala global, envolvendo pessoas de diversos países. Realizar entrevistas presenciais implicaria em custos de viagem significativos. Usar os recursos de videoconferência seria uma alternativa mais econômica, mas e o fuso horário? Engenharia de Requisitos Prof Tavares JAD - Joint Application Design ❖O JAD, Joint Application Design, ou Método de Projeto Interativo, substitui as entrevistas individuais por reuniões de grupo, onde participam representantes dos usuários e os representantes dos desenvolvedores. ❖O Objetivo do Método ❖O objetivo do método é extrair informações de alta qualidade dos usuários, em curto espaço de tempo, através de reuniões estruturadas para alcançar decisões por consenso. Engenharia de Requisitos Prof Tavares Brainstorming ❖ São reuniões na qual participam todos os envolvidos na idealização do produto, como os analistas, clientes e usuários finais. ❖Todos os envolvidos devem expor suas ideias e necessidades em relação ao produto/serviço. ❖Há situações em que muitas idéias iguais são vistas de maneiras diferentes. Engenharia de Requisitos Prof Tavares “A qualidade é conformidade aos requisitos” 46 Engenharia de Requisitos Prof Tavares Até a próxima!! 47
Compartilhar