SlideShare una empresa de Scribd logo
1 de 23
Aula 002
Aplicativos
PRONATEC
Programa Nacional de Acesso ao
Ensino Técnico e Emprego
PRONATEC
Programa Nacional de Acesso
ao Ensino Técnico e Emprego
1. ANÁLISE DE SISTEMAS
• Sistema em informática é um software para atender a
necessidades específicas de um ou mais usuários
• Função da Análise de Sistemas: produzir detalhes de um
sistema através de diagramas, relatórios, modelos a fim de
facilitar a criação dos programas
• Tipos de análise de sistemas: tradicional, estruturada,
moderna e orientada a objetos
• Análise tradicional: produz muitos relatórios descritivos
sobre o sistema mas muito redundante e dificulta a
manutenção, impossível de ser automatizada
• Análise estruturada e Moderna: produzem diagramas, são
modulares ficando mais próximas da forma da mente
humana trabalhar, facilitam a manutenção do projeto
• Análise orientada ao objeto: produz diagramas modulares e
pode ser automatizada com uso de ferramentas case que
podem até mesmo gerar os programas módulos
2. Ferramentas da Análise de Sistemas
• Diagrama de Fluxo de Dados (DFD): um diagrama
estruturado que mostra os processos, os arquivos, as
entidades externas e o fluxo de dados e tarefas entre
os elementos do sistema
• Diagrama de Entidade – Relacionamento (DER): mostra
a estrutura do banco de dados a ser criado para o
sistema facilitando a criação das tabelas do BD
• Dicionário de Dados(DD): contem informação de todos
os dados para o sistema com suas respectivas
definições
• Português estruturado (PE): forma de descrever as
ações de um processo a fim de facilitar na
programação, muito mais parecida com a linguagem
humana que a do computador
3. DFD – Diagrama de Fluxo de Dados
• É um diagrama para representação em rede do
processos (funções) do sistema e dos dados que
ligam esses processo.
• DFD – mostra o que é feito e não como é feito
• É estruturado começando do nível mais elevado e
descendo para maiores detalhes
• É gráfico podendo ser automatizado por
softwares
• O primeiro diagrama sempre é chamado de
“Diagrama de Contexto”
• O DFD é uma ferramenta para apresentar ao
usuário tanto quanto aos programadores, logo
deve ser de fácil entendimento para ambos
3. DFD – Diagrama de Fluxo de Dados
• O retângulo representa ENTIDADES do
sistema
• As Entidades são externas ao sistema,
geralmente usam o sistema como
usuários, setores, departamentos,
empresas
• Um nome deve ser inserido dentro do
retângulo para indicar qual entidade ele
representa
• Não deve ser numerado uma vez que
não é o objetivo do DFD
ENTIDADE
4. DFD – Diagrama de Fluxo de Dados
• O círculo representa um processo
• Deve ser numerado de forma
estruturada de 1..N
• Um nome deve ser inserido dentro do
círculo e deve indicar uma ação bem
definida sem ser repetitiva
• Também conhecido no diagrama como
“bolha”
• Uma bolha pode ser “explodida” e gerar
subdiagramas DFD que juntos
comporão o resultado da bolha original
1
PROCESSO
5. DFD – Diagrama de Fluxo de Dados
• Dois traços horizontais de mesmo
tamanho com um nome dentro indica
um arquivo para o sistema
• Um arquivo pode ser uma pasta de
documentos, uma gaveta com papéis,
uma pessoa, um setor, depende da
análise feita
• Um arquivo pode receber e enviar
dados aos processos, mas são passivos,
não denota ação somente servem para
conter dados
• Não precisam ser numerados, embora
possam ser se melhorar o entendimento
ARQUIVO
6. DFD – Diagrama de Fluxo de Dados
• Uma linha com uma seta direcional na
ponta indicando o fluxo de uma origem
para um destino é o Fluxo de Dados
• Pode ligar: dois processos, um processo
e um arquivo, uma entidade e um
arquivo, uma entidade e um processo.
• ATENÇÂO: nunca ligue arquivo com
arquivo sem ter processo ou entidade
entre eles
• Fluxos de dados que saem de arquivos
não precisam ser nomeados uma vez
que o arquivo já diz o que são
DADO
7. Diagrama de Contexto
• Para elaborar um DFD a primeira coisa a definir
é o Diagrama de Contexto – Uma única bolha
indicando toda a função do sistema com as
entidades envolvidas que trabalham com o
sistema e os principais fluxos de dados iniciais
VENDAS
VENDEDOR
PEDIDO
CLIENTE
NOTA-FISCAL
Sistema de Vendas
8. Diagrama 0
• O diagrama de contexto serve para apresentar
um resumo geral de “O Quê” o sistema faz e
não como ele faz. O objetivo da Análise é
sempre descrever “o quê” e não “o como”
• Explodir o Diagrama de Contexto significa
detalhar um pouco mais internamente o
funcionamento do sistema
• O Diagrama Zero, sempre é a explosão da
bolha do Diagrama de Contexto
9. Exemplo de Diagrama 0
1
FAZ PEDIDO
VENDEDOR
PEDIDO
CLIENTE
NOTA-FISCAL
PEDIDOS
2
VALIDA
PEDIDO
3
IMPRIME
NF
PEDIDO-VÁLIDO
• Note que o Diagrama zero tem os mesmos fluxos de dados de entrada/saída
do Diagrama de Contexto – isso é o Balanceamento.
Diagrama 0: Sistema de Vendas
10. Explodindo outras bolhas
• O analista poderá ir explodindo os níveis das
bolhas em tantos subníveis quantos achar
necessário
• Um subnivel sempre começa com o número da
bolha pai, um ponto e outro número indicando
sua sequência
• Todos os fluxos de entrada e saída em um
diagrama devem corresponder aos mesmos
fluxos de entrada e saída da bolha pai mantendo
o balanceamento
• Cada bolha poderá gerar outro diagrama pela sua
explosão, bastando para isso a necessidade de
maior esclarecimento do processo
11. Descendo mais um nível
2.1
CONFERE
CPF/CNPJ
PEDIDOS
2.3
CONFERE
DÉBITO A
PRAZO
2.1
CONFERE
SPC
• Note que esse exemplo é muito incomum, sem fluxo de
saída de dados, porque todos os processos estão
mantendo um arquivo atualizado
2.4
CONFERE
FORMA DE
PAGTO
Explosão da bolha 2: Valida Pedido
12. DER – Diagrama de Entidade e
Relacionamentos
• É um diagrama para representação dos dados do
sistema com a finalidade de facilitar ao projetista do
banco de dados a construção do modelo de dados
• É de simples compreensão pois mostra os arquivos
como ENTIDADES e a ligação entre elas como
RELACIONAMENTOS
• A Entidade é um arquivo ou tabela que é representado
no diagrama por um retângulo
• O Relacionamento é a ligação entre as Entidades
mostradas como um losango
• Para o projetista do banco cada Entidade e cada
Relacionamento se tornarão uma tabela
• São mostrados no DER como linhas saindo da Entidade
(retângulo) com terminadores em pontos negros onde
aparecem os seus nomes
13. Exemplo de DER
ALUNO
PROFESSOR
MATÉRIACURSON N
N
• Como se lê esse diagrama: Um aluno cursa várias (N)
matérias ministradas por vários (N) professores.
• Um professor leciona várias (N) matérias para vários
(N) alunos
• Uma matéria é cursada por vários (N) alunos e
ministrada por vários (N) professores
• Podemos ler o diagrama de várias formas dependendo
do foco a ser tomado
14. Atributos
• Os atributos são características importantes
das entidades e podem ser mostradas para
melhorar o entendimento do diagrama
• Um atributo sempre vai se transformar no
projeto em uma coluna (campo) da tabela
• Um atributo pode ser “Chave Primária”
quando define unicamente a entidade a que
pertence não se repetindo seu valor na tabela
• Um atributo pode ser “Chave Estrangeira”
caso se refira a uma chave primária de outra
entidade
15. Exemplo de DER com atributos
ALUNO
PROFESSOR
MATÉRIACURSON N
N
• Os atributos “Chave Primária” devem ser
marcados com o asterisco *
• Somente mostre os atributos relevantes no
contexto do sistema não inclua todos pois
pode provocar maior dificuldade do que
facilitar no entendimento
NOME IDENTIDADE* NOME * NOTA TOTAL
NOMECPF*
DATA INICIAL
16. Tipos de Relacionamentos
CURSO MATÉRIATEM1 N
• UM PARA N: um curso tem várias matérias, uma
matéria só pertence exclusivamente a um curso
ALUNO MATÉRIAFAZN N
• N PARA N: um aluno faz várias matérias, uma matéria pode
ser feita por vários alunos ao mesmo tempo
• IMPORTANTE: Relacionamento 1 Para 1 não existe.
Provavelmente se trata de um atributo que foi
confundido com Entidade. Pode se tratar de um erro
da análise do sistema
17. Dicionário de Dados
• É um recurso para descrever todos os dados mostrados
no DFD e no DER de forma mais clara possível para o
projetista criar a estrutura do banco de dados
• Pode ser tão detalhado quanto se desejar, mas o mais
importante é que o Usuário deverá compreender os
dados, deverá ver e saber do que se trata no seu
ambiente de trabalho
• Geralmente começa descrevendo os Fluxos de Dados
do DFD e depois as Entidades, Relacionamentos e
Atributos do DER com as seguintes simbologias:
• 0{}N = indica 0 a várias ocorrências do dado
• [,] = indica uma das opções separadas por “,”
• (* *) = indica um comentário a parte
18. Exemplo de um DD
• DADOS-MATERIA = (NOME,NOTA-TOTAL)
• NOME = 0{LETRA}50
• LETRA = [a..z,A..Z]
• NOTA-TOTAL = VALOR-REAL-POSITIVO
• DADOS-MATÉRIA-VALIDADOS = DADOS-MATÉRIA
• CURSO = 0{ID,NOME}N
• ID = VALOR-INTEIRO-POSITIVO
• MATÉRIA = 0{ID,ID-CURSO,DADOS-MATERIA-VALIDADOS}N
• ID-CURSO = ID (* Chave estrangeira para CURSO *)
CURSO MATÉRIATEM1 N
1
CADASTRA
MATÉRIA
USUÁRIO
DADOS-
MATÉRIA
DADOS-MATÉRIA-
VALIDADOS
DFD - Curso
DER - Curso
DD - Curso
MATÉRIA
19. Português Estruturado
• Forma de descrever o que acontece dentro de
uma bolha de processo do DFD
• Deve ser feito em uma linguagem chamada
“Português Estruturado” parecido com linguagem
de algoritmos.
• Não deve entrar muito em detalhes de
codificação pois deverá ser vista pelo usuário e
ele deverá entender e confirmar o resultado
• Deve ser feito para cada bolha de último nível e
somente para elas
• Toda bolha de último nível deve ter
obrigatoriamente uma especificação em PE
20. Exemplo de Português Estruturado
Para cada DADOS-MATERIA faça:
Confirme se NOME está preenchido
Confirme se NOTA-TOTAL está preenchida e é maior que Zero
Confirme se NOTA-TOTAL é menor que 100
Confirme se existe ID-CURSO de DADOS-MATÉRIA em CURSO
Se todas verificações forem confirmadas Então
Mova DADOS-MATERIA para DADOS-MATÉRIA-VALIDADOS
Crie um ID único de DADOS-MATÉRIA_VALIDADOS em MATÉRIA
Fim do Se
Fim do Para Cada
1
CADASTRA
MATÉRIA
USUÁRIO
DADOS-
MATÉRIA
DADOS-MATÉRIA-
VALIDADOS
DFD - Curso
PE – Cadastra Matéria
MATÉRIA

Más contenido relacionado

La actualidad más candente

La actualidad más candente (6)

Apostila UML
Apostila UMLApostila UML
Apostila UML
 
UML
UMLUML
UML
 
Análise essencial e análise estruturada
Análise essencial e análise estruturadaAnálise essencial e análise estruturada
Análise essencial e análise estruturada
 
Modelagem Aplicações Web com UML
Modelagem Aplicações Web com UMLModelagem Aplicações Web com UML
Modelagem Aplicações Web com UML
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
 
Apresentação da UML
Apresentação da UMLApresentação da UML
Apresentação da UML
 

Destacado (16)

Canada
CanadaCanada
Canada
 
Argentina
Argentina Argentina
Argentina
 
El mon a les teves mans Suiza
El mon a les teves mans SuizaEl mon a les teves mans Suiza
El mon a les teves mans Suiza
 
Trabajo
TrabajoTrabajo
Trabajo
 
Argentina
ArgentinaArgentina
Argentina
 
Acrosport
Acrosport Acrosport
Acrosport
 
Suiza
SuizaSuiza
Suiza
 
Disertacion Brasil
Disertacion BrasilDisertacion Brasil
Disertacion Brasil
 
Presentacion brasil
Presentacion brasilPresentacion brasil
Presentacion brasil
 
Suiza
SuizaSuiza
Suiza
 
Nueva Zelanda
Nueva ZelandaNueva Zelanda
Nueva Zelanda
 
Nueva zelanda
Nueva zelandaNueva zelanda
Nueva zelanda
 
Brazil ppt
Brazil pptBrazil ppt
Brazil ppt
 
Nueva Zelanda / New Zealand
Nueva Zelanda / New ZealandNueva Zelanda / New Zealand
Nueva Zelanda / New Zealand
 
Brazil - Culture Powerpoint
Brazil - Culture PowerpointBrazil - Culture Powerpoint
Brazil - Culture Powerpoint
 
Bern Powerpoint
Bern PowerpointBern Powerpoint
Bern Powerpoint
 

Similar a Aplicativo aula02

DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosCláudio Amaral
 
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Pedro A. Uamusse
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoClaudio Martins
 
Aula modelagem de dados
Aula modelagem de dadosAula modelagem de dados
Aula modelagem de dadosGabriel Moura
 
Diagramas de Fluxo de Dados
Diagramas de Fluxo de DadosDiagramas de Fluxo de Dados
Diagramas de Fluxo de DadosJanynne Gomes
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosVitor Silva
 
8-uml-e-modelagem-oo Introdução a UML.pdf
8-uml-e-modelagem-oo Introdução a UML.pdf8-uml-e-modelagem-oo Introdução a UML.pdf
8-uml-e-modelagem-oo Introdução a UML.pdfgabriel-colman
 
06-engenharia de softwere Análise e Projeto de Software.docx
06-engenharia de softwere Análise e Projeto de Software.docx06-engenharia de softwere Análise e Projeto de Software.docx
06-engenharia de softwere Análise e Projeto de Software.docxJulioCesar371362
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basicoAmadeo Santos
 
modelagem sistema da informação Unid 4
modelagem sistema da informação Unid 4modelagem sistema da informação Unid 4
modelagem sistema da informação Unid 4spawally
 
ResoluçãO Cgu Ti (Amostra) 2006
ResoluçãO Cgu Ti (Amostra) 2006ResoluçãO Cgu Ti (Amostra) 2006
ResoluçãO Cgu Ti (Amostra) 2006Walter Cunha
 

Similar a Aplicativo aula02 (20)

DER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e RelacionamentosDER - Diagrama de Entidade e Relacionamentos
DER - Diagrama de Entidade e Relacionamentos
 
Aula DFD - Revisão
Aula DFD - RevisãoAula DFD - Revisão
Aula DFD - Revisão
 
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
 
Apostila dfd
Apostila dfdApostila dfd
Apostila dfd
 
Diagrama de fluxo de dados DFD
Diagrama de fluxo de dados DFDDiagrama de fluxo de dados DFD
Diagrama de fluxo de dados DFD
 
Estimativa de software usando pontos de função
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
 
Aprendendo R
Aprendendo RAprendendo R
Aprendendo R
 
Aula modelagem de dados
Aula modelagem de dadosAula modelagem de dados
Aula modelagem de dados
 
Diagramas de Fluxo de Dados
Diagramas de Fluxo de DadosDiagramas de Fluxo de Dados
Diagramas de Fluxo de Dados
 
Desenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a DadosDesenvolvimento em .Net - Acesso a Dados
Desenvolvimento em .Net - Acesso a Dados
 
8-uml-e-modelagem-oo Introdução a UML.pdf
8-uml-e-modelagem-oo Introdução a UML.pdf8-uml-e-modelagem-oo Introdução a UML.pdf
8-uml-e-modelagem-oo Introdução a UML.pdf
 
UMLIntro.pdf
UMLIntro.pdfUMLIntro.pdf
UMLIntro.pdf
 
06-engenharia de softwere Análise e Projeto de Software.docx
06-engenharia de softwere Análise e Projeto de Software.docx06-engenharia de softwere Análise e Projeto de Software.docx
06-engenharia de softwere Análise e Projeto de Software.docx
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basico
 
UMLIntro.pptx
UMLIntro.pptxUMLIntro.pptx
UMLIntro.pptx
 
Sql
SqlSql
Sql
 
modelagem sistema da informação Unid 4
modelagem sistema da informação Unid 4modelagem sistema da informação Unid 4
modelagem sistema da informação Unid 4
 
Analise sistemas 07
Analise sistemas 07Analise sistemas 07
Analise sistemas 07
 
ResoluçãO Cgu Ti (Amostra) 2006
ResoluçãO Cgu Ti (Amostra) 2006ResoluçãO Cgu Ti (Amostra) 2006
ResoluçãO Cgu Ti (Amostra) 2006
 
pgDay Campinas – 2015
pgDay Campinas – 2015pgDay Campinas – 2015
pgDay Campinas – 2015
 

Más de Cláudio Amaral

Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Cláudio Amaral
 
Projeto de Sistemas - Aula003
Projeto de Sistemas - Aula003Projeto de Sistemas - Aula003
Projeto de Sistemas - Aula003Cláudio Amaral
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Cláudio Amaral
 
Banco de Dados II - Aula1
Banco de Dados II - Aula1Banco de Dados II - Aula1
Banco de Dados II - Aula1Cláudio Amaral
 
Projeto de Sistemas - Parte001
Projeto de Sistemas - Parte001Projeto de Sistemas - Parte001
Projeto de Sistemas - Parte001Cláudio Amaral
 
Sistema Operacional - Pratica002
Sistema Operacional - Pratica002Sistema Operacional - Pratica002
Sistema Operacional - Pratica002Cláudio Amaral
 
Sistema Operacional - Pratica001
Sistema Operacional - Pratica001Sistema Operacional - Pratica001
Sistema Operacional - Pratica001Cláudio Amaral
 
Sistema Operacional - Pratica003
Sistema Operacional - Pratica003Sistema Operacional - Pratica003
Sistema Operacional - Pratica003Cláudio Amaral
 
Sistema Operacional - Aula005
Sistema Operacional - Aula005Sistema Operacional - Aula005
Sistema Operacional - Aula005Cláudio Amaral
 
Sistema Operacional - Aula003
Sistema Operacional - Aula003Sistema Operacional - Aula003
Sistema Operacional - Aula003Cláudio Amaral
 
Sistema Operacional - Aula002
Sistema Operacional - Aula002Sistema Operacional - Aula002
Sistema Operacional - Aula002Cláudio Amaral
 
Sistema Operacional - Aula001
Sistema Operacional - Aula001Sistema Operacional - Aula001
Sistema Operacional - Aula001Cláudio Amaral
 
Sistema Operacional - Aula006
Sistema Operacional - Aula006Sistema Operacional - Aula006
Sistema Operacional - Aula006Cláudio Amaral
 
Sistema Operacional - Aula004
Sistema Operacional - Aula004Sistema Operacional - Aula004
Sistema Operacional - Aula004Cláudio Amaral
 

Más de Cláudio Amaral (20)

Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005
 
Projeto de Sistemas - Aula003
Projeto de Sistemas - Aula003Projeto de Sistemas - Aula003
Projeto de Sistemas - Aula003
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002
 
Banco de Dados II - Aula1
Banco de Dados II - Aula1Banco de Dados II - Aula1
Banco de Dados II - Aula1
 
Projeto de Sistemas - Parte001
Projeto de Sistemas - Parte001Projeto de Sistemas - Parte001
Projeto de Sistemas - Parte001
 
Programação-Aula004
Programação-Aula004Programação-Aula004
Programação-Aula004
 
Aplicativo aula006
Aplicativo aula006Aplicativo aula006
Aplicativo aula006
 
Aplicativo aula008
Aplicativo aula008Aplicativo aula008
Aplicativo aula008
 
Aplicativo aula007
Aplicativo aula007Aplicativo aula007
Aplicativo aula007
 
Sistema Operacional - Pratica002
Sistema Operacional - Pratica002Sistema Operacional - Pratica002
Sistema Operacional - Pratica002
 
Sistema Operacional - Pratica001
Sistema Operacional - Pratica001Sistema Operacional - Pratica001
Sistema Operacional - Pratica001
 
Sistema Operacional - Pratica003
Sistema Operacional - Pratica003Sistema Operacional - Pratica003
Sistema Operacional - Pratica003
 
Sistema Operacional - Aula005
Sistema Operacional - Aula005Sistema Operacional - Aula005
Sistema Operacional - Aula005
 
Sistema Operacional - Aula003
Sistema Operacional - Aula003Sistema Operacional - Aula003
Sistema Operacional - Aula003
 
Sistema Operacional - Aula002
Sistema Operacional - Aula002Sistema Operacional - Aula002
Sistema Operacional - Aula002
 
Sistema Operacional - Aula001
Sistema Operacional - Aula001Sistema Operacional - Aula001
Sistema Operacional - Aula001
 
Sistema Operacional - Aula006
Sistema Operacional - Aula006Sistema Operacional - Aula006
Sistema Operacional - Aula006
 
Sistema Operacional - Aula004
Sistema Operacional - Aula004Sistema Operacional - Aula004
Sistema Operacional - Aula004
 
Aplicativo aula03
Aplicativo aula03Aplicativo aula03
Aplicativo aula03
 
Aplicativo aula01
Aplicativo aula01Aplicativo aula01
Aplicativo aula01
 

Aplicativo aula02

  • 1. Aula 002 Aplicativos PRONATEC Programa Nacional de Acesso ao Ensino Técnico e Emprego
  • 2. PRONATEC Programa Nacional de Acesso ao Ensino Técnico e Emprego
  • 3. 1. ANÁLISE DE SISTEMAS • Sistema em informática é um software para atender a necessidades específicas de um ou mais usuários • Função da Análise de Sistemas: produzir detalhes de um sistema através de diagramas, relatórios, modelos a fim de facilitar a criação dos programas • Tipos de análise de sistemas: tradicional, estruturada, moderna e orientada a objetos • Análise tradicional: produz muitos relatórios descritivos sobre o sistema mas muito redundante e dificulta a manutenção, impossível de ser automatizada • Análise estruturada e Moderna: produzem diagramas, são modulares ficando mais próximas da forma da mente humana trabalhar, facilitam a manutenção do projeto • Análise orientada ao objeto: produz diagramas modulares e pode ser automatizada com uso de ferramentas case que podem até mesmo gerar os programas módulos
  • 4. 2. Ferramentas da Análise de Sistemas • Diagrama de Fluxo de Dados (DFD): um diagrama estruturado que mostra os processos, os arquivos, as entidades externas e o fluxo de dados e tarefas entre os elementos do sistema • Diagrama de Entidade – Relacionamento (DER): mostra a estrutura do banco de dados a ser criado para o sistema facilitando a criação das tabelas do BD • Dicionário de Dados(DD): contem informação de todos os dados para o sistema com suas respectivas definições • Português estruturado (PE): forma de descrever as ações de um processo a fim de facilitar na programação, muito mais parecida com a linguagem humana que a do computador
  • 5. 3. DFD – Diagrama de Fluxo de Dados • É um diagrama para representação em rede do processos (funções) do sistema e dos dados que ligam esses processo. • DFD – mostra o que é feito e não como é feito • É estruturado começando do nível mais elevado e descendo para maiores detalhes • É gráfico podendo ser automatizado por softwares • O primeiro diagrama sempre é chamado de “Diagrama de Contexto” • O DFD é uma ferramenta para apresentar ao usuário tanto quanto aos programadores, logo deve ser de fácil entendimento para ambos
  • 6. 3. DFD – Diagrama de Fluxo de Dados • O retângulo representa ENTIDADES do sistema • As Entidades são externas ao sistema, geralmente usam o sistema como usuários, setores, departamentos, empresas • Um nome deve ser inserido dentro do retângulo para indicar qual entidade ele representa • Não deve ser numerado uma vez que não é o objetivo do DFD ENTIDADE
  • 7. 4. DFD – Diagrama de Fluxo de Dados • O círculo representa um processo • Deve ser numerado de forma estruturada de 1..N • Um nome deve ser inserido dentro do círculo e deve indicar uma ação bem definida sem ser repetitiva • Também conhecido no diagrama como “bolha” • Uma bolha pode ser “explodida” e gerar subdiagramas DFD que juntos comporão o resultado da bolha original 1 PROCESSO
  • 8. 5. DFD – Diagrama de Fluxo de Dados • Dois traços horizontais de mesmo tamanho com um nome dentro indica um arquivo para o sistema • Um arquivo pode ser uma pasta de documentos, uma gaveta com papéis, uma pessoa, um setor, depende da análise feita • Um arquivo pode receber e enviar dados aos processos, mas são passivos, não denota ação somente servem para conter dados • Não precisam ser numerados, embora possam ser se melhorar o entendimento ARQUIVO
  • 9. 6. DFD – Diagrama de Fluxo de Dados • Uma linha com uma seta direcional na ponta indicando o fluxo de uma origem para um destino é o Fluxo de Dados • Pode ligar: dois processos, um processo e um arquivo, uma entidade e um arquivo, uma entidade e um processo. • ATENÇÂO: nunca ligue arquivo com arquivo sem ter processo ou entidade entre eles • Fluxos de dados que saem de arquivos não precisam ser nomeados uma vez que o arquivo já diz o que são DADO
  • 10. 7. Diagrama de Contexto • Para elaborar um DFD a primeira coisa a definir é o Diagrama de Contexto – Uma única bolha indicando toda a função do sistema com as entidades envolvidas que trabalham com o sistema e os principais fluxos de dados iniciais VENDAS VENDEDOR PEDIDO CLIENTE NOTA-FISCAL Sistema de Vendas
  • 11. 8. Diagrama 0 • O diagrama de contexto serve para apresentar um resumo geral de “O Quê” o sistema faz e não como ele faz. O objetivo da Análise é sempre descrever “o quê” e não “o como” • Explodir o Diagrama de Contexto significa detalhar um pouco mais internamente o funcionamento do sistema • O Diagrama Zero, sempre é a explosão da bolha do Diagrama de Contexto
  • 12. 9. Exemplo de Diagrama 0 1 FAZ PEDIDO VENDEDOR PEDIDO CLIENTE NOTA-FISCAL PEDIDOS 2 VALIDA PEDIDO 3 IMPRIME NF PEDIDO-VÁLIDO • Note que o Diagrama zero tem os mesmos fluxos de dados de entrada/saída do Diagrama de Contexto – isso é o Balanceamento. Diagrama 0: Sistema de Vendas
  • 13. 10. Explodindo outras bolhas • O analista poderá ir explodindo os níveis das bolhas em tantos subníveis quantos achar necessário • Um subnivel sempre começa com o número da bolha pai, um ponto e outro número indicando sua sequência • Todos os fluxos de entrada e saída em um diagrama devem corresponder aos mesmos fluxos de entrada e saída da bolha pai mantendo o balanceamento • Cada bolha poderá gerar outro diagrama pela sua explosão, bastando para isso a necessidade de maior esclarecimento do processo
  • 14. 11. Descendo mais um nível 2.1 CONFERE CPF/CNPJ PEDIDOS 2.3 CONFERE DÉBITO A PRAZO 2.1 CONFERE SPC • Note que esse exemplo é muito incomum, sem fluxo de saída de dados, porque todos os processos estão mantendo um arquivo atualizado 2.4 CONFERE FORMA DE PAGTO Explosão da bolha 2: Valida Pedido
  • 15. 12. DER – Diagrama de Entidade e Relacionamentos • É um diagrama para representação dos dados do sistema com a finalidade de facilitar ao projetista do banco de dados a construção do modelo de dados • É de simples compreensão pois mostra os arquivos como ENTIDADES e a ligação entre elas como RELACIONAMENTOS • A Entidade é um arquivo ou tabela que é representado no diagrama por um retângulo • O Relacionamento é a ligação entre as Entidades mostradas como um losango • Para o projetista do banco cada Entidade e cada Relacionamento se tornarão uma tabela • São mostrados no DER como linhas saindo da Entidade (retângulo) com terminadores em pontos negros onde aparecem os seus nomes
  • 16. 13. Exemplo de DER ALUNO PROFESSOR MATÉRIACURSON N N • Como se lê esse diagrama: Um aluno cursa várias (N) matérias ministradas por vários (N) professores. • Um professor leciona várias (N) matérias para vários (N) alunos • Uma matéria é cursada por vários (N) alunos e ministrada por vários (N) professores • Podemos ler o diagrama de várias formas dependendo do foco a ser tomado
  • 17. 14. Atributos • Os atributos são características importantes das entidades e podem ser mostradas para melhorar o entendimento do diagrama • Um atributo sempre vai se transformar no projeto em uma coluna (campo) da tabela • Um atributo pode ser “Chave Primária” quando define unicamente a entidade a que pertence não se repetindo seu valor na tabela • Um atributo pode ser “Chave Estrangeira” caso se refira a uma chave primária de outra entidade
  • 18. 15. Exemplo de DER com atributos ALUNO PROFESSOR MATÉRIACURSON N N • Os atributos “Chave Primária” devem ser marcados com o asterisco * • Somente mostre os atributos relevantes no contexto do sistema não inclua todos pois pode provocar maior dificuldade do que facilitar no entendimento NOME IDENTIDADE* NOME * NOTA TOTAL NOMECPF* DATA INICIAL
  • 19. 16. Tipos de Relacionamentos CURSO MATÉRIATEM1 N • UM PARA N: um curso tem várias matérias, uma matéria só pertence exclusivamente a um curso ALUNO MATÉRIAFAZN N • N PARA N: um aluno faz várias matérias, uma matéria pode ser feita por vários alunos ao mesmo tempo • IMPORTANTE: Relacionamento 1 Para 1 não existe. Provavelmente se trata de um atributo que foi confundido com Entidade. Pode se tratar de um erro da análise do sistema
  • 20. 17. Dicionário de Dados • É um recurso para descrever todos os dados mostrados no DFD e no DER de forma mais clara possível para o projetista criar a estrutura do banco de dados • Pode ser tão detalhado quanto se desejar, mas o mais importante é que o Usuário deverá compreender os dados, deverá ver e saber do que se trata no seu ambiente de trabalho • Geralmente começa descrevendo os Fluxos de Dados do DFD e depois as Entidades, Relacionamentos e Atributos do DER com as seguintes simbologias: • 0{}N = indica 0 a várias ocorrências do dado • [,] = indica uma das opções separadas por “,” • (* *) = indica um comentário a parte
  • 21. 18. Exemplo de um DD • DADOS-MATERIA = (NOME,NOTA-TOTAL) • NOME = 0{LETRA}50 • LETRA = [a..z,A..Z] • NOTA-TOTAL = VALOR-REAL-POSITIVO • DADOS-MATÉRIA-VALIDADOS = DADOS-MATÉRIA • CURSO = 0{ID,NOME}N • ID = VALOR-INTEIRO-POSITIVO • MATÉRIA = 0{ID,ID-CURSO,DADOS-MATERIA-VALIDADOS}N • ID-CURSO = ID (* Chave estrangeira para CURSO *) CURSO MATÉRIATEM1 N 1 CADASTRA MATÉRIA USUÁRIO DADOS- MATÉRIA DADOS-MATÉRIA- VALIDADOS DFD - Curso DER - Curso DD - Curso MATÉRIA
  • 22. 19. Português Estruturado • Forma de descrever o que acontece dentro de uma bolha de processo do DFD • Deve ser feito em uma linguagem chamada “Português Estruturado” parecido com linguagem de algoritmos. • Não deve entrar muito em detalhes de codificação pois deverá ser vista pelo usuário e ele deverá entender e confirmar o resultado • Deve ser feito para cada bolha de último nível e somente para elas • Toda bolha de último nível deve ter obrigatoriamente uma especificação em PE
  • 23. 20. Exemplo de Português Estruturado Para cada DADOS-MATERIA faça: Confirme se NOME está preenchido Confirme se NOTA-TOTAL está preenchida e é maior que Zero Confirme se NOTA-TOTAL é menor que 100 Confirme se existe ID-CURSO de DADOS-MATÉRIA em CURSO Se todas verificações forem confirmadas Então Mova DADOS-MATERIA para DADOS-MATÉRIA-VALIDADOS Crie um ID único de DADOS-MATÉRIA_VALIDADOS em MATÉRIA Fim do Se Fim do Para Cada 1 CADASTRA MATÉRIA USUÁRIO DADOS- MATÉRIA DADOS-MATÉRIA- VALIDADOS DFD - Curso PE – Cadastra Matéria MATÉRIA