Análise de Sistemas de Informação Boris Júnior. Modelação de Sistemas Diagrama ER Modelo...
Transcript of Análise de Sistemas de Informação Boris Júnior. Modelação de Sistemas Diagrama ER Modelo...
Análise de Sistemas de Informação
Boris Júnior
Modelação de SistemasDiagrama ER
Modelo Conceptual de Dados
Diferentes tipos de modelos de sistemas Existem vários modelos de sistemas, que por natureza se
complementam entre si: Modelo de Processamento de Dados ou Modelo
orientado a processos - Utilizados para evidenciar como os dados são processados nas diferentes etapas do sistema;
Ex: DFD, Processos; Modelo de Composição ou modelo orientado a dados -
Modelos que evidenciam a relação existente entre as principais entidades do sistema ou como certas entidades do sistema podem ser compostas por outras entidades do sistema;
Ex: E-R, MCD; Modelo de Classificação - Diagramas de classes de
objectos e herança que poderão evidenciar características comuns entre entidades e a relação entre as mesmas;
Modelo de Transição de Estados - Diagrama que evidencia como o sistema reage a eventos, quer internos quer externos.
Modelos de dados semânticos
Utilizados para descrever a estrutura lógica dos dados proces-sados pelo sistema
O Modelo Entidade-Relação (E-R) evidencia as entidades do sistema, o relacionamento entre essas entidades, podendo ainda: Descrever os atributos das entidades; Descrever as cardinalidades entre as
entidades; O modelo E-R permite uma visão geral dos
dados. O Modelo Conceptual de Dados (MCD) que
poderá ser definido na fase de análise ou na fase de desenho da aplicação aplica-se directamente ao desenho da base de dados, mais propriamente, a bases de dados relacionais.
Constituintes de um diagrama E-R
Entidades – “Coisas” que pertencem ao sistema, descritos por um ou mais elementos de dados
Símbolo
Relacionamentos – As entidades são interligadas por relacionamentos que descrevem a relação existente entre os dados
Símbolo
Entidade
Relacionamento
Modelo E-R (Exemplo)
Cliente Produto
Fornecedor
compra
vende
Modelo E-R - particularidades Indicador de Tipos de Entidades associados
Notação que permite representar uma entidade que também funciona como relacionamento, ou seja, permite representar um relacionamento sobre o qual queremos manter informação.
Cliente Produto
Compras
Modelo E-R - particularidades Notação evidenciando cardinalidades
Modelo E-R - particularidades
Notação evidenciando atributos
Cliente
CódigoCliente
Nome doCliente Morada
Cliente
MCD - Modelo Conceptual de Dados
A modelação de dados é a actividade que, debruçando-se sobre a totalidade dos requisitos de informação de um sistema de informação, tenta encontrar um modelo que traduza a estrutura lógica dos dados que satisfaça esses requisitos. A esse modelo designa-se de Modelo Conceptual dos Dados;
A estrutura fundamental do modelo relacional é a relação, também designada de tabela.;
Uma relação é uma estrutura bidimensional com um determinado esquema de zero ou mais instâncias;
O esquema de uma relação é constituído por um ou mais atributos que traduzem o tipo de dados a armazenar;
A cada instância do esquema de uma relação designa-se por tuplo.
Tabela
Tuplos Código do Cliente Nome Morada0001 Ricardo Miguel Viana do Castelo0002 José Artur Lisboa0003 Carla Isabel Beja0004 Maria da Conceição Viana do Castelo
Clientes
Código do ClienteNomeMorada
MCD - Modelo Conceptual de Dados
MCD - Modelo Conceptual de Dados - Conceitos
Chave Primária Conjunto de um ou mais atributos que
identificam univocamente um tuplo.
Chave Estrangeira Conjunto de um ou mais atributos que é chave
primária noutra relação (também designada de chave importada).
MCD - Modelo Conceptual de Dados - Conceitos Exemplo de chave primária e chave
estrangeira
Clientes
Código do ClienteNomeMorada
ClientesContacto
Código do Clientenº contactoMorada
MCD - Modelo Conceptual de Dados - Conceitos A existência de uma chave estrangeira numa
relação prende-se com a necessidade de manter a interligação entre essa relação e a relação onde esse conjunto de atributos é chave principal;
No modelo relacional, a única forma de relacionar dados existentes em diferentes tabelas é através de atributos comuns (chaves importadas) às tabelas que se relacionam. Se tuplos individuais de duas relações têm o mesmo valor no(s) atributo(s) comum (comuns) é porque estão relacionados.
MCD - Modelo Conceptual de Dados - Integridades
Integridade de DomínioCertos atributos poderão ter definidos domínios de valores. Por exemplo a gamas de valores permitidos. Exemplo: As notas escolares têm o seguinte domínio [0, 20].
Integridade de EntidadeEm todas as relações existe uma chave primária constituída por um ou mais atributos, cujos os valores permitem identificar inequivocamente cada tuplo. Não pode haver nenhum tuplo para o qual o valor dessa chave seja nulo, nem sequer conter partes nulas.
Integridade ReferencialO valor de uma chave estrangeira ou é null ou então contém um valor que é chave primária na relação de onde foi importada. Por outras palavras, se numa relação o valor de uma chave importada não é nulo, então esse valor terá que existir na relação onde essa chave é primária.
MCD - Modelo Conceptual de Dados Normalização Aplicação de um conjunto de regras a uma
estrutura de dados, de modo a remover qualquer redundância de dados sem perda de conteúdo informacional;
Apesar de a normalização alterar a estrutura das relações, não altera o conteúdo informacional global, ou seja, durante o processo de normalização não há perda de informação, podendo sempre regressar-se à estrutura original
MCD - Modelo Conceptual de Dados Normalização Os problemas da redundância:
· Problemas de manutenção – Redundância significa o armazenamento repetido dos mesmos dados. Como resultado, uma simples alteração ou remoção pode implicar o acesso a várias partes da base de dados, tornando difícil a manutenção da coerência dos dados.
· Custos de espaço de armazenamento – Apesar de, actualmente, não ser um problema significativo, não deixa de ser importante evitar ocupar espaço de armazenamento com algo que não acrescenta nada ao que já existe armazenado.
· Problemas de desempenho – Dados redundantes pode implicar o acesso a uma maior quantidade de dados para obter a mesma informação.
MCD - Modelo Conceptual de Dados Normalização
Para exemplificar as fases da normalização, vamos supor a seguinte relação não-normalizada, que pretende registar os dados relativos a encomendas de produtos colocadas por clientes
Encomendas
Nº EncomendaNº ClienteNome_clienteEndereço_clienteData_encomendaCod_ProdutoDesignacao_produtoQtd_encomendada
MCD - Modelo Conceptual de Dados Normalização
1ª FN (Forma Normal)
Visa eliminar os grupos de valores repetidos que, eventualmente, possam existir em estruturas não-normalizadas.
Quando uma relação está na 1ª FN já possível definir as chaves primárias.
Encomendas
Nº EncomendaNº ClienteNome_clienteEndereço_clienteData_encomenda
Linhas_Encomendas
Nº EncomendaCod_ProdutoDesignacao_produtoQtd_encomendada
MCD - Modelo Conceptual de Dados Normalização
MCD - Modelo Conceptual de Dados Normalização
2ª FN (forma Normal)
Uma relação na 2ª FN é uma relação que, além de estar na 1ª forma Normal, todos os atributos não pertencentes à chave primária devem depender da totalidade da chave, e não apenas de parte dela.
Encomendas
Nº EncomendaNº ClienteNome_clienteEndereço_clienteData_encomenda
Linhas_Encomendas
Nº EncomendaCod_ProdutoQtd_encomendada
Produtos
Cod_ProdutoDesignacao_produto
MCD - Modelo Conceptual de Dados Normalização
MCD - Modelo Conceptual de Dados Normalização
3ª FN (forma Normal)
Uma relação na 3ª FN é uma relação que, além de estar na 2ª forma Normal, não existem dependências funcionais entre os atributos não-chave. Por outras palavras, cada atributo deve depender apenas da chave primária da relação.
Encomendas
Nº EncomendaNº ClienteData_encomenda
Linhas_Encomendas
Nº EncomendaCod_ProdutoQtd_encomendada
Produtos
Cod_ProdutoDesignacao_produto
Clientes
Nº ClienteNome_clienteEndereço_cliente
MCD - Modelo Conceptual de Dados Normalização