analise estruturada

7
1 Dicionário de Dados Diagramas Entidade-Relacionamento Profa Miriam Sayão Ferramentas Estruturadas de Análise Diagrama de Fluxo de Dados - Rede de processos inter-relacionados. Dicionário de Dados e DER - Detalham a interface. Português Estruturado, Árvore de Decisão, Tabela de Decisão - Descrição lógica e dos programas de ação. Resumo Análise Estruturada. Utilização das Ferramentas: DFD, Dicionário de Dados, Diagramas E-R, Português Estruturado, Árvore/Tabela de Decisão. Objetivo: construir um documento denominado de Especificação Estruturada. Elementos da Análise Estruturada De maneira simplificada, o processo de Análise Estruturada pode ser descrito como sendo a aplicação dos modelos abaixo: – Fluxo de Dados ° Fornece a indicação de como os dados são transformados à medida que se movem pelo sistema. ° Mostra as funções (e sua decomposição). – Dicionário de Dados ° Mostra a estrutura e composição dos dados. – Diagramas Entidade-Relacionamento ° Mostra as relações entre os dados. – Transição de Estados ° Indica como o sistema se comporta em conseqüência de eventos externos. Identificação de objetos e operações Análise Gramatical – Definir “objetos” destacando todos os substantivos na definição escrita para o escopo do sistema ° Produtores e consumidores de dados ° Locais onde os dados são armazenados ° Itens de dados compostos – Definir “operações” sublinhando todos os verbos ativos ° Processos relevantes para a aplicação ° Transformações de dados – Considere outros “serviços” que podem ser requeridos pelos objetos e não estão apresentados explicitamente na definição Modelagem de Dados Examina os objetos de dados de maneira independente do seu processamento. Atenção especial ao domínio dos dados. Indica qual a relação entre objetos de dados.

Upload: unipsystem

Post on 09-Jul-2015

266 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Analise estruturada

1

Dicionário de Dados Diagramas Entidade-Relacionamento

Profa Miriam Sayão

Ferramentas Estruturadas de Análise

� Diagrama de Fluxo de Dados- Rede de processos inter-relacionados.

� Dicionário de Dados e DER- Detalham a interface.

� Português Estruturado, Árvore de Decisão, Tabela de Decisão

- Descrição lógica e dos programas de ação.

Resumo

� Análise Estruturada.

� Utilização das Ferramentas: DFD, Dicionário de Dados, Diagramas E-R, Português Estruturado, Árvore/Tabela de Decisão.

� Objetivo: construir um documento denominado de Especificação Estruturada.

Elementos da Análise Estruturada� De maneira simplificada, o processo de Análise Estruturada

pode ser descrito como sendo a aplicação dos modelos abaixo:– Fluxo de Dados

° Fornece a indicação de como os dados sãotransformados à medida que se movem pelo sistema.

° Mostra as funções (e sua decomposição).– Dicionário de Dados

° Mostra a estrutura e composição dos dados.– Diagramas Entidade-Relacionamento

° Mostra as relações entre os dados.– Transição de Estados

° Indica como o sistema se comporta em conseqüência de eventos externos.

Identificação de objetos e operações� Análise Gramatical

– Definir “objetos” destacando todos os substantivos na definição escrita para o escopo do sistema° Produtores e consumidores de dados° Locais onde os dados são armazenados° Itens de dados compostos

– Definir “operações” sublinhando todos os verbos ativos° Processos relevantes para a aplicação° Transformações de dados

– Considere outros “serviços” que podem ser requeridos pelos objetos e não estão apresentados explicitamente na definição

Modelagem de Dados

� Examina os objetos de dados de maneira independente do seu processamento.

� Atenção especial ao domínio dos dados.

� Indica qual a relação entre objetos de dados.

Page 2: Analise estruturada

2

Dicionário de Dados

� Relação organizada de todos os elementos de dados pertinentes ao sistema, com definições precisas e rigorosas.

� Registra todos os fluxos de entrada e saída, depósitos de dados, fluxos e depósitos de dados temporários.

Dicionário de Dados

� Gramática “quase-formal” para descrição dos itens de dados.

� Notação útil para descrever dados de controle e valores permitidos (p.ex: “on” e “off”).

� É um repositório que também pode conter informações sobre “quem-usa” e “como-usa”.

� Pode ser representada manualmente, mas é melhor se apoiada por ferramenta CASE.

� Descreve o significado dos fluxos de dados e dos depósitos de dados.

� Descreve a composição de dados agregados� Ex.: endereço.

� Especifica os valores e unidades relevantes.� Descreve os relacionamentos entre depósitos de

dados (diagramas E/R).

Dicionário de Dados

� Elementos de dados simplesElementos de dados simplesElementos de dados simplesElementos de dados simples: informações que não necessitam de decomposição.

� Elementos de dados compostosElementos de dados compostosElementos de dados compostosElementos de dados compostos: composições de elementos de dados simples e/ou outras estruturas de dados.

� Definição do DD: feita de forma TOP-DOWN.

Dicionário de Dados

Dicionário de Dados (DD)

� Nome: o nome primário do item de dados composto.� Alias: outros nomes pelos quais o item é conhecido.� Usado em: lugares (processos) que utilizam o item

de dado.� Forma de uso: como o item é utilizado (depósito de

dados, entrada ou saída de dados, ...� Descrição: descrição do item de dado composto com

uso da notação apresentada no próximo slide.� Formato: informações específicas sobre tipos de

dados e valores pré-definidos.

DD: Notação

= é composto por+ e() opcional{} iteração ou repetição[] selecionar uma das várias alternativas| separa alternativas quando se usa []** comentário@ identificador (chave) de um depósito de dados

Page 3: Analise estruturada

3

Dicionário de Dados - Exemplos

� Nome = título + primeiro-nome + sobrenome� Título = [Sr. |Sra.|Prof. |Profa.|Dr.|Dra.]� Primeiro-nome = 3{caracter-válido}� Sobrenome = 2{caracter-válido}� Caracter-válido = [A-Z | a-z | ‘ | - ط | ]� Endereço = * ainda não definido*� ط indica espaço em branco

Dicionário de dados (cont.)

� Dados elementares → mais nenhuma decomposição necessária� Ex.: peso, altura.

� Dados opcionais� Endereço-cliente = (endereço-de-entrega) +

(endereço-de-cobrança)� Endereço-cliente = [endereço-de-entrega |

endereço-de-cobrança | endereço-de-entrega + endereço-de-cobrança]

� Endereço-cliente = endereço-de-entrega + (endereço-de-cobrança)

Dicionário de dados (cont.)

� Iteração ou repetição� Pedido = nome-cliente + endereço-de-entrega + {item}� Pedido = nome-cliente + endereço-de-entrega + 1{item}10� a = 1{b}� a = {b}10� a = 1{b}10� a = {b}

� Seleção� Sexo = [m | f | o]� Tipo-do-cliente = [governo | indústria | universidade | outro]

Dicionário de dados (cont.)

� Iteração ou repetição� {} indica de 0 a n ocorrências� Coloca-se o caracter @ para o identificador (chave) do

depósito de dados� Exemplo: definição dos depósitos de dados Clientes e

Funcionários� ClientesClientesClientesClientes = { @CPF + Nome + Data-registro + Endereço }� FuncionFuncionFuncionFuncionááááriosriosriosrios = { @Matrícula + Nome + Data-admissão +

endereço + { Telefone + Descrição} + { RG-dependente + Nome + Data-nascimento }}

Dicionário de dados (cont.)

� Sinônimos (alias)� Freguês = * sinônimo de cliente*� Evite o uso excessivo.

� Avaliação do DD� Todos os dados do DFD estão definidos?� Todos os elementos do elemento composto foram

definidos?� Há elementos repetidos?� Há elementos que não existem do DFD?

Diagramas Entidade-Relacionamento (DER)

� Utilizados para:� Focalizar relacionamentos entre depósitos de

dados;� Definir depósitos de dados;� Interagir com o usuário.

LivroCliente Compra

Page 4: Analise estruturada

4

DER� Componentes de um DER

� Entidades;� Relacionamentos;� Atributos.

� Entidade� Representada por uma caixa retangular;� Representa uma coleção ou conjunto de objetos do mundo

real;� Nome deve ser um substantivo no singular, acompanhado ou

não de qualificador;� Cada entidade desempenha um papel no sistema e deve ser

:� Identificada unicamente;� Ser descrita por um ou mais elementos de dados.

DER� Relacionamentos

� Representados por losangos;� Nome pode ser verbo ou substantivo;� Um relacionamento representa um conjunto de conexões

entre entidades;� Pode haver mais de um relacionamento entre dois objetos.

Médico Paciente

Cobra

Trata

DER

� Os relacionamentos podem ser unários, binários, ternários...Pessoa casamento

DER

� Cardinalidade: é o número de entidades de cada tipo que participa no relacionamento.

� Pode ser:� 1:1 ; 1:N ; N:1 ; M:N� Outras possibilidades: 3..4: 0..N ; 3, 5: 0..1

Cliente Compra Item1 N

Professor Ministra DisciplinaM N

Tipo entidade:� Atributo identificador:

número_de_matrícula

• Atributos descritores::::nome, endereço, telefone, data_nascimento, curso, sexo

Instância de entidade:número_de_matricula: 11250nome: João da Silvaendereço: Av. Ipiranga, 6681telefone: 8887777data_nascimento: 01/09/80curso: Eng. De Computaçãosexo: m

Aluno

DER� Instância de uma associação é uma ocorrência de uma

ligação entre entidades

DER

4 instâncias de Cliente

3 instâncias de Filme

3 instâncias da associação compra

Instâncias Instâncias Instâncias de Cliente de compra de Filme

C1 F1

C2 F2

C3 F3

C4

Cliente Filmecompra

Page 5: Analise estruturada

5

� A cardinalidade define os graus máximo e mínimo.

� O grau máximo de uma associação pode ser:

DER

• O grau mínimo de uma associação pode ser:

• 1 : 11 : 11 : 11 : 1

• 1 : N1 : N1 : N1 : N

• N : MN : MN : MN : M

•• 1 : 11 : 11 : 11 : 11 : 11 : 11 : 11 : 1

•• 1 : N1 : N1 : N1 : N1 : N1 : N1 : N1 : N

•• N : MN : MN : MN : MN : MN : MN : MN : M

• 0 : 00 : 00 : 00 : 0

• 0 : 10 : 10 : 10 : 1

• 1 : 11 : 11 : 11 : 1

•• 0 : 00 : 00 : 00 : 00 : 00 : 00 : 00 : 0

•• 0 : 10 : 10 : 10 : 10 : 10 : 10 : 10 : 1

•• 1 : 11 : 11 : 11 : 11 : 11 : 11 : 11 : 1

1

1

� Grau máximo:

DER

O grau máximo define o número máximo de vezes que uma instância da entidade pode ocorrer na associação.O grau máximo define o número máximo de vezes que uma instância da entidade pode ocorrer na associação.

Exemplo:

• Uma instância de Cliente pode ocorrer no máximo uma vez

Um Cliente tem zero ou uma Carteira de habilitação

• Uma instância de Carteira de Habilitação pode ocorrer no máximo uma vez

Cliente tem Carteira de habilitação

Uma Carteira de Habilitação pertence a zero ou um Cliente

Exemplo 1:

DER

• Um Aluguel pertence a no máximo um Cliente

• Um Cliente pode ter vários Aluguéis

1

NAluguel pertence Cliente

• Um Fornecedor fornece vários Produtos

• Um Produto pode ser fornecido por vários Fornecedores

M

NFornecedor fornece Produto

Exemplo 2:

� O grau mgrau mgrau mgrau míííínimonimonimonimo define o número mínimo de vezes que uma instância pode ocorrer na associação.

� Se é zero diz-se opcional, se é um diz-se obrigatória.

DER

• Carteira de Habilitação é opcional: um dado cliente pode não ter carteira.

• Cliente é obrigatório: uma carteira de Habilitação pertence no mínimo a um cliente.

Exemplo:Exemplo:Exemplo:Exemplo:

Cliente tem Carteira de Habilitação

� Médico é opcional

Um doente pode não ter médico de família� Doente é opcional

Um médico pode não ser médico de família de nenhum doente

DER

Médico é médico família

DoenteExemplo:Exemplo:Exemplo:Exemplo:

� Fornecedor é obrigatório

Um fornecedor fornece no mínimo um produto

� Produto é obrigatório

Todo produto é fornecido no mínimo por um fornecedor

DER

Fornecedor fornece ProdutoExemplo:Exemplo:Exemplo:Exemplo:

Page 6: Analise estruturada

6

Os graus máximo e mínimo de uma relação complementam-se e servem para especificar a política da organização no que se refere aos dados.

Os graus máximo e mínimo de uma relação complementam-se e servem para especificar a política da organização no que se refere aos dados.

DER

1

1

M

NFornecedor Produtofornece

Cliente Cartãotem

NotaNotaNotaNotaçççção alternativa: (ão alternativa: (ão alternativa: (ão alternativa: (minminminmin, , , , maxmaxmaxmax))))(1..N)

Fornecedor Produtofornece

Cliente Cartãotem

(1..M)

(1..1) (0..1)

Uma associação possui atributos próprios, que são informações específicas que não podem ser derivadas automaticamente pelo sistema.

DER

Contém informação sobre a porcentagem de tempo que o empregado dedica a um dado projeto.

M

N

(1..M)

Funcionário Projetotrabalha

Funcionário Projetotrabalha (1..N)

DER� Exemplos de associações com atributos

(0..M)Arquivo UsuárioAcessível_por

(0..N)

tipo da permissão de acesso

Participa(1..M)

Atleta Competição(0..N)

colocação

performancenome

inscrição

categoria

esporte

1.1.1.1. IdentificaIdentificaIdentificaIdentificaçççção das entidadesão das entidadesão das entidadesão das entidades» depdepdepdepóóóósitos de dados;sitos de dados;sitos de dados;sitos de dados;» depdepdepdepóóóósitos de dados associados a entidades externas;sitos de dados associados a entidades externas;sitos de dados associados a entidades externas;sitos de dados associados a entidades externas;» documentos, formuldocumentos, formuldocumentos, formuldocumentos, formuláááários, utilizador.rios, utilizador.rios, utilizador.rios, utilizador.

Construção do DER

2. Identifica2. Identifica2. Identifica2. Identificaçççção das associaão das associaão das associaão das associaçççções:ões:ões:ões:2.1 Verificar a descrição dos depósitos de dados no DD� Exemplo::::

Fornecedores = {Fornecedor + {código_produto}}Fornecedor = @código_fornecedor + nome + morada +

número_contribuinteProdutos = {Produto + 1{código_fornecedor}}Produto = @código_produto + descrição + peso + cor

N

Fornecedor ProdutoforneceM

Construção do DER

2.2 Verificar a especificação dos processos.Exemplo:processo processo processo processo fornecer;

............SeSeSeSe código_fornecedor inininin Fornecedores ====código_ fornecedor inininin Produtos entãoentãoentãoentão............

fim_procfim_procfim_procfim_proc

Construção do DER

Page 7: Analise estruturada

7

3. Definir os graus mDefinir os graus mDefinir os graus mDefinir os graus mááááximos e mximos e mximos e mximos e míííínimos das associanimos das associanimos das associanimos das associaççççõesõesõesões4. Especificar os atributos identificadores e os atributos Especificar os atributos identificadores e os atributos Especificar os atributos identificadores e os atributos Especificar os atributos identificadores e os atributos

descritores de cada entidadedescritores de cada entidadedescritores de cada entidadedescritores de cada entidade� Verificar a descrição dos depósitos de dados no DD.� Atributos identificadores são registrados como

círculo preenchido.� Demais atributos são registrados como círculo

não-preenchido .

Construção do DER

5. Completar o dicionCompletar o dicionCompletar o dicionCompletar o dicionáááário de dados com as descririo de dados com as descririo de dados com as descririo de dados com as descriçççções das ões das ões das ões das entidades e associaentidades e associaentidades e associaentidades e associaçççções que ainda não estejam ões que ainda não estejam ões que ainda não estejam ões que ainda não estejam presentespresentespresentespresentes

Médico trata Paciente

Médico = @código_médico + nome + endereço + salário

Paciente = @código_paciente + BI + nome + sexo + (telefone)

Trata = @paciente _médicopaciente_médico = código_ paciente + código_médico

Construção do DER

Referências

� Análise Estruturada Moderna – Álvaro Rocha – notas de aula.

� Análise Estruturada – João Araújo – notas de aula.

� Análise e Projeto de Sistemas – William S. Davis –Editora LTC.