Linguagem e Técnicas em Programação - UEG

9
06/09/2016 1 Análise Clássica (Tradicional) X Análise Estruturada UEG - Universidade Estadual de Goiás (Câmpus Posse) Disciplina: Análise e Projeto de Sistemas II | Turma: 4° Semestre | Ano: 2016 Professor: José Ronaldo Leles Júnior Análise Clássica (Tradicional) Apresentava uma série de problemas... Eram monolíticos Eram redundantes Eram ambíguos Manutenção impossível Análise Estruturada A especificação de requisitos passa a ser: Gráfica Particionadas De redundância mínima Surgimento das Ferramentas de Modelagem O que são modelos? Por que construímos modelos? Focalizar as características mais importantes de um sistema; Discutir alterações e correções nos requisitos do usuário a baixo custo e com mínimo de risco; Confirmar o entendimento do ambiente do usuário. Ferramentas Da Análise Estruturada

Transcript of Linguagem e Técnicas em Programação - UEG

Page 1: Linguagem e Técnicas em Programação - UEG

06/09/2016

1

Análise Clássica (Tradicional)

X

Análise Estruturada

UEG - Universidade Estadual de Goiás (Câmpus Posse) Disciplina: Análise e Projeto de Sistemas II | Turma: 4° Semestre | Ano: 2016 Professor: José Ronaldo Leles Júnior

Análise Clássica (Tradicional)

Apresentava uma série de problemas...

Eram monolíticos

Eram redundantes

Eram ambíguos

Manutenção impossível

Análise Estruturada

A especificação de requisitos passa a ser:

Gráfica

Particionadas

De redundância mínima

Surgimento das Ferramentas de Modelagem

O que são modelos?

Por que construímos modelos?

Focalizar as características mais importantes de um sistema;

Discutir alterações e correções nos requisitos do usuário a baixo custo e com mínimo de risco;

Confirmar o entendimento do ambiente do usuário.

Ferramentas

Da

Análise Estruturada

Page 2: Linguagem e Técnicas em Programação - UEG

06/09/2016

2

Diagrama de Fluxo de Dados (DFD)

É uma das principais ferramentas de modelagem gráfica da análise estruturada

- Permite imaginar o sistema como uma rede de processos funcionais, ligados por “dutos” (fluxos de dados) e “tanques de armazenamentos de dados” (depósitos de dados).

• Fornece apenas uma visão do sistema:

- Visão orientada para funções.

Os Componentes de um DFD

Processo (bolha, função e transformação)

- Transforma entradas em saídas.

- Mostra como uma ou mais entrada são convertidas em saídas.

Os Componentes de um DFD

Processo (bolha, função e transformação)

- Representação

- O nome de um processo descreve o que o processo faz

- *Um bom nome é constituído de um verbo e um objeto.

CALCULAR

IMPOSTOS

SOBRE

VENDAS

CALCULAR IMPOSTOS

SOBRE VENDAS

Os Componentes de um DFD

Fluxo

- Indicam a movimentação de dados, seguindo de um lado para o outro no sistema.

- A direção do fluxo de dados deve ser de cima para baixo e da esquerda para a direita.

Os Componentes de um DFD

Fluxo

- Transportam dados entre os elementos do DFD:

- Processo - Processo

- Entidade Externa - Processo

- Depósito de Dados - Processo

- Nunca entre Entidade Externa e Depósito de Dados

Os Componentes de um DFD

Fluxo

- Representação

- Um fluxo indica se os dados que entram ou saem do processo.

Page 3: Linguagem e Técnicas em Programação - UEG

06/09/2016

3

Os Componentes de um DFD Fluxo

- Representação

- Um DFD típico

Os Componentes de um DFD Fluxo

- Representação

- Um DFD com fluxo material

Flu

xos d

e E

ntr

ada

Fluxo de Saída

-Um DFD com fluxo material

Os Componentes de um DFD Fluxo

- Representação

- Um fluxo de diálogo

Os Componentes de um DFD Fluxo

- Representação

- Um fluxo divergente

Os Componentes de um DFD

Depósito de dados

- Representa uma coleção de dados em repouso

-Representações gráficas de depósitos de dados

Os Componentes de um DFD

Depósito de dados

-Um depósito necessário

Page 4: Linguagem e Técnicas em Programação - UEG

06/09/2016

4

Os Componentes de um DFD

Terminador

- Representam entidades externas com as quais o sistema se comunica:

- Uma pessoa ou um grupo de pessoas;

- Uma organização externa ou uma empresa do governo;

- Outros sistemas:

- Por exemplo, um sistema de processamento com o qual o nosso sistema se comunicará.

Os Componentes de um DFD

Terminador

- Representação

Os Componentes de um DFD

Diretrizes para a elaboração de um DFD

- Escolher nomes significativos para os processos, fluxos, depósitos e terminadores.

- Numerar os processos.

- Refazer os DFD’s tantas vezes quantas forem necessárias até obter uma boa estética.

- Evitar DFD’s complexos demais.

- Certificar-se de que o DFD seja internamente consistente além de manter a consistência com os outros DFD’s.

Os Componentes de um DFD

- Como evitar esse tipo de DFD?

Os Componentes de um DFD DFD com níveis

Os Componentes de um DFD

DFD com níveis

Diagrama de Contexto

- O DFD de nível mais alto consiste de uma única bolha representado o sistema inteiro

- Os fluxos de dados representam as interfaces entre o sistema e os terminais

- Esse DFD especial é o diagrama de contexto.

Page 5: Linguagem e Técnicas em Programação - UEG

06/09/2016

5

Os Componentes de um DFD

DFD com níveis

Diagrama de Contexto

-Um exemplo de diagrama de contexto

Os Componentes de um DFD

DFD com níveis

DFD nível 0

- O DFD imediatamente abaixo do diagrama de contexto é o diagrama de nível zero (0).

- Representa a visão de mais alto nível das principais funções do sistema bem como as principais interfaces entre essas funções.

Os Componentes de um DFD

DFD com níveis

Exemplificando DFD Nível 0

Os Componentes de um DFD

DFD com níveis (0...N)

- Os DFD’s de níveis imediatamente abaixo do diagrama de nível zero (0) são os diagramas que mostram a decomposição (detalhe ou explosão) de cada processo de nível mais alto.

Os Componentes de um DFD

DFD com níveis

Exemplificando DFD Nível 1

Os Componentes de um DFD

DFD com níveis

- A quantidade de níveis depende de fatores como complexidade e dimensão do sistema

- A decomposição deve terminar quando considerarmos que o processo detalhado já é entendido e possa caber numa página.

Page 6: Linguagem e Técnicas em Programação - UEG

06/09/2016

6

Dicionário de Dados (DD)

É uma listagem organizada de todos os elementos de dados pertinentes ao sistema:

- Fluxo de dados e depósitos de dados

O dicionário de dados DEFINE: - O significado dos fluxos e depósitos apresentados nos DFDs;

- A composição dos pacotes de dados que se movimentam pelos fluxos;

- A composição dos pacotes de dados nos depósitos;

- Os valores e unidades relevantes de partes elementares dos

fluxos e depósitos de dados.

Dicionário de Dados (DD) Notação de Dicionário de Dados

A forma narrativa é longa e sujeito a erros

Se faz necessário usar uma notação compacta e concisa

Dicionário de Dados (DD)

Notação de Dicionário de Dados

Exemplos

Opcional:

É o que pode ou não estar presente como um componente de um elemento de dados composto:

endereço_cliente=(endereço_de_remessa)+(endereço_de_cobrança)

Poderia ser somente o de remessa, somente o de cobrança, os dois, ou nenhum dos dois

Dicionário de Dados (DD)

Notação de Dicionário de Dados

Exemplos

Escolha de alternativas:

O elemento de dados consiste em exatamente uma escolha de um conjunto de opções alternativas:

sex0=[M | F]

tipo_de_cliente=[Pessoa Física | Pessoa Jurídica]

Dicionário de Dados (DD)

Notação de Dicionário de Dados

Exemplos

Iteração:

Usada para indicar a ocorrência repetida de um componente de um elemento de dados:

pedido=nome_do_cliente+endereço_de_remessa + {item}

zero ou mais ocorrências de um item

Dicionário de Dados (DD)

Notação de Dicionário de Dados

Exemplos

Iteração:

Pode-se desejar especificar os limites inferior e superior da iteração:

pedido=nome_do_cliente+endereço_de_remessa + 1 {item} 10

limite inferior e limite superior

Page 7: Linguagem e Técnicas em Programação - UEG

06/09/2016

7

Dicionário de Dados (DD)

Notação de Dicionário de Dados

Exemplos

Comentário:

Pode ser necessário um comentário descrevendo o significado do termo no contexto do usuário:

tipo=*tipo de quarto*

nome=**

telefone=**

alguns são autoexplicativos

Diagrama de Entidade Relacionamento (DER)

Descreve a diagramação dos dados mantidos (armazenados) de um sistema em alto nível de abstração.

Considera os dados independentemente do processamento que os transforma.

Diagrama de Entidade Relacionamento (DER)

Componentes do Diagrama E-R

Entidades (abstração de um

objeto do mundo real)

Relacionamentos

Atributos

Ligação

Diagrama de Entidade Relacionamento (DER)

Exemplos de elementos do DER

Funcionário

cod_func

nome

endereço

cidade estado

dependentes

Diagrama de Entidade Relacionamento (DER)

Classificação de atributos

Atributo simples: não tem outros valores aninhados (sub-atributos)

- Ex.: nome

Atributo composto: têm outros atributos aninhados (sub-atributos)

- Ex.: endereço

Atributo monovalorado: um único valor para cada instância

- Ex.: nome

Diagrama de Entidade Relacionamento (DER)

Classificação de atributos

Atributo multivalorado: mais de um valor para cada entidade

- Ex.: dependentes {Ana Beatriz, Jorge Filho}

Atributo chave: identifica unicamente cada entidade de um conjunto de entidade

- Ex.: cod_func

Atributo derivado: o seu valor pode ser calculado a partir do valor de outro(s) atributo(s)

- Ex.: idade (derivado da data de nascimento)

Page 8: Linguagem e Técnicas em Programação - UEG

06/09/2016

8

Diagrama de Entidade Relacionamento (DER)

Relacionamentos

As entidades são conectadas umas às outras através de relacionamentos;

Para determinar os relacionamentos deve-se considerar as entidades dentro do contexto do software a ser construído e do domínio da aplicação a que se destina.

Diagrama de Entidade Relacionamento (DER)

Relacionamentos típicos

CLIENTE ITEM COMPRA

FORNECEDOR PRODUTO FORNECE

ENCOMENDA PRODUTO CONTÉM

Diagrama de Entidade Relacionamento (DER)

Relacionamentos típicos

PROFESSOR DISCIPLINA LECIONA

MÉDICO PACIENTE TRATA

EMPREGADO DEPARTAMENTO TRABALHA

Diagrama de Entidade Relacionamento (DER)

Complexidade de Relacionamentos

Relacionamento de cardinalidade 1:1

Uma entidade em A está associada no máximo a uma entidade em B e uma entidade em B está associada no máximo a uma entidade em A.

Funcionário Departamento Gerencia 1 1

Diagrama de Entidade Relacionamento (DER)

Complexidade de Relacionamentos

Relacionamento de cardinalidade 1:n

Uma entidade em A está associada a qualquer número de entidades em B e uma entidade em B está associada no máximo a uma entidade em A.

Departamento Funcionário Lotação 1 N

Diagrama de Entidade Relacionamento (DER)

Complexidade de Relacionamentos

Relacionamento de cardinalidade m:n

Uma entidade em A está associada a qualquer número de entidades em B e uma entidade em B está associada a qualquer número de entidades em A.

Obs.: Requer uma tabela extra para representa-lo.

Funcionário Projeto Trabalha M N

Page 9: Linguagem e Técnicas em Programação - UEG

06/09/2016

9

Diagrama de Entidade Relacionamento (DER)

Relacionamento Unário

Relaciona entidades de um mesmo conjunto

Cada PESSOA pode ser casada com nenhuma ou uma só PESSOA.

Cada EMPREGADO tem de ser gerido por um e um só EMPREGADO, e cada EMPREGADO pode gerir zero, um ou vários EMPREGADOS.

Diagrama de Entidade Relacionamento (DER)

Relacionamento Binário

Relaciona entidades de dois conjuntos distintos

Cada FUNCIONÁRIO pode gerir nenhum ou apenas um DEPARTAMENTO, e

cada DEPARTAMENTO deve ser gerido por um e um só FUNCIONÁRIO.

Funcionário Departamento Gerencia 1 (0,1)

Diagrama de Entidade Relacionamento (DER)

Relacionamento Ternário

Relaciona entidades de três conjuntos distintos

Cada PROFESSOR tem de lecionar para uma ou várias TURMAS;

Cada TURMA tem de ter um ou mais PROFESSORES;

Cada PROFESSOR, ao lecionar para TURMA, utiliza uma ou mais SALAS DE AULA.

PROFESSOR TURMA LECIONA

SALA DE AULA

Diagrama de Entidade Relacionamento (DER)

Identificar Entidades e Relacionamentos

Diagrama de Entidade Relacionamento (DER)

Seleção de Chave Primária

YOURDON, Edward. Análise Estruturada Moderna. Rio de Janeiro: Campus, 1990.

Bibliografia