Вы находитесь на странице: 1из 25

Processos de Engenharia de

Requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 1

Objetivos

Descrever as principais atividades de engenharia de requisitos


e seus relacionamentos
Apresentar tcnicas para elicitao e anlise de requisitos
Descrever validao de requisitos e o papel das revises de
requisitos
Discutir o papel do gerenciamento de requisitos no apoio de
outros processos de engenharia de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 2

Tpicos abordados

Estudos de viabilidade
Elicitao e anlise de requisitos
Validao de requisitos
Gerenciamento de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 3

Processos de engenharia de requisitos

Os processos usados nos requisitos de engenharia


(doravante, RE) variam amplamente dependendo do domnio
de aplicao, das pessoas envolvidas e da organizao que
desenvolve os requisitos.
Contudo, existe uma srie de atividades genricas comuns a
todos os processos

Elicitao de requisitos;

Anlise de requisitos;

Validao de requisitos;

Gerenciamento de requisitos.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 4

O processo de engenharia de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 5

Engenharia de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 6

Estudos de viabilidade

Um estudo de viabilidade decide se vale a pena ou no


gastar tempo e esforo com sistema proposto.
um estudo breve e focalizado que verifica
Se o sistema contribui para os objetivos da
organizao;
Se o sistema pode ser implementado usando
tecnologia atual e dentro do oramento;
Se o sistema pode ser integrado a outros s.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 7

Implementao do estudo de
viabilidade

Baseado na avaliao de informao (o que requerido),


coleta de informao e escrita de relatrio.
Questes para as pessoas da organizao

O que faria se o sistema no fosse implementado?

Quais so os problemas com processo atuais?

Como o sistema proposto ajudar?

Quais sero os problemas de integrao?

Tecnologia nova necessria? Quais habilidades?

Quais recursos devem ser apoiados pelo sistema


proposto?

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 8

Elicitao e anlise

Algumas vezes chamada de elicitao de requisitos ou de


descoberta de requisitos.
Envolve pessoal tcnico trabalhando com os clientes para
descobrir sobre o domnio de aplicao, os servios que o
sistema deve fornecer e sobre as restries operacionais.
Pode envolver usurios finais, gerentes, engenheiros
envolvidos na manuteno, especialistas de domnio,
representantes de sindicato, etc. Estes so chamandos
stakeholders.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 9

Problemas de anlise de requisitos

Stakeholders no sabem o que eles realmente querem.


Stakeholders expressam requisitos em seus prprios termos.
Diferentes stakeholders podem ter requisitos conflitantes.
Fatores organizacionais e polticos podem influenciar os
requisitos de sistema.
A mudana de requisitos durante o processo de anlise. Novos
stakeholders podem surgir e o ambiente de negcio muda.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 10

A espiral de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 11

Atividades de processo

Obteno de requisitos

Interao com os stakeholders para coletar seus


requisitos. Os requisitos de domnio so tambm
descobertos neste estgio.
Classificao e organizao de requisitos

Agrupa requisitos relacionados e organiza-os em


conjuntos coerentes.
Priorizao e negociao de requisitos

Priorizao de requisitos e resoluo de conflitos de


requisitos.
Documentao de requisitos

Os requisitos so documentados e colocados na prxima


volta da espiral.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 12

Descoberta de requisitos

o processo de reunir informaes sobre os sistemas


propostos e existentes, e obter requisitos de usurio e de
sistema a partir dessas informaes.
As fontes de informao incluem documentao,
stakeholders e as especificaes de sistemas similares.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 13

Stakeholders de caixa eletrnico

Clientes de banco
Representantes de outros bancos
Gerentes de bancos
Pessoal de conta
Administradores de banco de dados
Gerentes de proteo
Departamento de marketing
Engenheiros de manuteno de hardware e de software
Reguladores de banco

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 14

Pontos de vista

Pontos de vista so uma maneira de estruturar os


requisitos para representar as perspectivas de
stakeholders diferentes. Stakeholders podem ser
classificados em diferentes pontos de vista.
Essa anlise de mltiplas perspectivas importante, pois
no h uma maneira nica correta para analisar
osrequisitos de sistema.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 15

Tipos de pontos de vista

Pontos de vista de interao

So as pessoas ou os outros sistemas que interagem


diretamente com o sistema. Em um sistema de caixa
eletrnica bancrio, os clientes e o banco de dados de
contas so pontos de vista de interao.
Pontos de vista indiretos

So os stakeholders que no usam o sistema


diretamente, mas que influenciam os requisitos. Em um
sistema de caixa eletrnico bancrio, gerncia e pessoal
de proteo so pontos de vista indiretos.
Pontos de vista de domnio

So as caractersticas e restries de domnio que


influenciam os requisitos. Em um sistema de caixa
eletrnico bancrio, um exemplo seria os padres para
comunicaes entre bancos.
2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 16

Identificao de pontos de vista

Identificar pontos de vista usando:

Fornecedores e receptores de servios do sistema;

Sistemas que devem interfacear diretamente com o


sistema que est sendo especificado;

Regulamentos e padres;

Fontes de requisitos de negcio e de requisitos no


funcionais;

Engenheiros que tm de desenvolver e manter o sistema;

Marketing e outros pontos de vista de negcio.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 17

Hierarquia de pontos de vista do


LIBSYS

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 18

Entrevista

Em entrevista formal ou informal, a equipe de RE formula


questes para os stakeholders sobre o sistema que eles
usam e o sistema a ser desenvolvido.
Existem dois tipos de entrevistas
Entrevistas fechadas, onde um conjunto de
questes predefinidas so respondidas.
Entrevistas abertas, onde no h um roteiro
predefinido e onde uma variedade de assuntos so
explorados com os stakeholders.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 19

Entrevistas na prtica

Normalmente, uma mistura de entrevistas fechadas e abertas


Entrevistas so boas para obteno de um entendimento geral
do que os stakeholders fazem e como eles podem interagir
com o sistema.
Entrevistas no so boas para a compreenso de requisitos de
domnio

Os engenheiros de requisitos no podem entender a


terminologia especfica de domnio;

Alguns conhecimentos de domnio so to especificos


que as pessoas acham difcil explicar ou pensam que
no valem a pena mencion-los

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 20

Entrevistas efetivas

Os entrevistadores devem ter mente aberta, desejarem


ouvir os stakeholders e no ter idias preconcebidas
sobre os requisitos.
Eles devem induzir os entrevistados com uma questo
ou uma proposta, e no simplesmente esperar que eles
respondam a uma questo tal como o que voc quer?.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 21

Cenrios

Cenrios so exemplos reais de como um sistema pode


ser usado.
Eles devem incluir
Uma descrio da situao inicial;
Uma descrio do fluxo normal de eventos;
Uma descrio do que pode dar errado;
Informao sobre outras atividades concorrentes;
Uma descrio do estado quando o cenrio termina.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 22

Cenrio do LIBSYS

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 23

Casos de uso

Os casos de uso constituem uma tcnica baseada em


cenrios UML que identificam os agentes em uma interao, e
que descrevem a interao em si.
Um conjunto de casos de uso deve descrever todas as
possveis interaes com o sistema.
Diagramas de seqncia podem ser usadas para adicionar
detalhes aos casos de uso, mostrando a seqncia de
processamento de eventos no sistema.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 24

Caso de uso de impresso de artigo

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 25

Casos de uso do LIBSYS

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 26

Impresso de artigo

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 27

Fatores sociais e organizacionais

Sistemas de software so usados em um contexto social


e organizacional. Isso pode influenciar, ou mesmo
dominar os requisitos de sistema.
Fatores sociais e organizacionais no so um ponto de
vista nico, mas so influncias sobre todos pontos de
vista.
Bons analistas devem ser sensveis a esses fatores, mas
atualmente no h uma maneira sistemtica para
contrapor suas anlises.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 28

Etnografia

Um cientista social despende um tempo considervel


observando e analisando como as pessoas realmente
trabalham.
As pessoas no tm de explicar ou articular seu trabalho.
Fatores sociais e organizacionais de importncia podem ser
observados.
Estudos de etnografia tm mostrado que o trabalho ,
geralmente, mais rico e mais complexo do que o sugerido
pelos modelos simples de sistema.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 29

Etnografia focalizada

Desenvolvida em um projeto de estudo do processo de


controle de trfego areo.
Combina etnografia com prototipao.
O desenvolvimento de prottipo resulta em questes no
respondidas que enfocam a anlise etnogrfica.
O problema com a etnografia, que ela estuda prticas
existentes que podem ter alguma base histrica que no
mais relevante.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 30

Etnografia e prototipao

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 31

Escopo da etnografia

So requisitos originados a partir do modo como as


pessoas realmente trabalham, e no como as definies
de processo sugerem que elas deveriam trabalhar.
So requisitos originados a partir da cooperao e da
conscientizao das atividades de outras pessoas.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 32

Validao de requisitos

Dedica-se a mostrar que os requisitos definem o sistema


que o cliente realmente deseja.
Custos de erros de requisitos so altos e, desse modo, a
validao muito importante
A custo da reparao de um erro de requisitos
depois da entrega pode equivaler a 100 vezes o
custo de reparao de um erro de implementao.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 33

Verificao de requisitos

Verificao de validade. O sistema fornece as funes que


melhor apiam as necessidades do cliente?
Verificao de consistncia. Existe algum tipo de conflito de
requisitos?
Verificao de completeza. Todas as funes requisitadas pelo
cliente foram includas?
Verificao de realismo. Os requisitos podem ser
implementados com o oramento e a tecnologia disponveis?
Facilidade de verificao. Os requisitos podem ser verificados?

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 34

Tcnicas de validao de requisitos

Revises de requisitos
Anlise manual sistemtica dos requisitos.
Prototipao
Uso de um modelo executvel do sistema para
verificar requisitos. Abordado no Captulo 17.
Gerao de casos de teste.
Desenvolvimento de testes para requisitos a fim de
verificar a testabilidade.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 35

Revises de requisitos

Revises regulares devem ser feitas enquanto a


definio de requisitos est sendo formulada.
Ambos, cliente e fornecedor, devem ser envolvidos nas
revises.
Revises podem ser formais (com documentos
completos) ou informais. Uma boa comunicao entre
desenvolvedores, clientes e usurios podem resolver
problemas nos estgios iniciais.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 36

Verificao de requisitos

Facilidade de verificao. O requisito realisticamente


testvel?
Facilidade de compreenso. O requisito
adequademente compreendido?
Rastreabilidade. A origem do requisito claramente
estabelecida?
Adaptabilidade. O requisito pode ser mudado sem um
grande impacto em outros requisitos?

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 37

Gerenciamento de requisitos

Gerenciamento de requisitos, o processo de gerenciamento


de mudanas de requisitos durante o processo de engenharia
de requisitos e o desenvolvimento de sistema.
Requisitos so, inevitavelmente, incompletos e inconsistentes

Novos requisitos surgem durante o processo, medida


que as necessidades de negcio mudam e uma melhor
compreenso do sistema desenvolvida;

Os diferentes pontos de vista tm requisitos diferentes e


estes so freqentemente contraditrios.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 38

Mudana de requisitos

A priorizao dos requisitos em conseqncia das


mudanas de pontos de vista durante o processo de
desenvolvimento.
Os clientes do sistema podem especificar os requisitos a
partir de uma perspectiva de negcio que conflitam com
os requisitos do usurio final.
Os ambientes tcnico e de negcio do sistema mudam
durante seu desenvolvimento.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 39

Evoluo de requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 40

Requisitos permanentes e volteis

Requisitos permanentes. So requisitos estveis,


derivados da atividade central da organizao do cliente.
Por exemplo, um hospital ter sempre mdicos,
enfermeiros, etc. Podem ser derivados dos modelos de
domnio.
Requisitos volteis. So requisitos que mudam durante o
desenvolvimento, ou quando o sistema estiver em
operao. Um exemplo seria, em um hospital, os
requisitos derivados da poltica de sade.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 41

Classificao de requisitos volteis

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 42

Planejamento de gerenciamento de
requisitos

Durante o processo de engenharia de requisitos, voc tem de


planejar:

A Identificao de requisitos
Como os requisitos so identificados individualmente;

O processo de gerenciamento de mudanas


o processo seguido quando da anlise de uma
mudana de requisitos;

Polticas de rastreabilidade
a quantidade de informaes que mantida sobre
os relacionamentos de requisitos;

Apoio de ferramenta CASE


O apoio de ferramenta requisitada para auxiliar no
gerenciamento das mudanas requisitos.
2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 43

Rastreabilidade

A rastreabilidade est relacionada aos relacionamentos entre


os requisitos, suas fontes e o projeto de sistema.
Rastreabilidade da fonte

Ligam os requisitos aos stakeholders que propuseram os


requisitos;
Rastreabilidade de requisitos

a ligao dos requisitos dependentes;


Rastreabilidade de projeto

Ligam os requisitos aos mdulos de projeto.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 44

Uma matriz de rastreabiidade

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 45

Apoio de ferramenta CASE

Armazenamento de requisitos

Os requisitos devem ser mantidos em um repositrio de


dados seguro e gerenciado.
Gerenciamento de mudanas

O processo de gerenciamento de mudanas um


processo de workflow cujos estgios podem ser
definidos, e o fluxo de informaes entre esses estgios,
parcialmente automatizado.
Gerenciamento de rastreabilidade

Recuperao automatizada das ligaes entre os


requisitos.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 46

Gerenciamento de mudanas de
requisitos

Deve ser aplicado todas as mudanas propostas aos


requisitos.
Estgios principais

Anlise de problema: discutir problemas e mudanas de


requisitos;

Anlise de mudana e estimativa de custo: avaliar os


efeitos das mudanas sobre outros requisitos;

Implementao de mudana: Modificar documentos de


requisitos e outros documentos para refletir as
mudanas.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 47

Gerenciamento de mudanas de
requisitos

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 48

Pontos-chave

O processo de engenharia de requisitos inclui um estudo


de viabilidade, elicitao e anlise de requisitos,
validao de requisitos e gerenciamento de requisitos.
A elicitao e a anlise de requisitos constituem um
processo iterativo, envolvendo entendimento de domnio,
coleta, classificao, estruturao, priorizao e
validao de requisitos.
Os sistemas tm mltiplos stakeholders com diferentes
requisitos.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 49

Pontos-chave

Fatores sociais e organizacionais influenciam os requisitos de


sistema.
A validao de requisitos est relacionado a verificaes de
validade, consistncia, completeza, realismo e facilidade de
verificao.
Mudanas de negcio levam, inevitavelmente, s mudanas
de requisitos.
O gerenciamento de requisitos inclui planejamento e
gerenciamento de mudanas.

2007 by Pearson Education

Ian Sommerville 2006

Engenharia de Software, 8. edio. Captulo 7

Slide 50