Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Conteúdo: Regras de negócio Professores: Geraldo Xexéo Geraldo Zimbrão Aula 018 2 Roteiro Introdução Tipos de Regras de Negócio Estruturais Derivações Termos Fatos Restrições e Ações Linguagem de descrição de regras de negócio Melhores Práticas com Regras de Negócio 3 Introdução Motivação Regras de Negócio Visão clássica de Sistemas de Informação Dados e Processos Visão Moderna Perspectiva de Negócio Perspectiva de Sistemas de Informação Dados, Processos e Regras de Negócio 4 Motivação Sistemas de Informação se tornaram complexos Maior poder de computação Barateamento do hardware Maior complexidade dos negócios Competição acirrada Capacidade maior para construir sistemas Foco no serviço e não no produto Consumidores mais exigentes - qualidade Ford x GM 5 Organizações mais Complexas Para atender melhor os clientes as organizações se tornaram mais complexas Negócios mais complexos Cadeia de valores mais complexas Muita interdependência e particularidades Regras de negócio! Como estruturar os Sistemas para suportar organizações complexas? 6 O Organismo Maravilhoso Os seres humanos são um bom exemplo de organização complexa E que funciona! Alguns aspectos do corpo humano podem ser utilizados como modelo para a construção de sistemas complexos Vamos analisar os aspectos mecânicos e locomotores do corpo: como o corpo realiza movimentos? 7 Componentes Básicos Abstraindo os outros aspectos para a manutenção da vida, o corpo humano pode ser externamente descrito como formado por três componentes interconectados: Estrutura: ossos Força: músculos Controle: nervos 8 Funções dos Componentes Embora interconectados, cada um desses componentes possui funções distintas Ossos, organizados em um esqueleto, provêem a estrutura que suporta os outros componentes Os movimentos devem ser realizados respeitando os limites impostos pela estrutura dos ossos Músculos, conectados aos ossos, possibilitam a força para a realização dos movimentos Responsáveis pelo comportamento percebido externamente Nervos, conectados aos músculos e que respondem aos estímulos, coordenando a ação dos músculos Sem impulsos nervosos, sem movimentos, sem comportamento 9 Analogia com Sistemas de Informação Estrutura são os termos e fatos, organizados e conectados em um modelo de dados Força São os processos, que operam sobre os fatos do modelo de dados Controle São as regras de negócio, que restringem e controlam os processos Enquanto o modelo de dados provê estrutura, os processos possibilitam atividades 10 Regras de Negócio Perspectiva de Negócio É uma diretiva destinada a influenciar ou guiar o comportamento do negócio, como suporte à política de negócio que é formulada em resposta a uma oportunidade Descrevem as operações, definições e restrições que se aplicam a uma organização para a mesma atingir os seus objetivos 11 Regras de Negócio Perspectiva de Sistemas de Informação É uma sentença que define ou restringe algum aspecto do negócio Pretende-se garantir a estrutura do negócio ou controlar a influência do comportamento do mesmo Iremos adotar essa perspectiva 12 Exemplos de Regras de Negócio "Clientes possuem saldo" "Saldos são expressos em Reais" "Clientes ouro são os que possuem saldo médio acima de R$ 10.000,00 por pelo menos três meses" "Se um cliente possuir saldo negativo então deve-se cobrar juros diários sobre esse saldo e o cliente deve ser notificado" 13 Tipos de Regras de Negócio Termos Fatos Derivativas Restritivas Definições dos termos do negócio Conectam termos uns aos outros definindo a estrutura do negócio Definem como calcular algum aspecto do negócio Restringem algum aspecto do negócio 14 Termos e Fatos Chamadas de Regras Estruturais Um termo é um conceito ou sentença que referencia um conceito específico do negócio Há um mapeamento claro entre os termos e o modelo de dados Fatos descrevem relacionamentos que existem entre dois ou mais termos Atributos, especialização-generalização, associação, agregação e papéis 15 Exemplos de Termos e Fatos Cliente é um termo Saldo também é um termo Clientes possuem saldo Clientes são Pessoas Físicas ou Jurídicas É um aspecto importante do negócio Dado importante para o sistema Isso é um fato: conecta dois termos Fato que representa uma especialização 16 Derivações São algoritmos usado para calcular ou inferir um fato derivado Uma regra de derivação especifica como fatos derivados podem ser obtidos A partir de outros fatos A partir de outras derivações Usando cálculos matemáticos Inferência lógica dedutiva ou indutiva 17 Exemplos de Derivações Saldo médio mensal é a média dos saldos de um cliente no final do dia durante um mês Clientes ouro são os que possuem saldo médio mensal acima de R$ 10.000,00 por pelo menos três meses Define o que é o saldo médio mensal através de relações matemáticas É uma condição que, se for verdadeira, qualifica o cliente como sendo Cliente Ouro 18 Restrições São declarações que devem ser verdadeiras sempre Adicionalmente, ações específicas podem ser estabelecidas quando uma restrição for violada Diz-se que uma regra foi violada se uma restrição em um dado instante não for verdadeira Para corrigir e tornar verdadeira a restrição Para informar 19 Exemplos de Restrições Os clientes Pessoa Física devem ter mais de 18 anos ou serem emancipados Se um cliente possuir saldo negativo então deve-se cobrar juros diários sobre esse saldo e o cliente deve ser notificado" É uma restrição: não permitir que menores de idade sejam clientes sem serem emancipados Define duas ações a serem tomadas se o saldo do cliente for negativo 20 Regras de Negócio e Modelos de Dados Termos e fatos estão conectados ao modelo de dados O modelo de dados reflete todas as informações que o sistema possui a respeito do negócio Todas as regras de negócio são sobre dados Regras são sobre termos e fatos Logo, as regras de negócio devem estar ancoradas às entidades do modelo de dados 21 Regras de Negócio e Eventos Regras de Negócio não são Eventos! Regras são sobre os dados Eventos são coisas que acontecem Podem modificar os dados Se os dados forem modificados, alguma regra pode ser violada Eventos podem disparar ações através das Regras de Negócio 22 Regras de Negócio e Eventos Quando um evento acontece... Regras devem ser reavaliadas para verificar se foram violadas Quais regras podem ter sido violadas por um evento? Ações definidas na regra Mensagens de erro para o usuário O que fazer se uma restrição for violada? Uma boa alternativa é mostrar a própria regra 23 Regras de Negócio e Sistemas de Informação As regras de negócio devem valer para a organização, e não apenas para os sistemas Linguagens para a declaração de Regras de Negócio Regras de negócio devem estar separadas das aplicações As regras de negócio devem ser declaradas formalmente sem ambiguidades Não-programadores devem ser capazes de entender as regras de negócio 24 Formalização de Regras de negócio Permite a automatização de procedimentos Gerar código para testar dados legados Avaliar o impacto de mudanças nas regras Descobrir quando as regras devem ser verificadas Gerar código SQL para bancos de dados existentes 25 Regras de Negócio e OCL OCL Pode ser utilizada para a especificação formal de regras de negócio Fácil de ser entendida por humanos Object Constraint Language Padrão UML para a especificação de restrições Fácil de ser entendida por sistemas É uma linguagem declarativa sem efeitos colaterias
Compartilhar