Escolar Documentos
Profissional Documentos
Cultura Documentos
Pgina 1 de 36
I - INTRODUO Anlise essencial, tambm conhecida como anlise estruturada moderna, surgiu na dcada de 80 com objetivo de resolver alguns problemas, de modelagem de sistemas, que existiam na anlise estruturada surgida nos anos 70. Nesta dcada, mais precisamente no ano de 1975, Douglas T. Ross e Kennety E. Shoman Jr., publicaram o primeiro trabalho de suas tcnicas de projeto de anlise estruturada, mais conhecida pela sigla em ingls SADT. A SADT (Structured Analisys Development Techniques) foi um grande avano em termos de conseguir uma definio clara dos objetivos de um sistema representado atravs de ferramentas grficas. A principal ferramenta utilizada na metodologia do SADT foi o diagrama de atividade, que veio a contribuir mais tarde na definio da ferramenta diagrama de fluxo de dados utilizada por Edward Yourdon e Larry Constantine entre outros. O diagrama de atividade representou uma melhoria, em relao ao texto narrativo utilizado na poca que o antecedeu. O maior problema com a metodologia SADT, que Ross e Schoman no disseram muito sobre o processo de desenvolver um sistema a partir de uma especificao de requerimentos. O grau de sucesso dos usurios (analistas) do SADT, continuava a depender muito das suas aptides. Em 1977, Chris Gane e Trish Sarson atravs de seu livro Structured System Analisys : Tool & Techniques , melhoraram a SADT oferecendo uma estratgia rudimentar para construir um modelo de sistemas baseado em dados, a partir das especificaes dos requerimentos. Eles propuseram tambm a utilizao especfica do diagrama de fluxo de dados em combinao com o dicionrio de dados e descrio do processo. Em 1978, Tom de Marco e Vitor Weinberg publicaram livros defendendo a mesma estrutura de modelagem proposta por Gane e Sarson, com algumas pequenas mudanas na terminologia. Naquela poca, j havia uma preocupao em distinguir os aspectos lgicos dos aspectos fsicos dos sistemas, porm havia ainda alguma confuso nesta diferenciao, misturando-se no decorrer do desenvolvimento de um sistema, o modelo lgico com o modelo fsico. A anlise essencial ou estruturada moderna veio, dentre outras coisas importantes, consolidar decisivamente este conceito de modelo lgico e modelo fsico, separando-os conceitualmente na forma adequada, como pode ser visto nos textos que seguem descritos.
Pgina 2 de 36
II - CONCEITOS GERAIS Requerimentos verdadeiros - a especificao de um sistema deve conter apenas requerimentos verdadeiros. Requerimentos falsos - so classificados em duas categorias principais: os tecnolgicos e os arbitrrios. requerimentos tecnolgicos falsos : so criados porque os analistas incluem especificaes tecnolgicas durante as especificaes dos requerimentos. requerimentos arbitrrios falsos : so criados quando os analistas descrevem o requerimento de um sistema de forma indevida, acima das necessidades reais do sistema ou atravs da utilizao inadequada das ferramentas de modelagem, provocando uma no conformidade na organizao das atividades dos sistemas. Podem ser exemplificados os seguintes requerimentos falsos : Se o sistema for capaz de cumprir sua finalidade sem a necessidade de implementar tal requerimento. Especificao de uma atividade realmente necessria ao sistema mas descrita por meio da tecnologia utilizada para sua execuo. Um requerimento que deve ser executado apenas para acomodar uma tecnologia utilizada para sua execuo. Tecnologia perfeita - com a tecnologia perfeita, um sistema teria um processador e um meio de armazenagem de informaes perfeito. Um processador perfeito aquele capaz de fazer qualquer coisa instantaneamente; isto teria todas as aptides e uma capacidade de trabalho infinita. Meio de armazenagem de informaes perfeito seria capaz de conter uma quantidade infinita de dados e permitir a recuperao dos mesmos de forma adequada por qualquer processador. Atividades essenciais - so todas as atividades do sistema independente da tecnologia utilizada. Pode-se definir tambm como todas as atividades necessrias ao funcionamento do sistema que o leve a atender os requisitos definidos na especificao do mesmo.
Pgina 3 de 36
As atividades essenciais so divididas em : Atividades fundamentais - so as atividades que contribuem para justificar a existncia do sistema, ou seja, so as atividades que executam as tarefas declaradas nos requerimentos do sistema. Atividades custodiais - so as atividades que estabelecem e mantm a memria essencial do sistema, com a obteno e armazenamento das informaes necessrias s atividades fundamentais. Memria essencial - so as informaes necessrias para atender s atividades essenciais (fundamentais) do sistema. Entidade externa - so as entidades que estimulam e recebem respostas do sistema. ela pode ser qualquer coisa: uma pessoa, um almoxarifado, um veculo, um sistema. para identificar de forma adequada uma entidade externa, deve-se ter uma independncia total do meio pelo qual o fluxo de informao veiculado. por exemplo num sistema de pessoal, que normalmente informa os dados cadastrais dos empregados, um funcionrio da gerncia de recursos humanos fornecer informaes ao sistema sobre os funcionrios da empresa, mas, a entidade externa que estimular o sistema sero os funcionrios. Entidade - o objeto concreto ou abstrato onde sero armazenadas as informaes necessrias para amparar a funcionalidade do sistema. No Diagrama de Fluxo de Dados (DFD) do modelo lgico denominada depsito de dados e no modelo fsico denominada arquivo ou Entidade/Objeto de Dados . Tem ainda autores que denominam entidade como objeto de dados. Ser utilizado, para simplificar o entendimento de todos, a terminologia Entidade em todas as etapas do Sistema. Processo - so os responsveis por toda lgica comportamental do sistema, para responder as funes desempenhadas pelo sistema. Modelo essencial - a modelagem global do sistema para atender as suas funes independentemente da tecnologia. Modelo ambiental - a modelagem do sistema que tem como objetivo representar quais informaes o sistema recebe do meio externo e envia para o mesmo ou simplesmente as registra. Nesta modelagem, obtido o que o sistema faz. Modelo comportamental - a modelagem do sistema que tem como objetivo definir quais informaes o sistema deve conter nos seus depsitos de dados, e quais processos devem manipular estes dados para atender as perguntas e respostas identificadas atravs do modelo ambiental. Nesta modelagem obtido como o sistema faz. Modelo de implementao - a modelagem do sistema que tem como objetivo definir em que ambiente e como o sistema ser desenvolvido.
Pgina 4 de 36
Contexto - tem como objetivo mostrar de forma grfica o ambiente de funcionamento do sistema, apresentando os fluxos de informao entre o sistema e as entidades externas ao mesmo. Lista de Eventos - tem como objetivo modelar a comunicao entre o sistema e as entidades externas sob a forma de eventos. Estes eventos podem ser: externos - quando existe um estmulo atravs de um fluxo de dados oriundo da entidade externa em direo ao sistema, sendo que o sistema poder ou no responder a este estmulo atravs de outro fluxo em sentido contrrio, ou at mesmo em direo a uma outra entidade externa qualquer. temporais - quando no existe um estmulo atravs de um fluxo de dados oriundo da entidade externa em direo ao sistema, sendo que o sistema apenas emitir um fluxo de dados oriundo no mesmo, com destino uma entidade externa qualquer. Mapeamento dos Eventos - tem como objetivo modelar os eventos, atravs do dos Diagramas de Resposta a Eventos (DRE) obtendo-se como produto final os depsitos de dados e seus atributos e a especificao do processo que atendero ao evento. Diagrama de Entidades e Relacionamentos (DER) - tem como objetivo modelar as entidades, obtidos atravs do diagrama de respostas a eventos , elaborando um diagrama que os relacione entre si. Normalizao dos dados - tem como objetivo normalizar as entidades existentes no DER, ajustando-os de tal forma que atenda s regras estabelecidas pelos bancos de dados relacionais.
Pgina 5 de 36
III - BENEFCIOS DA ANLISE ESSENCIAL A tcnica de anlise essencial permite, ordenar, padronizar, consistir e aumentar a produtividade e qualidade das equipes de desenvolvimento de sistemas. A partir de leituras de diversos livros de anlise essencial e modelagem de dados, dentre os quais : anlise essencial de sistemas (Sthephen M. McMenamim e John F. Palmer), anlise estruturada moderna (Edward Yourdon) e abordagem entidaderelacionamento para projeto lgico (Chen), engenharia de software (Roger Pressman), engenharia da informao (Feliciano, Furlan e Higa) e de experincias prprias, foi elaborado um roteiro prtico de aplicao da anlise essencial que certamente agregar um ganho de produtividade e qualidade ao ambiente de desenvolvimento da mesma. Este roteiro est descrito de forma simples e prtica, com estudo de caso, a seguir.
Pgina 6 de 36
V - FASE DE ANLISE - MODELO LGICO O Modelo Lgico do Sistema tem como objetivo, a partir do memorial descritivo obtido na fase de anlise de requisitos , modelar o funcionamento do sistema independente da tecnologia e do ambiente no qual o mesmo ser implementado. Ele composto do modelo ambiental e modelo comportamental. Modelagem ambiental Tem como objetivo, a partir do memorial descritivo, modelar o ambiente do Sistema. Esta modelagem define todos os eventos que as entidades externas enviam ao sistema, quais respostas a estes eventos que o sistema emite para as entidades externas e que informaes (respostas) so enviados espontaneamente (sem estmulo) do sistema para as entidades externas. O produto final ser : O QUE o sistema faz. Os instrumentos para executar esta modelagem so os seguintes: O Contexto representado pelo Diagrama de Contexto Lista de Eventos externos e temporais Diagrama de Contexto
As entidades externas ao sistema e o fluxo de informao entre elas e o sistema so identificadas a partir da descrio do sistema. De acordo com o memorial descritivo do sistema de recursos humanos apresentado, foram identificadas as seguintes entidades externas e fluxo de informaes : Entidades Externas Cliente Fluxo de Informaes Incluso, alterao e excluso de Clientes Solicitao de Pedidos Cancelamento de Pedidos Confirmao dos Pedidos Nota Fiscal Fatura Matrcula e senha dos empregados Arquivo ICMS
Pgina 7 de 36
Em seguida elaborado o Diagrama de Contexto, que representado atravs do relacionamento entre as entidades externas e o sistema, da seguinte maneira :
Incluso (EV1) Alterao (EV2) Excluso (EV3) Pedido (EV4) Usurio (EV8) Permisso de acesso
SISTEMA DE SEGURANA
CLIENTE
SEFAZ
Como mostrado neste exemplo uma entidade externa pode ser qualquer coisa, inclusive outros sistemas, e a comunicao das entidades externas com o sistema pode ser feita atravs fluxo de dados ou de arquivos.
Pgina 8 de 36
Lista de Eventos
representada por eventos que podem ou no ser emitidos pelas entidades externas ao sistema. Podem tambm emitir respostas s entidades externas ou no. A lista de eventos pode ser feita aps, antes, ou em paralelo com o diagrama de contexto, no entanto a lista de eventos tem que estar consistente com o diagrama de contexto e vice-versa. A lista de eventos deve ser feita de tal forma, que os mesmos no se tornem nem macro (muito genricos) e nem micro (muito pulverizados). A seguinte lista de eventos foi elaborada conforme o contexto do exemplo apresentado: EXTERNOS : Cliente solicita incluso - EV1 Cliente solicita alterao - EV2 Cliente solicita excluso - EV3 Cliente faz pedido - EV4 Cliente cancela pedido - EV5 Cliente confirma pedido - EV6 Sistema de Segurana informa usurio - EV8
TEMPORAIS : Sistema gera arquivos do ICMS - EV7 importante notar que, nem todos os fluxos de informaes que aparecem no diagrama de contexto aparecem na lista de eventos do sistema. Pode-se, por exemplo, ter fluxos oriundos de outros sistemas ou fluxos que so respostas de algum evento que esteja no contexto. No exemplo apresentado o fluxo de notas fiscais e faturas, para a entidade externa cliente, que resposta do evento confirmar pedido e o fluxo de informaes entre o sistema e o sistema de segurana, permisso de acesso e acesso concedido, ser uma troca de informaes entre os eventos modelados no sistema de vendas e o sistema de segurana, no havendo necessidades de model-los no sistema de vendas. OBS : Nesta fase ainda no foram identificadas todas as entidades externas e eventos. Ao elaborar o modelo comportamental possivelmente, o analista retornar esta etapa para identificar novas entidades externas, desenhar um novo contexto e descobrir novos eventos. Este tipo de ocorrncia normal quando se utiliza a anlise essencial como tcnica de anlise.
Pgina 9 de 36
Modelagem Comportamental Tem como objetivo a partir da lista de eventos modelar o comportamento do sistema, definindo os processos (que viro a ser os programas) e as Entidades (que viro a ser as Entidade/Objeto de Dados) que comporo o sistema.. O produto ser : COMO o Sistema faz. Para analisar como o sistema conseguir responder de forma adequada aos eventos enviados pelas Entidades Externas ou emitidos espontaneamente pelo Sistema, as seguintes atividades devem ser desenvolvidas : Mapeamento dos Eventos, com o objetivo de identificar os fluxos de dados, as entidades (objeto de dados) e o processo envolvidos na execuo do evento. Mapeamento das relaes existentes entre as entidades (objetos de dados). Mapeamento das mudanas de estado no sistema. Elaborao do DFD Diagrama de Fluxo de Dados nvel 0 (mais elevado)
Os instrumentos para executar esta Modelagem so : Diagrama de Resposta a Eventos ( DRE ) Diagrama de Transio de Estado ( DTE ) Diagrama Entidade e Relacionamento ( DER ) Dicionrio de Dados ( DD )
Mapeamento dos eventos Tem como objetivo modelar os processos e os dados que sero necessrios para atender aos eventos que chegam ao sistema e que exigem uma resposta do mesmo, os que chegam ao sistema e que o sistema apenas registra as informaes trazidas pelo mesmos e os eventos produzidos de forma expontnea, pelo sistema sem nenhum estmulo. A modelagem dos eventos conter as seguintes informaes : o fluxo de dados entre a entidade externa e o processo, o processo, as entidades e a especificao do processo. Para representar a parte grfica do mapeamento ser utilizado o DRE. Como produto final so obtidos todas as Entidades (que viro a ser os arquivos ou tabelas no modelo fsico ), sem normalizar e todos os processos do sistema necessrios para atender os eventos. Durante a elaborao dos eventos , podero surgir necessidade de novos eventos e novas entidades que no foram previstos inicialmente Em seguida ser apresentado o mapeamento dos eventos :
Pgina 10 de 36
CLIENTE
FLINCCLIENTE
Incluir Cliente
CLIENTE
FLUXO DE DADOS FLINCCLIENTE nome + endereo + data de nascimento + data de cadastro + CPF + nmero da identidade. ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Verificar se o cliente existe, se existir mensagem cliente j cadastrado e encerrar. Verificar se todos os dados do cliente foram informados e de forma correta : nome e endereo diferente de brancos; data de cadastro e data de nascimento vlidas; CPF numrico, maior que zeros e dgito verificador vlido; e nmero da identidade numrico e maior que zeros. Se houver algum erro nesta verificao mensagem dados de cliente invlidos e encerrar. Se tudo estiver correto atribuir um cdigo ao cliente e inclu-lo.
Pgina 11 de 36
CLIENTE
FLALTCLIENTE
Alterar Cliente
CLIENTE
FLUXO DE DADOS FLALTCLIENTE nome + endereo + data de nascimento + data de cadastro + CPF + nmero da identidade. ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Verificar se o cliente existe , se no existir mensagem cliente no existente e encerrar. Verificar se todos os dados do cliente a serem alterados, foram informados e de forma correta : nome e endereo diferente de brancos; data de cadastro e data de nascimento vlidas; CPF numrico, maior que zeros e digito verificador vlido; e nmero da identidade numrico e maior que zeros. Se houver algum erro nesta verificao mensagem dados de cliente invlidos e encerrar. Se tudo estiver correto efetuar as alteraes solicitadas.
Pgina 12 de 36
PEDIDO
CLIENTE
FLEXCCLIENTE
Excluir Cliente
CLIENTE
FLUXO DE DADOS FLEXCCLIENTE CPF do Cliente ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Verificar se o cliente existe , se no existir mensagem cliente no existente e encerrar. Verificar se o cliente tem algum pedido pendente, se tiver mensagem cliente com pedido pendente e encerrar. Eliminar cliente e encerrar.
Pgina 13 de 36
CLIENTE
FLPEDIDO
Cadastrar Pedido
FLCODPEDIDO
PEDIDO
FLUXO DE DADOS FLPEDIDO : cdigo do cliente + nmero de faturas + data do pedido + [(cdigo do produto + nome do produto + quantidade) + (cdigo do produto + nome do produto + quantidade) + (cdigo do produto + nome do produto + quantidade) (etc.) ]. FLCODPEDIDO : cdigo do pedido Analisando o DRE e pelo FLUXO DE DADOS , tem-se a necessidade de verificar se o produto vlido e deve-se evitar informar o nome do produto, informando apenas o cdigo. O novo DRE, ento, ficar da seguinte maneira :
CLIENTE
CLIENTE
FLPEDIDO
Cadastrar Pedido
PEDIDO
FLCODPEDIDO PRODUTO
Pgina 14 de 36
Neste novo DRE surgiu um nova Entidade PRODUTO. Deve-se portanto acrescer na Lista de Eventos, um evento que permita cadastr-lo, surgindo ento o novo evento : Gerncia cadastra produto. Neste novo evento aparece uma nova entidade externa com o nome de Gerncia. Ser necessrio alterar o Diagrama de Contexto para inclu-la. Adiante ser elaborada a Lista de Eventos e o Diagrama de Contexto definitivos. O novo Fluxo de Dados FLPEDIDO ficar da seguinte maneira : FLUXO DE DADOS FLPEDIDO : : cdigo do cliente + nmero de faturas + data do pedido + [(cdigo do produto + quantidade) + (cdigo do produto + quantidade) + (cdigo do produto + quantidade) (etc.) ]. FLCODPEDIDO : cdigo do pedido Analisando o FLPEDIDO pode-se verificar que h uma repetio de (cdigo de produto + quantidade) n vezes. O depsito PEDIDO, que ser o responsvel por armazenar esta informao, ter que faze-la prevendo o repetio de (cdigo do produto + quantidade) n vezes. Se a implementao do depsito de dados for em Banco de Dados Relacional, deve-se aplicar a 1FN neste depsito. Esta normalizao ser feita adiante quando for elaborado o DER. ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada incluso de pedido: Verificar se o cliente existe, se no existir mensagem cliente inexistente e encerrar. Verificar se o produto existe, se no existir mensagem produto inexistente e encerrar. Verificar se a quantidade de cada produto foi informada diferente de ZERO, se informada de forma correta criar e informar um nmero para o pedido, colocar status = A e incluir o pedido, caso contrrio mensagem quantidade de produto invlida e encerrar.
Pgina 15 de 36
PEDIDO
CLIENTE
FLCANPEDIDO
Cancelar Pedido
PRODUTO_PEDIDO
FLUXO DE DADOS FLCANPEDIDO : cdigo do pedido ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada cancelamento: Verificar se o pedido existe, se no existir mensagem pedido no existente e encerrar. Caso exista: se o pedido j foi atendido (verificar se status = A), mensagem "pedido j atendido" e eliminando todos os registros do Pedido em Produto_Pedido e colocar status = C no pedido. se o pedido estiver com status = C, emitir mensagem "pedido j foi cancelado" e encerrar. .
Pgina 16 de 36
se o pedido j foi confirmado (verificar se status = X), mensagem "pedido j foi confirmado, no pode ser cancelado" encerrar.
Pgina 17 de 36
FLNOT AFISCAL
CLIENTE
PEDIDO
PRODUTO FLFATURA
FLUXO DE DADOS FLCONFPEDIDO : cdigo do pedido FLNOTAFISCAL : cdigo do cliente + nome do cliente + endereo do cliente + cdigo da nota + valor da nota + valor do ICMS + data de emisso + [(cdigo do produto + quantidade do produto + valor unitrio) + [(cdigo do produto + quantidade do produto + valor unitrio) + [(cdigo do produto + quantidade do produto + valor unitrio) etc...] FLFATURA vencimento : cdigo da nota + cdigo da fatura + valor da fatura + data do
ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada confirmao: Verificar se o pedido existe, se no existir mensagem pedido no existente e encerrar. Caso exista atualizar a confirmao do
Pgina 18 de 36
pedido, emitir e criar a Nota Fiscal e as suas respectivas Faturas com datas de vencimento conforme instrues contidas no pedido do cliente.
Pgina 19 de 36
ICMS
SEFAZ
Gerar ICMS
NOTA_FISCAL
FLUXO DE DADOS FLICMS : ano + ms + valor do ICMS ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para todas as Notas Fiscais do ms/ano, validar o ms/ano e se forem invlidos emitir mensagem ano/ms invlidos e encerrar. Se tudo correto, somar o valor do ICMS contido na Nota e criar o arquivo mensal do ICMS.
Pgina 20 de 36
SISTEMA DE SEGURANA
FLUSUARIO
GUARDAR USURIO
FLUXO DE DADOS FLUSUARIO : Cdigo do Usurio ESPECIFICAO Aps receber a identificao do usurio, guard-la em memria para utilizao por outros eventos do sistema.
Pgina 21 de 36
Mudanas de estado Tem como objetivo enfatizar o comportamento do tempo - dependente do sistema. Estes estados se modificam, a partir de eventos que chegam ao sistema. A sua representao importante, principalmente em sistemas on line e real time, quando o controle de mudanas de estado do sistema fundamental para o funcionamento adequado do mesmo Como ferramenta para esta modelagem ser utilizado o DTE (Diagrama de Transio de Estado). Em seguida ser apresentado um exemplo de um DTE para um controle situao de pedidos. sistema de
PEDIDO CANCELADO
PEDIDO CONFIRMADO
Pgina 22 de 36
Mapeamento das relaes existente entre as entidades O E-R constitui um mecanismo que representa a associatividade entre as Entidades. Tem como objetivo modelar o relacionamento entre as Entidades do sistema que foram identificadas nos DREs. Como ferramenta para esta modelagem ser utilizado DER (Diagrama Entidade e Relacionamento). Para modelar o relacionamento entre as Entidades os seguintes passos devem ser seguidos : 1)Identificar as Entidades nos DREs. CLIENTE, PEDIDO, PRODUTO, NOTA_FISCAL, FATURA e ICMS 2)Relacionar as Entidades identificadas obtendo o DER no normalizado
PRODUTO
FATURA
Tem
Pertence
Gera
CLIENTE
PEDIDO
NOTA_FISCAL
Compoem
resultado
ICMS
Pgina 23 de 36
3)Aplicar as regras de normalizao ( 1FN, 2FN e 3FN) definidas no capitulo Modelagem de Dados/Objetos deste Volume do ADS e obter o DER normalizado. No caso do exemplo apresentado, ser aplicada a 1 FN na relao PRODUTO x PEDIDO, criando a Entidade associativa PRODUTO_PEDIDO eliminando repetio de campos.
PRODUTO
FATURA
Tem
Pertence
Pertence
Gera
CLIENTE
Faz
PRODUTO_PEDIDO
gerada
NOTA_FISCAL
Pertence
Compoem
Tem
resultado
Pertence
PEDIDO
Gera
ICMS
DER NORMALIZADO
4)Aps obter o DER normalizado, analis-lo em conjunto com os DREs obtidos podese ter alterao no Diagrama de Contexto e nos DREs obtido. No exemplo estas alteraes ocorreram alterando a Lista de Eventos, o Diagrama de Contexto e o os DREs, conforme segue descrito em seguida.
Pgina 24 de 36
Incluso (EV1) Alterao (EV2) Excluso (EV3) Pedido (EV4) Usurio (EV8) Permisso de acesso
SISTEMA DE SEGURANA
CLIENTE
GERNCIA
SEFAZ
Contexto alterado aps incluso da Entidade Externa GERENCIA Lista de Eventos definitiva EXTERNOS : Cliente solicita incluso - EV1 Cliente solicita alterao - EV2 Cliente solicita excluso - EV3 Cliente faz pedido - EV4 Cliente cancela pedido - EV5 Cliente confirma pedido - EV6 Sistema de Segurana informa usurio - EV8 Gerencia cadastra produto (evento novo) - EV9 TEMPORAIS : Sistema gera arquivos do ICMS - EV7
Pgina 25 de 36
EVENTO 1 : sem alterao EVENTO 2 : sem alterao EVENTO 3 : sem alterao EVENTO 4 : Cliente faz pedido ( alterado em funo na normalizao para incluir PRODUTO_PEDIDO)
CLIENTE
FLCODPEDIDO
PRODUTO
Neste novo DRE percebe-se que surgiu, um nova Entidade, PRODUTO_PEDIDO. A especificao do evento deve ser alterada para atender a existncia desta nova entidade. FLUXO DE DADOS FLPEDIDO : : cdigo do cliente + nmero de faturas + data do pedido + [(cdigo do produto + quantidade) + (cdigo do produto + quantidade) + (cdigo do produto + quantidade) (etc.) ]. FLCODPEDIDO : cdigo do pedido
Pgina 26 de 36
ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada incluso de pedido: Verificar se o cliente existe, se no existir mensagem cliente inexistente e encerrar. Verificar se o produto existe, se no existir mensagem produto inexistente e encerrar. Verificar se a quantidade de cada produto foi informada >= ZERO. Se informado de forma correta criar e informar um nmero para o pedido, e incluir o pedido e produto_pedido, caso contrrio mensagem quantidade de produto invlida e encerrar.
Pgina 27 de 36
EVENTO 6 : Cliente confirma pedido (alterado em funo na normalizao para incluir PRODUTO_PEDIDO. DIAGRAMA RESPOSTA AO EVENTO
CLIENTE
FLNOT AFISCAL
PEDIDO
PRODUTO_PEDIDO
Neste novo DRE percebe-se que surgiu, um nova Entidade, PRODUTO_PEDIDO. A especificao do evento deve ser alterada para atender a existncia desta nova entidade. FLUXO DE DADOS FLCONFPEDIDO : cdigo do pedido FLNOTAFISCAL : cdigo da nota + valor da nota + valor do ICMS + data de emisso + [(cdigo do produto + quantidade do produto + valor unitrio) + [(cdigo do produto + quantidade do produto + valor unitrio) + [(cdigo do produto + quantidade do produto + valor unitrio) etc.] + CGC da transportadora + nome da transportadora FLFATURA vencimento : cdigo da nota + cdigo da fatura + valor da fatura + data do
Pgina 28 de 36
ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada confirmao: Verificar se o pedido existe, se no existir mensagem pedido no existente e encerrar. Caso exista atualizar a confirmao do pedido, emitir e criar a Nota Fiscal e as suas respectivas Faturas com datas de vencimento conforme instrues/informaes contidas na entidade pedido e as informaes contidas nas entidades produto e produto_pedido.
EVENTO 7 : Sistema gera arquivos do ICMS (sem alterao) EVENTO 8 : Sistema de Segurana informa usurio (sem alterao) EVENTO 9 : Gerncia cadastra produto (novo evento) DIAGRAMA RESPOSTA AO EVENTO
GERENCIA
FLPRODUTO
Cadastrar Produto
PRODUTO
FLUXO DE DADOS FLPRODUTO : cdigo do produto + nome do produto ESPECIFICAO Solicitar ao sistema de segurana atravs de mensagem, se o usurio tem autorizao para utilizar esta funo. Se a resposta for negativa emitir mensagem este usurio no est autorizado a utilizar esta funo e encerrar. Se a resposta for positiva continuar. Para cada cadastramento: Verificar se o produto existe comparando o nome do produto com um j cadastrado. Se existir mensagem produto existente e encerrar. Caso no exista incluir o produto.
Curso de Anlise Essencial Pgina 29 de 36
Pgina 30 de 36
Elaborao do DFD nvel 0 Tem como objetivo mostrar uma viso integrada e global do sistema. Quando o sistema tem muitos eventos, haver uma certa dificuldade em represent-lo. Nestes casos pode-se reunir um conjunto de eventos, desde que altere a lgica global do sistema, em um nico evento para facilitar a representao deste DFD. Em seguida apresentaremos duas verses de DFD, para o exemplo que estamos apresentando at agora. Uma com todos os eventos e outra com reunio de alguns eventos .
Pgina 31 de 36
dados do cliente
dados do produto
excluir produto
PRODUT O dados do cliente excluir cliente cadastrar pedido cancelar pedido dados de pedido dados de pedido dados de pedido confirmar pedido PEDIDO
NOTA FISCAL
Pgina 32 de 36
dados do cliente
cadastrar cliente
cadastra produto
dados do produto
CLIENTE
PRODUT O
dados de pedido
cadastrar pedido
ICMS
Pgina 33 de 36
Dicionrio de Dados
uma ferramenta de modelagem utilizada durante todo o desenvolvimento do sistema, de forma evolutiva. Durante a FASE DE ANLISE MODELO LGICO, tem como objetivo descrever de forma clara, ordenada e padronizada os fluxos de dados entre as entidade externas e o sistema e vice-versa e as entidade externas do sistema. Existem vrias notaes para se descrever um dicionrio de dados, nesta primeira Fase de implantao do ADS a descrio ser de forma livre, mas de acordo com o padro da ferramenta CASE do ambiente.
Pgina 34 de 36
Entidades Externas CLIENTE : Representa os clientes da empresa GERNCIA : Representa a gerncia da empresa SEFAZ : Representa a Secretria da Fazenda do Estado SISTEMA DE SEGURANCA : Representa o sistema de segurana, que ser o responsvel pelo controle de acesso ao sistema e s funes do mesmo. Entidades CLIENTE : Contm as informaes sobre os clientes da empresa PRODUTO : Contm informaes sobre os produtos comercializados pela empresa PEDIDO : Contm informaes sobre os pedidos dos cliente na empresa PRODUTO_PEDIDO : Contm informaes sobre os produtos de um pedido ICMS : Contm informaes sobre o ICMS calculado na Notas Fiscais NOTA_FISCAL :Contm informaes sobre as Notas Fiscais emitidas nas vendas. FATURA : Contm informaes sobre as faturas oriundas da Notas Fiscais emitidas Fluxos de Dados FLINCCLIENTE :Contm as informaes sobre os clientes durante o evento incluir cliente. FLALTCLIENTE :Contm as informaes sobre os clientes durante o evento alterar cliente. FLEXCCLIENTE :Contm as informaes sobre os clientes durante o evento excluir cliente. FLPEDIDO : Contm informaes sobre os pedidos dos cliente durante o evento fazer pedido. FLCODPEDIDO :Contm informaes sobre nmero atribudo ao cliente, oriundo da resposta do evento fazer pedido. FLCANPEDIDO :Contm informaes sobre cancelamento dos pedidos durante o evento, cancelar pedido. FLCONPEDIDO : Contm informaes sobre a confirmao dos pedidos dos cliente, durante o evento confirmar pedido. FNOTAFISCAL : Contm informaes sobre as Notas Fiscais emitidas nas vendas. FLFATURA : Contm informaes sobre as faturas oriundas da Notas Fiscais emitidas. FLICMS : Contm as informaes sobre o ICMS para ser enviado SEFAZ. FLUSUARIO : Contm as informaes o usurio que est acessando o sistema.
Pgina 35 de 36
ROTEIROS PARA A FASE DE ANLISE MODELO LGICO Roteiro 1 - principal Passo 1 : Levantamento de informaes nos usurios/clientes, objetivando o entendimento do sistema e elaborao do memorial descritivo. Passo 2 : Elaborao da modelagem ambiental produzindo o contexto do sistema, a lista de eventos. Passo 3 : A partir da lista de eventos, elaborao dos diagramas de resposta a eventos, buscando definir os processos e os dados que faro parte do sistema. Passo 4 : Elaborao do DER (Diagrama de Entidade e Relacionamentos) e a normalizao do mesmo. Passo 5 : Reviso do Diagrama de Contexto e dos Diagramas de Resposta a Eventos Passo 6 : Dicionrio de Dados Roteiro 2 - alternativo Passo 1 : Levantamento de informaes nos usurios/clientes, objetivando o entendimento do sistema e elaborao do memorial descritivo. Passo 2 : Elaborao da modelagem ambiental produzindo o contexto do sistema, a lista de eventos. Passo 3 : Elaborao do DER (Diagrama de Entidade e Relacionamentos), a normalizao do mesmo. Passo 4 : A partir da lista de eventos e do DER normalizado, ajustar a lista de eventos e diagrama de contexto, elaborar os diagramas de resposta a eventos. Passo 5: Dicionrio de Dados
Pgina 36 de 36