Buscar

Tema 02 - Engenharia de Requisitos

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

Continue navegando