Sunteți pe pagina 1din 66

Desenvolvendo o Modelo ER

Lembrando
...cheio de coisas que possuem caractersticas prprias e que se relacionam entre si ...Entidades que possuem atributos e relacionamentos

Lembrando Entidades
Uma entidade uma pessoa, objeto, local, animal, acontecimento, organizao ou outra idia abstrata sobre a qual o sistema deve se lembrar alguma coisa

Um Modelo Muito Simples


O sistema trata das escolas da cidade e seus alunos. Cada aluno est registrado em no mximo uma escola, ou no estar registrado em nenhuma. Uma escola pode ter zero, um ou mais alunos. O aluno identificado por seu CPF. A escola identificada por seu nome. Da escola, s precisamos saber o endereo. Do aluno, precisamos saber seu nome, seu endereo, o nome do seu pai e o nome da sua me

Escola e seus Alunos


Aluno Escola NomeEscola EnderecoEscola CPF NomeAluno EnderecoAluno NomePai NomeMae

A Busca Por Entidades


Lembrando da Tcnica Geral com Modelos
Observao dos objetos Entendimento dos conceitos
Identificar Conceituar Entender Assimilar

Representao dos objetos Verificao da fidelidade e coerncia Validao do Modelo

Entidades no Discurso
No discurso fluente durante uma entrevista, entidades so geralmente substantivos ocupando o papel de sujeito ou objeto
Os funcionrios recebem salrio Os caminhes transportam cargas

Entidades so Completas
Outro sinal importante da necessidade de uma entidade o fato de algo que precisa ser lembrado representar um conceito ou idia completa.
Funcionrio Caminho Salrio? Carga?

Tipos Bsicos de Entidade (1)


Objetos tangveis Papis exercidos Eventos Interaes Especificaes

Objetos tangveis
Tangvel: o que podemos tocar
Pessoas, Mveis, Veculos, Prdios, Documentos, etc...

Representam um objeto que existe claramente no mundo real


Produtos, equipamentos

A Escola um objeto tangvel


Aluno Escola NomeEscola EnderecoEscola CPF NomeAluno EnderecoAluno NomePai NomeMae

Papis exercidos
Objetos podem assumir funes diferentes
Papis diferentes
Como no teatro

Principalmente Papis assumidos por pessoas


Funcionrio, Professor, Aluno

Aluno um Papel (de uma pessoa)


Aluno Escola NomeEscola EnderecoEscola CPF NomeAluno EnderecoAluno NomePai NomeMae

Interaes
Marcam a interao entre dois ou mais objetos
Venda: Comprador, Vendendor, Objeto da Venda Casamento: Marido, Mulher, Celebrante, Testemunhas

Tambm implicam em observar o tempo

Estendendo nossa Escola


Um aluno faz uma Matrcula em uma certa data em uma escola Essa matrcula identificada pela escola, pelo aluno e pela data

Exemplo de Interao
Interao
Aluno Escola NomeEscola EnderecoEscola Matricula DataMatricula CPF NomeAluno EnderecoAluno NomePai NomeMae

A linha contnua indica relacionamento identificador

Eventos
Acontece em um perodo de tempo Exigem guardar data, hora, durao Reunio, Aula

Estendendo ainda mais


Cada escola marca datas de reunies de pais e filhos Cada reunio identificada pela data e pela escola Cada reunio deve informar o motivo

Exemplo de Evento
Evento
Reunio Data Motivo

Aluno Escola NomeEscola EnderecoEscola Matricula DataMatricula CPF NomeAluno EnderecoAluno NomePai NomeMae

Observao
Interao e eventos so semelhantes, pois nelas o tempo importante. No h necessidade de se preocupar em classificar os objetos, basta encontr-los Outros autores unificam os dois

Especificaes
Uma entidade que serve para classificar outra entidade Serve para substituir um atribute que rotula a classe, controlando os possveis valores Exemplo:
Em um sistema de carros usados, a entidade Automvel pode ter um atributo fbrica ou o modelo ER pode ter uma entidade Fbrica relacionada com ele.

Estendendo ainda mais ...


Cada aluno pertencer a um tipo Cada tipo de aluno identificado por um nome Cada tipo de aluno d direito a um desconto, que explicado em um motivo

Exemplo de especificao
Reunio Data Motivo

Aluno Escola NomeEscola EnderecoEscola Matricula DataMatricula CPF NomeAluno EnderecoAluno NomePai NomeMae

Especificao
Tipo de Aluno NomeTipo Desconto Motivo

Ateno para as Mudanas


Aluno passou a ser identificado por duas coisas
Um atributo Um relacionamento

Dicas Sobre Entidades (1)


Toda entidade deve ter um papel nico e definido no negcio, se voc no pode explic-la, provavelmente no precisa se lembrar dela.

Dicas Sobre Entidades (1)


Entidades devem ter ao menos um atributo que as descrevam
prefervel que tenham vrios.

Entidades devem ter mais de uma instncia. Entidades no possuem valores, apenas atributos possuem valores. Entidades devem possuir instncias unicamente identificveis.

Dicas Sobre Entidades (2)


Pessoas e organizaes que interagem com o sistema so candidatos a entidade quando:
precisamos nos lembrar alguma coisa especfica sobre elas, para gerar relatrios ou processar dados entrados. Devemos aplicar essa regra em relao necessidade de identificao e endereamento, por exemplo. Isso no se aplica a logons ou passwords utilizados para a segurana do sistema, pois segurana um problema tratado no projeto fsico.

Dicas Sobre Entidades (3)


Relatrios raramente so entidades.
Normalmente eles so apenas os resultados de um processo que acessa vrias entidades.

Linhas de relatrio geralmente so entidades.


Nomes de colunas indicam entidades ou seus atributos. Porm, nenhum valor calculado ou derivado atributo ou entidade no modelo conceitual.

Substantivos em regras de negcio so normalmente entidades

Dicas Sobre Entidades (4)


Produtos, quando no so nicos, so normalmente entidades. Papis, como funcionrio, atendente, apostador, etc., so bons candidatos para entidades. Um grupo de dados que se repete em uma entrada ou sada de dados normalmente uma entidade (ou mais).

Onde Encontrar Entidades (1)


Relatrios Formulrios de entrada de dados Arquivos, tanto de papel quanto no computador. Fichas, como fichas de cadastro, de emprstimo, etc. Pedidos, requisies e documentos do gnero. Documentos contbeis e fiscais, como nota fiscal.

Onde Encontrar Entidades (1)


Planilhas de dados, em papel ou eletrnicas. Listagens, registros, agendas, protocolos e outros documentos de trabalho. Sistemas j existentes Bancos de dados j existentes Outra forma de encontrar entidades buscar sistemas semelhantes j resolvidos e padres de anlise ou padres internacionais ou nacionais sobre o assunto sendo tratado.

Descrevendo as Entidades
Nome,
Sinnimos Homnimos

Definio Exemplos Atributos Relacionamentos Correlao, descrevendo outras partes da anlise que se referem a ela

.Regras e excees relacionadas a essa entidade, incluindo regras de negcio. Outros comentrios e observaes Uma idia da quantidade esperada de instncias no sistema

Sinnimo e Homnimo
Sinnimo = palavras diferentes, conceito igual
Belo, bonito

Homnimo = palavras iguais, conceito diferente


Manga
De camisa, a fruta, do verbo mangar,

Ao definir uma entidade


Perguntas 5W2H
O que ela ? Quem o responsvel por ela?
Quem pediu, quem indicou, quem usa

Quando deve ser utilizada? Em que parte do sistema ser utilizada? Por que ela necessria Como ela ? (como ser implementada, quais seus atributos?) Quanto espao ela ocupar (fator de custo)?

Que outras perguntas voc pode imaginar?

Por que isso til


Essas perguntas so abertas, no exigem apenas uma resposta sim ou no, mas sim que pensemos sobre elas Elas cobrem grande parte das preocupaes que temos ao desenvolver um modelo

Atributos
Todo atributo descreve de alguma forma a instncia da entidade. Atributos podem ser
Nominativos Referenciais

Atributos Nominativos
Alguns atributos so especiais e definem a entidade, Mesmo que no de forma nica
Nome Endereo

Atributo Referencial
Permitem definir outro objeto que no o sendo tratado
Um exemplo de atributo referencial fbrica para automvel, referenciando a fbrica onde foi construdo.

uma opo do analista criar entidades que permitem a substituio de um atributo referencial por um relacionamento
Especificaes

Como Descrever um Atributo


Descrio Domnio (valores vlidos, como inteiro, real, string ou uma lista de valores, ou ainda tipos criados pelo projetista). Tipos de nulos aceitos Exemplos

Em uma conversao
Atributos possuem valor So substantivos Definem qualidades, caractersticas, propriedades So conceitos incompletos, que no existem por si

Onde encontr-los
Colunas e Campos de relatrios, formulrios e planilhas Quando seu nome referencia o valor de algo para uma entidade
O nome do aluno

Onde Encontrar Relacionamentos


A principal caracterstica das entidades de um sistema formar uma rede de relacionamentos Aparecem quando uma entidade se refere a outra
Funcionrio do departamento Contrato do veculo

Relacionamentos e Verbos
Os relacionamentos aparecem nos verbos
Aluno assiste aula Mquina fabrica produto Empresa contrata empresa

Relacionamentos comuns
Compe um (herana) Faz Gera Atende Usa Possui

Relacionamentos Identificam
Os relacionamentos tambm servem para identificar entidades
Alm dos atributos e at mesmo sem exigir nenhum atributo
Aluno CPF NomeAluno EnderecoAluno NomePai NomeMae

Tipo de Aluno NomeTipo Desconto Motivo

Descrevendo Relacionamentos
O nome escolhido para o relacionamento pode estar na voz ativa (me gera filho) ou na voz passiva (filho gerado por me). Algumas notaes permitem que se usem os dois nomes (um por cima e um por baixo da linha de relacionamento). Geralmente se usa o nome que permite a leitura do relacionamento da esquerda para a direta na parte de cima da linha (ou se d preferncia a esse nome quando apenas um pode ser utilizado).

Como descrev-los
Nome Funo no sistema Como/Quando/Por que/Por quem/
So estabelecidos So destrudos

Valores normais (quantidades normais) Comentrios

Identificando Entidades
Atributos e Relacionamentos permitem criar uma identididade nica para as entidades No mnimo, o somatrio de todos os atributos e relacionamentos ser essa identificao
Se todos os valores de atributos e relacionamentos forem iguais, as entidades so a mesma entidade

Identificador
Conjunto de atributos e relacionamentos que identifica unicamente a entidade Existem vrios possveis
Chaves candidatas (na nomenclatura relacional)

Um deve ser escolhido


Chave primria (na nomenclatura relacional)

Como escolher?
Escolha o mais significativo no caso do modelo conceitual Com a evoluo da anlise, muitas vezes acontece de trocarmos essa escolha por um mais fcil de usar

Aluno CPF NomeAluno EnderecoAluno NomePai NomeMae

Exemplo

Aluno CPF NomeAluno EnderecoAluno NomePai NomeMae

Tipo de Aluno NomeTipo Desconto Motivo

Tipo de Aluno NomeTipo Desconto Motivo

Manipulando o Modelo
Operaes Top-Down Operaes Bottom-Up

Top-Down
Dividir Entidade em Entidade e Relacionamento Transformar Atributo em Entidade Criar Sub-entidades Dividir Entididade Dividir Relacionamento Criar Entidade em Relacionamento Criar Atributo
Uma entidade pode ser transformada em duas entidades relacionadas Um atributo de uma entidade pode ser transformado em uma entidade relacionada

Uma entidade pode ser transformada em uma entidade e um conjunto de especializaes.

Uma entidade pode ser transformada em um nmero de entidades no relacionadas

Um relacionamento pode ser transformado em dois relacionamentos em paralelo

Um relacionamento pode ser transformado em uma entidade relacionada com as duas entidades ligadas pelo relacionamento

Um entidade pode receber um atributo

Um relacionamento pode receber um relacionamento

Dividir Entidade em 2 Entidades e Relacionamento


Uma entidade pode estar escondendo duas entidades que se relacionam
Escola Escola e Turma

Transformar Atributo em Entidade


Uma atributo pode ser um conceito complexo que precisa ser descrito como uma entidade
Nome do Pai, Nome da Me podem ser transformados em uma entidade chamada Responsvel Legal

Criar Sub-entidades
Uma entidade pode ser dividida em vrios tipos
Escola pode ser dividida em escola de ensino bsico e escola de ensino mdio

Dividir Entididade
Uma entidade pode ser dividida em entidades que no se relacionam diretamente
Reunio pode ser dividida em reunio de pais e professores e reunies internas

Dividir Relacionamento
Um relacionamento pode ser dividido em vrios
Aluno pode se matricular em uma escola Aluno pode ser formado por uma escola

Criar Entidade em Relacionamento


Um relacionamento pode ser to complexo que merece ser descrito como entidade Tendncia dos mtodos atuais, influncia do modelo relacional
Matrcula era um relacionamento, mas como precisa guardar alguma informao (a data), virou entidade

Criar Atributo
Relacionamentos e Entidades podem necessitar de novos atributos
Aluno pode precisar de uma atributo Telefone

Operaes Bottom-Up
Criar Entidade Unir Atributos em Entidades Hierarquizar entidades Criar Relacionamentos entre Entidades
Uma entidade pode ser criada para satisfazer uma necessidade

Atributos levantados podem formar uma entidade

Entidades j levantadas podem ser unificadas em uma estrutura de generalizao/ especializao

Entidades no relacionadas podem necessitar de um relacionamento entre elas

Criar Entidade
Ao mais normal no nosso caso Sempre buscaremos criar as principais entidades desde o incio

Unir Atributos em Entidades


Algumas vezes conhecemos alguns atributos que devemos guardar o valor, mas ainda no identificamos a entidade corretamente Agrupar atributos em uma entidade equivale a criar uma entidade quando j conhecamos os atributos No um caso comum

Hierarquizar entidades
Algumas vezes criamos as entidades soltas e depois percebemos que h uma hierarquia Equivale a criar um relacionamento ou uma herana

Criar Relacionamentos entre Entidades


Ao normal no nosso caso Esperamos que a maioria dos nossos relacionamentos seja criada assim

Concluso
Possumos agora bastante ferramentas de trabalho com o diagrama de Entidades e Relacionamentos Podemos nos exercitar mais e desenvolver modelos mais complexos

S-ar putea să vă placă și