Análise e Projeto de Sistemas - ppt video online carregar
PublicouLaís Celestino Alterado mais de 3 anos atrás
2 Porque modelagem? Os modelos ajudam a visualizar como o sistema é ou como desejamos que ele fosse. Os modelos permitem especificar a estrutura ou o comportamento de um sistema. Os modelos proporcionam um guia para a construção do sistema. Os modelos documentam as decisões tomadas.
3 Atenção! Deve-se descrever o sistema sem considerar qualquer tipo de restrição tecnológica. Linguagem de programação. Framework. Sistema operacional. Banco de dados.
4 Técnicas de Análise Análise tradicional: Análise estrutural:
Apenas perspectiva funcional. Utilizava como ferramentas textos e fluxogramas. Análise estrutural: Perspectiva funcional e de dados. Utilização de DFD, dicionário de dados etc. Análise essencial: Perspectiva funcional, de dados e controle. Utiliza tabelas de eventos e diagramas de transição. Essencial: Modela o comportamento do sistema baseado em estados válidos, ou seja, diagramas de estado e tabelas de transição.
5 O Modelo Essencial Essencial: Modela o comportamento do sistema baseado em estados válidos, ou seja, diagramas de estado e tabelas de transição.
6 Organiza o estudo do problema em:
Introdução Modelo essencial está focado nos aspectos mais essenciais e fundamentais do problema. Organiza o estudo do problema em: Modelagem ambiental (visão externa). Modelagem comportamental (visão interna). Ambiental: ou seja, uma macro especificação do sistema. Trata o sistema como um caixa preta que produz saídas para determinados estímulos. Comportamental: Detalhar cada funcionalidade do sistema que foi levantada na lista de eventos da modelagem ambiental.
7 Atividades da Modelagem Ambiental
A1. Elaborar a declaração dos objetivos do sistema. A2. Elaborar o diagrama de contexto. A3. Construir a lista de eventos.
8 Atividades da Modelagem Comportamental
C1. Elaborar o Diagrama do Modelo Entidade- Relacionamento; C2. Elaborar o Diagrama de Estrutura de Dados; C3. Normalizar as Estruturas de Dados; C4. Elaborar o Dicionário de Dados; C5. Elaborar o Diagrama de Fluxo de Dados; C6. Elaborar as Miniespecificações; C7. Elaborar o Diagrama de Transição de Estados.
9 A1. Declaração dos objetivos do sistema
Especificar o que o sistema deverá responder frente aos problemas existentes na organização. Deve refletir os principais desejos dos usuários. Primeiro contato com o cliente. Entrevistas com os principais usuários.
10 A1. Declaração dos objetivos do sistema
O analista deve redigir um texto breve para a: A gerência; A equipe de desenvolvimento do projeto; Os representantes da empresa que solicitaram o sistema; Os futuros usuários.
11 A1. Declaração dos objetivos do sistema
Exemplo: O objetivo deste sistema é apoiar o controle acadêmico da Escola de Línguas Fale Fácil, atuando nos processos de matrícula, acompanhamento de alunos e controle de caixa, disponibilizando informações estratégicas para que a Diretoria administre a instituição.
12 A2. Diagrama de Contexto Apresenta uma visão de alto nível do sistema analisado, mostrando-o como uma "caixa- preta". Ainda não sabemos o que ocorre internamente. Mostra os limites de atuação do sistema.
13 A2. Diagrama de Contexto Entidade externa: Fluxo de dados:
Fonte ou destino do fluxo. Algo situado fora do sistema. Pode ser usuários ou outros sistemas. Fluxo de dados: Mostra os dados que estão entrando/saindo. Utiliza breves descrições.
14 A2. Diagrama de Contexto
15 A3. Lista de Eventos Baseado no levantamento de requisitos.
Entrevistas com usuários. Observação da execução dos processos. Análise de documentos. Brainstorm. O requisito deve ser descrito na forma: O sistema deve emitir relatório de vendas. O sistema deve cadastrar notas do aluno. O sistema deve cadastrar faltas do aluno. O sistema deve emitir boletim do aluno.
16 A3. Lista de Eventos O sistema deve responder às solicitações (estímulos). Os estímulos são os ativadores do sistema. Cada estímulo é associado um evento externo. Todo estímulo dispara uma função do sistema. Todo estímulo produz uma resposta.
17 A3. Lista de Eventos Exemplo:
Quando uma secretária matricula um aluno, temos um evento. A matrícula do aluno é o estímulo. A resposta do sistema é responder se o aluno foi ou não matriculado
18 A3. Lista de Eventos Tipos de eventos:
Eventos orientados a fluxo de dados. Eventos temporais. Eventos orientados a fluxo de controle.
19 Eventos orientados a fluxo de dados:
A3. Lista de Eventos Eventos orientados a fluxo de dados: São aqueles disparados por entidades externas que enviam solicitações de manutenção de dados (inclusão, alteração ou exclusão), consultas ou relatórios. Exemplos: Secretária matricula aluno; Secretária altera dados de aluno; Gerente emite relatório de fechamento de caixa.
20 A3. Lista de Eventos Eventos temporais: Exemplo:
São disparados por uma informação relativa a um determinado intervalo de tempo predefinido. Exemplo: É hora de cancelar a reserva do hospede. É hora de gerar relatório de fechamento de despesas do hóspede. Sistema de Hotel, o cara reserva por telefone e não comparece, o sistema libera automaticamente o quarto.
21 Eventos orientados a fluxo de controle:
A3. Lista de Eventos Eventos orientados a fluxo de controle: Tem como característica a ativação por um fluxo de controle na forma de uma variável binária. Exemplos: A diretoria autoriza o pagamento de uma fatura; O nível mínimo do estoque é atingido. Assim que a direção aprova o sistema faz o pagamento. É como se fosse um checkbox com (SIM) e (NÃO) O controle de estoque não pode ser temporal, pois não sabemos quando vai terminar.
22 A3. Lista de Eventos Passemos para as atividades da modelagem comportamental.
23 C1. Modelagem Entidade-Relacionamento
É um dos instrumentos de análise mais importante do modelo essencial, e apresenta três construtores para a representação da semântica dos dados: Entidades. Atributos. Relacionamentos. Devemos detalhar como cada item da lista de eventos deve se comportar para produzir a resposta. Isso é um assunto detalhado em banco de dados, mas o analista deve saber as possibilidades de relacionamento.
24 C1. Modelagem Entidade-Relacionamento
Devemos detalhar como cada item da lista de eventos deve se comportar para produzir a resposta. Isso é um assunto detalhado em banco de dados, mas o analista deve saber as possibilidades de relacionamento.
25 C1. Modelagem Entidade-Relacionamento
Para começar, devemos tomar todas as funções de entrada/processamento/saída. Essas funções foram levantadas na lista de eventos e requisitos do sistema.
26 C1. Modelagem Entidade-Relacionamento
Lista de eventos Funções encontradas 1. A secretária cadastra professor 1. Cadastro de professores. 2. A secretária cadastra turma 2. Cadastro de turmas. 3. A secretária cadastra aluno 3. Cadastro de alunos. 4. A secretária matricula aluno em turma 4.Cadastro de matrículas. 5. A secretária recebe mensalidade e emite recibo 5. Registro de recebimento e emissão de recibo. 6. A secretária registra as presenças e faltas dos alunos 6. Registro de presença/falta dos alunos. 7. A secretária registra as notas das avaliações 7. Registro de notas. 8. A secretária emite o boletim do aluno 8. Emissão do boletim. 9. O diretor emite relatórios de fechamento de caixa 9. Emissão de relatórios de fechamento de caixa.
27 C1. Modelagem Entidade-Relacionamento
Da lista anterior, localizar quais seriam as possíveis entidades. Professores. Turmas. Alunos. Matrículas. Recebimentos. Presença. Notas. Boletim e Relatório não são entidades porque são resultados de extração de dados.
28 C1. Modelagem Entidade-Relacionamento
Um aluno paga varias mensalidades. Varias mensalidades são pagas por 1 único aluno. Depois de validar o MER, devemos fazer Modelo Entidade-Relacionamento
29 C1. Modelagem Entidade-Relacionamento
Outro exemplo: Depois de validar o MER, devemos fazer o Diagrama de Estrutura de Dados Modelo Entidade-Relacionamento
30 C2. Diagrama de Estrutura de Dados
Também conhecido como modelo lógico de dados. É um esquema que representa o projeto de um banco de dados, especificando sua estrutura lógica: Atributos chave. Chave estrangeiras. Relacionamentos. Lógico: quer dizer conceitual, antes do físico, que seria a criação de tabelas, dos atributos etc.
31 C2. Diagrama de Estrutura de Dados
Exemplo: Usuários = {Código do usuário, nome do usuário, login, senha, perfil do usuário} Cursos = {Código do curso, nome do curso} Turmas = {Código da turma, Ano, Semestre, Data de início, Código do Curso, Código do Professor} Professores = {Código do professor, nome do professor} Ambos são assuntos de Banco de Dados e podem estar relacionados com o banco escolhido.
32 C3. Normalização dos Dados
É um processo para derivar tabelas e eliminar ambiguidades. Objetivos: Garantir a integridade dos dados. Organizar e dividir as tabelas de maneira eficiente, eliminando redundâncias. Formas normais: 1FN, 2FN, 3FN, 4FN, 5FN. Isso não é foco do nosso estudo, apenas uma técnica existente. Formas normais são as regras que serão apresentadas na disciplina de banco de dados.
33 C4. Dicionário de Dados É um repositório de informações sobre os componentes do sistema Detalhamos cada atributo das entidades. Ambos são assuntos de Banco de Dados e podem estar relacionados com o banco escolhido.
34 C5. Diagrama de Fluxo de Dados (DFD)
No Diagrama de Contexto temos uma visão gráfica do modelo funcional do sistema. No DFD, vamos detalhar melhor o processo de entrada/processamento/saída dos dados: Entidades externas. Processos. Fluxo de dados. Depósito de dados. ou seja, é representado como uma rede de funções interligadas que são executadas a partir de estímulos gerados.
35 C5. Diagrama de Fluxo de Dados (DFD)
Entidades externas: É um elemento do ambiente que atua como fonte ou destino de dados e informações que entram ou saem do sistema. Pode ser uma entidade Pessoa, outro Sistema ou outro Setor dentro da empresa.
36 C5. Diagrama de Fluxo de Dados (DFD)
37 C5. Diagrama de Fluxo de Dados (DFD)
Processos: É a entidade mais importante do diagrama. É a partir dela que as entradas são transformadas nas saídas desejadas. Deve ser descrito em uma única palavra ou sentença simples e com verbos no infinitivo.
38 C5. Diagrama de Fluxo de Dados (DFD)
Depósito de Dados: Representa uma estrutura para armazenamento e recuperação de dados. Pode ser consultado ou pode receber novos dados, mas não pode exercer nenhuma ação por si próprio. Seta em direção ao depósito, é sinal de inclusão, alteração ou exclusão de dados. Seta em direção ao processo, é sinal de consulta ou leitura de dados.
39 C5. Diagrama de Fluxo de Dados (DFD)
40 C5. Diagrama de Fluxo de Dados (DFD)
Outro exemplo: Sistema de Hotel Na apostila tem exemplos de como refinar um DFD para um DFD de processos primitivos.
41 C5. Diagrama de Fluxo de Dados (DFD)
Outro exemplo: Livraria virtual
42 C5. Diagrama de Fluxo de Dados (DFD)
43 Trata especificamente das regras de negócio.
C6. Miniespecificações Tem como objetivo descrever os processos em uma linguagem que os envolvidos no projeto, especialmente programadores, possam entender facilmente. Trata especificamente das regras de negócio. Enquanto o DFD mostra como as entidades interagem, a especificação diz exatamente o que o processo faz. Regras que as empresas estabelecem para o funcionamento do seu negócio. Você não precisa especificar os processos de inclusão/alteração de dados.
44 Técnicas de especificação:
C6. Miniespecificações Técnicas de especificação: Português Estruturado. Pseudocódigo. Tabela de decisão. Arvore de decisão.
45 1. Português estruturado:
C6. Miniespecificações 1. Português estruturado: Uma versão adaptada do nosso idioma, com ênfase em verbos – de preferência no modo imperativo. Sintaxe Português estruturado Instruções Obtenha, calcule, coloque... Repetição Para cada... faça o que segue Seleção/decisão Se ... então faça o que segue Caso 1: ... faça o que segue Regras que as empresas estabelecem para o funcionamento do seu negócio. Você não precisa especificar os processos de inclusão/alteração de dados.
46 C6. Miniespecificações Exemplo: Emitir aviso de situação do aluno
Para cada aluno no arquivo de alunos: 1. Coloque a matrícula, nome e endereço do aluno no formulário de aviso. 2. Para cada código da disciplina cursada pelo aluno, existente no arquivo de avaliações: Obtenha, a partir do arquivo de disciplinas, o nome da disciplina. Obtenha, a partir do arquivo de avaliações, a média final do aluno na disciplina. Coloque, no formulário de aviso o código, o nome e a média final da disciplina cursada pelo aluno. 3. Calcule o total de disciplinas em que o aluno obteve média final menor que 5 (CASO 1) nenhuma disciplina com média final menor do que 5. Coloque no formulário a expressão "APROVADO". (CASO 2) mais de três disciplinas com médias finais menores que 5. Coloque no formulário a expressão "REPROVADO". (CASO 3) menos de quatro disciplinas com médias finais menores que 5. Coloque no formulário a expressão "EM RECUPERAÇÃO". DFD emitir aviso de situação do aluno
47 Estrutura de sequência
C6. Miniespecificações 2. Pseudocódigo: Mais popular e bem próxima de uma linguagem de programação. Estrutura de sequência Estrutura de decisão INÍCIO ação 1 ação 2 FIM. SE condição ENTÃO SENÃO As outras estruturas estão detalhadas no material
48 C6. Miniespecificações 3. Tabela de decisão:
49 C6. Miniespecificações 4. Árvore de decisão:
Representação alternativa para a tabela de decisão. As outras estruturas estão detalhadas no material
50 C7. Diagrama de Transição de Estados
Utilizado para modelar sistemas em tempo real, onde depende-se do tempo e estado de execução: Controle de tráfego aéreo. Sistemas militares. Sistemas de navegação de automóveis. Pouco utilizado, não entraremos em detalhes. Sistema com reposta instantânea.
51 Próximo assunto: UML e a abordagem Orientada a Objetos.
Concluindo... Vimos as ferramentas que permitem examinar o sistema do ponto de vista de funções e de fluxo de dados. Modelagem ambiental: visão geral do sistema e sua comunicação com entidades externas. Modelagem comportamental: visão detalhada de como implementar as funções do sistema. Próximo assunto: UML e a abordagem Orientada a Objetos.