PowerPoint template

Transcrição

PowerPoint template
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO
GRANDE DO NORTE
Curso Técnico em Informática
Roteiro
Análise:
ENGENHARIA DE SOFTWARE
- Análise Estruturada:
- Diagrama de Fluxo de Dados (DFD).
- Níveis de Visão de um DFD.
- Especificação de processos: português estruturado.
Prof.: Clayton Maciel Costa
[email protected]
Análise
Etapa na qual os analistas realizam um estudo
detalhado dos requisitos levantados na atividade
anterior.
Busca obter a melhor solução para o problema
Análise
A
partir
desse
estudo,
são
elaborados
modelos para representar o sistema a ser
construído.
sem se preocupar com os detalhes da tecnologia
a ser utilizada.
Análise
 Modelos da análise:
- Facilitam a comunicação entre usuários e desenvolvedores;
- Requer uma intensa comunicação entre as partes envolvidas;
- Os modelos da análise variam de acordo com a técnica
Análise Estruturada
utilizada.
 Algumas técnicas:
- Análise estruturada
- Análise essencial
- Análise orientada a objetos
1
Análise Estruturada
Análise Estruturada
Consiste de um conjunto de técnicas e instrumentos
com o objetivo de auxiliar na análise e definição do
sistema.
- Diagrama de Fluxo de Dados - DFD;
- Dicionário de Dados;
- Especificação de Processos.
Utiliza uma linguagem gráfica e fornece uma visão
particionada do sistema.
É composta pelos seguintes instrumentos:
Diagrama de Fluxo de Dados - DFDs
Componentes dos DFDs
Funções
 Definição
Representa as funções que o sistema executa.
- Forma gráfica de mostrar a interdependência das funções que
compõem um sistema.
- Fornece apenas uma visão do sistema, a visão estruturada das
funções, ou seja, o fluxo dos dados.
Pode ser comparada a uma “caixa preta”
- Há ligações de entrada e saída da caixa;
- Conhecem-se os elementos de entrada;
 Componentes:
- Conhecem-se os elementos de saída;
- Funções
- Sabe-se o que a caixa realiza;
- Fluxos de dados
- Não se precisa conhecer como ela realiza;
- Depósitos de dados
- Entidades externas
Componentes dos DFDs
Componentes dos DFDs
Funções
Funções
 Exemplo:
 Outros exemplos:
X
Y=F(X)
Y
Cadastrar
livro
Emitir
fatura
Cadastrar
pedido
Cadastrar
Cliente
Calcular
Média
Se a função de F(X) for elevar X ao quadrado, então teremos:
5
Elevar ao
quadrado
25
Calcular
imposto
2
Componentes dos DFDs
Componentes dos DFDs
Fluxo de Dados
Fluxo de Dados
São condutos que levam informação de um ponto
do sistema para outro.
Os fluxos de dados podem ser:
- Externo: entre Entidade Externa e Processo;
Mostram como os dados fluem através do sistema
Apresentam os dados em MOVIMENTO
- Interno: entre dois Processos;
- De acesso à memória: entre Processo e Depósito;
- De erro ou rejeição: para fora de um Processo
Nome do fluxo
Nome do fluxo
Nome
Fluxo
Componentes dos DFDs
Componentes dos DFDs
Fluxo de Dados
Fluxo de Dados
- Externo: entre Entidade Externa e Processo;
- De acesso à memória: entre Processo e Depósito;
Digitar
Professor
notas
Digitar
notas
- Interno: entre dois Processos;
Digitar
Notas
Notas
- De erro ou rejeição: para fora de um Processo
Calcular
Média
Calcular
Médias
Componentes dos DFDs
Componentes dos DFDs
Fluxo de Dados
Fluxo de Dados
Cada fluxo deve ter um único nome;
Exemplo 1
Digitação do resultado das avaliações
O nome deve identificar os dados transportados
pelo fluxo;
Nota
Exemplos: Dados-Fatura, Recibo-Pagamento,
Dados-Cliente
Digitar
notas
Nota
Digitada
3
Componentes dos DFDs
Componentes dos DFDs
Fluxo de Dados
Depósito de Dados
Exemplo 2
Utilizado para representar (modelar) o conjunto
de dados armazenados.
Se acrescentarmos a função CALCULAR MÉDIAS, teríamos o seguinte:
Apresenta os dados em termos estáticos (em
repouso).
Nota
Digitar
notas
Nota
Digitada
Calcular
Médias
Média
Nome do depósito
Componentes dos DFDs
Componentes dos DFDs
Depósito de Dados
Depósito de Dados
Exemplo 2 (anterior)
Nota
Nota
Digitada
Digitar
notas
Podemos digitar a nota, guardá-la e posteriormente utilizá-la para calcular a
média:
Calcular
Médias
Média
Nota
Digitar
notas
Calcular
Médias
Média
1. É necessário que a função 1 seja executada antes da função 2 ?
2. É necessário que a função 1 seja executada imediatamente
antes da função 2 ?
Nota
digitada
O que fazer?
Nota
digitada
Notas
Componentes dos DFDs
Componentes dos DFDs
Depósito de Dados
Entidades Externas
Representações do fluxo de dados de acesso ao depósito de dados:
Elementos externos que enviam e recebem
informações do sistema.
a) Consultar (Ler)
b) Incluir (Gravar)
c) Modificar
d) Excluir
São as fontes ou destinos dos fluxos de dados que
chegam e saem do sistema.
Nome da entidade
4
Componentes dos DFDs
Entidades Externas
Exemplo
Professor
Nota
Digitar
notas
Nota
digitada
Calcular
Médias
Média
Níveis de visão dos DFDs
Aluno
Nota
digitada
Notas
Níveis de visão dos DFDs
Níveis de visão dos DFDs
Diagrama de Contexto
• O DFD de sistemas não triviais é muito
complexo;
• É o DFD de nível mais alto;
• Dá a visão das principais funções do sistema;
• Para evitar que tudo seja definido em um
único diagrama (difícil de ser entendido e
mantido), criam-se DFD's que detalham um
processo de um nível mais alto;
• Contém um processo (representa o sistema), os
fluxos externos e as entidades externas;
Níveis de visão dos DFDs
Níveis de visão dos DFDs
Diagrama de Contexto
Diagrama Nível 0 (Zero)
• É o primeiro
contexto;
detalhamento
do
diagrama
de
• Contém as macro-funções do sistema;
5
Níveis de visão dos DFDs
Níveis de visão dos DFDs
Diagrama Nível 0 (Zero)
Diagrama de Nível Intermediário
• São os diagramas que mostram a decomposição
(detalhamento) de cada processo de nível mais
alto;
• A quantidade de níveis depende de fatores como
complexidade e porte do sistema;
• Em geral, a decomposição deve terminar quando
for possível especificar processo em uma página;
Níveis de visão dos DFDs
Diagrama de Nível Intermediário
Especificação de Processos
Especificação de Processos
Especificação de Processos
miniespec
Descrição da forma como as funções transformam
os fluxos de dados de entrada em fluxos de dados
de saída.
Não é necessário repetir o que já foi definido nos
DFDs e no Dicionário de Dados
Fluxo de entrada
...
LEIA X, Y, Z
FAÇA ENQUANTO
SEFunção
X=Y ENTÃO
X
SENÃO
.
.
IMPRIMA
...
Fluxo de saída
6
Especificação de Processos
As principais técnicas de especificação:
- Português estruturado
- Pseudocódigo
Especificação de Processos
Português estruturado
- Versão adaptada de nosso idioma
- Ênfase em algumas classes gramaticais
- Verbos, adjetivos e advérbios.
- Tabela de decisão
- Estruturas de controle existentes em ling. de programação
- Árvore de decisão
Especificação de Processos
- (sequências, decisões, repetições,...)
Especificação de Processos
Dicionário de dados
Alunos
Aluno
- Busca estabelecer comunicação de alto nível com
o usuário
Avaliações
Emitir
resultado
final
- Ponto de partida para codificação em linguagem de
Alunos = @MAT-ALUNO
NOME-ALUNO
Disciplinas = @COD-DISCIPLINA
NOME-DISCIPLINA
CONTEUDO-DISCIPLINA
Avaliações = @MAT-ALUNO
@COD-DISCIPLINA
MEDIA-FINAL
programação
Disciplinas
Onde o resultado será:
Aprovado se nenhuma disciplina com MEDIA-FINAL menor que 5
Reprovado se mais de 3 disciplinas com MEDIA-FINAL menor que 5
Recuperação se menos de 4 disciplinas com MEDIA-FINAL menor que 5
40
Especificação de Processos
Emitir resultado final
PARA CADA aluno no arquivo de alunos
Coloque a matrícula, o nome e o endereço do aluno no formulário de aviso
PARA CADA disciplina, cursada pelo aluno, existente no arquivo de avaliações
Obtenha, a partir do arquivo 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
Calcule o total de disciplinas em que o aluno obteve média final menor do que 5
Caso 1 - nenhuma disciplina com média final menor do que 5
Coloque “APROVADO” no formulário
Caso 2 - mais de três disciplinas com médias finais menores do que 5
Coloque “REPROVADO” no formulário
Caso 3 - menos de quatro disciplinas com médias finais menores do que 5
Coloque “EM RECUPERAÇÃO” no formulário
Especificação de Processos
Emitir resultado final
PARA CADA aluno no arquivo de alunos
Coloque a matrícula, o nome e o endereço do aluno no formulário de aviso
PARA CADA disciplina, cursada pelo aluno, existente no arquivo de avaliações
Obtenha, a partir do arquivo 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
Calcule o total de disciplinas em que o aluno obteve média final menor do que 5
SE em nenhuma disciplina a média final for menor do que 5
Coloque “APROVADO” no formulário
SENÃO, SE em mais de três disciplinas a média final for menor do que 5
Coloque “REPROVADO” no formulário
SENÃO
Coloque “EM RECUPERAÇÃO” no formulário
7
Especificação de Processos
Especificação de Processos
Emitir resultado final
Na miniespec, devemos descrever também o
seu objetivo.
Objetivo: emitir aviso a ser entregue ao aluno, indicando o desempenho em cada disciplina
e o resultado final do período.
PARA CADA aluno no arquivo de alunos
Coloque a matrícula, o nome e o endereço do aluno no formulário de aviso
PARA CADA disciplina, cursada pelo aluno, existente no arquivo de avaliações
Obtenha, a partir do arquivo disciplinas, o nome da disciplina
Emitir resultado final
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
Objetivo: emitir aviso a ser entregue ao aluno, indicando o
desempenho em cada disciplina e o resultado final do período.
Calcule o total de disciplinas em que o aluno obteve média final menor do que 5
SE em nenhuma disciplina a média final for menor do que 5
Coloque “APROVADO” no formulário
SENÃO, SE em mais de três disciplinas a média final for menor do que 5
Coloque “REPROVADO” no formulário
SENÃO
Coloque “EM RECUPERAÇÃO” no formulário
Especificação de Processos
Em resumo, o Português estruturado consiste em:
Especificação de Processos
Exercício
Dicionário de dados
Clientes = @CODIGO-CLIENTE
NOME-CLIENTE
TIPO-CLIENTE
Clientes
- Verbos no modo imperativo
- (obtenha, calcule, imprima ...)
Vendas = @CODIGO-VENDA
CODIGO-CLIENTE
DATA-VENDA
VALOR-VENDA
Gerar
faturas
- Termos definidos no Dicionário de dados
- (nome da disciplina, média final, nome do aluno ...)
Vendas
Faturas
Faturas = @CODIGO-FATURA
CODIGO-CLIENTE
VENC-FATURA
VALOR-FATURA
- Palavras reservadas para descrever a lógica da função
- (PARA CADA, SE/SENÃO, CASO ...)
Tipo do cliente:
Nível 1 -> não aplicar desconto no valor da fatura
Nível 2 -> aplicar desconto de 5% no valor da fatura
Nível 3 -> aplicar desconto de 10% no valor da fatura
Especificação de Processos
Gerar fatura
Objetivo: gerar as faturas dos clientes, observando os descontos a serem aplicados em
função do tipo do cliente.
PARA CADA cliente no arquivo clientes
Obtenha o nome e o tipo do cliente
PARA CADA venda realizada para o cliente no arquivo de vendas
Obtenha o valor da venda
Calcule o total das vendas
SE tipo do cliente for igual a “Nivel 3”
Aplique a total das vendas 10% de desconto
SENÃO, SE tipo do cliente for igual “Nível 2”
Aplique a total das vendas 5% de desconto
SENÃO
Não aplique desconto a total das vendas
Grave no arquivo de faturas o código do cliente, o vencimento, o valor total, ...
8

Documentos relacionados

Lendas Escandinavas 2015

Lendas Escandinavas 2015 Capitais vibrantes, restaurantes excepcionais que servem os famosos pratos da nova cozinha nórdica, modernos cafés e as últimas tendências de design do mundo. Junte-se aos escandinavos para celebra...

Leia mais

FNMA - Melhores Práticas de Soluções do

FNMA - Melhores Práticas de Soluções do - Em setembro de 2013 o DFDS encaminha consulta à CGU, sendo respondida em outubro de 2013, concordando com a possibilidade de parcelamento; - DFDS formula a proposta de portaria sobre parcelamento...

Leia mais