Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen Projeto Estruturado Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 2 Projeto Estruturado � Análise – O que fazer? � Projeto – Como fazer? � O projeto (design) pode ser definido como o processo (iterativo) realizado quando tomamos um modelo lógico de um sistema juntamente com um conjunto de objetivos fortemente formulados para aquele sistema, e produzimos a especificação de um sistema físico que atenderá a estes objetivos; � Definimos como o sistema será implementado; Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 3 Objetivos do Projeto � O objetivo mais importante é entregar as funções requisitadas pelo usuário (funcionalidade). Além disso outras métricas de qualidade devem ser observadas: � Eficiência: Comportamento temporal e uso de recursos � Confiabilidade: Se refere a tolerância a falhas, maturidade e recuperabilidade do sistema. (Quanto tempo o sistema fica no ar sem problemas?) � Manutenabilidade: A facilidade com que será alterado o sistema no futuro � Usabilidade: Grau em que o software é fácil de usar � Portabilidade: Facilidade em migrar o software de um ambiente para outro. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 4 Componentes do Projeto Estruturado � Definir os Módulos: � Dividir para conquistar: Um problema grande é dividido em problemas menores (módulos) � A decomposição de um módulo em módulos menores é chamada fatoração. � Procurar baixo acoplamento: pouca ligação com os outros módulos do sistema; Ex. O módulo consultas envia fluxos de dados (mensagens) somente quando é necessário para o módulo financeiro? � Procurar alta coesão: o módulo desempenha uma função identificável; Ex.: O módulo de agendamento está tratando alguma função de cadastro de clientes? Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 5 Componentes do Projeto Estruturado � Planejar a estrutura do banco de dados: � Derivar o dicionário de dados para a estrutura de banco de dados (modelo E-R) � Aplicar normalização; � Aplicar índices; Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 6 Componentes do Projeto Estruturado � Diagrama de Estrutura: � O gráfico de estrutura é a ferramenta da Análise Estruturada de Sistemas para representação dos módulos e seus relacionamentos; � É um diagrama hierárquico e representa os módulos (de forma hierárquica) e a troca de dados entre eles. � É derivado do Diagrama de Fluxo de Dados; Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 7 Notação NOME DO MÓDULO Módulo Dado enviado entre módulos Controle (flag) enviado entre módulos NOME DO MÓDULO Decisão a partir do módulo NOME DO MÓDULO Loop a partir do módulo Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 8 Regras para a construção de um Diagrama de Estrutura � Existe um módulo, e somente um, na parte superior (primeiro nível) do Diagrama de Estrutura, que é o ponto onde começa o controle (este módulo é chamado de raiz). � A partir da raiz, o controle é passado, nível por nível, para os outros módulos, retornando sempre ao módulo que fez a chamada. � Existe no máximo uma relação de controle entre quaisquer dois módulos no Diagrama de Estrutura, ou seja, um módulo que chama outro, não pode ser chamado por este último. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 9 Estratégias para transformação do DFD em Diagrama de Estrutura � O Diagrama de Estrutura é uma derivação do DFD, mas do ponto de vista de projeto de software. � Duas estratégias podem ser adotadas, de forma isolada ou combinada: � Análise de Transformação � Análise de Transação Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 10 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � Se aplica a um DFD ou parte de um DFD que possui a seguinte estrutura lógica: � Processos que implementam entrada de dados � Processos que implementam a transformação ou o transporte da entrada para dentro do sistema � Processos que implementam a saída de dados Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 11 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � Os passos para transformar o DFD em Diagrama de Estrutura, segundo a abordagem da Análise de Transformação são os seguintes: � 1.ª etapa: Dividir o DFD em três partes: Ramo Aferente (entrada), Centro de Transformação (processamento) e Ramo Eferente (saída). � 2.ª etapa: Derivar o Diagrama de Estrutura. � 3.ª etapa: Acrescentar as sub-funções requeridas pelos componentes funcionais ao Diagrama de Estrutura, através dos DFDs de nível mais detalhado ou por meio do processo de fatoração. � 4.ª etapa: Acrescentar os vetores de dados e vetores de estado ao Diagrama de Estrutura. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 12 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � 1.ª etapa: Dividir o DFD em três partes � Ramo Aferente (Entrada): Inclui os processos que transformam dados de entrada do formato físico para o formato lógico � Centro de Transformação: é composto pelos processos independentes de considerações físicas de entrada e saída, que ligam o ramo aferente aos processos de saída. Num mesmo DFD pode haver mais de um Centro de Transformação. E um mesmo Centro de Transformação pode ser formado de mais de um processo. � Ramo Eferente (Saída): O ramo eferente inclui os processos que transformam os dados resultantes de processamento do formato lógico para o formato físico de apresentação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 13 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � 2.ª etapa: Derivar o Diagrama de Estrutura. � Um componente funcional é criado como raiz (processo de nível mais alto do programa, ou seja, se o DFD que está sendo processado é um DFD nível 0, por exemplo, o processo de nível mais alto é o processo que representa o sistema no Diagrama de Contexto). Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 14 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � Se houver mais de um Centro de Transformação, é criado um novo componente funcional para cada um, em um nível mais alto (imediatamente abaixo da raiz). Cada centro de transformação é colocado no nível seguinte como um componente funcional. Cada ramo aferente e ramo eferente é colocado como um componente funcional, respectivamente, antes e depois do centro de transformação respectivo, ficando para cada conjunto, três módulos de mesmo nível (ramo aferente, centro de transformação e ramo eferente). � Quando o centro de transformação, ramo aferente ou ramo eferente for composto de um único processo, o nome destes módulos é igual ao nome dado ao processo correspondente no DFD. Quando o centro de transformação, ramo aferente ou ramo eferente for composto de mais de um processo, o módulo recebe um outro nome, que seja significativo para o conjunto de processos que representa, e os processos do DFD que correspondem a cada parte são detalhados no nível seguinte, sendo um módulo para cada processo do DFD, com o mesmo nome usado no DFD. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 15 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transformação � 3.ª etapa: Acrescentar as sub-funções requeridas pelos componentes funcionais ao Diagrama de Estrutura, através dos DFDs de nível mais detalhado ou por meio do processo de fatoração. � 4.ª etapa: Acrescentar os vetores de dados e vetores de estado ao Diagrama de Estrutura. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 16 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � Se aplica a um DFD ou parte de um DFD que possui a seguinte estrutura: � O fluxo de informação é freqüentemente caracterizado por um único item de dados, chamado de transação, que dispara outro fluxo de dados ao longo de um ou vários caminhos. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 17 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � O procedimento básico para derivação do Diagrama de Estrutura usando a Análise de Transação é identificar a partir de qual ou quais processos as transações são acionadas. Esse(s) processo(s), a partir do(s) qual(is) as transações são acionadas forma(m) o centro de transação. Os processos correspondentes às ações realizadas a partir do centro de transação são as transações. � Os passos para transformar o DFD em Diagrama de Estrutura, segundo a abordagem da Análise de Transação são os seguintes: � 1.ª etapa: Identificar as fontes de transações. � 2.ª etapa: Localizar o Centro de Transação. � 3.ª etapa: Identificar os módulos de transação. � 4.ª etapa: Criar o Diagrama de Estrutura. � 5.ª etapa: Fatorar os módulos de transação. � 6.ª etapa: Adicionar os vetores de dados e estados ao Diagrama de Estrutura. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 18 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 1.ª etapa: Identificar as fontes de transações. � As fontes de transações são identificadas a partir dos dados ou estados que permitem gerar cada transação. � Geralmente, referem-se a opções que o usuário pode escolher no momento de executar o software. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 19 � 1.ª etapa: Identificar as fontes de transações. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 20 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 2.ª etapa: Localizar o Centro de Transação. � O centro de transação é o processo ou conjunto de processos do DFD a partir do qual as transações são acionadas. � Localizar o centro de transação é essencial, pois os módulos de transação ficarão hierarquicamente subordinados ao módulo correspondente ao centro de transação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 21 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 2.ª etapa: Localizar o Centro de Transação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 22 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 3.ª etapa: Identificar os módulos de transação. � Os módulos de transação são aqueles que são acionados pelo centro de transação. � Todos os processos do DFD que partem do processo ou dos processos que formam o centro de transação são módulos de transação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 23 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 3.ª etapa: Identificar os módulos de transação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 24 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 4.ª etapa: Criar o Diagrama de Estrutura. � O Diagrama de Estrutura é criado, colocando-se o centro de transação no primeiro nível e os módulos de transação no nível seguinte. � Se cada módulo de transação for formado por mais de um processo do DFD, deve-se criar um módulo com um nome significativo para este conjunto de processos e cada processo individualmente será alocado no nível seguinte ao do módulo mais genérico da transação. � Se algum processo tiver explosão em DFD de nível mais detalhado, a mesma análise deve ser feita para tal DFD, colocando-se os módulos gerados no nível seguinte ao módulo mais genérico da transação. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 25 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 4.ª etapa: Criar o Diagrama de Estrutura. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 26 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 5.ª etapa: Fatorar os módulos de transação. � Esta etapa consiste no mesmo procedimento de fatoração aplicado na estratégia de Análise de Transformação. � Fatoração é o processo de dividir componentes funcionais em sub-funções, com o objetivo de particionar, de maneira mais adequada, a complexidade do software. � Geralmente, a fatoração está associada à avaliação do projeto, por meio das métricas de acoplamento e coesão, que são apresentadas mais adiante. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 27 Estratégias para transformação do DFD em Diagrama de Estrutura – Análise de Transação � 5.ª etapa: Fatorar os módulos de transação. � 6.ª etapa: Adicionar os vetores de dados e estados ao Diagrama de Estrutura. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 28 Avaliação do Projeto � Um bom projeto é aquele em que os módulos estão bem balanceados, sem sobrecarga em qualquer parte do Diagrama de Estrutura, e a ligação entre os módulos está bem leve, de forma que haja o mínimo de passagem de parâmetros em cada chamada de módulo. � Fatores de Qualidade importantes: � Acoplamento � Coesão Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 29 Acoplamento � O acoplamento mede o grau de independência entre os módulos. A independência entre os módulos é medida pela quantidade e natureza de informações que são passadas de um módulo para outro. � O ideal é que os módulos estejam fracamente acoplados. Isto significa que um módulo não deveria passar uma quantidade muito grande de dados para outro fazer algum processamento sobre eles. Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen Tipos de Acoplamento � Acoplamento de conteúdo: quando um módulo utiliza ou modifica elementos internos de outro. � Acoplamento comum: quando dois módulos compartilham as mesmas áreas globais. � Acoplamento de controle: quando os dados de um módulo são usados para definir a ordem de execução das instruções do outro. � Acoplamento de imagem: quando os módulos se comunicam através de item de dados composto. � Acoplamento de dados: quando os módulos se comunicam através da passagem de dados como parâmetro. 30 Universidade Federal do Paraná – Metodologia Estruturada – Prof. Rafael Romualdo Wandresen 31 Coesão � A coesão mede a força com que os elementos dentro de um módulo estão relacionados. � Em outras palavras, a coesão mede o quanto um módulo está executando uma única função. Desta forma, quanto mais forte a coesão, melhor. � Quanto mais coeso for o módulo, maior será sua singularidade de propósito.