Você está na página 1de 53

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCINCIAS, LETRAS E CINCIAS EXATAS DEPARTAMENTO DE CINCIAS DE COMPUTAO E ESTATSTICA

O Processo de Engenharia de Requisitos


Engenharia de Software 2o. Semestre de 2005

Slide 1

Processos de Engenharia de Requisitos

Processos usados para descobrir, analisar e validar requisitos do sistema

Slide 2

Objetivos

Descrever as principais atividades da engenharia de requisitos. Introduzir tcnicas de obteno e anlise de requisitos. Descrever validao de requisitos. Discutir a importncia da validao de requisitos e revises de requisitos. Discutir a necessidade do gerenciamento de requisitos
Slide 3

Tpicos

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

Slide 4

O processo de Engenharia de Requisitos

O processo usado na ER varia bastante, dependendo do domnio da aplicao, as pessoas envolvidas e a organizao. Atividades da engenharia de requisitos:
Obteno de requisitos Anlise de requisitos Validao de requisitos gerenciamento de requisitos

Slide 5

O processo de engenharia de requisitos


Estudo de viabilidade Obteno e anlise de requisitos Especificao de requisitos Validao de requisitos Modelos de sistema Requisitos de usurio e de sistema Documento De requisitos

Relatrio de viabilidade

Slide 6

Estudos de viabilidade

O estudo de viabilidade decide se vale a pena desenvolver o sistema proposto. Um estudo breve que verifica se :
O sistema contribui para os objetivos da organizao O sistema pode ser implementado com a tecnologia atual e dentro do oramento O sistema pode ser integrado com outros sistemas em operao

Slide 7

Implementao do estudo de viabilidade

Baseado em coleta, avaliao e escrita de relatrios. Questes para pessoas na organizao:


O que aconteceria se o sistema no fosse implementado? Quais so os problemas com os processos atuais? Como o sistema proposto ir ajudar? Pode haver troca de informaes entre outros sistemas e o sistema proposto? Ser necessrio nova tecnologia? Quais habilidades? O que precisa e o que no precisa ser compatvel com o sistema?
Slide 8

Levantamento e anlise de requisitos

Os membros da equipe tcnica trabalham com o cliente e os usurios para descobrir mais informaes sobre o domnio da aplicao, servios do novo sistema, desempenho e as restries operacionais. Pode envolver usurios finais, gerentes, engenheiros envolvidos em manuteno, especialistas no domnio, etc (chamados stakeholders do sistema)
Slide 9

Stakeholders
Qualquer pessoa que ter influncia direta ou indireta sobre os requisitos do sistema.

Slide 10

Problemas com a anlise de requisitos

Pessoas diferentes podem ter requisitos conflitantes. Pessoas expressam os requisitos usando termos prprios. Fatores polticos podem influenciar os requisitos do sistema. Os requisitos se alteram durante o processo de anlise, pois o ambiente econmico e de negcios dinmico.

Slide 11

O processo de anlise de requisitos


Validao de requisitos Compreenso Do domnio Definio e especificao de requisitos

Entrada do processo

Definio das prioridades

Coleta de requisitos Classificao

Resoluo de conflitos

Slide 12

Atividades do processo

Compreenso do domnio Coleta de requisitos Classificao Resoluo de conflitos Definio das prioridades Verificao de requisitos

Slide 13

Modelos do sistema

Diferentes modelos podem ser produzidos durante a atividade de anlise de requisitos. Anlise de requisitos pode envolver trs atividades diferentes de estruturao, que resulta em trs modelos diferentes
Particionamento. (Identifica a parte estruturada do relacionamento entre entidades) Abstrao. (Identifica generalidades entre entidades) Projeo. (diferentes maneiras de ver um problema)

Slide 14

Levantamento de requisitos baseado em pontos de vista

Pessoas envolvidas com o sistema possuem diferentes interesses e pontos de vista a respeito de um sistema. A anlise dessa multi-perspectiva importante, pois existe uma nica maneira correta de analisar os requisitos do sistema.

Slide 15

Sistema Exemplo : Caixa automtico (ATM)

ATM aceita solicitaes do cliente e fornece informaes sobre a conta, atualizaes de informao, etc Servios incluem retiradas e pagamentos em dinheiro, consulta de saldo, transferncias de fundos, emisso de extratos, tales de cheques etc. Clientes de outros bancos podem utilizar os servios de retiradas em dinheiro e consulta de saldos.
Slide 16

Pontos de vista de um caixa eletrnico


Clientes do banco Representantes de outros bancos Engenheiros e manuteno de hardware e software Departamento de Marketing Gerentes de agncias e equipes de atendimento de balco Gerentes de segurana bancria
Slide 17

Tipos de pontos de vista

Fontes de dados ou destinos de dados


Pontos de vista so responsveis pela produo e consumo de dados. A anlise envolve identificar esses pontos de vista, e identificar quais dados so produzidos ou consumidos.

Frameworks de representao (Vises diferentes por diferentes engenheiros de software).


Pontos de vista representam tipos particulares de modelo de sistema, que podem ser comparados para descobrir aspectos sobre o sistema que est sendo analisado. Nesse caso, os pontos de vista so externos ao sistema e dele recebem servios. A anlise envolve examinar os servios recebidos por diferentes pontos de vista coletando esses servios e resolvendo conflitos.
Slide 18

Receptores de servios

Pontos de vista externo

Maneira natural de estruturar o processo de levantamento de requisitos. relativamente fcil decidir se alguma coisa um ponto de vista vlido. Os pontos de vista e os servios so um meio til de estruturar os requisitos no funcionais.

Slide 19

Anlise baseada em mtodos

Abordagem amplamente usada para anlise de requisitos. Depende da aplicao de um mtodo estruturado para entender o sistema. Mtodos possuem nfases diferentes. Alguns so projetados para o levantamento de requisitos, outros so mais prximos de mtodos de projeto. O mtodo VORD (definio de requisitos baseado em ponto de vista) mtodo orientado a servios para o levantamento de requisitos.
Slide 20

O mtodo VORD

Identificao de pontos de vista

Estruturao de ponto de vista

Documentao ponto de vista

Mapeamento Ponto de vista

Slide 21

Estgios do mtodo VORD

Identificao de pontos de vista


Descobrir os pontos de vista que utilizam servios do sistema e identificar os servios fornecidos para cada ponto de vista. Agrupar pontos de vista relacionados, segundo uma hierarquia. Servios comuns so fornecidos nos nveis mais altos da hierarquia. Refinar a descrio dos pontos de vista e servios identificados. Identificar objetos atravs das informaes de servios que esto encapsulados nos pontos de vista..

Estruturao de pontos de vista

Documentao do ponto de vista

Mapeamento de sistema conforme pontos de vista

Slide 22

Formulrios templates VORD


Template de ponto de vista
Referncia: O nome do ponto de vista Atributos: informaes sobre o ponto de vista . Eventos: estmulos externos gerados pelo ponto de vista e reaes do sistema. Servios: O que o sistema oferece Subpontos de vista: Os nomes de pontos de vista relacionados.

Template de servio
Referncia: O nome do servio Razo : razo pela qual o servio oferecido Especificao: referncia a uma lista de especificaes de servios. Pontos de vista: lista de nomes de pontos de vista que recebem o servio. Requisitos no funcionais: referncia a um conjunto de requisitos no funcionais que impe restrio ao servio. Provedores: Referncia a uma lista de objetos de sistema que fornecem o servio.
Slide 23

Identificao dos pontos de vista Brainsforming


Devem ser identificados em uma seo de brainsforming :
Pontos de vista em potencial Servios do Sistema Entradas de dados Requisitos no funcionais Eventos de Controle Excees
Slide 24

Identificao de Pontos de vista


Consulta de saldo Suprimentos de mquina Interface com o usurio Obteno de transaes Gerente Informao sobre conta Banco de dados cliente Devoluo de carto Log de mensagem Retirada de dinheiro Atualizao de software remoto Tamanho do software Log de transaes Pedido de cheques Caixa de banco Segurana Usurio invlido Reteno de carto

Custo do sistema Titular da conta Diagnstico remoto Carto roubado

No titular da conta Declarao de pedido

Impressora

Manuteno hardware Transferncia de fundos

Transmisso de mensagens Validao de cartes


Slide 25

Confiabilidade

Atualizao de conta

Alocao de servios para os diversos ponto de vista


Titular da conta Lista de servios No-titular da conta Lista de servios Caixa do banco Lista de servios Executar diagnstico Somar dinheiro Colocar papel Enviar mensagem

Retirar dinheiro Retirar dinheiro Consultar saldo Consultar saldo Pedir cheques Enviar mensagens Executar transao da lista Pedir extrato Transferir fundos

Slide 26

Dados de ponto de vista e informaes de controle


Ponto de vista fornecem entradas para os servios e informaes de controle, controle para acionar os servios requisitados. Titular da conta Entrada de controle Entrada de Dados Iniciar transao Detalhes do carto Cancelar transao PIN* Encerrar transao Quantia solicitada Selecionar servio Mensagem
PIN* = personal identification number ( numero de identificao pessoal)

Slide 27

Hierarquia de pontos de vista


Todos os pontos de vista

Servios Consultar saldo Retirar dinheiro Servios Pedir cheques Enviar mensagem Executar transao da lista Pedir extrato Transferir fundos

Cliente

Pessoal do banco

Titular da conta

No titular da conta

Caixa

Gerente Engenheiro

Slide 28

Descries de ponto de vista do cliente e retirada de dinheiro


Referncia ::Cliente Referncia Cliente Atributos: Atributos:Nmero Nmerode deconta conta PIN PIN Incio Incioda datransao transao Eventos: Eventos:Selecionar Selecionarservio servio Cancelar Cancelartransao transao Encerrar Encerrartransao transao Servios: Servios:Retirada Retiradade dedinheiro dinheiro Consulta Consultade desaldo saldo Subpontos Subpontos de :: Titular devista vista Titularda daconta conta No-titular No-titularconta conta
Referncia: Retirada de dinheiro Razo: Melhorar o servio do cliente e reduzir trabalho com papel Especificaes: Usurios escolhem esse servio pressionando o boto de retirada de dinheiro. Em seguida, informam a quantia solicitada. A operao confirmada e, se o saldo permitir, o dinheiro entregue. Ponto de vista: Cliente Req no funcio.: Entregar o dinheiro um minuto aps ser confirmada a quantia. Provedor: Preenchido posteriormente Slide
29

Cenrios

Cenrios so descries de como um sistema usado na prtica. So teis para acrescentar detalhes a um esboo da descrio de requisitos. Em geral, pessoas acham mais fcil relacionar exemplos da vida real do que descries abstratas.

Slide 30

Descries de cenrios incluem:


Estado do sistema no incio do cenrio. Fluxo normal de eventos no cenrio. O que pode sair errado e como lidar com isso. Outras atividades concorrentes. Estado do sistema no final do cenrio.

Slide 31

Cenrios de eventos

Cenrios de eventos podem ser usados para descrever como um sistema responde a ocorrncia de algum evento particular Cada evento distinto mostrado em um cenrio de evento separado. VORD inclui uma conveno diagramtica para cenrios de eventos.
Dados fornecidos e sadas. Informaes de controle. Processamento de exceo. O prximo evento esperado.
Slide 32

Cenrio do evento iniciar transao


Carto presente Carto vlido carto Solicitar PIN Solicitar PIN Nmero da conta PIN Validar usurio Nmero da conta Usurio OK

Tempo Esgotado Devolver Carto Carto invlido Devolver Carto Carto roubado Reter Carto

Selecionar servio

PIN incorreto Informar PIN

PIN incorreto Devolver PIN

Slide 33

Notao para anlise de dados e controle


Elipses: dados de entrada a um ponto de vista. Informaes de controle: setas que entram no topo dos retngulo. Dados saem do lado direito de cada retngulo. Excees aparecem embaixo dos retngulos. Nome do prximo evento mostrado em um bloco sombreado

Slide 34

Descrio de Exceo

A maioria dos mtodos no inclui formas para descrever excees. No exemplo, excees so:
Tempo-esgotado - cliente no fornece o PIN Carto invlido Carto roubado

Slide 35

Casos de uso

Casos de Uso so tcnicas baseadas em cenrios para a obteno de requisitos. Identificam os atores envolvidos em uma interao e que descreve a interao em si Um conjunto de casos de uso descreve todas as interaes que sero representadas nos requisitos do sistema. Diagramas de seqncias podem ser usados para adicionar detalhes aos casos de uso, mostrando o processamento da seqncia de eventos no sistema.

Slide 36

Caso de uso emprstimo

Servios de emprstimo

Slide 37

Casos de uso da biblioteca

Usurio da biblioteca

Servios de emprstimo

Administrao de usurio

Pessoal da biblioteca

Fornecedor

Servios de catlogo

Slide 38

Diagrama de seqncia para o gerenciamento de catlogo


Item: Item de biblioteca Livraria: Fornecedor Adquirir Novo Livros: catlogo Catalogador: Pessoal da biblioteca

Catalogar item Dispor

Retirar item do catlogo


Slide 39

Etnografia

Tcnica de observao utilizada para compreender os requisitos sociais e organizacionais Um cientista social se insere no ambiente de trabalho onde o sistema ser usado e analisa como as pessoas trabalham. As pessoas no precisam explicar o seu trabalho. Fatores sociais e organizacionais importantes podem ser observados
Slide 40

Validao de Requisitos

Preocupa-se em mostrar que os requisitos definem o sistema que o cliente deseja. Validao importante uma vez que o custo para remover um erro de requisitos grande.

Slide 41

Checagem de Requisitos

Validade. O sistema fornece as funes que melhor atende as necessidades do usurio? Consistncia. Existem conflitos de requisitos? Completeza. Todas as funes necessrias para o cliente esto includas? Realismo. Os requisitos podem ser implementados com a tecnologia e oramento disponveis? Facilidade de verificao. Os requisitos podem ser checados?
Slide 42

Tcnicas de validao de requisitos

Reviso de requisitos
Anlise manual sistemtica dos requisitos Uso de um modelo executvel do sistema para checar os requisitos. Desenvolver testes para os requisitos a fim de verificar a testabilidade. Uso de ferramenta CASE para verificar a consistncia do modelo.
Slide 43

Prototipao

Gerao de casos de teste

Anlise automatizada da consistncia

Gerenciamento de Requisitos

O gerenciamento de requisitos o processo de controlar as mudanas nos requisitos durante o processo de engenharia de requisitos e desenvolvimento. Requisitos so inevitavelmente incompletos e inconsistentes
Novos requisitos surgem durante o processo de desenvolvimento. Diferentes pontos de vista possuem diferentes requisitos e esses so freqentemente contraditrios.

Slide 44

Mudanas nos requisitos

A prioridade dos requisitos de diferentes pontos de vista se modificam . As pessoas que pagam pelo sistema podem especificar os requisitos de maneira conflitantes com os requisitos das pessoas que iro utilizar o sistema. A empresa e o ambiente tcnico do sistema se modificam durante o seu desenvolvimento

Slide 45

Evoluo dos requisitos


Compreenso inicial do problema Compreenso modificada do problema

Requisitos iniciais

Requisitos modificados

Tempo
Slide 46

Requisitos permanentes e volteis

Requisitos permanentes. Requisitos estveis, derivados da atividade principal da organizao. Ex. EM um hospital sempre haver requisitos relativos aos pacientes, aos mdicos, s enfermeiras a aos tratamentos. Derivados do modelo do domnio. Requisitos volteis. Requisitos que se modificam durante o desenvolvimento ou quando o sistema est em uso. Requisitos resultantes de polticas governamentais (Ex: Plano de sade)
Slide 47

Classificao dos requisitos volteis

Requisitos mutveis
Requisitos que se modificam por causa do ambiente do sistema. Requisitos que surgem medida que a compreenso do cliente do sistema se desenvolve Requisitos que resultam da introduo do sistema de computador. Requisitos que dependem de outros sistemas ou processos de negcio especficos dentro da organizao.
Slide 48

Requisitos emergentes

Requisitos conseqentes

Requisitos de compatibilidade

Gerenciamento de mudanas de requisitos

Deve ser feita em qualquer proposta de alterao Principais estgios


Anlise do problema e especificao da mudana. Discute-se os problemas com os requisitos e prope-se mudanas. Anlise e custo da mudana. Avalia-se os efeitos da mudana em outros requisitos do sistema. Implementao das mudanas. O documento de requisitos e outros documentos so alterados de forma a refletir as mudanas.

Slide 49

Gerenciamento de mudanas de requisitos

Problema identificado

Anlise do problema e especificao da mudana

Anlise e custo da mudana

Implementao da mudana

Requisitos revisados

Slide 50

Pontos chave

O processo de engenharia de requisitos inclui um estudo de viabilidade, o levantamento e a anlise e requisitos, a especificao de requisitos, a validao de requisitos e o gerenciamento de requisitos. Diferentes usurios do sistema possui diferentes requisitos. Fatores sociais e organizacionais tem forte influncias sobre o s requisitos.
Slide 51

Pontos chave

A validao dos requisitos o processo de verificar os requisitos quanto a sua validade, consistncia, completeza, seu realismo e sua facilidade de verificao. Mudanas organizacionais inevitavelmente levam a mudanas nos requisitos. O gerenciamento de requisitos inclui o planejamento e o gerenciamento de mudanas.

Slide 52

Slide 53