engenharia de requisitos prof. antonio alberto p. santana
TRANSCRIPT
![Page 1: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/1.jpg)
ENGENHARIA DE REQUISITOS
Prof. Antonio Alberto P. Santana
![Page 2: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/2.jpg)
AGENDA 04
- Lista de eventos
- Modelagem de eventos
- Especificação de processos
- Técnicas de especificação
- Português estruturado
- Pseudocódigo
- Tabela de decisão
- Árvore de decisão
![Page 3: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/3.jpg)
LISTA DE EVENTOSSistema: caixa preta que, a partir de certos estímulos externos predeterminados, produz respostas esperadas.
Respostas: para cada função deve haver um estímulo responsável pela sua ativação.Ex.: relatórios, documentos, etc.
Para se descobrir quais são as funções devemos descobrir quais são os estímulos que chegam ao sistema.
![Page 4: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/4.jpg)
LISTA DE EVENTOS
Sistema é uma reunião de funções que devem ser ativadas para produzir as respostas desejadas quando ativadas por estímulos causados pela ocorrência de determinados eventos.
Análise Essencial
![Page 5: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/5.jpg)
LISTA DE EVENTOS
EVENTO: pode ser definido informalmente como um acontecimento do mundo exterior que requer do sistema uma resposta.
Análise Essencial
ESTÍMULO: é um ativador de uma função.
RESPOSTA: é o resultado gerado pelo sistema devido à ocorrência de um evento.
![Page 6: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/6.jpg)
MODELAGEM DE EVENTOS
Analisar evento é basicamente identificar fatos que ocorrem no meio ambiente que interage com o sistema e que exige uma resposta do sistema.
Esta resposta pode ser, por exemplo, o armazenamento de uma informação ou a produção de um resultado.
![Page 7: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/7.jpg)
MODELAGEM DE EVENTOS
ENTIDADEEXTERNA
SISTEMA
estímulo
resposta
- fluxo de controle
- instante do tempo
- fluxo de dados
![Page 8: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/8.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Analise o ambiente do sistema e ponha no papel todo fato que, a princípio pareça determinar uma ação do sistema;
Cada evento deve ser escrito em uma frase;
Lembre-se que a frase é uma construção gramatical que expressa uma idéia completa;
Deve possuir um sujeito, um verbo e um objeto.
![Page 9: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/9.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Para cada evento identificado responda às seguintes perguntas:
Existe algum evento que seja uma variação significativa do evento identificado? Normalmente esses eventos podem ser escritos com a as mesmas palavras do evento original, trocando-se apenas o verbo.
![Page 10: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/10.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Existe algum evento oposto ao evento identificado?
Por exemplo: oposto a vender é comprar, oposto a pagar é receber (antônimos)
![Page 11: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/11.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Existe algum evento negativo do evento identificado? Consiste na negação do evento?
Negativo de pagar é não pagar.
![Page 12: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/12.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Existe algum evento que deve preceder ao evento identificado?
Normalmente esses eventos são pré-requisitos do evento em questão. Exemplo: para que seja feito um pagamento é necessário que tenha sido feita uma compra.
![Page 13: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/13.jpg)
ALGORITMO PARA MODELAGEM DE EVENTOS
Existe algum evento que seja conseqüência do evento identificado?
Estes eventos, normalmente devem acontecer após o evento em questão, como conseqüência.
![Page 14: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/14.jpg)
Evento orientado por fluxo de dados
E aquele em que o estímulo é a chegada ao sistema de um fluxo de dados enviado por uma entidade externa e a chegada do fluxo vai ativar a função (nem todo fluxo de dados ativa a função)Sujeito + verbo transitivo na voz ativa + complemento verbal
![Page 15: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/15.jpg)
Evento orientado por fluxo de dados
Ex: Cliente paga prestação.Entidade externa: cliente; fluxo de dados: cheque; resposta (fluxo de saída): recibo de pagamento Ex: Cliente cancela pedidoEntidade externa: cliente; fluxo de dados: solicitação de cancelamento de pedido;Resposta interna (não há fluxo de dados de saída): cancelamento
![Page 16: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/16.jpg)
Evento dirigido por controleÉ aquele em que o estímulo é a chegada ao sistema de um fluxo de controle. Quando uma determinada variável binária está com um determinado valor. (Pode haver fluxos de dados complementares associados). O sistema pode ou não produzir resposta externa e o fluxo de controle pode ser enviado por uma entidade externa ou gerado por uma função interna ao sistema.Sujeito + verbo transitivo na voz ativa + complemento verbalSujeito + verbo a voz passiva
![Page 17: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/17.jpg)
Evento dirigido por controle
Ex: A Diretoria autoriza o pagamento de uma fatura.Entidade externa envia um fluxo de controle : sim ou não; resposta (fluxo de dados): cheque Ex: 2º cheque sem fundo é emitidoEstímulo: função interna; resposta: relatório para SPC
![Page 18: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/18.jpg)
Evento orientado por tempo
É aquele em que o estímulo é a chegada ao sistema da informação de haver passado um determinado intervalo de tempo. O sistema deve ser responsável por registrar a passagem de tempo. O sistema pode ou não prever resposta externa e o estímulo é a informação de que foi decorrido um certo tempo ou atingido uma determinada hora.
![Page 19: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/19.jpg)
Evento orientado por tempo
Ex: É hora de emitir relatório mensal de vendasFunção verifica data/hora do computador; envia um fluxo de controle para outra função emitir o relatório; fluxo de dados de saída: relatório
![Page 20: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/20.jpg)
LISTA DE EVENTOS
dados cadastrais
Solicitação alteração
Solicitação cancelamento
dados empréstimo
empréstimo
CLIENTE
devolução
Recibo pagro
Fita
Solicitação empréstimo
REGISTRAR EMPRÉSTIMO
![Page 21: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/21.jpg)
LISTA DE EVENTOSNº Evento Origem Estímulo Ação Destino Saída Tipo
01 Cliente solicita fita Cliente Solicitação empréstimo
Registrar empréstimo
Depto Adm Cliente
Ficha EmpréstimoFita
FD
02 Cliente cancela empréstimo
Cliente SolicitaçãoCancelamento
Registrar cancelamento
FD
03 Cliente devolve fita Cliente Devolução Fita Registrar devolução
Depto Adm Fita FD
04 Cliente paga aluguel Cliente Pagamento Registrar pagamento
ClienteDepto Adm
Recibo$ /Cheque
FD
05 Cliente não devolve fita
Sistema Data devolução Emitir relatório de atrasos
Depto Adm Relatório atrasos
T
06 Cliente solicita cadastramento
Cliente Solicitação cadastramento
Cadastrar cliente
Depto Adm Ficha Cadastro
FD
07 Cliente solicita alteração cadastral
Cliente Solicitação alteração
Registrar alteração
FD
![Page 22: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/22.jpg)
ESPECIFICAÇÃO DE PROCESSOS
![Page 23: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/23.jpg)
Devemos definir:– O que deve ser descrito– Que tipo de técnica se deve usar para a descrição
ESPECIFICAÇÃO DE PROCESSOS
![Page 24: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/24.jpg)
O que deve ser descritonão é necessário repetir o que já foi descrito nos DFDs e no dicionário de dados
definir a forma pela qual os fluxos de dados de entrada são transformados em fluxos de dados de saída
![Page 25: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/25.jpg)
Principais técnicasportuguês estruturado pseudocódigo tabela de decisão árvore de decisão
![Page 26: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/26.jpg)
PORTUGUÊS ESTRUTURADO
Consiste em:– verbos no modo imperativo – termos definidos no dicionário de dados
– determinadas palavras reservadas para descrever a lógica da função
![Page 27: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/27.jpg)
PORTUGUÊS ESTRUTURADO
SINTAXE
PORTUGUÊS ESTRUTURADO
Seqüência de instruções Obtenha...; Calcule...; Coloque...; Copie...; etc.
Repetição de instruções PARA CADA ... faça o que se segue:
Seleção entre instruções SE... SE NÂO faça o que se segue:CASO 1: ... faça o que se segue:CASO 2: ... faça o que se segue:
![Page 28: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/28.jpg)
PORTUGUÊS ESTRUTURADO
1.2CancelarContrato
Contratos
FaturasConveniadas
![Page 29: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/29.jpg)
PORTUGUÊS ESTRUTURADO
PROCESSO cancelar_contratos
PARA_CADA faturas.DE Conveniadas.
SE faturas.situação < > “quitada”
Acrescente um item a relação
Valor_total = Valor_total + faturas.valor_da_fatura
Contratos.situação := “cancelada”
F_SE
F_PARA
PRODUZA relação_de_clientes_inadimplentes
![Page 30: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/30.jpg)
PSEUDOCÓDIGO Forma textual mais popular de se descrever miniespecificações.
É próxima ao português estruturado, porém mais próxima das linguagens de programação.
![Page 31: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/31.jpg)
PSEUDOCÓDIGOContém:
– Verbos (LER, OBTER, IMPRIMIR, GRAVAR, etc.)
– Substantivos (elementos do dicionário de dados)
– Estruturas de controle (SE, ENQUENTO, REPETIR, CASO, etc.)
– Operadores de relação (IGUAL, MAIOR
QUE, MENOR QUE, etc.)
![Page 32: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/32.jpg)
PSEUDOCÓDIGO
PORTUGUÊS ESTRUTURADO PSEUDOCÓDIGO
Orientado para os procedimentos Orientado para a implementação
Usa termos familiares ao usuário (linguagem do negócio)
Lembra linguagem de programação
O objetivo é um alto nível de comunicação
O objetivo é facilitar a programação
![Page 33: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/33.jpg)
PSEUDOCÓDIGO
EXEMPLO Ler registro_de_cartão_de_crédito REPETIR_ENQUANTO existam registro_de_cartão_de_crédito REPETIR_ENQUANTO existam itens_de_compra_no_cartão_de_crédito
Calcular total_de_item Somar total_e_item ao total_da_fatura_mensal
FIM_REPETIR Calcular desconto Calcular fatura_líquida; total_a_pagar Imprimir fatura_mensal Gravar fatura no arquivo faturas Ler registro_de_cartão_de_crédito FIM_REPETIRTerminar programa
![Page 34: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/34.jpg)
TABELA DE DECISÃO
É uma maneira de se expressar, em forma de tabela, qual o conjunto de condições que é necessário ocorrer para que um determinado conjunto de ações deva ser executado.
![Page 35: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/35.jpg)
TABELA DE DECISÃO
Regra de decisão => conjunto de ações a ser tomado a partir de um conjunto de condições
![Page 36: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/36.jpg)
TABELA DE DECISÃO
Composta de:– Área de condições – onde são relacionadas as condições que devem ser verificadas para que seja executado um conjunto de ações;
– Área de ações – exibe o conjunto de ações que deve ser executado caso um determinado conjunto de condições ocorra;
– Regra de decisão – apresentam, através das colunas, a combinação das condições com as ações a serem executadas.
![Page 37: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/37.jpg)
TABELA DE DECISÃOCONDIÇÕES Regra de
decisão 01Regra de decisão 02
.......... Regra de decisão N
Condição 1:
Condição 2:
...........
Condição N:
AÇÕES ----------- ----------- ----------- -----------
Ação 1:
Ação 2:
..........
Ação N:
![Page 38: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/38.jpg)
TABELA DE DECISÃO
CONDIÇÕES Regra de decisão 01
Regra de decisão 02
Regra de decisão 03
Regra de decisão 04
Condição 1: S S N N
Condição 2: S N S N
AÇÕES ----------- ----------- ----------- -----------
Ação 1: X
Ação 2: X X
Ação 3: X X X
![Page 39: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/39.jpg)
TABELA DE DECISÃO
Regra de decisão 01: caso as condições 1 e 2 ocorram, deverão ser executadas as ações 1 e 3; Regra de decisão 02: caso a condição 1 ocorra e a condição 2 não ocorra, somente deverá ser executada a ação 2; Regra de decisão 03: caso a condição 1 não ocorra e a condição 2 ocorra, deverão ser executada as ações 2 e 3; Regra de decisão 04: caso as condições 1 e 2 não ocorram, deverá ser executada somente a ação 3.
![Page 40: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/40.jpg)
TABELA DE DECISÃO
EXEMPLO Seja a descrição de um processo que determina qual o tipo de exame médico periódico a que um empregado de uma determinada empresa deve ser submetido:
![Page 41: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/41.jpg)
TABELA DE DECISÃOCONDIÇÕES Regra
1Regra 2
Regra 3
Regra 4
Regra 5
Regra 6
Regra 7
Regra 8
Ocupa cargo de chefia?
S
S
S
S
N
N
N
N
Idade maior que 40 anos?
S
S
N
N
S
S
N
N
Mais de 2 anos no cargo?
S
N
S
N
S
N
S
N
AÇÕES ------ ------ ------ ------ ------ ----- ----- -----
Exame especial X X X X X
Exame normal X X X
Onde S = sim; N = não; X = ação a ser executada
![Page 42: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/42.jpg)
ÁRVORE DE DECISÃO
É uma representação de um tabela de decisão sob a forma de uma árvore.
![Page 43: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/43.jpg)
ÁRVORE DE DECISÃOOCUPA CARGO DE CHEFIA?
MAIS DE 40 ANOS DE IDADE?
MAIS DE 2 ANOS DE MPRESA?
TIPO DE EXAME
ESPECIAL
ESPECIAL
ESPECIAL
NORMAL
ESPECIAL
ESPECIAL
NORMAL
NORMAL
S
N
S
S
N
S
N
S
N
S
N
N
S
N
![Page 44: ENGENHARIA DE REQUISITOS Prof. Antonio Alberto P. Santana](https://reader035.vdocuments.com.br/reader035/viewer/2022062404/552fc15f497959413d8e820c/html5/thumbnails/44.jpg)
F I M!