fasp - ams - 02 - análise essencial de sistemas

Upload: jcgpereira2001337

Post on 29-May-2018

223 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    1/30

    MANUAL TCNICO

    AnliseEssencial deSistemas

    Volume

    1

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    2/30

    ndice analtico

    C A P T U L O 1

    Sistemas 2

    A Captao da Essncia 2

    A Formao do Pessoal de Sistemas 3

    A Cultura do Usurio 3

    A Comunicao Analista X Usurio 3

    A Documentao 4

    Modelos 4

    Ferramentas de Modelagem 5

    Ferramentas de Modelagem Tradicionais 5

    Fases do Desenvolvimento de Sistemas 5

    Tabela de Produtos 10

    C A P T U L O 2

    Modelagem de Eventos 11

    Algoritimo para Modelagem de Eventos 11

    Eventos Relacionados 11

    Determinando o Contexto de Sistema 12

    Eventos Externos e Eventos Internos 12

    Fluxo de Dados e Eventos 12

    Documentando o Modelo Ambiental 12

    CAPTULO 3

    Produzindo o MER a partir da Lista deEventos 14

    Eventos Custodiais 14

    Anatomia do Processo Essencial 15

    Derivando o Modelo de Processos 16

    Nivelando o Modelo de Processos 16

    O Conceito de Nivelamento 16

    Balanceando o Modelo 17

    Balanceando entre Projees 18

    Balanceamento entre Nveis 18

    C A P T U L O 4

    Especificao de Composio de Dados 22

    Especificao de Elemento de Dados 23

    Especificao de Entidades 23

    Especificao de Relacionamento 24

    Especificao de Processo 24

    Consideraes sobre Especificao de

    Processo 24

    Expresses e Operadores 25

    Funes 26

    Recebendo e Enviando Fluxos de Dados 26

    Criando e Removendo Ocorrncias de

    Objeto 26

    Encontrando uma Ocorrncia do Objeto 27

    Seleo 27

    Construes de Repetio 27

    BIBLIOGRAFIA 29

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    3/30

    FASPFASPFASPFASP 2222

    Os sistemas com os quais ns trabalhamos podem ser classificados como Sistemas deResposta Planejada e possuem as seguintes caractersticas:

    H uma necessidade ou oportunidade de negcio que precisa ser atendidano mundo real; o sistema surge como resposta a essa necessidade ouoportunidade.

    Todo sistema tem uma finalidade especfica: o que o sistema faz, earmazena, est diretamente relacionado com essa finalidade.

    Os sistemas tm de fornecer respostas previsveis: h um conjunto deregras que o sistema deve obedecer, no sentido de responder a eventosexternos ao sistema, de acordo com sua finalidade.

    Os sistema so transferveis: as regras que os regem precisam ser escritasde modo que os sistemas possam ser transferidos de um processador paraoutro, quer ele seja automatizado ou humano.

    A fronteira do sistema caracterizada pelas entradas/origens dos dados epelas sadas/destinos das informaes; a determinao da fronteira de

    um sistema uma boa ferramenta para caracteriz-lo.

    O interior do sistema consiste de atividades e de dados armazenados, queso as engrenagens que respondem a eventos externos, de acordo com asfinalidades do sistema.

    A essncia do sistema independe da tecnologia utilizada para implement-lo. Por exemplo: o sistema de contas correntes do Banco do Brasil omesmo desde sua fundao h mais de um sculo. O que tem mudado,muito rapidamente, a tecnologia de implementao do sistema.

    O trabalho de anlise de um sistema consiste em conseguir captar a sua essncia: osfatos que ocorrem fora do sistema que causaro uma ao do sistema como resposta.Esse trabalho deve procurar filtrar todas as condies e caractersticas deimplementao, em busca da sua essncia. Essencial aquilo que o sistema deve ter.Se no tiver, o sistema no conseguir atingir seus objetivos.

    Captulo

    1Sistemas

    A Captao daEssncia

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    4/30

    FASPFASPFASPFASP 3333

    Em geral, os profissionais de informtica so formados em Economia, Administraode Empresas, Engenharia, etc.. Em seus cursos de graduao tiveram contato com ainformtica em temas como Clculo Numrico.

    A formao efetiva desses profissionais d-se por osmose dentro das empresas, portroca de experincias com profissionais mais tarimbados. Quando h treinamento,este executado pelo fabricante do equipamento utilizado e em ferramentas desoftware existentes e utilizadas na instalao. Dessa forma, depois de alguns anos, oprofissional promovido categoria senior e possui vasto conhecimento emsoftwares bsico, habitualmente denominados por trs ou quatro letras. As tcnicas deanlise de sistemas, de levantamento de dados, de projeto de sistemas, de codificao ede testes praticadas so aquelas que os outros j praticavam.

    Aliado a esse fato, existe outro: o profissional de informtica, em geral, fortementereacionrio e resistente a novas tcnicas que causem qualquer mudana em sua rotinadiria e em seu comportamento pessoal.

    No podemos esquecer que a informtica uma cincia nova, que est em constantee rpida evoluo.

    Como promotor da entrada da tecnologia na empresa, o profissional de informticano deve ser ele prprio reativo s novas tecnologias.

    Os usurios tm a formao de acordo com sua rea de atuao. Assim, claro que oDepartamento Jurdico est repleto de advogados, a Contabilidade formada porcontadores e o Departamento Financeiro comandado por economistas.

    Os usurios, ao longo dos anos, tm tido algumas ms experincias com a informtica.Sistemas desenvolvidos para eles que no funcionaram adequadamente, sistemas quenunca ficaram prontos, sistemas que no se adaptam s mudanas em sua rea,sistemas que acabam acrescentando trabalho ao seu dia-a-dia. Apesar disso, ele aindaacredita na informtica e quer, cada vez mais, apoio de sistemas em suas atividades. Odifcil conseguir que o pessoal l da informtica o atenda. Por isso vemos, com tantafreqncia, usurios montando verdadeiros CPDs paralelos para terem um mnimode apoio informatizado em seus negcios.

    Os usurios conhecem o problema, os negcios, muito melhor que os analistas. Osanalistas conhecem tcnicas para resolver os problemas. O trabalho de anlise deveproduzir uma soluo para o problema. Geralmente a linguagem do usurio

    impregnada de termos do vocabulrio tcnico do assunto do problema que os analistasno entendem completamente. Por outro lado, ao expor a soluo, os analistasutilizam uma linguagem tcnica derivada do informatiqus que o usuriodesconhece.

    A Formao do

    Pessoal de

    Sistemas

    A Cultura do

    Usurio

    A Comunicao

    Analista X Usurio

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    5/30

    FASPFASPFASPFASP 4444

    A qualidade da soluo fortemente influenciada pela qualidade de sua validao pelosusurios. Ser que ns entendemos corretamente o problema? Ser que a soluo vivel?

    importante que o trabalho seja feito em conjunto e que se utilize de vocabulrioprprio, comum a todos os participantes. Analistas e usurios trabalhando no mesmotime, em busca da melhor soluo. Trabalhar junto leva ao entendimento, melhorcomunicao e sinergia.

    Para possibilitar essa comunicao h a necessidade de documentarmos oentendimento obtido. Essa documentao servir de base, num momento posterior,ao trabalho de manuteno do sistema j instalado.

    Para que a documentao seja til, importante que ela seja produzida durante o

    trabalho, que seja completa e que esteja atualizada. Uma documentao desatualizadano serve para nada.

    Sistemas com documentao incompleta ou desatualizada precisam de arquelogos,especialistas que vasculham fragmentos de cdigo, arquivos e dumps com o objetivode construir hipteses a respeito de pra que serve isso? no sistema. Alm dosarquelogos, o sistema precisar ser atendido por pediatras, profissionais que sochamados a qualquer hora, principalmente de madrugada ou aos fins de semana, todavez que o sistema passa mal.

    Um modelo uma representao abstrata de algo real. O modelo tem o objetivo deimitar a realidade para possibilitar que esta seja estudada quanto ao seucomportamento.

    Tradicionalmente, a engenharia tem empregado modelos em escala, plantas, desenhosde circuitos, prottipos.

    O uso de modelos torna o estudo mais barato e seguro: muito mais rpido e baratoconstruir um modelo que construir a coisa real.

    O objetivo do modelo mostrar como ser o sistema, para permitir sua inspeo everificao, de modo a poder receber alteraes e adaptaes antes de ficar pronto.

    Qualquer modelo reala certos aspectos do que est sendo modelado em detrimentode outros.

    A ferramenta que usamos para modelar influi diretamente na forma como pensamossobre a realidade e determina quais aspectos sero mostrados e quais ficaroescondidos.

    A Documentao

    Modelos

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    6/30

    FASPFASPFASPFASP 5555

    Para modelarmos sistemas, necessitamos de ferramentas com as seguintescaractersticas:

    Grficas, com apoio de textos, como um mapa: legveis, concisas e

    padronizadas. A parte grfica particiona o sistema em componentesinterrelacionados, sem as restries de um texto linear. A parte textualdescreve os componentes e suas interconexes;

    Particionveis, do geral para o especfico, como um atlas geogrfico,tornando o modelo mais fcil de entender. Precisamos ser capazes de ter aviso geral do sistema sem nos preocuparmos com detalhes e, termos aviso do detalhe sem perdermos a noo do todo;

    Rigorosas, como as escalas de uma planta. O modelo do sistema deve serpreciso, sem erros, incompletudes e redundncias. Mas deve ser flexvel,

    fcil de mudar, pois o sistema est sempre em constante evoluo;

    Capazes de predizer o comportamento do sistema, como umprottipo. O modelo deve ser capaz de nos dizer o que bom e o que ruim no sistema, em termos objetivos, antes que o sistema sejaimplementado. O modelo deve nos permitir simular o comportamento dosistema.

    Capazes de mostrar os aspectos crticos do sistema, como fotos devrios ngulos, com simplicidade. Cada modelo deve ser uma projeo dosistema em um espao simplificado.

    As ferramentas tradicionais de modelagem de sistemas levam a modelos redundantes,contraditrios e difceis de checar quanto sua completude e preciso. necessrioque utilizemos ferramentas de modelagem substancialmente diferentes daquelasanteriormente utilizadas pelos mtodos tradicionais.

    O Desenvolvimento de sistemas com Anlise Essencial se d sempre de maneira a seobter mais conhecimento e qualidade a cada passo, atravs de refinamentos sucessivos.O primeiro passo construir o Modelo do Ambiente do sistema, composto peloDiagrama de Contexto e pela Lista de Eventos Externos. A finalidade desse modelo determinar a abrangncia do sistema pela especificao dos eventos que motivam a suaao, das entradas e suas origens e das sadas e seus destinos.

    A partir da Lista de Eventos Externos, do Modelo do Ambiente, deve ser construdo oModelo do Comportamento do sistema, que especifica de que forma o sistema estruturado em termos de dados e funes para atingir aos objetivos estabelecidos epara responder aos eventos do Modelo do Ambiente. A Figura SDS 1 - O

    Ferramentas de

    Modelagem

    Ferramentas de

    Modelagem

    Tradicionais

    Fases do

    Desenvolvimentode Sistemas

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    7/30

    FASPFASPFASPFASP 6666

    desenvolvimento de sistemas com Anlise Essencial, mostra o contexto dodesenvolvimento de sistemas visto, ele prprio, como um sistema.

    Figura SDS 1 - O desenvolvimento de sistemas com Anlise Essencial

    DesenvolverSistemas

    PessoalInfo

    Pessoal

    PessoalInfo

    Modelo Essencial

    Modelo deImplementao

    Conhecimento daTecnologia de

    Automao

    Conhecimento doAssunto do Sistema

    Resties deImplementao

    Objetivos doSistema

    O desenvolvimento de sistemas interage com o pessoal de informtica, que detm oconhecimento da tecnologia de automao; com o usurio, responsvel pela definiodos objetivos e restries do sistema e profundo conhecedor do assunto e do ambientedo sistema. A empresa a beneficiria do trabalho, recebendo o produto dodesenvolvimento: o sistema.

    A Figura 0 - Desenvolver Sistemas, mostra os dois principais processos dodesenvolvimento de sistemas.

    Figura 0 - Desenvolver Sistemas

    1.Criar oModelo

    Essencial

    2.Derivar oModelo de

    Implementao

    Modelo Essencial

    Conhecimento doAssunto do Sistema

    Objetivos do Sistema

    Restries deImplementao

    Conhecimento daTecnologia de

    Implementao

    Modelo de

    Implementao

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    8/30

    FASPFASPFASPFASP 7777

    A Figura 1 - Criar o Modelo Essencial detalha o processo de modelagem essencial.Em primeiro lugar fazemos a modelagem do Ambiente do Sistema: a quais eventosexternos o sistema deve responder; quais os fluxos de dados fornecidos pelo ambienteao sistema; de onde vm esses dados; quais as informaes que o sistema deve

    produzir; quem so os usurios dessas informaes.

    Figura 1 - Criar o Modelo Essencial

    1.

    Modelar o

    Ambiente do

    Sistema

    2.

    Derivar o

    Modelo de

    Implementao

    Modelo do Ambiente

    Conhecimento doAssunto do Sistema

    Objetivos do Sistema

    Conhecimento do

    Assunto do

    Sistema

    Modelo do

    Comportamento

    Modelo Essencial

    Modelo de Ambiente

    Modelo de Comportamento

    A partir do Modelo do Ambiente derivado o Comportamento do Sistema: quais so

    as estruturas de dados e quais so os processos internos do sistema necessrios paragarantir que o sistema atinja seus objetivos.

    A Figura 1.1 - Modelar o Ambiente do Sistema, mostra que essa tarefa feita peladeterminao do Contexto do Sistema e pela identificao de Eventos Externos. Essastarefas so executadas em conjunto, uma subsidiando a outra.

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    9/30

    FASPFASPFASPFASP 8888

    Figura 1.1 - Modelar o Ambiente do Sistema

    Conhecimento do

    Assunto do Sistema

    1.1.1Determinar o

    Contexto do

    Sistema

    1.1.2

    Identificar os

    Eventos

    Essenciais

    Diagrama de

    Contexto Preliminar

    Objetivos do Sistema

    Conhecimento do

    Assunto do

    Sistema

    Lista de Eventos

    Preliminar

    Lista de Eventos

    Diagrama de

    Contexto

    Objetivos do Sistema

    Modelo de Ambiente

    Diagrama de Conrtexto

    Lista de Eventos Externos

    Especificao de Estmulos e Sadas

    A figura 1.2 - Derivar o Comportamento do Sistema - ilustra que essa tarefa constituda de trs partes: A modelagem dos dados, a modelagem das atividadesessenciais e a especificao dos detalhes em um dicionrio de dados.

    Figura 1.2 - Derivar o Comportamento do Sistema

    Conhecimento do

    Assunto do

    Sistema

    Objetivos do Sistema

    Modelo de Comportamento

    Modelo Entidades e Relacionamentos

    Modelo de Atividades Essenciais

    Especificaes Textuais

    Conhecimento do

    Assunto do Sistema

    1.2.2

    Modelar

    os Dados

    Armazenados

    1.2.1Modelar as

    Atividades

    EssenciaisDFD

    Preliminar

    MER

    Preliminar

    Especificaes

    Textuais

    Modelo de

    Ambiente

    1.2.3

    Especcificar

    Detalhes

    DFD

    (Atividades Essenciais)MER

    Preliminar

    Objetivos do Sistema

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    10/30

    FASPFASPFASPFASP 9999

    A Figura 2 - Derivar o Modelo de Implementao, consiste, em primeiro lugar, nadeterminao do Modelo de Processadores, onde as atividades essenciais so alocadasa processadores, que so os agentes que executaro cada uma das atividadesimplementadas, fisicamente(entenda-se, aqui, por exemplo, computadores e pessoas);

    na derivao do Modelo de Tarefas, onde as atividades so organizadas, porprocessador, em seqncias ou grupos de operao que fazem trabalho til para ousurio (tarefas), e na derivao do Modelo de Arquitetura de Cdigo, onde as mesmasatividades so divididas em objetos ou mdulos funcionais (dependendo do ambientede hardware), com o mximo de coeso interna e o mnimo de interdependncia entremdulos.

    Figura 2 - Derivar o Modelo de Implementao

    Conhecimento da

    Tecnologia de Automao

    Restries deImplementao

    Restries deImplementao

    Modelo de Implementao

    Modelo de ProcessadoresModelo de Tarefas

    Modelo de Arquitetura de Cdigo

    Conhecimento daTecnologia de Automao

    2.1Derivar o

    Modelo deProcessadores

    2.2

    Modelo de

    Tarefas

    Moelo deProcessadores

    Modelo deArquitetura de Cdigo

    ModeloEssencial

    2.3Derivar o

    Modelo deArquiteturade Cdigo

    Modelo deTarefas

    Conhecimento daTecnologia de Automao

    Restries deImplementao

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    11/30

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    12/30

    C O N S T R U I N D O O M O D E L O A M B I E N T A L

    FASPFASPFASPFASP 11111111

    A construo do Modelo Ambiental se d atravs da Definio do Contexto doSistema e da Modelagem da Lista de Eventos Externos.

    Um evento externo algo que ocorre no ambiente (fora dos limites do sistema) e queprovoca uma resposta do sistema, como conseqncia. Um evento pode ser sinalizadopor um fluxo de dados ou ser localizado em um determinado instante no tempo.

    Analisar eventos , basicamente, identificar fatos que ocorrem no meio ambiente queinterage com o sistema e que exigem uma resposta do mesmo. Esta resposta pode ser,

    por exemplo, o armazenamento de uma informao ou a produo de um resultado.

    Analise o ambiente do sistema e ponha no papel todo fato que, a princpio, pareadeterminar uma ao do sistema. Cada evento deve ser escrito em uma orao.Lembre-se que uma orao uma construo gramatical que expressa uma idiacompleta. Deve possuir um sujeito, um verbo e um objeto.

    Para cada evento identificado, responda as perguntas abaixo. A resposta a essasperguntas levar identificao de outros eventos. Para cada um desses novos eventos,responda novamente as perguntas. Repita esse processo exaustivamente, at que ociclo se feche.

    Existe algum evento que seja uma variao significativa do eventoidentificado? Normalmente esses eventos podem ser escritos com asmesmas palavras do evento original, trocando-se apenas o verbo.

    Existe algum evento oposto ao evento identificado? Por exemplo: opostoa vender comprar; oposto a pagar receber (antnimos).

    H algum evento negativo do evento identificado? Consiste na negao doevento. Negativo de pagar no pagar.

    Existe algum evento que deve preceder o evento identificado?Normalmente esses eventos so pr-requisitos do evento em questo. Porexemplo, para que seja feito um pagamento, necessrio que tenha sidofeita uma compra.

    Captulo

    2Modelagem de

    Eventos

    Algoritmo para

    Modelagem de

    Eventos

    Eventos

    Relacionados

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    13/30

    C O N S T R U I N D O O M O D E L O A M B I E N T A L

    FASPFASPFASPFASP 12121212

    H algum evento que seja conseqncia do evento identificado? Esteseventos devem acontecer, como conseqncia, aps o evento em questo.

    O Diagrama de Contexto a representao grfica doAmbiente do Sistema. Nele,o sistema como um todo representado por um crculo, com o seu nome. Osusurios (fornecedores e receptores de informaes) so representados por retngulos,rotulados pelo nome do agente externo e as informaes trocadas so as setasidentificadas pelo nome do pacote de informaes que fluem entre o sistema e seususurios.

    Na modelagem do ambiente,preocupamo-nos apenas com oseventos externos, isto , aquelesque ocorrem fora do sistema.

    Eventos internos sorepresentados por oraes onde osujeito o sistema ou porrespostas do sistema a eventosexternos.

    Nem todo evento sinalizado porum fluxo de dados. Os eventos temporais, por exemplo, no possuem um fluxo dedados de entrada como estmulo.

    Nem todo evento possui um fluxo de sada correspondente. Um evento pode causar,apenas, que algum dado seja armazenado.

    Eventos diferentes podem estar associados a um mesmo fluxo de dados.

    O Modelo Ambiental deve ser documentado atravs das seguintes especificaes:

    Objetivos do Sistema. uma lista de objetivos que o sistema deveatender. Essa lista ser a baliza que nortear o conceito de essencial ouno, onde essencial tudo aquilo que necessrio para atingir umdeterminado objetivo.

    Lista de Problemas. Essa lista ajudar na construo da Lista de

    Objetivos. Os objetivos de um sistema podem ser de duas categorias: osque so ligados s necessidades futuras do usurio e os que so ligados soluo de problemas que o usurio enfrenta atualmente.

    Lista de Eventos Externos. Constar da especificao, para cada evento,do fluxo de estmulo e sua origem, da resposta que o sistema deve dar aoevento e do fluxo de sada produzido pelo sistema, com seu destino.

    Determinando oContexto do

    Sistema

    Eventos Externose Eventos Internos Manuten o

    Sistema

    Bye Bye Brazil

    Dados de Filme

    Fluxos de Dados eEventos

    Documentando o

    Modelo Ambiental

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    14/30

    C O N S T R U I N D O O M O D E L O A M B I E N T A L

    FASPFASPFASPFASP 13131313

    Diagrama de Contexto. Consiste na representao grfica dos elementosidentificados na Lista de Eventos Externos, representando as origens eseus estmulos, aos destinos e suas sadas, alm do sistema que os recebe /produz, sem nenhuma especificao de detalhes.

    Dicionrio de Dados. Uma entrada para cada dado identificado comofluxo de estmulo ou de sada do sistema (Ver Captulo EspecificaesTextuais).

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    15/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 14141414

    Aps a determinao do Modelo de Ambiente, deve ser derivado o Modelo deDados do Sistema, atravs da tcnica de Modelagem de Entidades eRelacionamentos (ver manual especfico).

    A modelagem dos dados determina os depsitos de dados, que o sistema utilizar paracustodiar as informaes que lhe so essenciais.

    Os dados sero derivados do Modelo de Ambiente e, portanto, para passar aoprximo item, tenha-o mo.

    Para cada evento do Modelo de Ambiente, produza o MERconforme a seqnciaabaixo:

    Evento = o sujeito e o objeto do evento so candidatos a entidades e overbo, candidato a relacionamento.

    Estmulo = verificar se os dados devem ser armazenados e onde (sujeito,objeto ou outra entidade).

    Ao / Resposta = conhecimento do sistema (regras); quais Entidadesou Relacionamento so criados, usados, modificados ou removidos

    Sada = verificar onde (Entidade ou Relacionameto) os dados devem serobtidos.

    Obs.: Lembrar que Eventos Temporais no tm estmulo e nem sempre so escritoscom sujeito, verbo e objeto.

    Os Eventos Essenciais so divididos em dois tipos:

    Fundamentais - tm a ver com o negcio do sistema, o dia-a-dia comumdo(s) usurio(s);

    Custodiais - tomam conta da base de informaes da organizao,garantindo o funcionamento das respostas planejadas para os EventosFundamentais.

    Captulo

    3Produzindo o MER

    a partir da Lista de

    Eventos

    Eventos

    Custodiais

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    16/30

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    17/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 16161616

    Com o Modelo de Ambiente e o Modelo de Dados mo, faa os seguintes passos,para cada evento e respectivos desenhos em folha nica.

    Passo 1: Identifique os Processos = para cada evento, crie umProcesso (representado por uma bolha no DFD) rotulado com o nomeda resposta que o sistema d ao evento.

    Passo 2: Adicione os Fluxos de Dados = adicione o Fluxo deEstmulo, representando-o como uma seta entrando no Processo eadicione o(s) Fluxo(s) de Sada(s), representando-o(s) como seta(s)saindo do Processo.

    Passo 3: Adicione os Depsitos de Dados = considere a lgica do

    Processo e adicione os Depsitos de Dados criados, removidos ouatualizados pelo processo, representando-os por duas linhas horizontais,com o seu nome tirado do Modelo de Dados e por uma seta saindo doprocesso e entrando no referido depsito. Adicione os Depsitos deDados lidos pelo processo, representando-os por duas linhas horizontaiscom o seu nome tirado do Modelo de Dados e por uma seta saindo dodepsito e entrando no processo.

    O modelo produzido ter tantos processos quantos forem os eventos. bvio queesse modelo no bom para apresentao, validao e compreenso do sistema. Porisso, ele dever ser nivelado.

    Nivelar o Modelo de Processos consiste em organiz-lo em vrios DFD's, ondecada um deles apresenta um determinado nvel de detalhe. Assim, como num atlas,haver um modelo que representa o sistema e outro que representa os subsistemas.Cada processo do DFD nvel 1 (aquele que representa os subsistemas) pode serdetalhado em outro DFD que o considera como se aquele processo fosse o sistema.Este nivelamento deve ser feito at que todos os processos sejam representados emseu mais baixo nvel, ou seja, seu detalhamento feito atravs de especificao delgica de processo, ao invs de por outro DFD.

    Um DFD, que representa um conjunto de transformaes graficamente conectadas,pode ser desenhado atravs de uma nica transformao, com o mesmo conjunto deentradas e sadas.

    Derivando o

    Modelo de

    Processos

    Nivelando oModelo de

    Processos

    O Conceito de

    Nivelamento

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    18/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 17171717

    Vrias transformaes podem ser juntadas em uma nica, num nvel mais alto. Damesma maneira, uma transformao pode ser dividida em um grupo detransformaes, num nvel mais baixo.

    O menor nvel de transformaes determina o modelo completo do sistema. Astransformaes de mais alto nvel servem apenas como abreviaes e nos ajudam alidar com a complexidade dos diagramas de mais baixo nvel.

    Desde que a nica diferena entre um nvel e outro o grau de detalhe mostrado, sescrevemos especificaes textuais para as transformaes de mais baixo nvel: asprimitivas funcionais.

    A organizao do modelo grfico muito mais do que uma questo de convivncia.

    Um DFD ou DER complexo pode sobrecarregar o leitor pela apresentao de maisdetalhes do que sua mente pode absorver.

    Contexto

    Figura 3

    Figura 0

    1

    2

    3

    Figura 2

    2.1

    Figura 1

    Figura 3.1 Figura 1.3

    3.1 3.2

    3.3

    3.1.1

    3.1.2

    3.1.3

    1.3.1

    1.3.2

    1.1

    1.21.3

    Balanceando o

    Modelo

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    19/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 18181818

    Desde que a correo do modelo depende de sua compreensibilidade, o processo debalanceamento e reviso essencial para assegurar a qualidade do processo dedesenvolvimento de sistemas.

    Pesquisas sobre a memria e percepo humanas sugerem que um diagrama quecontenha 7 elementos, com uma variao de mais ou menos 2, ir sobrecarregar amaioria dos leitores.

    Uma regra objetiva : um DFD inteligvel um DFD com poucos fluxos de dados,que no deve ter mais que meia dziade transformaes.

    O modelo de processos e o modelo de dados esto balanceados quando:

    cada elemento de dados, de cada entidade no DER, usado por uma oumais transformaes ou requerido por consultas ad-hoc;

    cada relacionamento no DER usado por uma ou mais transformaesou requerido por consultas ad-hoc;

    cada elemento de dados, de cada entidade ou entidade associativa no

    DER, carregado por uma ou mais transformaes e

    cada relacionamento do DER criado por uma ou mais transformaes.

    Os modelos de dados e de processos devem fornecer um modelo nico e consistentedo sistema.

    Balanceando entre

    Projees

    Balanceamento

    entre Nveis

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    20/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 19191919

    Precisamos assegurar que cada nvel do modelo exatamente eqivalente aos demaisnveis.

    Regra de balanceamento

    Cada processo pai deve ter exatamente as mesmas entradas e sadas que o diagramafilho, que est no nvel imediatamente abaixo.

    Balanceamento visual de fluxos

    Se ns no nivelarmos os fluxos, obalanceamento ser fcil: a bolha pai e odiagrama filho tero exatamente os mesmosnomes de fluxos.

    Balanceamento via especificaes textuais

    Quando nivelamos fluxos, usamos asespecificaes textuais (Dicionrio de Dados)para estabelecer a equivalncia dos fluxos pai efluxos filhos.

    Balanceando Depsitos de Dados

    Um depsito de dados aparece pelaprimeira vez, no nvel em que ele compartilhado entre dois processos. Abaixo desse nvel, o depsitoaparece sempre que for referenciado.

    2.a

    b

    c

    d

    d's

    d's

    a

    b

    x

    b

    2.1

    2.2

    2.3

    2.

    a

    b

    c

    d d's

    d's

    z

    2.1

    2.2

    2.3

    X

    y

    b

    y

    W

    k

    a = x + y + zc = K + w

    1.1 1.2x

    1.1.11.2.1

    x

    x

    yz

    1.1.2 1.2.2

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    21/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 20202020

    Depsitos de dados podem ser

    nivelados da mesma forma queprocessos e fluxos.

    Nivelando o Modelo Essencial

    A derivao das projees grficas, a partir da lista de eventos, produz um modelo queno bem particionado.

    Para reorganizar o modelo,junte os processos deacordo com os depsitosde dados referenciadospor eles.

    1.1 1.2x

    1.1.1

    1.1.2

    1.2.1

    1.2.2

    a

    b

    a

    b

    = a + b

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    22/30

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    23/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 22222222

    Nossa inteno escrever o mnimo de texto, para especificarmos o sistema demaneira formal e rigorosa.

    Para isso, vamos, em um Dicionrio de Dados, especificar:

    Composio de Dados (Grupos de Dados);

    Elementos de Dados;

    Entidades;

    Relacionamentos e

    Processos.

    Objetivo

    Definir sintaticamente a composio de dados no elementares.

    Ocorrncias

    Uma para cada depsito de dados e fluxo no elementar em um DFD euma para cada entidade em um DER.

    Exemplo

    Scios = nmero_scio + endereo_scio + (fone_scio) +(fone_comercial) + CPF_scio + RG_scio

    Dados_artsticos = nome_ator + {/participaes/ nome_filme +gnero_filme + nome_personagem + ano_produo}

    Preferncia = [cod_filme |ator | gnero | ttulo]

    Dados_pessoais_alterados =

    Captulo

    4

    Especificao de

    Composio deDados

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    24/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 23232323

    Sintaxe

    Smbolo Significado

    = composto de

    + e

    { } vrias ocorrncias de

    [ ] apenas um dentre

    qualquer conjunto dentre

    | ou

    / / nome (rtulo) de grupo repetitivo

    ( ) opcional

    ** comentrio

    @ identificador

    Objetivos

    documentar o significado de cada elemento;

    especificar o significado do item;

    especificar o domnio do elemento pela enumerao ou especificao deseus limites;

    especificar se o elemento discreto ou contnuo e

    especificar a implementao fsica adotada em tempo de implementao.

    Ocorrncias

    uma para cada fluxo elementar no DFD, e

    uma para cada elemento em uma especificao de composio de dados.

    Objetivos

    definir o significado da entidade atravs da descrio de seu papel nosistema;

    Especificao de

    Elemento deDados

    Especificao de

    Entidade

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    25/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 24242424

    a especificao deve explicitar o critrio de incluso, ou seja, qual a regraou conceito que faz com que um determinado objeto seja consideradocomo pertinente a este conjunto;

    deve especificar, tambm, o critrio de excluso: o que faz com que umobjeto deixe de pertencer a este conjunto e

    adicionalmente, se adequado, definir tambm os estados que umaocorrncia da entidade pode assumir, atravs dos eventos que a colocamnesses estados.

    Ocorrncias

    uma por entidade no DER.

    Objetivos

    descrever o significado do relacionamento e

    especificar a cardinalidade e a totalidade do relacionamento.

    Ocorrncias

    uma por relacionamento no DER.Objetivo

    documentar a lgica dos processos.

    Ocorrncias

    uma para cada processo primitivo funcional.

    Fonte : Rpida e Limpa, FG&A

    Cada processo deve ser completamente especificado pela ao executada para:

    manipular os fluxos de dados de entrada;

    produzir os fluxos de dados de sada e

    atualizar a memria do sistema.

    Especificao deRelacionamento

    Especificao de

    Processo

    Consideraessobre

    Especificao de

    Processo

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    26/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 25252525

    Para produzir especificaes consistentes e sem ambigidades, voc podeusar NRDE's (elementos de dados no armazenados) e atributos. Porexemplo:

    cliente.nome,

    .endereo

    fornecedor_cdigo

    Sempre que voc usar um elemento de dados dentro de uma especificao deprocesso, ele ser considerado importado pelo processo. Um atributo tambm considerado importado se fizer parte do dicionrio de dados.

    De qualquer maneira, existem casos em que um elemento de dados usado paramanter algum resultado intermedirio exclusivamente dentro do processo. Taiselementos de dados so chamados de elementos de dados locais. Como sugesto,inicie o nome de todos os elementos de dados locais com uma arroba (@ ). Porexemplo:

    @@e:= produto.valor * .quantidade

    produto.valor = @preco_por_unidade * pedido.quantidade

    As expresses so escritas usando a notao pr-fixada convencional de linguagem de

    programao. Por exemplo:

    x+=y x := x + y

    x-=y x := x - y

    x*=y x := x * y

    x/=y x := x / y

    Sempre que voc atribuir um valor a um elemento de dados, ele consideradoexportado pelo processo. Um atributo tambm exportado se ele fizer parte dealgum fluxo de dados recebido pelo processo.

    Para comparar valores pode-se usar os operadores =, >>, =,

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    27/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 26262626

    Voc pode usar funes usando um nome seguido por parnteses. Se houverargumentos, estes devem estar entre parnteses e separados por vrgula. Por exemplo:

    novo_saldo:=ajuste(saldo_anterior, fator_classificador)

    No existe pr-definio de funes. Quando se determina uma nova funo, estadeve ser, necessariamente, definida como um processo.

    A construo receba (receive) usada para receber um fluxo de dados. Por exemplo:

    receba pedido_usurio

    Voc pode tambm receber parte de um fluxo de dados. Por exemplo:

    receba item de pedido

    Neste caso, item deve ser rtulo de um grupo de dados.

    A construoproduza (produce) usada para enviar fluxos de dados de sada ou partedeles. Por exemplo:

    produza nota_de_autorizao e

    produza item de fatura

    A construo crie (create) cria novas ocorrncias de um objeto. Por exemplo:

    crie cliente.

    Como os objetos so inter-relacionados, existe uma forma especial de utilizar aconstruo crie, que, da mesma maneira, especifica os atributos apontadores paraalguns seletores de ocorrncia. Por exemplo:

    @BULLET = crie fatura. de cliente., vendedor.

    exatamente igual a:

    crie fatura.

    fatura.cliente := cliente.

    fatura.vendedor:= vendedor.

    Funes

    Recebendo e

    Enviando Fluxosde Dados

    Criando e

    RemovendoOcorrncias de

    Objeto

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    28/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 27272727

    A construo remova (remove) usada para remover a ocorrncia do objeto corrente.Por exemplo:

    remova fatura.

    Use a construo encontre (find ) para encontrar uma ocorrncia particular de umobjeto. Por exemplo:

    encontre cliente. com .nome = nome_pedido

    Voc pode usar uma forma especial da construo encontre, para encontrar aocorrncia do objeto apontada por um outro:

    encontre cliente. com cliente. = fatura.cliente

    A construo se (if) permite especificar uma seleo entre alternativas:

    se cliente.saldo >> 100000crdito:=aprovado

    f_se

    se cliente.saldo 5000crdito := aprovado

    se_no_se cliente.saldo >> 1000crdito := reviso

    se_nocrdito:=rejeitado

    f_se

    A nica construo de iterao permitida apara_cada (for_each ), que pode seraplicada em diversas situaes. O uso mais comum do para_cada para especificarum grupo de aes, que deve ser executado para cada tipo do objeto:

    para_cada cliente.classificao := cliente.classe

    Encontrando uma

    Ocorrncia do

    Objeto

    Seleo

    Construes de

    Repetio

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    29/30

    E S P E C I F I C A E S T E X T U A I S

    FASPFASPFASPFASP 28282828

    produza item do relatriof_para

    Podemos especificar um critrio de classificao:

    para_cada cliente. com .tipo = revendedorou .tipo = distribuidor

    em_ordem_de cliente.cep ascendente,.nome descendente

    classificao:= cliente.classeproduza item do relatorio

    f_para

    Existe ainda uma forma de classificao manual para objetos inter-relacionados. Porexemplo:

    para_cada fatura. de cliente.........

    f_para

    para_cada fatura. de cliente. com fatura.estado = pendente............

    f_para

    Finalmente, existe uma forma de manipular itens repetitivos em fluxos de dados de

    entrada:

    para_cada item em fornecedor_pedido............f_para

    Neste caso, item deve ser um rtulo de um grupo de dados.

  • 8/9/2019 FASP - AMS - 02 - Anlise Essencial de Sistemas

    30/30

    R E F E R N C I A S D E A P O I O

    1.Anlise Essencial de Sistemas

    Stephen M. McMenamim / J. Palmer2.Anlise Estruturada Moderna

    Edward Yourdon

    3.Anlise Estruturada e Especificao de Sistemas

    Tom de Marco

    4. Desenvolvendo Sistemas sem Complicao

    Paul T. Ward

    5.Anlise Estruturada de Sistemas

    Chris Gane / Trish Sarson

    Bibliografia

    Bibliografia