Aula 004

Projeto de Sistemas
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 ESTRUTURADA
• 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 Estruturada
• 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
ENTIDADE

• 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
4. DFD – Diagrama de Fluxo de Dados
1
PROCESSO

• 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
5. DFD – Diagrama de Fluxo de Dados
ARQUIVO

• 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
6. DFD – Diagrama de Fluxo de Dados
DADO

• 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
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
Sistema de Vendas

VENDEDOR

PEDIDO

VENDAS

NOTA-FISCAL
CLIENTE
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
Diagrama 0: Sistema de Vendas
VENDEDOR
CLIENTE
PEDIDO
1
FAZ PEDIDO

3
IMPRIME
NF

NOTA-FISCAL

PEDIDO-VÁLIDO

PEDIDOS

2
VALIDA
PEDIDO

• Note que o Diagrama zero tem os mesmos fluxos de dados de entrada/saída
do Diagrama de Contexto – isso é o Balanceamento.
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
Explosão da bolha 2: Valida Pedido

2.1
CONFERE
CPF/CNPJ

2.1
CONFERE
SPC

2.4
CONFERE
FORMA DE
PAGTO

2.3
CONFERE
DÉBITO A
PRAZO
PEDIDOS

• Note que esse exemplo é muito incomum, sem fluxo de
saída de dados, porque todos os processos estão
mantendo um arquivo atualizado
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

N

CURSO

N

MATÉRIA

N

PROFESSOR

• 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
NOME

IDENTIDADE*

N

N

CURSO
DATA INICIAL

MATÉRIA
NOME *

NOTA TOTAL

N
CPF*

NOME

PROFESSOR

• 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
16. Tipos de Relacionamentos
CURSO

1

TEM

N

MATÉRIA

• UM PARA N: um curso tem várias matérias, uma
matéria só pertence exclusivamente a um curso
ALUNO

N

FAZ

N

MATÉRIA

• 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
DFD - Curso

USUÁRIO

1
CADASTRA
MATÉRIA

DADOSMATÉRIA

DADOS-MATÉRIAVALIDADOS
MATÉRIA

DER - Curso
CURSO
•
•
•
•
•
•
•
•
•

1

TEM

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 *)

N

MATÉRIA

DD - Curso
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
USUÁRIO

DADOSMATÉRIA

PE – Cadastra Matéria

DFD - Curso
1
CADASTRA
MATÉRIA

DADOS-MATÉRIAVALIDADOS
MATÉRIA

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
21. DTE – Diagrama de Transição de Estados
• Usado para mostrar as mudanças de estado em um sistema e os
eventos que as provocam. Mostra também as sequências
possíveis de transição.

Cada estado (quadro)
representa o tempo
durante o qual o
sistema tem algum
comportamento
observável; as setas
conectando os
quadros mostram as
mudanças de
Estado, os textos ao
lado das setas
indicam os eventos
que causam a
transição.

Projeto de Sistemas - Aula004

  • 1.
    Aula 004 Projeto deSistemas PRONATEC Programa Nacional de Acesso ao Ensino Técnico e Emprego
  • 2.
    PRONATEC Programa Nacional deAcesso ao Ensino Técnico e Emprego
  • 3.
    1. ANÁLISE ESTRUTURADA •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 daAnálise Estruturada • 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 ENTIDADE • 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
  • 7.
    4. DFD –Diagrama de Fluxo de Dados 1 PROCESSO • 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
  • 8.
    5. DFD –Diagrama de Fluxo de Dados ARQUIVO • 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
  • 9.
    6. DFD –Diagrama de Fluxo de Dados DADO • 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
  • 10.
    7. Diagrama deContexto • 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 Sistema de Vendas VENDEDOR PEDIDO VENDAS NOTA-FISCAL CLIENTE
  • 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 deDiagrama 0 Diagrama 0: Sistema de Vendas VENDEDOR CLIENTE PEDIDO 1 FAZ PEDIDO 3 IMPRIME NF NOTA-FISCAL PEDIDO-VÁLIDO PEDIDOS 2 VALIDA PEDIDO • Note que o Diagrama zero tem os mesmos fluxos de dados de entrada/saída do Diagrama de Contexto – isso é o Balanceamento.
  • 13.
    10. Explodindo outrasbolhas • 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 maisum nível Explosão da bolha 2: Valida Pedido 2.1 CONFERE CPF/CNPJ 2.1 CONFERE SPC 2.4 CONFERE FORMA DE PAGTO 2.3 CONFERE DÉBITO A PRAZO PEDIDOS • Note que esse exemplo é muito incomum, sem fluxo de saída de dados, porque todos os processos estão mantendo um arquivo atualizado
  • 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 deDER ALUNO N CURSO N MATÉRIA N PROFESSOR • 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 • Osatributos 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 deDER com atributos ALUNO NOME IDENTIDADE* N N CURSO DATA INICIAL MATÉRIA NOME * NOTA TOTAL N CPF* NOME PROFESSOR • 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
  • 19.
    16. Tipos deRelacionamentos CURSO 1 TEM N MATÉRIA • UM PARA N: um curso tem várias matérias, uma matéria só pertence exclusivamente a um curso ALUNO N FAZ N MATÉRIA • 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 deDados • É 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 deum DD DFD - Curso USUÁRIO 1 CADASTRA MATÉRIA DADOSMATÉRIA DADOS-MATÉRIAVALIDADOS MATÉRIA DER - Curso CURSO • • • • • • • • • 1 TEM 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 *) N MATÉRIA DD - Curso
  • 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 dePortuguês Estruturado USUÁRIO DADOSMATÉRIA PE – Cadastra Matéria DFD - Curso 1 CADASTRA MATÉRIA DADOS-MATÉRIAVALIDADOS MATÉRIA 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
  • 24.
    21. DTE –Diagrama de Transição de Estados • Usado para mostrar as mudanças de estado em um sistema e os eventos que as provocam. Mostra também as sequências possíveis de transição. Cada estado (quadro) representa o tempo durante o qual o sistema tem algum comportamento observável; as setas conectando os quadros mostram as mudanças de Estado, os textos ao lado das setas indicam os eventos que causam a transição.