A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Análise & Projeto – Especificação de Processos

Apresentações semelhantes


Apresentação em tema: "Análise & Projeto – Especificação de Processos"— Transcrição da apresentação:

1 Análise & Projeto – Especificação de Processos
Prof. Thales Castro

2 Revisão Geral Documentação textual
Transformação em Diagrama de Contexto DFD em níveis

3 Revisão Geral Fluxo de dados Processo Entidade externa
Depósito de dados

4 DFD nível 0 – Diagrama de Contexto

5 DFD Nível 1 Dados da Empresa no Ministério Dados para CNPJ
Dados da Nova Empresa P3 Emitir CNPJ Empresas Cadastro de P2 Cadastrar Empresas CNPJ (CGC) Dados de Empresas Pedido Aceito P1 Verificar pedido de inscrição Empresa Pedido de Inscrição Ministério da Fazenda Resposta de Pedido Relação de Empresas Restrições Restrições em Vigor P5 Atualizar Tabela de Restrições P4 Selecionar Empresas Novas Restrições Tabela de Restrições

6 DFD Nível 2 – Explosão do Processo P1
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

7 Especificação de Processos
Tem como objetivo definir o que deve ser feito para transformar as entradas de um processo em saídas Necessidade de “ver” o processo como um todo Especificação do nível mais baixo do DFD Geralmente escrita pelo analista, mas... Deve ser especificada de uma forma que possa ser verificada tanto pelos analistas quanto pelos usuários (gerentes, diretores, etc...)

8 Especificação de processos
Não deve ser utilizada a linguagem descritiva (textual) Irás voltarás nunca morrerás na guerra Irás , voltarás, nunca morrerás na guerra. Irás , voltarás nunca , morrerás na guerra.

9 Especificação de Processos
Existem algumas técnicas para especificação de processos Linguagem estruturada Pré e Pós Condições Tabela de Decisão Árvore de Decisão NÃO SÃO APENAS ESSAS, EXISTE UMA DIVERSIDADE!!!

10 Especificação de Processos
Existem algumas técnicas para especificação de processos Linguagem estruturada Pré e Pós Condições Tabela de Decisão Árvore de Decisão

11 Linguagem Estruturada
"Subconjunto" da linguagem textual, com restrições: Tipos de sentenças que podem ser usadas Formas que podem ser usadas Formas como podem ser reunidas Equilibrio entre a precisão de uma linguagem de programação formal e a informabilidade de uma linguagem textual

12 Linguagem Estruturada
Consistem em: Verbos no imperativo (RECEBER, ENVIAR, MOVIMENTAR, etc...) Termos Locais Numerais Estruturas de controle

13 Linguagem Estruturada
Estrutura de Controle 1: SE SE <condição> Sentença 1 SENÃO Sentença 2 FIM SE Ex.: SE idade_cliente <18 categoria = 'Menor' cagegoria = 'Maior'

14 Linguagem Estruturada
Estrutura de Controle 2: FAÇA-CASO FAÇA-CASO CASO <condição1> Sentença 1 CASO <condição2> Sentença 2 ... CASO CONTRÁRIO Sentença X FIM-CASO Ex.: CASO situacao = 1 risco = baixo CASO situacao = 2 risco = medio CASO situacao = 3 risco = alto risco = indefinido

15 Linguagem Estruturada
Estrutura de Controle 3: FAÇA-ENQUANTO FAÇA-ENQUANTO <condição> Sentenças FIM-ENQUANTO Ex.: total= 0 FAÇA-ENQUANTO existem pedidos LER próximo pedido de PEDIDOS total = total + quantidade_item EXIBIR total

16 Linguagem Estruturada - exemplo
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

17 Linguagem Estruturada - exemplo
[P1.1] - VERIFICAR PEDIDO DE INSCRIÇÃO COMPLETO completo = verdadeiro SE não existe razão social completo = falso SENÃO SE não existem socios SENÃO SE não existe endereco completo = falso SENÃO SE completo P1.2 VERIFICAR_RAZÃO_SOCIAL incluir pedido recusado (pedido incompleto)

18 Linguagem Estruturada - exemplo
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

19 Linguagem Estruturada - exemplo
[P1.2] - VERIFICAR EXISTÊNCIA DE RAZÃO SOCIAL LER razão social de CADASTRO DE EMPRESAS SE existe razão social incluir pedido recusado (pedido inválido) SENÃO P1.3 VERIFICAR RESTRIÇOES EM VIGOR

20 Linguagem Estruturada - exemplo
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

21 Linguagem Estruturada - exemplo
[P1.3] - VERIFICAR RESTRIÇÕES EM VIGOR existe_restricao = falso FAÇA-ENQUANTO existem socios OBTER próximo socio LER restricao para socio SE existe restricao para socio existe_restricao = verdadeiro FIM-ENQUANTO SE existe_restricao incluir pedido recusado (restricao para um ou mais socios) SENÃO P2 CADASTRAR EMPRESA

22 Linguagem Estruturada
Algumas sugestões: Uma especificação de processos geralmente cabe em única folha Não usar mais de 3 níveis de alinhamento, principalmente em seleções Evitar confusões dos níveis de alinhamento, utilizando identação Examinar o documento para garantir que os utilizadores o entenderão facilmente

23 Especificação de Processos
Existem algumas ferramentas que auxiliam na especificação de processos Linguagem estruturada Pré e Pós Condições Tabela de Decisão Árvore de Decisão

24 PRÉ/PÓS CONDIÇÕES Sugestão prática sem o detalhamento do algoritmo que será utilizado Muito útil quando: O usuário tende a especificar uma algoritmo muito específico O analista tem a segurança no assunto e sabe que diversos algoritmos podem ser usados O analista deseja deixar a definição do algoritmo para o programador, não preocupando em defini-lo ao usuário

25 PRÉ - CONDIÇÕES Definem o que deve ser verdade antes do início da execução do processo Podem ser consideradas como garantia do usuário

26 PRÉ - CONDIÇÕES Normalmente descrevem :
Entradas para que o processo seja iniciado "O elemento X ocorre" Relacionamentos entre as entradas ou no interior delas "Pedidos e detalhes de remessas" "Pedido com entrega superior a 60 dias" Relacionamento entre entradas e depósito de dados "Pedido com um número de cliente existe no depósito de clientes"

27 PÓS - CONDIÇÕES Descrevem o que é verdadeiro quando o processo é finalizado Podem ser consideradas como garantia do sistema pelo usuário

28 PÓS - CONDIÇÕES Normalmente descrevem : Saídas geradas pelo processo
"Será produzida uma fatura" Relacionamentos entre valores originais de entradas e valor de saída "Total calculado com base na quantidade e valor dos itens" Alterações que devem ser feitas nos depósitos "Pedido será acrescentado ao depósito de pedidos"

29 PRÉ/PÓS CONDIÇÕES - exemplo
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

30 PRÉ/PÓS CONDIÇÕES - exemplo
PRÉ-CONDIÇÕES Dados de Pedido de Inscrição, contendo os sócios, nome da razão social e endereço PÓS-CONDIÇÕES Inclusão de pedido em PEDIDOS RECUSADOS por pedido incompleto OU Geração de informação de PEDIDO COMPLETO

31 PRÉ/PÓS CONDIÇÕES - exemplo
Cadastro de Empresas Dados de Empresa P1.2 Verificar Existência de Razão social P1.2 Verificar Existência de Razão social P2 Cadastrar Empresas Pedido completo Pedido Inválido Pedido Válido Pedido Aceito P1.1 Verificar preenchimento Empresa Pedido de Inscrição Pedido Indevido Pedido Recusado P1.3 Verificar Restrições em vigor P1.3 Verificar Restrições em vigor Pedido incompleto Restrições em vigor P1.4 Gerar Ordem de Devolução Pedidos Rejeitados Pedidos Recusados Tabela de Restrições

32 PRÉ/PÓS CONDIÇÕES - exemplo
P VERIFICAR EXISTÊNCIA DE RAZÃO SOCIAL PRÉ-CONDIÇÕES Informação de PEDIDO COMPLETO PÓS-CONDIÇÕES Inclusão de pedido em PEDIDOS RECUSADOS por existência de razão social OU Geração de informação de PEDIDO VÁLIDO P VERIFICAR RESTRIÇÕES EM VIGOR PRÉ-CONDIÇÕES Informação de PEDIDO VÁLIDO Informação de TABELA DE RESTRIÇÕES PÓS-CONDIÇÕES Inclusão de pedido em PEDIDOS RECUSADOS por pedido indevido OU Geração de informação de PEDIDO ACEITO

33 Especificação de Processos
Existem algumas ferramentas que auxiliam na especificação de processos Linguagem estruturada Pré e Pós Condições Tabela de Decisão Árvore de Decisão

34 TABELAS DE DECISÃO Técnica não procedural que permite especificar processos que produzem uma saída dependendo de avaliações complexas Formato tabular para visualização e compreensão do problema Normalmente requer condicionais (IF's/CASE's) alinhados Não implica em uma implementação específica

35 TABELAS DE DECISÃO ESTRUTURA: Condições Ações Entrada de Condições
Entrada de Ações

36 TABELAS DE DECISÃO Criação de uma Tabela de Decisão
Identificar todas as condições ou variáveis na especificação Identificar todos os valores possíveis para cada condição ou variável Calcular o número de combinações possíveis Identificar as ações Criar uma tabela de decisões vazia Preencher as condições e ações Especificar as ações de acordo com as condições especificadas GRANDE DESVANTAGEM: QUANTIDADE GRANDE DE VARIÁVEIS (EX.: SUPERIOR A 4)

37 Especificação de Processos
Existem algumas ferramentas que auxiliam na especificação de processos Linguagem estruturada Pré e Pós Condições Tabela de Decisão Árvore de Decisão

38 ÁRVORE DE DECISÃO Representação gráfica de tomada de decisões complexas Por ser uma técnica gráfica, torna mais fácil entender e discutir

39 ÁRVORE DE DECISÃO Criação de uma Árvore de Decisão
Identificar todas as condições ou variáveis na especificação Identificar todos os valores possíveis para cada condição ou variável Determinar o número de regras do problema (ramos da árvore) Identificar as ações Fazer as simplificações necessárias

40 FIM Prof. Thales Castro


Carregar ppt "Análise & Projeto – Especificação de Processos"

Apresentações semelhantes


Anúncios Google