220 likes | 450 Views
MODELO ESSENCIAL Modelo Comportamental. Thelma Elita Colanzi Lopes thelma@apec.unoeste.br. MODELO COMPORTAMENTAL. definido do ponto de vista interno; descreve de que maneira o sistema reage, internamente , aos estímulos vindos do exterior;
E N D
MODELO ESSENCIALModelo Comportamental Thelma Elita Colanzi Lopes thelma@apec.unoeste.br
MODELO COMPORTAMENTAL • definido do ponto de vista interno; • descreve de que maneira o sistema reage, internamente, aos estímulos vindos do exterior; • mostra quais as ações que o sistema deve executar para responder, adequadamente, aos eventos previstos no modelo ambiental; • Componentes do modelo comportamental: • Um conjunto completo de Diagramas de Fluxo de Dados (DFD´s) em níveis • Dicionário de Dados, incluindo um conjunto de especificações de processos primitivos • Diagrama Entidade-Relacionamento (DER) • Diagramas de Transição de Estados (DTEs)
Modelo Comportamental 1º passo - Desenhar o DFD Preliminar • a partir do Diagrama de Contexto e da Lista de eventos obtêm-se o particionamento do sistema em funções; • para cada evento do sistema desenha-se uma bolha (função/processo); • nome da bolha: de acordo com a resposta que o sistema deve dar ao evento associado; • desenham-se as entradas e saídas apropriadas de modo a que a bolha seja capaz de emitir a resposta necessária e desenham-se os depósitos, como for mais adequado, para comunicação entre as bolhas;
Modelo Comportamental 2º passo - Desenhar os DFD´s de níveis inferiores • partindo do DFD Preliminar, pode-se, usando a abordagem top-down decompor as funções encontradas para obter os DFD´s de níveis mais baixos; • via de regra, o nível de abstração mais baixo do DFD é composto apenas por funções primitivas; 3º passo –(opcional) Desenhar o DFD nível 1 • obtido pelo agrupamento de funções que tenham ligações (através dos depósitos) entre si, utilizando a abordagem bottom-up; • ao encontrar um grupo de processos, no DFD Preliminar, relativo ao mesmo depósito, sem que outros processos desse DFD se refiram a esse depósito, então, crie uma bolha em nível mais alto que oculte esse depósito; • para chegar no DFD nível 0 => pode-se ter outros níveis de DFD;
Modelo Comportamental 4º passo - Elaborar o Diagrama Entidade-Relacionamento 5º passo - Elaborar o Dicionário de Dados 6º passo - Elaborar os Diagramas de Transição de Estados • extremamente necessários quando se trata de sistemas em tempo-real; ?
Diretrizes para a Elaboração do DFD (Yourdon) 1) Escolher nomes significativos para os processos, fluxos de dados, depósitos de dados e entidades externas • rotular o processo identificando o papel e não a pessoa; utilizar um verbo que represente a ação e um objeto; • os nomes escolhidos devem provir de um vocabulário conhecido pelo usuário; • o analista deve ter conhecimento mínimo sobre o domínio; 2) Numerar processos • um modo prático de referenciar os processos de um DFD é numerá-los; isso não corresponde à uma seqüência de execução; • a numeração dos processos auxilia na identificação de processos de níveis inferiores;
Diretrizes para a Elaboração do DFD (Yourdon) 3) Evitar DFDs complexos demais • o propósito do DFD é modelar corretamente as funções que o sistema deve executar e as interações entre elas, porém deve ser lido e compreendido; • modelar o DFD em uma série de níveis => DFDs de nível inferior oferecem detalhes dos processos de nível imediatamente superior (cada nível deve ter até 6 funções; para outros autores de 5 a 9 funções); • o refinamento de DFDs ocorre até que sejam alcançadas as funções primitivas;
a c a c Função z Função z b d b d Diretrizes para a Elaboração do DFD (Yourdon) 4) Refazer os DFDs tantas vezes quantas forem necessárias até se obter uma boa estética, um DFD tecnicamente correto e aceitável pelo cliente; 5) Certificar-se de que o DFD seja logicamente consistente • Evitar poços sem fundos (buracos negros) => processos que têm entradas mas não têm saídas; • Evitar processos com geração espontânea => processos que têm saídas mas não têm entradas;
Diretrizes para a Elaboração do DFD (Yourdon) 5) Certificar-se de que o DFD seja logicamente consistente (cont.) • Cuidado com fluxos e processos sem nome; • Cuidado com depósitos de apenas leitura ou apenas escrita => um depósito típico deve ter entradas e saídas; • A continuidade do fluxo de informação deve ser mantida, ou seja, a entrada e a saída em cada refinamento devem permanecer a mesma; • É conveniente que, em cada nível de abstração, as funções estejam em um grau de detalhamento próximo;
Estudo de Caso Sistema Hotelaria (parcial)
quartos dados_reserva * 1. Reservar quarto Cliente pedido_reserva reservas q_reservado Modelo Comportamental – DFD Preliminar Explosão
quartos Cliente reservas pedido_cancelamento_ reserva 2. Cancelar reserva quarto_disponível reserva_cancelada Modelo Comportamental – DFD Preliminar
quartos reservas quartos_disponíveis 3. Cancelar não compare- cimento reservas_canceladas Modelo Comportamental – DFD Preliminar
clientes reservas quartos dados_cliente_cad * 4. Registrar hospedagem de cliente dados_cliente Cliente quarto_ocupado d_reserva_efetuada Modelo Comportamental – DFD Preliminar Explosão
reservas quartos Cliente pedido_saída conta_ fornec * 5. Providenciar saída do cliente d_reserva quarto_disp_limpeza Modelo Comportamental – DFD Preliminar Explosão
clientes reservas * 6. Efetuar pagto de conta Cliente pagto_conta d_cli hospedagem_pg recibo Modelo Comportamental – DFD Preliminar
quartos Gerente 7. Disponibilizar quarto ger_disp_quarto quarto_limpo Modelo Comportamental – DFD Preliminar
Modelo Comportamenal – DFD nível 1 3º passo –(opcional) Desenhar o DFD nível 1 • obtido pelo agrupamento de funções que tenham ligações (através dos depósitos) entre si, utilizando a abordagem bottom-up; • ao encontrar um grupo de processos, no DFD Preliminar, relativo ao mesmo depósito, sem que outros processos desse DFD se refiram a esse depósito, então, crie uma bolha em nível mais alto que oculte esse depósito; • para chegar no DFD nível 1 => pode-se ter outros níveis de DFD;
reservas quartos Modelo Comportamenal – DFD nível 1 dados_reserva 1, 2, 3 Tratar reserva Cliente pedido_reserva reserva_cancelada pedido_cancelamento_ reserva Gerente q_reservado quarto_disponível ger_disp_quarto quarto_limpo quarto_ocupado quarto_disp_limpeza 7 Disponibilizar quarto d_reserva_efetuada 4, 5, 6 Tratar cliente dados_cliente d_reserva d_cliente pedido_saída clientes conta_fornec dados_cliente_cad
quartos_cad 1.1 Verificar disponibilidade quarto reservas quartos Cliente pedido_reserva quarto_indisponível quartos_disp. 1.2 Efetuar reserva quarto_reservado q_reserv. dados_reserva Modelo Comportamental Refinamento do DFD Preliminar – Explosão do Processo 1 Voltar
4.1 Verificar reserva quartos clientes reservas dados_cliente Cliente d_reservas_cad cliente_rejeitado d_cli_reserva 4.2 Cadastrar cliente dados_cliente_cad d_reg_reserva d_reserva_cliente 4.3 Efetuar Hospedagem cliente cliente_registrado quarto_ocupado Modelo Comportamental Refinamento do DFD Preliminar – Explosão do Processo 4 Voltar
clientes reservas quartos Modelo Comportamental Refinamento do DFD Preliminar – Explosão do Processo 5 5.1 Gerar conta Cliente d_cliente pedido_saída conta_fornec d_reserva nr_quarto 5.2 Tornar quarto disp. p/ limpeza quarto_disp_limpeza Voltar