|
|
| (2 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) |
| Linha 43: |
Linha 43: |
| <br> | | <br> |
|
| |
|
| * Análise de viabilidade técnica
| | === Análise de viabilidade técnica === |
|
| |
|
| ** Avaliação dos recursos técnicos disponíveis.
| | * Avaliação dos recursos técnicos disponíveis. |
|
| |
|
| ** Hardware, software e pessoas
| | * Hardware, software e pessoas |
|
| |
|
| <br> | | <br> |
|
| |
|
|
| |
|
| * Viabilidade econômica
| | === Viabilidade econômica === |
|
| |
|
| ** Possíveis soluções tecnicamente disponíveis e utilizáveis
| | * Possíveis soluções tecnicamente disponíveis e utilizáveis |
|
| |
|
| ** Investimento necessário
| | * Investimento necessário |
|
| |
|
| <br> | | <br> |
|
| |
|
|
| |
|
| * Viabilidade operacional
| | === Viabilidade operacional === |
|
| |
|
| ** Aspectos das soluções que implicarão mudanças de rotinas existentes
| | * Aspectos das soluções que implicarão mudanças de rotinas existentes |
|
| |
|
| ** Impactos na área, na empresa, na sociedade
| | * Impactos na área, na empresa, na sociedade |
|
| |
|
| ** Discussões de ordem ética e moral
| | * Discussões de ordem ética e moral |
|
| |
|
| <br> | | <br> |
| Linha 128: |
Linha 128: |
|
| |
|
| <br><br> | | <br><br> |
|
| |
|
| |
| = DFD - Diagrama de Fluxo de Dados =
| |
|
| |
|
| |
| * Convenção simbólica de 4 representações gráficas:
| |
|
| |
|
| |
| [[Arquivo:DFD.png]]
| |
|
| |
| <br>
| |
|
| |
| <br>
| |
|
| |
|
| |
| == Processos ==
| |
|
| |
|
| |
| * O símbolo de processo representa uma atividade de transformação.
| |
|
| |
| * Ele é alimentado
| |
|
| |
| ** com dados, provenientes de um meio externo (via entidade externa)
| |
|
| |
| ** pela leitura de dados armazenados em algum depósito de dados (tabelas/arquivos)
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Todo processo tem um objeto claramente especificado. Alguns exemplos:
| |
|
| |
| ** Cadastrar cliente / aluno / professor / conta
| |
|
| |
| ** Gerar diário de classe / relatório de despesa
| |
|
| |
| ** Emitir nota fiscal / duplicata / recibo / atestado
| |
|
| |
| ** Baixar pagamentos / débitos / arquivos
| |
|
| |
| ** Excluir fatura / nota / pendência
| |
|
| |
| ** Calcular multa / média / fórmula
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD1.png]]
| |
|
| |
| <br>
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Exemplo gráfico do processo Cadastrar Cliente
| |
|
| |
| ** Uma entidade externa (retângulo) com nome de CLIENTE envia dados do cliente ao processo
| |
|
| |
| ** O envio de dados está representado pelo fluxo de dados (seta) chamado de DadosCli que parte do cliente em direção ao processo => input de dados
| |
|
| |
| ** Existe um fluxo de dados (seta) bidirecional entre o processo e um depósito de dados (traços paralelos) chamado de CadCli onde haverá armazenamento de dados do cliente.
| |
|
| |
| <br>
| |
|
| |
| '''Processo Realizar Empréstimo'''
| |
|
| |
| <br>
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD2.png]]
| |
|
| |
| <br>
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Biblioteca: Interface responsável pelo atendimento do aluno
| |
|
| |
| * CadEmp: Base de dados que mantém informações sobre os empréstimos
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''Processo Alugar Filmes'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD3.png]]
| |
|
| |
| <br>
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Ao símbolo que registra o processo pode ser adicionado o elemento responsável pela ação (no caso, o setor de atendimento)
| |
|
| |
| * O item utilizado para buscar a informação no depósito de dados é denonimado Argumento de Pesquisa e é representado por uma ponta de seta.
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''Processo Cadastrar Pedido'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD4a.png]]
| |
|
| |
|
| |
| * Embora seja interessante, um DFD nem sempre traduz as maneiras pelas quais, uma informação chega até o sistema
| |
|
| |
| * No caso acima, para o Pedido, podemos ter várias situações possíveis de trâmite entre a origem até o armazenamento dos dados no sistema de informação.
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''Processo Cadastrar Pedido – Modos de entrada'''
| |
|
| |
|
| |
| 1. Sistema de Televendas: Atendente recebe a solicitação do comprador e por meio de uma tela, insere os dados enviando resposta por fax ou e-mail para o cliente
| |
|
| |
|
| |
| 2. Consultor de Vendas: Na frente do cliente, consultor utiliza seu dispositivo portátil para inserir os dados do pedido numa tela adequada ao seu aparelho; o pedido é impresso numa impressora portátil
| |
|
| |
|
| |
| 3. Atendimento na Loja: Vendedor recebe o cliente no balcão, insere dados na tela do desktop e imprime o pedido numa impressora local e o entrega uma via nas mãos do cliente
| |
|
| |
|
| |
| 4. Web: Cliente acessa endereço da loja, preenche dados do pedido e visualiza resultados por meio de uma opção na própria tela permitindo a impressão.
| |
|
| |
| <br>
| |
|
| |
|
| |
| == Depósito de dados ==
| |
|
| |
| <br>
| |
|
| |
|
| |
| * O depósito de dados referencia o local onde os dados são persistidos (armazenados)
| |
|
| |
| * Para representar com mais clareza, na extremidade esquerda do símbolo de depósito de dados, pode-se designar um espaço para escrever a identificação do depósito de dados.
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DepDados.png]]
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Depósitos de dados podem ter operações de:
| |
|
| |
| ** leitura
| |
|
| |
| ** gravação
| |
|
| |
| ** ambos
| |
|
| |
| * As identificações são interessantes porque os depósitos de dados (tabelas, arquivos) podem chegar à ordem de dezenas ou centenas.
| |
|
| |
| <br>
| |
|
| |
|
| |
| == Função dos DFDs ==
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Os dados são transformados em cada passo antes de mover para o próximo estágio
| |
|
| |
| * Estas transformações são funções de programa
| |
|
| |
| * Os DFDs ajudam os analistas a entender o que acontece com os dados durante a execução do sistema
| |
|
| |
| * Podem ser usados para mostrar como diferentes sistemas trocam informações
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''Refinamento do DFD inicial:'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * O DFD inicial é subdivido em níveis
| |
|
| |
| * São gradativamente definidos:
| |
|
| |
| ** Os argumentos de pesquisa e os depósitos de dados com suas orientações
| |
|
| |
| ** Os processos com suas interações e detalhes
| |
|
| |
| ** As entidades externas com suas especificidades.
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''Como utilizar o DFD no projeto lógico'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * O DFD é uma ferramenta aplicada para análise top-down
| |
|
| |
| * A solução é retratada inicialmente na forma macro numa visão de alto nível ou contextual (DFD zero)
| |
|
| |
| * A partir da demarcação inicial, se inicia a explosão da visão de alto nível.
| |
|
| |
| <br>
| |
|
| |
|
| |
| Exemplo:
| |
|
| |
| <br>
| |
|
| |
|
| |
| == Explodindo o DFD de um Sistema de Venda de DVDs ==
| |
|
| |
| <br>
| |
|
| |
|
| |
| '''DFD Nível 0 (zero)'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD0.png]]
| |
|
| |
| <br><br><br>
| |
|
| |
|
| |
| '''DFD Nível 1'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD-Nivel1.png]]
| |
|
| |
| <br><br><br>
| |
|
| |
|
| |
| '''DFD Nível 2'''
| |
|
| |
| '''Inserindo nova funcionalidade: Pedidos'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| [[Arquivo:DFD-Nivel2.png]]
| |
|
| |
| <br><br><br>
| |
|
| |
|
| |
| '''DFD Nível 2'''
| |
|
| |
| '''Inserindo nova funcionalidade: Devoluções'''
| |
|
| |
| <br><br>
| |
|
| |
|
| |
| [[Arquivo:DFD-Nivel2a.png]]
| |
|
| |
| <br><br><br>
| |
|
| |
|
| |
| == Resumo ==
| |
|
| |
|
| |
| '''DFD – Diagrama de Fluxos de Dados'''
| |
|
| |
|
| |
| * Especifica o modelo dos processos do sistema, ou seja, como a informação é criada, armazenada e utilizada
| |
|
| |
| * A ênfase está nos processos e devem ser simples para que possam ser compreendidos facilmente por todos que o lerem
| |
|
| |
| * Os componentes do DFD são: processo, fluxo de dados, entidade externa e depósito de dados
| |
|
| |
| <br>
| |
|
| |
|
| |
| * A sua construção é realizada em níveis:
| |
|
| |
| ** Nível 0: Diagrama de Contexto
| |
|
| |
| ** Nível 1: Explosão do nível 0, contendo Título e Numeração dos Processos: 1; 2; 3;...
| |
|
| |
| ** Nível 2: Explosão do nível 1, contendo Título e Numeração dos Processos: 1.1; 1.2; 1.3;... 2.1; 2.2;...
| |
|
| |
| ** E assim por diante.
| |
|
| |
| <br><br>
| |
|
| |
|
| |
| '''Processo'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Representa o elemento que transforma entradas em saídas
| |
|
| |
| * O processo sempre tem um nome que deve descrever o melhor possível a funcionalidade que será desempenhada pelo processo
| |
|
| |
| * O nome do processo, geralmente, é formado por um verbo (Calcular) e um objeto (Média dos Alunos)
| |
|
| |
| <br><br>
| |
|
| |
|
| |
| '''Entidade Externa'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Representa os elementos que não são do sistema, mas interagem com ele, inserindo ou recebendo dados
| |
|
| |
| * Exemplo: pessoas, usuários, empresas, departamentos de uma empresa, outros sistemas, etc.
| |
|
| |
| <br><br>
| |
|
| |
|
| |
| '''Depósito de Dados'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Utilizado para modelar um conjunto de dados persistentes, que precisam ser armazenados fisicamente
| |
|
| |
| * Podem se tornar uma ou mais tabelas (ou arquivos) de bases de dados na versão final do sistema
| |
|
| |
| * O nome de um depósito de dados geralmente está no plural e deve ser o mais representativo possível quanto aos dados que armazena.
| |
|
| |
| <br><br>
| |
|
| |
|
| |
| '''Fluxo de Dados'''
| |
|
| |
| <br>
| |
|
| |
|
| |
| * Representa o movimento dos dados (ou conjunto de dados) dentro do sistema
| |
|
| |
| * O fluxo de dados deve ter um sentido e pode ser:
| |
|
| |
| ** de um processo para outro processo
| |
|
| |
| ** de uma entidade externa para um processo e vice-versa
| |
|
| |
| ** de um processo para um depósito de dados e vice-versa.
| |
Etapas do Modelo Estruturado
Concepção do Software
Nesta fase, desenvolvem-se:
- Etapa de levantamento das necessidades
- Elaboração de alternativas de desenvolvimento.
Exemplo:
- Criação de um sistema de controle para biblioteca
- Solicitação da diretora que está com um sistema obsoleto
- A ficha catalográfica, o controle atual e o código ISBN
- As bibliotecárias, os alunos, a diretora
- Vejo pessoas reclamando do atendimento! O processo de empréstimo é lento!
- É interessante inserir autenticação pelo polegar? E pela íris?
Estudo da Viabilidade
Análise de viabilidade técnica
- Avaliação dos recursos técnicos disponíveis.
- Hardware, software e pessoas
Viabilidade econômica
- Possíveis soluções tecnicamente disponíveis e utilizáveis
Viabilidade operacional
- Aspectos das soluções que implicarão mudanças de rotinas existentes
- Impactos na área, na empresa, na sociedade
- Discussões de ordem ética e moral
Projeto Lógico
A solução escolhida começa a ser detalhada e criteriosamente desenhada.
Um sistema:
- É um conjunto de componentes inter-relacionados organizados para atingir um certo objetivo
- É organizado para executar certo método, procedimento ou controle ao processar informações
- Automatiza ou apóia a realização de atividades humanas através do processamento das informações.
Modelo inicial para retratar o desafio:
DFD – Diagrama de Fluxo de Dados
Detalhamento do workflow
Componentes:
Problemas:
- Sistemas grandes são projetados para resolver problemas difíceis
- Sistemas requerem abordagem de infinitas possibilidades
- Sistemas devem ser projetados para durar muitos anos em um ambiente dinâmico.